Title :
Monitoring software requirements using instrumented code
Author :
Robinson, William N.
Author_Institution :
Dept. of Comput. Inf. Syst., Georgia State Univ., Atlanta, GA, USA
Abstract :
Ideally, software is derived from requirements whose properties have been established as good. However, it is difficult to define and analyze requirements. Moreover derivation of software from requirements is error prone. Finally, the installation and use of compiled software can introduce errors. Thus, it can be difficult to provide assurances about the state of a software\´s execution. We present a framework to monitor the requirements of software as it executes. The framework is general, and allows for automated support. The current implementation uses a combination of assertion and model checking to inform the monitor. We focus on two issues: (1) the expression of "suspect requirements", and (2) the transparency of the software and its environment to the monitor. We illustrate these issues with the widely known problems of the Dining Philosophers and the CCITT X.509 authentication. Each are represented as Java programs which are then instrumented and monitored.
Keywords :
program testing; program verification; CCITT X.509 authentication; Dining Philosophers problem; Java programs; assertion checking; automated support; model checking; software requirements; suspect requirements; Authentication; Computer bugs; Computer errors; Computerized monitoring; Information systems; Instruments; Java; NASA; Probes; Programming;
Conference_Titel :
System Sciences, 2002. HICSS. Proceedings of the 35th Annual Hawaii International Conference on
Print_ISBN :
0-7695-1435-9
DOI :
10.1109/HICSS.2002.994468