UML Profile for Goal-oriented Modelling Muhammad Rizwan Abid Supervising Professors: Daniel Amyot Stéphane Sotèg Somé.

Slides:



Advertisements
Similar presentations
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Advertisements

UML an overview.
Based on Powerpoint slides by Gunter Mussbacher, Gregor v. Bochmann User Requirements Notation (URN) SEG3101 (Fall 2010)
A UML Profile for Goal-Oriented and Use Case-Driven Representation of NFRs and FRs Sam Supakkul Titat Software LLC Lawrence Chung The.
SRDC Ltd. 1. Problem  Solutions  Various standardization efforts ◦ Document models addressing a broad range of requirements vs Industry Specific Document.
Detail Design Extending UML and Object Design. Object Design.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
Ontologies Reasoning Components Agents Simulations Agent Modeling Language: An Overview Wendell Véras Vinícius Remígio Jacques Robin.
Course Instructor: Aisha Azeem
NON-FUNCTIONAL PROPERTIES IN SOFTWARE PRODUCT LINES: A FRAMEWORK FOR DEVELOPING QUALITY-CENTRIC SOFTWARE PRODUCTS May Mahdi Noorian
Company LOGO Business Process Monitoring and Alignment An Approach Based on the User Requirements Notation and Business Intelligence Tools Pengfei Chen.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Objects What are Objects Observations
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
SEG4110 – Advanced Software Design and Reengineering
1 An Analytical Evaluation of BPMN Using a Semiotic Quality Framework Terje Wahl & Guttorm Sindre NTNU, Norway Terje Wahl, 14. June 2005.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Workshop on Integrated Application of Formal Languages, Geneva J.Fischer Mappings, Use of MOF for Language Families Joachim Fischer Workshop on.
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
 Copyright 2005 Digital Enterprise Research Institute. All rights reserved. Towards Translating between XML and WSML based on mappings between.
