I have done tasks based on Java, but my seniors assigned me to collect requirements for creating a globalized bug tracking tool.

I have read many types of requirements from Wikipedia and the mindtools website, but it was very confusing.

What are the exact differences between functional requirements, operational requirements and technical requirements?

  • functional requirements

What the system is supposed to do, process orders, send bills, regulate the temperature etc. etc.

  • operational requirements

These are about how to run the system. Logging, startup/shutdown controls, monitoring, resource consumption, back up, availability etc.etc.

  • technical requirements

These are about how the system is built. Which language, which OS, standards to be adhered to etc.

These days "operational' and "technical" requirements are usually bundled together as "non-functional requirements" -- mainly to stop silly arguments as to whether "system will respond to a user request within 1 second" is an operational or technical requirement.


My favorite way to reduce this is to think this way.

If I can use MSPaint to get a screenshot of what the user sees that's functional.

As soon as I involve a computer, a computer language, a computer network. It tends towards a technical specification.

Sometimes there's a lot of overlap. like I can draw a picture of a 747, but that is actually more of a technical spec, because the assumption is that the thing flies.

But really, users and management would be perfectly happy if it flew using fairy dust instead of jet fuel. So that's the functional part. But actually it's a quite technical picture.

Hope I haven't gone too far afield, but that's how I think about it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.