Systems Analyst interview question

What is the difference between functional and non-functional requirements?

Functional requirements describe what the system must do; non-functional requirements constrain how well or under what conditions it does it, such as latency, availability, security, capacity, and compliance.

Direct answer

What a strong answer covers

How it works

Functional requirements are the behaviours a user or another system can observe: what inputs are accepted, what happens, what comes out. Non-functional requirements are the qualities under which those behaviours must hold: response time at a given load, availability over a period, recovery time after failure, security controls, accessibility level, data retention, and regulatory constraints. The distinction matters because non-functional requirements shape architecture early and are expensive to retrofit, and because they are only useful when written as measurable thresholds with a way to verify them.

Example

The functional requirement says a user can export their transaction history as CSV. The non-functional requirements say the export starts within 2 seconds for 95 percent of requests up to 100,000 rows, completes within 60 seconds, is available 99.9 percent of the month, includes only the requesting user’s data, and is logged for audit for one year. The second set decided that exports run as background jobs with a download link.

Common mistakes

  • Writing the system must be fast without a number, a percentile, or a load.
  • Treating non-functional requirements as a checklist added after the design is done.
  • Confusing a constraint on the delivery process with a quality of the system.

A useful answer structure

Answer from your own work.

Do not memorise a script: use only examples you can explain honestly in follow-up questions.

Practise this answer with MiraHint

Open the desktop workspace and rehearse a clear answer in your own words.

Download MiraHint
Systems Analyst interview questions