140 likes | 332 Views
Multi-model-based Analysis. Background. SEA Group. L’Aquila. Henry Muccini. Research interests: Analysis and Design of Software Architectures Architecture- and Model-based Testing Architecture Description Languages Model-checking Architectures Architecting Fault Tolerant Systems
E N D
Background • SEA Group • L’Aquila
Henry Muccini Research interests: Analysis and Design of Software Architectures Architecture- and Model-based Testing Architecture Description Languages Model-checking Architectures Architecting Fault Tolerant Systems Other Global Software Engineering Education Model Driven Engineering “Software Test Automation from Components to Systems” book from Wiley
Engineering Complex Systems • A Critical System = a system that requires to deal with different quality attributes. • Informal definition elaborated during ISARCS 2010 • Different quality attributes cannot be managed separately or sequentially, but needs to be taken into account in a coordinated way • Multi-optimization problem
Multi-model-based strategy • How to go from one problem perspective to the other (from reliability to safety, from predictions to worst-case assumptions) and still have the idea that you are attacking the same critical system? • How to specify the different quality attributes affecting a critical system?
Performance analysis ? ? Security analysis Multi-model-based analysis Performance Model PM ’ System Security Model
Multi-model-based analysis • We need to keep the various models (of the same system, used to model different concerns) “synchronized” • By reflecting changes in a model into other models • We need to manage many models synchronization
Our current research • Architecture-based multi-model-based analysis • different ADLs exist to describe different analysis concerns • Models are synchronized via model transformation techniques • A kernel language acts as a pivot language
ADL3 ADL3 ADL3 ADL3 ADL2 ADL2 ADL2 ADL2 ADL1 ADL1 ADL1 ADL1 ADL4 ADL4 ADL4 ADL4 kernel metamodel DUALLY conceptual idea [TSE2010, SOSYM2010] New ADL
A C B D D ’ A C A0 B ’ D D Main Advantages Exchange language Regression model-based analysis, supported by model transformation, and via model differencing • Scalability • # of trasformations • change propagation Fault analysis Real-time analysis Model-checking
DUALLY [TSE2010, SOSYM2010] M 2 model model M 2 A0 semantic links semantic links B A higher-order transformation higher-order transformation transformation transformation
Challenges • Identification of the kernel language • The Kernel is minimal -> Kernel extension mechanisms • The source model may be more informative than the target model -> Lost-in-translation
Multi-model-based analysis: generalization • SA domain • Models share a core model of architectural concepts (the Kernel) • Goal: • To generalize outside the SA domain • To find a kernel for MBT/MBA notations • To find how existing MBT/MBA analysis techniques complement each other • To use model-differencing techniques to identify modified portions of the model
References • [TSE2010] Ivano Malavolta, Henry Muccini, Patrizio Pelliccione, Damien A. Tamburri: Providing Architectural Languages and Tools Interoperability through Model Transformation Technologies. IEEE Trans. Software Eng. 36(1): 119-140 (2010) • [SOSYM2010] R.Eramo, I.Malavolta, H.Muccini, P.Pelliccione, and A.Pierantonio. A model-driven approach to automate the propagation of changes among architecture description languages. To appear in International Journal on Software and Systems Modeling (SoSyM).