Next: 2.3 Design Principles
Up: 2 Position
Previous: 2.1 Dealing with Non-Functional
The lack of non-functional issues in software components has some negative effects on many software
development tasks.
- Specification. Non-functional characteristics of software remain hidden to the user and they
only appear in (optional and informal) software documentation. Their absence leads to an
unbalanced specification, where functional aspects are well covered with usual specification
languages while non-functional ones do not exist.
- Implementation. The selection and/or development of the most appropriate (with respect to
non-functional requirements) implementation for software modules cannot be assisted at all
because of lack of information. As a result, the decisions to be taken during this process
may be difficult and even incorrect.
- Maintenance. Changes in the system environment, modifications of existing software
module implementations, and creation of new implementations require a new (by-hand)
review of previously taken implementation decisions, without having available the
non-functional information of the system, which is affected by these changes [FB97].
- Reusability. Software reuse cannot take non-functional issues into account. Thus,
components selected by any functional-oriented reuse strategy may not fit into the
non-functional requirements of the environment, hindering or even preventing their actual
integration into the system.
Next: 2.3 Design Principles
Up: 2 Position
Previous: 2.1 Dealing with Non-Functional
Xavier Franch
Sept. 2, 1997