A UML 2 Profile for Variability Models and their Dependency to Business Processes

Similar documents
A UML 2 Profile for Variability Models and their Dependency to Business Processes

UML Profiles Radovan Cervenka

Model Driven Development Unified Modeling Language (UML)

Object-Oriented Design

A first attempt to combine SysML requirements diagrams and B

Unified Modeling Language (UML)

Activity Diagram Written Date : September 02, 2016

UML big picture. Perdita Stevens. School of Informatics University of Edinburgh

UML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools

Chapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring

UML 2.0 State Machines

Termination Analysis of the Transformation UML to CSP

OO Analysis and Design with UML 2 and UP

The etrice Eclipse Project Proposal

Interactions A link message

Semantics-Based Integration of Embedded Systems Models

Tree Based Domain-Specific Mapping Languages

Business Process Model and Notation (BPMN)

Orthographic Software Modeling A Practical Approach to View Based Development

SUMMARY: MODEL DRIVEN SECURITY

Formal Process Modelling

Enterprise Architect Training Courses

Chapter 8: Enhanced ER Model

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network

Comparison of Simple Graphical Process Models

Goals of the Lecture Constraints

Object-Oriented Theories for Model Driven Architecture

Applying MDA Modeling to Development of Real-Time Software

Software Engineering from a

Thomas Bleier, Zhendong Ma, Christian Wagner AIT Austrian Insitute of Technology

Unified Modeling Language 2

Process and data flow modeling

The Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling

SLIDES: Introductory Modeling Example Employing UML and OCL [UML: Unified Modeling Language, OCL:Object Constarint Language]

Software Architecture

UNIT II. Syllabus. a. An Overview of the UML: Visualizing, Specifying, Constructing, Documenting

Meta-Modeling and Modeling Languages

Model Migration Case for TTC 2010

Intro to Modelling and UML

Modeling the Evolution of Aspect Configurations using Model Transformations

Activities Radovan Cervenka

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A

Metamodeling with Metamodels. Using. UML/MOF including OCL

A COMPARATIVE ANALYSIS TO VALIDATE THE BENIFITS OF FORMAL VERSUS INFORMAL SOFTWARE MODEL TRANSFORMATION

Contents Contents 1 Introduction Entity Types... 37

CSSE 490 Model-Based Software Engineering: Introduction to Domain Engineering

Semantics of ARIS Model

Génie Logiciel Avancé - Advanced Software Engineering A Brief Revision of UML

2 nd UML 2 Semantics Symposium: Formal Semantics for UML

Transformational Design with

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Christian Doppler Laboratory

Physical Modeling of Data Warehouses using UML

Modeling Requirements

Unified Modeling Language (UML)

Towards OntoUML for Software Engineering: Transformation of Kinds and Subkinds into Relational Databases

Rich Hilliard 20 February 2011

Database Systems. A Practical Approach to Design, Implementation, and Management. Database Systems. Thomas Connolly Carolyn Begg

Modeling Context-Aware RBAC Models for Business Processes in Ubiquitous Computing Environments

Design Pattern Instantiation Directed by Concretization and Specialization

Outline. A little history. Outline. The Unified Modeling Language Opportunities and Challenges for Formal Methods

OO Techniques & UML Class Diagrams

Applying UML Modeling and MDA to Real-Time Software Development

Modelling in Enterprise Architecture. MSc Business Information Systems

REPROTOOL Workflow (Textual documents in SW development) D3S Seminar

Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder

OCL for the Specification of Model Transformation Contracts

Models versus Ontologies - What's the Difference and where does it Matter?

Supplementary: CSE870: (Cheng) CSE870: Advanced Software Engineering: Extending and Using UML (Cheng) (Cheng, Sp2003) 1. Using and Extending UML

SCENARIO-BASED REQUIREMENTS MODELLING

SESE Tour 2018 Toulouse May 22

State Machine Diagrams

UML Start-Up Training UB1

The Unified Modeling Language (UML)

Unified Modeling Language I.

Kermeta tutorial. How to create a metamodel. François Tanguy, Didier Vojtisek. Abstract