Integration of User Requirements Notation (URN) and DOORS with URNtoDOORS SEG3201 Fall 2006.
TOWARDS ADVANCED GOAL MODEL ANALYSIS WITH JUCMNAV Daniel Amyot, Azalia Shamsaei, Jason Kealey, Etienne Tremblay, Andrew Miga, Gunter Mussbacher, and Mohammad.
ArchiMate Authors : eSchoolink Group - ITNLU. Contents 1. What’s ArchiMate ? 2. Why ArchiMate ? 3. Main Benefits of ArchiMate 4. Layers of ArchiMate 5.
Software Engineering for Business Information Systems (sebis) Department of Informatics Technische Universität München, Germany wwwmatthes.in.tum.de Master’s.
1 GRL Tools JUCMNav vs. OpenOME CSI5112 – Project Winter 2008 Bo Peng, Li Chen, Yessine Daadaa.
Agenda 1. Introduction 2. Overview of SU-MoVal 3. OCL-based Model Validation 4. QVT-based Transformations 5. Demo of SU-MoVal 6. Conclusion and Future.
What is MOF? The Meta Object Facility (MOF) specification provides a set of CORBA interfaces that can be used to define and manipulate a set of interoperable.
Specializing and extending the UML
UML Profiles Eclipse ECESIS Project The UML Profile technology SOFTEAM 144 Ave des Champs Elysées Paris, France
1 Ontology-based Semantic Annotatoin of Process Template for Reuse Yun Lin, Darijus Strasunskas Depart. Of Computer and Information Science Norwegian Univ.
SaveUML System design. System overview Possible...
Abstract Use Case Map (UCM) scenarios are useful for elicitation and analysis of software requirements However, they must be used in cooperation with complementary.
Model Driven Development An introduction. Overview Using Models Using Models in Software Feasibility of MDA MDA Technologies The Unified Modeling Language.
A language to describe software texture in abstract design models and implementation.
Towards a Framework for Tracking Legal Compliance in Healthcare
Evaluation of Development Tools for Domain-Specific Modeling Languages D. Amyot, H. Farah, J.-F. Roy with contributions from Y. Chu and N. Janmohamed SAM.
Unified Modeling Language © 2002 by Dietrich and Urban1 ADVANCED DATABASE CONCEPTS Unified Modeling Language Susan D. Urban and Suzanne W. Dietrich Department.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
For Goal-Driven Business Process Modeling Saeed A.Behnam,  Daniel Amyot, Gunter Mussbacher SITE, University of.
A Lightweight GRL Profile for i* Modeling Presenter: Alexei Lapouchnian Daniel Amyot, Jennifer Horkoff, Daniel Gross, and Gunter Mussbacher {damyot,
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto.
Copyright © IBM Corp., | March | Creating Robust Scalable DSLs with UML Tutorial (172) James Bruck, Christian Damus IBM Rational Software.
1 Class Diagrams. 2 Overview Class diagrams are the most commonly used diagrams in UML. Class diagrams are for visualizing, specifying and documenting.
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
Adding a Textual Syntax to an Existing Graphical Modeling Language: Experience Report with GRL Vahdat Abdelzad, Daniel Amyot, Timothy Lethbridge University.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher(2009) with material from Amyot User Requirements Notation (URN)
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Modeling the ODP Computational Viewpoint with UML 2.0: The Templeman Library Example José Raúl Romero, Antonio Vallecillo Universidad de Málaga, Spain.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
October 1st 2015 Alexis Fouché 1, Florian Noyrit 1, Sébastien Gérard 1, Maged Elaasar 2 SYSTEMATIC GENERATION OF STANDARD COMPLIANT TOOL SUPPORT OF DIAGRAMMATIC.
Integrating FRs and NFRs: A Use Case and Goal Driven Approach Presented by Chin-Yi Tsai.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
1 Towards Integrated Tool Support for the User Requirements Notation Jean-François Roy
SysML v2 Formalism Requirements Formalism WG September 15, 2016.
Interface Concepts Modeling Core Team
SysML 2.0 Formalism Requirements and Potential Language Architectures
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
SysML v2 Formalism: Requirements & Benefits
Complexity Time: 2 Hours.
Business Process Measures
Daniel Amyot and Jun Biao Yan
Software Architecture & Design
Presentation transcript:

UML Profile for Goal-oriented Modelling Muhammad Rizwan Abid Supervising Professors: Daniel Amyot Stéphane Sotèg Somé

UML Profile for Goal-oriented Modelling Can UML be profiled to support goal-oriented modelling with a semantics rooted in a standard metamodel such as that of the Goal-oriented Requirement Language (GRL)? Can such a profile be implemented with Telelogic Tau G2? Problem

UML Profile for Goal-oriented Modelling The creation of a UML profile for GRL, where UML metaclasses are mapped in detail to GRL’s metaclasses. Standard guidelines have been followed while defining this profile. A proof of concept implementation, which demonstrates the feasibility of supporting such profile in Telelogic Tau G2 4.0 Illustration of typical usage of this profile with examples where GRL is used standalone in a model, and then where GRL diagrams are combined with selected UML diagrams in a model. Contributions

UML Profile for Goal-oriented Modelling Presentation Overview Motivation and background work GRL and current tool support (jUCMNav) UML profiles UML profile for GRL GRL profile in Tau: Stereotype Mechanism GRL profile in Tau: Metamodel Extension Mechanism Example Evaluation and Conclusions

UML Profile for Goal-oriented Modelling Motivation UML (Unified Modeling Language) does not address explicitly the modelling of goals and non-functional requirements. Some work in the area of UML profiles for goal modelling exist, but the solutions proposed suffer from many shortcomings, including non-compliance to minimal requirements such as: –R1: Integration with UML –R2: Diagram pollution avoidance –R3: Metamodel stability –R4: Implementability of the profiling mechanism

UML Profile for Goal-oriented Modelling Sample Related Work Dallons et al. : A Template-based Analysis of GRL –Does not satisfy any of our requirements Grangel et al. : UML Profile for Enterprise Goal Modelling –Satisfies R1 and partially satisfies R4 Supakkul and Chung : UML Profile for Softgoal by Use Case Driven Approach –Satisfies R2, partially satisfies R3, and R4 is not applicable Cysneiros et al. : Using UML to Reflect Non-Functional Requirements –Does not satisfies R1 and the remaining requirements are not applicable

UML Profile for Goal-oriented Modelling Goal-oriented Requirement Language –Part of ITU-T’s User Requirements Notation (URN - Z.151) –Subset of i* syntax + NFR Framework evaluations –Goal-oriented Requirement Language used to model Goals and stakeholders Requirements Alternatives Rationales –There are 3 main categories of concepts: Actors Intentional elements Links

UML Profile for Goal-oriented Modelling GRL Notation Elements

UML Profile for Goal-oriented Modelling jUCMNav An Eclipse-based GRL editor: –Supports the User Requirements Notation (GRL + UCM) –Allows users to create and maintain GRL models –Supports the analysis of GRL models –Supports the creation of links and annotations –Exports to various formats –Open source (EPL)

UML Profile for Goal-oriented Modelling

 Generic extension mechanism for tailoring UML to a particular domain.  Profiles can be used to adapt/extend the UML metamodel, but they do not allow the existing UML metamodel to be directly changed. UML Profile

UML Profile for Goal-oriented Modelling Identify a subset of the UML metamodel. Specify new “standard elements”. Specify “well-formedness rules” beyond. Specifies semantics, expressed in natural language, beyond what is specified by the identified subset of the UML metamodel. A UML Profile Can…

UML Profile for Goal-oriented Modelling Profiles can be created in one of two ways: 1)Stereotype Mechanism (SM) 2)Metamodel Extension Mechanism (MEM) Profiling Mechanisms

