Title :
Aspect-oriented implementation of software health indicators
Author :
Thai, James ; Pekilis, Barry ; Lau, Alexander ; Seviora, Rudolph
Author_Institution :
Bell Canada Software Reliability Lab., Waterloo Univ., Ont., Canada
Abstract :
In the development of many software systems, the focus was on functionality. When these systems are used in situations requiring higher reliability and availability, such qualities must be retrofitted into the system. This paper considers a way of adding such capability to existing software by taking advantage of aspect-oriented programming, a recently developed technology which supports encapsulation of non-functional concerns. The paper introduces the notion of a system health index as a measure of the internal system well-being, and identifies a number of health indicators, i.e. operational metrics from which a health index could be derived. The paper then discusses an aspect-oriented implementation of health indicators and lists several applicable aspect-oriented design patterns. Experience obtained from the implementation of health indicators in a distributed system whose original development focused only on functionality is then summarized. The experience suggests that time and space overhead and development costs are moderate, and that there is a distinct advantage of aspect-oriented implementation of health indicators.
Keywords :
distributed object management; software engineering; software maintenance; software reliability; system monitoring; aspect-oriented design pattern; aspect-oriented programming; distributed system; operational metrics; software health indicators; system health index; Availability; Cost function; Encapsulation; Laboratories; Mechanical sensors; Monitoring; Power system management; Sensor systems; Software reliability; Software systems;
Conference_Titel :
Software Engineering Conference, 2001. APSEC 2001. Eighth Asia-Pacific
Print_ISBN :
0-7695-1408-1
DOI :
10.1109/APSEC.2001.991464