I. Introduction
Programmable Logic Controllers (PLCs) are the main work-horse of automation in all areas from single machines to discrete manufacturing pJants and continuous processes. Therefore the development of logic controllers is of increasing importance. In general, the realization of a logic controller includes hard-and software of several layers. With the assumption of standard hardware with well-defined functional-ity, the application is realized by the program of the control algorithm, i.e. software of the application layer. Therefore, it is worthwhile to study the viewpoint of Software Engineering in the controller development process. The ANSI/IEEE 610 standard [ANSI 610] defines Software Engineering as “the application of a systematic. disciplined quantifiable approach to the development, operation, and maintenance of software: that is the application of engineering to software.” The word quantifiable in this definition indicates that measurement is an integral part of software engineering. Measurement in this area is mainly directed at the determination of quality of the software and the processes. For application software, the ISO/IEe 9126 standard [ISO 9126] defines software quality characteristics as: UA set of attributes of a software product by which its quality is described and evaluated. The standard defines six quality characteristics, each associated with a number of sub-characteristics. The definilions of these characteristics are summoned in Table I + A closer look at Table 1 reveals that besides the fact that the term is rarely used, quality concepts are already an integral part of logic controller development (cf. Table 2). Software characteristics of ISO/IEC 9126.
Criterion | Definition |
---|---|
Functionality | Attributes that bear on the existence of a set of functions and their specified properties. The functions are those that satisfy a stated or imilied need. |
Reliability | Set of attributes, that bear on the capability of software to maintain its level of performance ance under stated conditions for a stated period of time. |
Usability | Attributes that bear on the effort needed for use, and on the individual evaluation of such use, by a stated or implied set of usels. |
Efficiency | Attributes that bear on the relationship be-1 tween the level of the performance of the software and the amount of resources used, under stated conditions |
Portability | Attributes that bear on the ability of software to be transformed from one environment to another. |
Maintainability | Attributes that bear on the effort needed to make specified modifications |