Istituto di Scienza e Tecnologie dell'Informazione     
Sabetta A. Automating the analysis of performance and reliability of reconfigurable component-based systems: a model-driven approach.
Today's software applications are required to provide their functionalities even when operating in environments whose conditions may continuously change, as in the case of ubiquitous computing systems. Often, these systems are also required to maintain an acceptable level of certain extra-functional attributes, even in the face of changes in the underlying platform or in the physical context. Dynamic reconfiguration techniques have been proposed as a viable approach to achieve this goal. However, designing effective reconfiguration strategies is a new challenge for software designers. In this landscape, the contribution of this thesis can be outlined as follows. Firstly, we concentrate on notations to specify reconfiguration features and extra-functional properties in design models of component-based systems. Focusing on the notable case of mobile systems, we propose an extension of the UML language, i.e. a profile, that is capable to represent mobility in software design models. While physical mobility is out of the designer's control, logical mobility (i.e. mobile code techniques) can be used to devise adaptation mechanisms that can react to environmental changes, which may include physical movements. The profile we propose allows designers to describe both physical and logical mobility. By using the profile, different adaptation strategies are modeled in a modular fashion, and their projected performance and reliability are evaluated and compared with respect to different (physical-mobility) scenarios. Secondly, we present an approach to the automated construction of performance and reliability models, starting from design specifications, such as those mentioned above. Our proposal is based on the recently emerged model-driven development paradigm, and is centered around the definition of a Kernel LAnguage for PErformance and Reliability analysis (KLAPER). This language provides a core conceptual framework to capture, in a compact model, all the information that is relevant to the analysis of performance and reliability. KLAPER acts as a bridge between design-oriented and analysis-oriented notations. By using it, the burden of defining direct transformations from design-oriented to analysis-oriented models is reduced to the less complex problem of defining transformation to/from the intermediate language. This approach is demonstrated on several example applications, by presenting mappings from annotated UML models and web-service description languages (such as OWL-S) to a number of analysis formalisms, including discrete-time Markov chains (reliability analysis), queueing networks, layered queueing networks (performance analysis), and Markov reward models (performability analysis).
Subject MDA MDD MDE development
D.2.2 Design Tools and Techniques
D.2.3 Coding Tools and Techniques
D.2.4 Software/Program Verification
D.2.8 Metrics
D.2.10 Design
D.2.11 Software Architectures

Icona documento 1) Download Document PDF

Icona documento Open access Icona documento Restricted Icona documento Private


Per ulteriori informazioni, contattare: Librarian http://puma.isti.cnr.it

Valid HTML 4.0 Transitional