Architecture Differencing for Self Management

Authors: Alexander Egyed

Traditionally, software models are associated with development and maintenance related activities. This paper demonstrates that models also serve a vital purpose in supporting the self awareness and management of software systems in their deployed environments. We use probes to observe the executing software system by extracting the outside stimuli the system is subjected to. We use this information to concurrently simulate the model-behavior of the software system. The state of the simulating system then mirrors the state of the executing system. In this setting, the simulation serves as a foundation to self awareness through which differences among simulated behavior and real behavior are investigated. The simulation also serves as a guide to self management (i.e., self healing, self configuration) where the system uses additional information provided in the simulating model to manage itself.

Download PDF here!