| | Non-functional requirement: Execution qualities and Evolution qualities |
|
| | Execution qualities: observable at run time, e.g. security and usability |
|
| | Evolution qualities: embodied in the software static structure, e.g. testability, maintainability, extensibility and scalability |
|
| | High performance: C++ providing close to real time processing |
|
| | High usability: best practices in UI, e.g. WPF |
|
| | WPF business case: massive increase in testability through separation of program logic fron the UI |
|
| | High security: SSL, DMZ, and a dozen other best practices in security |
|
| | Techniques for requirements: user stories, functional specification, and UI mockups |
|
| | Requirements tracing: documenting the life of and tracking the changes to requirements |
|
| | Forward tracing: ability to show system impact when a requirement is changed |
|
| | Backward tracing: ability to show user impact when the system is changed |
|
| | Sample requirements tool: Open Source Requirements Management Tool |
|