Introduction to UML What is UML? Motivations for UML Types of UML diagrams UML syntax Descriptions of the various diagram types Rational Rose (IBM.. M

On Using UML Profiles in ATL Transformations

Model driven Engineering & Model driven Architecture

UNIT-II Introduction to UML

Model Migration Case for TTC 2010

CISC 322 Software Architecture

Reverse Engineering Process for Extracting Views from Domain Ontology

Motivation: Model-driven. driven Engineering. Semantics of Model Transformation. Reiko Heckel University of Leicester, UK

Outline. Computer Science 331. Three Classical Algorithms. The Sorting Problem. Classical Sorting Algorithms. Mike Jacobson. Description Analysis

Semantic Information Modeling for Federation (SIMF)

3rd Lecture Languages for information modeling

Hippo Software BPMN and UML Training

12 Tutorial on UML. TIMe TIMe Electronic Textbook

Introduction to MDE and Model Transformation

Appendix D: Mapping BPMN to BPD Profile

IMCE MOF2 / OWL2 Integration

AMABULO - A Model Architecture for Business Logic

Approaches of using UML for Embedded System Design

An Extended Configurable UML Activity Diagram and a Transformation Algorithm for Business Process Reference Modeling

Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques. Fundamentals, Design, and Implementation, 9/e

Challenges for advanced domain-specific modeling. István Ráth. Budapest University of Technology and Economics

Software Design And Modeling BE 2015 (w. e. f Academic Year )

UML 2.5: Specification Simplification

Transcription:

A UML 2 Profile for Variability Models and their Dependency to Business Processes Birgit Korherr and Beate List Women s Postgraduate College for Internet Technologies Institute of Software Technology and Interactive Systems Vienna University of Technology korherr@wit.tuwien.ac.at, http://wit.tuwien.ac.at

Introduction into Variability Models Variability models define the variability of a product line It shows the different variation points and variants of a software product line. Variability models can be used during the different life cycle stages of software product lines Variability modelling is a domain specific modelling technique Continual integration into traditional software engineering. 2

Motivation and Goals Variability models are not integrated into an modelling framework like the Unified Modeling Language (UML). Variability models have also an impact on processes. Variabilities can change the process flow, e.g. in a car engine manufacturing process the decision if the variability manufacture a diesel engine or a petrol engine is chosen, changes the process flow. 1. Provide variability models to software developers in a UML notation 2. Show the dependency between variability models and business processes to make the relationship between structural models and behavioural models visible 3

Contribution The The UML profile for variability models...... can be easily created, presented and edited with existing UML modelling tools, as almost all newer UML tools support UML profiles.... represents variability requirements to software developers or process engineers in a formal and well-known modelling notation.... and its shown dependencies onto activity diagrams makes the relationship between variabilities and processes visible. 4

Outline A UML Profile for Variability Models Example of a UML Profile and its dependency onto UML 2 Activity Diagrams Related Work Conclusion 5

Unified Modeling Language 2.0 The Unified Modeling Language is a well-known modelling language for different purposes Consists of 13 Diagrams 6 structural diagrams 7 behavioural diagrams UML 2.0 Activity Diagram (AD) Designed for modeling business processes and flows in software systems Origin lies in the development of software Provides different extension mechanisms to adapt a diagram for the own purpose We have chosen the light-weight extension mechanism, called Profile 6

Introduction to UML Profiles UML 2 Profile allows the modeler to create own model elements within the UML specification, using: Stereotypes extend existing (meta-)classes preserve the syntax and semantics of extended elements Constraints apply restrictions to a stereotype e.g., pre- and postconditions, invariants Tagged Values Additional attributes for stereotype 7

The Metamodel of Variability Models 8

A UML Profile for Variability Models 9

Variability Dependency and General Set Variability Dependency Multiplicity Generalisation Set Mandatory 1 {complete, disjoint} Class Diagram UML Profile Alternative 0..1 {incomplete, disjoint} Alternative 1..* {complete, overlapping} Optional 0..* {incomplete, overlapping} 10

Dependency between Variability Models and Business Processes Variability models show the different variabilities of a software. Activity Diagrams are a part of the behavioural set of UML 2 diagrams show the control and data flow between different tasks. The two modelling techniques describe the same concepts variability model describes the structural view and the activity diagram the behavioural view. Mapping between these metamodels to examine in which way they are related to each other. 11

Example UML Profile and the Dependency onto UML 2 Activity? 12

UML Profile Variation Point Variant UML 2 AD Activity Partition Action 13

UML Profile Alternative (0..1) UML 2 AD Decision - Merge Node 14

UML Profile Alternative (1..*) requires UML 2 AD Fork - Join Node Control Flow 15

16

Related Work Rosemann et al. proposed configurable Event-Driven Process Chains (EPCs) as an extended reference modelling language. describes the configurability of a certain business process modelling language Clauss introduces a UML extension to support feature diagrams which are an extension for the explicit representation of variation points. integrates feature models in UML diagrams like the Use Case Diagram Becker developed a general metamodel for variability models on an examination of the most common concepts in variability modelling. describes variability models on a high-level 17

Conclusion UML 2 profile for variability models to: integrate the best concepts of variabilities and class diagrams in one model, and to overcome the gaps that variability models have no extension mechanism and no tool support. The UML profile for variability models can be easily created, presented and edited with almost all newer UML modelling tools. Dependency between the UML profile and UML 2 activity diagrams to make the relationship between structural models and behavioural models in all stages of the software developing process visible. 18