Functional and non-functional requirementsby Mark Kelly |
Functional and non-functional requirements are an important part of a software requirements specification (SRS). |
Functional requirements (FR) ...define what the software should be able to do. Non-functional requirements (NFR) define the qualities or attributes the solution should have. Functional requirements (FR) include abilities like:
Consider a FR as a verb. If you can say, “The software needs to be able to…” and then add a verb (e.g. “calculate”), it’s an FR.
|
Non-functional requirements (NFR)...of the solution (solution attributes) are qualities it should have. What qualities or features should distinguish the software? e,g, it should be
Consider a NFR as an adjective If you can say, “The software needs to be…” and then add an adjective, it’s an NFR. Some typical NFRs involve
NFRs often also form solution constraints. (e.g. "It's not worth creating this program/product unless it is... entertaining.")
|
Some real exam questions about FR and NFR |
From the examiner's report - 2011 Software Development A range of responses was accepted as long as the student could clearly articulate the functional requirements of the
system. Functional requirements include: |
Even though a range of responses was accepted, one of the most important non-functional requirements is 'ease of use'. b. Identify two important functional requirements. 2 marks This question asked students to identify what AQADAS is required to do and should be able to do. There was a range of functional requirements that students could have identified, including 'facilitate entry of symptoms', 'obtain air quality measurements', 'obtain location and time' and 'keep data for up to 24 hours'. c. Identify one important functional requirement that a mobile phone alone cannot provide. 1 mark This question asked students to analyse the case study and identify solution requirements – both functional (what it is required) and non-functional (the solution attributes, such as user-friendliness, response rates, robustness, portability, reliability and maintainability). Many students were unable to write solution requirements, and confused functional and non-functional requirements.
|
Question 16 An application is designed that will record a person's heart rate every 10 minutes and keep a record of the heart rate readings for a week. What would be the functional requirements for this software? Answer is B. Functional requirements are those that need to be specifically programmed into an application so it can achieve a particular task. Non-functional requirements are qualities that the software must possess, but are not necessarily coded in. They could, for example, be achieved by effective design of an interface. In short, remember if you can say "The program must be able to..." followed by a verb - it's a functional requirement. In this case, reliability (A), ease of use (C), and being user friendly (D) are all non-functional requirement. 85% of the state got this right. |
Question 15 A football club wants to create an electronic version of its membership records. A. being easily maintained. Answer is B. Remember that an FR is what a solution should be able to do, usually because of a specific piece of coding. An NFR refers to how the solution should do things (e.g. safely, quickly), or qualities that a solution should have (e.g. maintainability, readability.) 86% of students got this right. |
Question 2 Sally, as the manager of the voting software for MMS, is beginning to write the SRS document. A number of non-functional requirements could have been discussed in response to this question;
|
All original content copyright ©
vcedata.com This page was created on 2022-05-04 |