Wiki

Clone wiki

MASDES / 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 Overview

  • 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:

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).

DAM project application1

Perform the following steps:

  1. Model Explore View (center-left): select the model root element
  2. Property Tab (bottom): select Profile option and the plus button
  3. 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):

DAM project application2

  1. Select the root "DAM_Profile" to apply all the DAM profile
  2. 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):

DAM plugin application1

Perform the following steps:

  1. Model Explore View (center-left): select the model root element
  2. Property Tab (bottom): select Profile option and the plugin button
  3. The "Apply profiles from Papyrus repository:" window is shown: choose "Dam"

The "Choose Profile(s) to apply" windows is shown (figure below, center):

DAM plugin application2

  1. Select the "DAM_UML_Extensions" package
  2. 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):

Stereotype application

  1. Select the model element to be stereotyped (e.g., the Jamming use case)
  2. Property Tab (bottom): select Profile option and the add button
  3. 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:

  1. Property View of the stereotyped model element: scroll down the tag list of a given stereotype (e.g., daStep)
  2. 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)

Simple tags

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).

Complex tags

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

core

  • System::Redundancy additional concepts to describe redundancy structures that may characterize a fault-tolerant system

redundancy

  • Threats

threats

  • Maintenance

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:

  1. daResistance
  2. daRecognition
  3. daRecovery
  4. daServiceModes
  5. 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