Abstract
It is now recognized that nonfunctional properties are important to practical software development and maintenance. Many of these properties involve involving time and probabilities – for example, reliability and availability. One approach to ensuring conformance to nonfunctional requirements is the use of runtime monitoring. Currently, such monitoring is done in one of two ways: 1) monitoring through use of a generic tool or 2) by adding instrumentation code within system software and writing a tool to manage resulting datasets. The first approach is often not flexible while the second approach can lead to a higher development cost. In this paper, we present a flexible framework for runtime verification of timed and probabilistic nonfunctional properties of component-based architectures. We describe a Microsoft .NET-based implementation of our framework built upon the Windows Management Instrumentation (WMI) infrastructure and the Distributed Management Task Force’s Common Information Model standard. We use a language for contracts based on Probabilistic Computational Tree Logic (PCTL). We provide a formal semantics for this language based on possible application execution traces. The semantics is generic over the aspects of an application that are represented by states and transitions of traces. This enables us to use the language to define a wide range of nonfunctional properties.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Chen, F., Rosu, G.: Towards monitoring-oriented programming: A paradigm combining specification and implementation. In: Proceedings of 3rd International Workshop on Runtime Verification (RV 2003). Electronic Notes on Theoretical Computer Science, vol. 89(2). Elsevier Science, Amsterdam (2003)
DePrince Jr., W., Hofmeister, C.: Enforcing a lips usage policy for CORBA components. In: Proceedings of 29th EUROMICRO Conference, New Waves in System Architecture, Belek-Antalya, Turkey, pp. 53–60. IEEE Computer Society Press, Los Alamitos (2003)
Distributed Management Taskforce. Common Information Model (CIM) standard (2005)
Garlan, D., Schmerl, B., Chang, J.: Using gauges for architecture-based monitoring and adaptation. In: Proceedings of the Working Conference on Complex and Dynamic Systems Architectur, Brisbane, Australia, Decemeber 12-14, 2001, DSTC (2001)
Hansson, H., Jonsson, B.: A logic for reasoning about time and reliability. Formal Aspects of Computing 6(5), 512–535 (1994)
Jayaputera, J., Poernomo, I., Schmidt, H.: Uml specialization for fault tolerant component based architectures. In: IDPT: Proceedings of the Seventh Biennial World Conference on Integrated Design and Process Technology, vol. 2 (2003)
Meyer, B.: Object Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (1997)
Reussner, R., Schmidt, H., Poernomo, I.: Reliability prediction for component-based software architectures. Journal of Systems and Software – Special Issue of Software Architecture - Engineering Quality Attributes 66(3), 241–252 (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chan, K., Poernomo, I., Schmidt, H., Jayaputera, J. (2005). A Model-Oriented Framework for Runtime Monitoring of Nonfunctional Properties. In: Reussner, R., Mayer, J., Stafford, J.A., Overhage, S., Becker, S., Schroeder, P.J. (eds) Quality of Software Architectures and Software Quality. QoSA SOQUA 2005 2005. Lecture Notes in Computer Science, vol 3712. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11558569_5
Download citation
DOI: https://doi.org/10.1007/11558569_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29033-9
Online ISBN: 978-3-540-32056-2
eBook Packages: Computer ScienceComputer Science (R0)