UML Profile for Goal-oriented Modelling Stereotype Mechanism Very straightforward way of customizing UML. Extension of basic UML elements. Allows simple customizations (custom name, custom attribute, custom appearance). –For instance, GRL task element can be represented as a stereotype of UML class. Limitations –GRL elements that are just stereotypes of existing UML elements can only be used in regular UML diagrams. –Non-GRL elements can be included in GRL diagrams. –Leads to unfriendly editors and confusing models.

UML Profile for Goal-oriented Modelling Metamodel Extension Mechanism More robust extension mechanism. Includes all functionalities of stereotype mechanism Also allows to customize non-basic UML elements such as diagrams. –E.g., GRL diagram can be represented as a metaclass extension of UML class diagram and then restrictions on the GRL diagram can be added to allow only GRL elements. More flexible but more complex way of profiling.

UML Profile for Goal-oriented Modelling Stereotype Summary for GRL Mapping of each GRL metaclass from a UML metaclass Narrows the scope of semantics Addition of new attributes Addition of new constraints without violating inherited constraints

UML Profile for Goal-oriented Modelling StereotypeStereotyped metaclass GRLspecModel GRLmodelElementNamedElement GRLLinkableElementClass ActorClass IntentionalElementClass IntentionalElementTypeEnumeration ImportanceTypeEnumeration ElementLinkRelationship ContributionAssociation ContributionTypeEnumeration DependencyAssociation DecompositionAssociation DecompositionTypeEnumeration

UML Profile for Goal-oriented Modelling Overview of Profile GRL Model Element

UML Profile for Goal-oriented Modelling Element Link

UML Profile for Goal-oriented Modelling GRL Spec

UML Profile for Goal-oriented Modelling Enumerations

UML Profile for Goal-oriented Modelling Tool Support Telelogic Tau G2 4.0 Supports Model Driven Development (MDD) in a UML-based environment Supports both Stereotype Mechanism and Metamodel Extension Mechanism for UML profile creation Available for all well-known operating systems including Microsoft Windows, Sun Solaris, Redhat Enterprise Linux and Citrix XPe Allows to extend the UML metamodel

UML Profile for Goal-oriented Modelling GRL Profile in TAU Stereotype Mechanism

UML Profile for Goal-oriented Modelling

GRL Profile in TAU Metamodel Extension Mechanism

UML Profile for Goal-oriented Modelling GRL Model –Contains all metaclasses used for GRL model creation. GRL Editor –Contains all of the information necessary to create a GRL editor, to specify which information can be kept by the editor, as well as to whom this information can be passed to. GRL Concrete Elements –Shows the metaclasses created for GRL elements. These metaclasses describe the actual GRL constructs. GRL Abstract Elements –Contains all of the stereotypes that represent the GRL profile elements. Four Sub-Packages

UML Profile for Goal-oriented Modelling

