S# | Non-Functional requirement | Description | Implementation guidelines |
1 | Accessability | Design the solution for people with disabilities | Voice commands Voice instructions Touch narration Tracing objects Zooming Consider Low Physical Effort Use Perceptible Information Dynamic reconfiguration Self organizing Self protecting |
2 | Usability | Minimum effort to do
things Screen layout, reports, security Multi-Language Advanced Search and user defined filters Multi Device inputs Personalization options Display Help Message to guide users Minimize Data Entry and actions Online Help Multiple calendars (Gregorian and Hijri) Minmize data entry User defined fonts Feedback to user, do not let him without feedbacks of actions and processes with diffrerent methods,Messages, and mails Enable Default Values Standardzation of : Layouts Pre-defined attributes like Creation date, Created By, Modification Date, Modified by Pre-defined Tabs, like attachements All transactions should have approvals levels, like workflow Logging and Tracability for all records Logging and Tracability for sensitive data Spelling checkers Dated Content Layout standardization Decompose screens to organized regions |
|
2 | Adaptability | Abiity to change behavior
according to the change of the environment, it's a level f autonomous software, that may use AI models |
Configurable software business
rules Configurable software enabled features Confgurable BE and base URL Grid Computing Responsive design Develop observer Develop planner |
3 | Auditability | Ability to track user interaction with the solution over time series | Logging setting Logging database |
4 | Availabiity | Ability to still active to serve, and mean time to failure | Use latest valid request
response to build your model Over time, and connectivity Web and mobile development for online solutions Load balancing Defensive programming 1. Use multiple data centers and end points, node, and grouping by additional data center, so synchronization and replication are required. 2. Route behavior to different node when failure occurs. Allow logging procedures for actions and exceptions in order to simulate the case with facility to enable and disable. |
5 | Reliability | Mean time to repair | Enhance of source code
maintainability Component based architecture |
6 | Effeciency | Expected output that meet objectives | Consists of all other quality attributes |
7 | Backup | Facilitating automatic backup for the solution databases | Backup procedures Retntion procedures Disaster recvery procedures |
8 | Durability and operabiity | Ability to remain working | Code cleaning Refactoring Releasing resources when not in use Caching models Healthy checker automation |
9 | Fault tolerance | Ability to still work even with error in some areas | Component based architecture
Use cases alternative scenarios detections Use cases exceptions cases Exception handling planning per exception type Defensive programming |
10 | Performance | Solution response time per process | Code cleaning Refactoring Releasing resources when not in use Caching models TAP and Multi threading Ajax calls Service expected duration againest actual |
11 | Quality | Faults of solution process and data | Data integrity models Relational databases concepts Staging quality servers Manual and automed testing procedures Using logical objects instead of physical |
12 | Safety | Being protected of non-desirable outcomes | Content security Process security Encryption techniques OWASP guidelines HCI |
13 | Scalability | Abiity to handle the grow
of: 1- Users 2- Customers 3- Features 4- Data volution 5- Technology |
Forecasting Reports Reporting Generation Manager User defined functionality Load balancing Caching CBA suitable database types Grid computing Standalone applications Integration models SOA Metadata management International standards for : laws-localization-business rules-currencies-usability ux- timezone calendar Facilitate importing from dfferent media Facilite export to different media Facilitate undo actions Maximize Policies using BRM repository |
14 | Internationalization | Ability to meet different cultures needs | Multi-Currency Tafkeet |