A software product can be recognized by what it offers and how well it can be used.
This software must satisfy on the following grounds:
1. Operational
2. Transitional
3. Maintenance
Well designed and engineered software is expected to have the following characteristics:
Operational
This tells us how well software works in operations. It can be measured on:
- Budget
- Usability
- Efficiency
- Correctness
- Functionality
- Dependability
- Security
- Safety
Transitional
This aspect is important when the software is moved from one platform to another:
- Portability
- Interoperability
- Reusability
- Adaptability
- Modularity
- Maintainability
- Flexibility
- Scalability