-
Functionality – established needs to be satisfied by the software when it is used in specific conditions. Functionality must be adequate, accurate and safe.
-
User interface – definition of those user interface characteristics that allow to understand and learn the software easily so the user be able to perform his/her tasks efficiently including the interface exemplar description;
-
External interfaces – definition of interfaces with other software or hardware;
-
Reliability – specification of the software execution level concerning the maturity, fault tolerance and recovery;
-
Efficiency – specification of the software execution level concerning the time and use of the resources;
-
Maintenance – description of the elements facilitating the understanding and execution of the future software modifications;
-
Portability – description of the software characteristics that allow its transfer from one place to other;
-
Design and construction limitations/constraints – needs imposed by the customer;
-
Interoperability – capability for two or more systems or software components be able to change information each other and use it.
-
Reusability – feature of any product/sub-product, or a part of it, so that it can be used by several users as an end product, in the own software development, or in the execution of other software products.
-
Legal and regulative – needs imposed by laws, regulations, etc.