Volume 7, Number 5, September 2011 - Editorial - pp. 401
KRISHNA B. MISRA
Performance of components, subsystems, system and services has always been concern of system designers or developers. Various performance attributes have also been developed and defined historically as the requirements varied over time. Initially in the first half of 20th Century, the engineers were satisfied if quality of a component was good. Later on since quality did not ensure performance over time, performance criterion of reliability was introduced. The post Second World War period saw trade off between reliability and maintainability and availability became an important attribute of maintained components and systems. With the release of Prof. Rasmussen’s WASH 1400 report in 1975, safety (in probabilistic terms) became a design parameter. The terms like survivability and dependability also figured in the literature. Later on, John Meyer and W. H. Sanders (Specification and Construction of Performability Models” appeared in the Second International Workshop on Performability Modeling of Computer and Communication Systems, June 28-30, 1993) introduced a term, “Performability”, dwelling upon the distinction between “object system or simply system” and “environment” resources; they claim is distinct from the terms already existing at that time for performance evaluation. As far the definition of dependability is concerned, John Meyer agrees that it is the system's ability to perform in respect to some agreed specification of desired performance, where a failure of the system occurs if the performance no longer complies with this specification and the attributes of dependability are defined according to the nature of failure occurrences and/or their consequences which include reliability (continuity of failure-free service), availability (readiness to serve), safety (avoidance of catastrophic failures), and security (prevention of failures due to unauthorized access and/or handling of information). He however felt that in order to address the problem of degradable performance, measure of performability is needed to simultaneously address issues of both performance and dependability. In fact performability and performance are interchangeably used.
It is interesting to note that The Institute for Telecommunications Services, a part of the U.S. Department of Commerce, provides an extensive glossary of telecommunications terms in Federal Standard 1037C . In this glossary, the definition of survivability is given by: A property of a system, subsystem, equipment, process, or procedure that provides a defined degree of assurance that the named entity will continue to function during and after a natural or man-made disturbance. For a given application, survivability must be qualified by specifying the range of conditions over which the entity will survive the minimum acceptable level or post-disturbance functionality, and the maximum acceptable outage duration. John C. Knight and Kelvin S. Sullivan in their report (CS-TR-33-00, 2000 of Department of Computer Science, University of Virginia) have presented a definition of survivability and related it to the area of dependability and the technology of fault tolerance. They claimed that the specialized requirements of critical information systems require a new facet of dependability and that the survivability as we they have defined it is different from reliability, availability, safety, and so on. Similarly, M. S. Deutch and R.R. Willis in their book (Software Quality Engineering: A Total Technical and Management Approach, Englewood Cliffs, NJ: Prentice-Hall, 1988) define survivability in the context of software engineering as the degree to which essential functions are still available even though some part of the system is down. It appears that this definition is more relevant for the performance evaluation of fault tolerant computer systems.
The genesis of trouble with various performance attributes can be traced mainly to follow up work in the area of reliability, as there was no concerted effort to standardize the definitions of various terms in use in relation to performance evaluation.
If one takes the Webster definition of performability, it is the ability (this ability expressed in terms of probability just as in case of reliability) to perform under given conditions. Therefore, based on the key terms, “perform” and” ability”, performability can be interpreted as performance under given conditions, which may include reliability, safety, risk, human performance or even computer and communication system performance under given conditions. One must not forget that the given conditions could be normal, fault conditions, conditions existing with failures, abnormal environment conditions, and extreme environment conditions. It is in this more general context that the term “performability” is used in the journal which would not only take into consideration the entire gambit of performance attributes but includes the sustainability aspect of products and systems performance in 21st Century perspective. In other words, it would represent the holistic performance criteria. However, at present the sustainability aspect of performance is not quantifiable in probabilistic terms but very soon, it might become possible. At that time, it will be possible to aggregate all attributes in some way to define overall design criterion in probabilistic terms.