1 to 3 months
| Student Software | Industrial-Strength Software |
|---|---|
Developer is the User
|
Client is the User
|
| Software not in critical use | Supports important business functions |
| Reliability, robustness not important | Reliability, robustness very important |
| No investment | Heavy investment ($5 to $25 per LOC) |
| Does not care about portability | Portability allows a company to market a product on multiple platforms |
| Quality Attribute | Definition |
|---|---|
| Functionality | The system fulfills its requirements |
| Reliability | The system provides consistent performance |
| Usability | The ease at which users can acquire skill with the system |
| Efficiency | The system provides performance relative to its resources |
| Maintainability | The system can be modified to make corrections, improvements, or adaptations |
| Portability | The system can be adapted to other platforms |
| corrective maintenance | To fix bugs |
| adaptive maintenance | To respond to changes in the system's environment |
| perfective maintenance | To add new features |
| preventive maintenance | To make a system more maintainable |
[taking] software development closer to science and engineering and away from ad-hoc approaches for development whose outcomes are not predictable.

