Software engineering values are what every software engineer must learn to produce high-quality software.
Software is important to many people, who play a variety of roles with regard to the software. The stakeholders can be classified into primary stakeholders and secondary stakeholders
Primary stakeholders have direct contact with the production of software and/or its use:
The most important values for the purchaser are correctness, reliability, data reliability, delivery time, and cost.
The most important values for users are correctness, robustness, and ease of use or usability.
The most important values for developers are correctness, ease of installation and configuration, and resource usage.
Software developers play two roles:
The most important values for developers are ease of maintenance, ease of verification , data efficiency and integrity , encapsulation, and coupling
In addition, there are countless other people who are directly affected by software even though they may be unaware of its existence. For example:
These are "secondary" only in the sense that their roles are not directly involved with the production of software and its use.
The software values of these groups are difficult to generalize, but due to the software impact on their lives or property, they must be considered in addition to the primary stakeholders.