Chapter 8. Nonfunctional Requirements


in which we look at those requirements that specify how well your product does what it does

How can something called "nonfunctional" be important? Consider thisit really happened. The client rejected some help desk software after it was delivered. The functionality was correct in that the software supported the help desk's activity, but the client didn't want it. Why? Because the users were refusing to use it, preferring to go back to their manual procedures. Why was the product so bad? Because the requirements team ignored the nonfunctional requirements.

Why was the product so bad? Because the requirements team ignored the nonfunctional requirements.


Let us explain in more detail. The help desk staff already had nine other applications running on their desktops. The requirement team ignored the users' look and feel requirements, resulting in the new software using a completely different set of icons and screen layouts, which the help desk people rightfully refused to learn. The team also ignored the usability requirementsthe new software employed conventions unfamiliar to the users. In addition, the requirements team failed to gather the performance requirements, which should have specified the speeds and volumes of data handled.

The result: A product with a woefully inadequate database, which could not handle the volume of requests made to the help desk. The operational requirements should have set out the operating environment and collaborating products, but didn't. Security was overlooked, and because cultural requirements were not taken into account, the end product contained several icons considered offensive by some members of the help desk. These issues are nonfunctional requirements and, in this unfortunate case, their omission caused the project to fail.

The nonfunctional requirements are the qualities your product must have, or how well it does the things it does. They make the product attractive, or usable, or fast, or reliable, or safe. You use nonfunctional requirements to specify response times, or accuracy limits on calculations. You write nonfunctional requirements when you need your product to have a particular appearance, or be used by nonreaders, or adhere to laws applicable to your kind of business.

These properties are not required because they are the functional activities of the productactivities such as computations, manipulating data, and so onbut are there because the client expects the activities to be performed in a certain manner and to a specific degree of quality.




Mastering the Requirements Process
Mastering the Requirements Process (2nd Edition)
ISBN: 0321419499
EAN: 2147483647
Year: 2006
Pages: 371

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net