Wiki
Clone wikiMASDES / DAM
DAM profile overview
Dependability Analysis and Modeling (DAM) profile enables to specify dependability requirements and properties in UML-based models. It is aimed at supporting automatic transformations of UML models to formal models for dependability assessment purposes.
DAM profile relies on the OMG standard MARTE (Modelling and Analysis of Real-Time Embedded systems) profile. The following picture provides an overview of DAM and its relationships with MARTE.
- DAM UML_Extensions: includes the set of stereotypes
- DAM library: includes the basic and complex data-types used to define the stereotype tags
How to import DAM in the Eclipse-Papyrus framework
The DAM profile has been implemented as an Eclipse-Papyrus project. It is available to download as:
- a profile project (download here).
- a plugin (download here).
It has to be imported in the Papyrus framework to be used.
See how to import it as a profile project here and as a plugin here.
How to use DAM in an Eclipse-Papyrus project
DAM can be used to extend a UML model created as a Papyrus model project.
Profile application
In order to extend a UML model, created as a Papyrus model project, with the DAM profile extensions, we need to apply the profile first (see Figure below):
- Apply the DAM project
To apply the DAM profile, the "dam-profile" project needs to be opened (in the figure below, see the Project Explorer view - top-left).
Perform the following steps:
- Model Explore View (center-left): select the model root element
- Property Tab (bottom): select Profile option and the plus button
- The "Apply Profiles..." window is shown (center): add the "model.profile.uml" of the "dam-profile" project
The "Choose Profile(s) to apply" windows is shown (figure below, center):
- Select the root "DAM_Profile" to apply all the DAM profile
- Press the OK button
The DAM profile has been applied to the UML model (all the profile packages are shown in the "Profile application" canvas.
- Apply the DAM plugin
To apply the DAM profile (see figure below):
Perform the following steps:
- Model Explore View (center-left): select the model root element
- Property Tab (bottom): select Profile option and the plugin button
- The "Apply profiles from Papyrus repository:" window is shown: choose "Dam"
The "Choose Profile(s) to apply" windows is shown (figure below, center):
- Select the "DAM_UML_Extensions" package
- Press the OK button
The DAM profile has been applied to the UML model (the selected profiles packages are shown in the "Profile application" canvas.
Stereotype application
Once the profile has been applied, we can stereotype the model elements (see Figure below):
- Select the model element to be stereotyped (e.g., the Jamming use case)
- Property Tab (bottom): select Profile option and the add button
- The "Apply stereotype..." window is shown: add the desired stereotype. The stereotype is added to the Property canvas associated to the element.
Tagged-value setting
Each stereotype is characterized by a set of attributes (or tags) of simple or complex type (see Figures below). To set value(s) to a specific tag:
- Property View of the stereotyped model element: scroll down the tag list of a given stereotype (e.g., daStep)
- Select the tag to be set
The Figure below shows an example of tag (e.g., kind) of enumeration type, where the possible value can be chosen from the drop menu (bottom-right)
The Figure below shows an example of tag (e.g., fault) of complex type (e.g., daFault). In such a case the value(s) assignment has to be carried out in more steps corresponding to the two windows ("Edit daFault" and "Edit daFrequency).
DAM profile: detailed view
The DAM stereotypes are grouped according to a dependability domain model which consists of the following views:
- System::Core component-based view of the system under analysis
- System::Redundancy additional concepts to describe redundancy structures that may characterize a fault-tolerant system
- Threats
- Maintenance
A DAM stereotype can either extend directly one or more UML metaclasses (e.g., Core::daConnector) or specialize a MARTE stereotype (e.g., Core::daService).
The current implementation of the DAM profile includes also new stereotypes (with respect to the original definition, see References) that have been added for specifying survivability requirements. Concretely in the Core view:
- daResistance
- daRecognition
- daRecovery
- daServiceModes
- daChange
#References 1. S. Bernardi, J. Merseguer, D.C. Petriu: A dependability profile within MARTE. Software and System Modeling 10(3): 313-336 (2011). 2. S. Bernardi, J. Merseguer, D.C. Petriu, Model-Driven Dependability Assessment of Software Systems, Springer-Verlag, 2013. 3. OMG. UML Profile for MARTE, version 1.1, June 2011. 4. Eclipse-Papyrus.
#Copyright notice Copyright (C) 2014 María Berenguer, Simona Bernardi, José Merseguer <mariaberen@gmail.com, simonab@unizar.es, jmerse@unizar.es>
DAM profile - project and plugin - is free software: you can redistributed it and/or modify it under the terms of the Eclipse Public Licence 1.0.
DAM profile is distributed with the purpose of being useful and on "as is" basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
A copy of the Eclipse Public Licence should be included in the software download. If you don't find it, please see (http://projects.eclipse.org/content/eclipse-public-license-1.0).
Updated