A Systems Perspective on the Quality Description of Software Components
In this paper we present our motivations for proposing of a generic model for the description of quality attributes of software artifacts, in particular suited to software components. The conceptual ideas for our quality description model are derived from researching systems science for its value to software engineering. In this work we realized that software engineering is concerned with a number of different systems, e.g., a development project as a concrete, human activity, system, a software product in the form of programming code as a conceptual system, a software system running in its execution environment as a concrete system. Each of these systems exhibits the basic system theoretic principles and in the context of this paper is strongly related to certain types of qualities. Such qualities receive particular attention in the context of large software systems, where systems are typically a combination of in-house and third party products and are increasingly integrated by means of software component technology. Consequently, quality related information (in the form of a quality data sheet) is needed by component users to gain trust in and to evaluate the possible employment of a candidate component. Interestingly, the concept of a software component appears in most of the aforementioned different types of systems. Hence, they can be an excellent means to carry quality related information that belonged to different spheres up to now. The qualities range from those related to the development economics to those related to the execution performance.