Example of Profile Usage Merchant and Customer Dependencies –Covers almost all the possible usage scenarios of GRL constructs –Includes GRL goal, softgoal, task, belief, resource, dependency, contribution, correlation, decomposition and actor –Includes four actors: Customer, Clerk, Bank and Merchant

UML Profile for Goal-oriented Modelling Example in jUCMNav

UML Profile for Goal-oriented Modelling Example in Tau G2 – GRL Profile

UML Profile for Goal-oriented Modelling Tau Support for Profiling (1/2) Provides predefined stereotypes to obtain advanced profile functionalities. Most work is wizard base and user friendly. Many options are in property view »makes the environment easier to use. Most of the UML metamodel classes are supported in our scope. Supports the association of customized icon with Enumeration literals which enable us to assign customized icons.

UML Profile for Goal-oriented Modelling Tau Support for Profiling (2/2) Allows to create a specific GRL editor with a customized tool palette. Provides start link and end link features that allows to navigate from one diagram construct to the other. Technical support is very quick and beneficial. Provides the re-usability of the constructs. This feature allows a UML diagram to re-use a reference to a GRL construct from another diagram. This means that any change in the re-used construct (e.g., the name or some other attribute) appears automatically on all its other occurrences in all the diagrams of the model.

UML Profile for Goal-oriented Modelling No construct or mechanism by which an Actor boundary can be created. Tau does not support all of the UML metamodel classes, e.g. Enumeration metaclass and the NamedElement metaclass. Tau lacks support for the association of customized multiple icons with Enumeration literals. The stereotypes that are associated with metaclasses other than the Class metaclass are neither applied nor selected automatically by the tool at runtime. Tools Limitations (1/3)

UML Profile for Goal-oriented Modelling The tool has a number of views to show the different aspects of the model with their limitations: –Diagram View: When a UML diagram and GRL diagram are created together, the diagram view reveals all of the diagrams but not the customized tool palette for the GRL diagram. Only the Class diagram tool palette is shown, as the GRL diagram is based on the Class diagram. –Standard View: Conversely, the standard view only shows the GRL diagram and its tool palette, but no other UML diagrams. Tools Limitations (2/3)

UML Profile for Goal-oriented Modelling Tools Limitations (3/3) Decompositions differ visually in the jUCMNav example from the Tau GRL profile. This is because there is no customized appearance for links in our Tau GRL profile. Tau does not support OCL validation for profiling. There is a notion of informal constraints in Tau that are limited to text.

UML Profile for Goal-oriented Modelling Profile Analysis (1/4) Integration with UML Satisfied –UML diagram and GRL Diagram connected with each other –Reusability of constructs

UML Profile for Goal-oriented Modelling Profile Analysis (2/4)

UML Profile for Goal-oriented Modelling Diagram Pollution Avoidance Satisfied –Separate GRL editor –Separate customized tool bar Profile Analysis (3/4)

UML Profile for Goal-oriented Modelling Metamodel Stability Satisfied –Considered metamodel is undergoing standardization at ITU-T Implementability of the Profiling Mechanism Satisfied –Implementation in both Stereotype Mechanism and Metamodel Extension Mechanism Profile Analysis (4/4)

UML Profile for Goal-oriented Modelling Integration With UML Diagram Pollution Avoidance Metamodel Stability Tool Support A Template based analysis of GRL Not Satisfied UML profile for Enterprise Goal Modelling Satisfied Not Satisfied Not Satisfied Partially Satisfied UML profile for softgoal by use case driven approach Satisfied Not Satisfied Partially Satisfied N/A Using UML to reflect non- functional requirements Not Satisfied N/A UML Profile for Goal-oriented Modelling (with Tau) Satisfied Comparison with Previous Work

UML Profile for Goal-oriented Modelling Tool-supported, UML profile for goal-oriented modelling will make GRL more usable and understandable for UML users. –The editor has some limitations in terms of visualization Thesis contains more examples and analysis results Thesis also contains step-by-step instructions on how to create profiles Conclusion

UML Profile for Goal-oriented Modelling Thank you! Muhammad Abid –Ph.D. student –University of Ottawa –Master of Computer Science thesis available upon request jUCMNav Tool –