1 Towards Integrated Tool Support for the User Requirements Notation Jean-François Roy

Slides:



Advertisements
Similar presentations
International Telecommunication Union © ITU-T Study Group 17 Integrated Application of URN Daniel Amyot University of Ottawa, Canada
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
2009 – E. Félix Security DSL Toward model-based security engineering: developing a security analysis DSML Véronique Normand, Edith Félix, Thales Research.
Based on Powerpoint slides by Gunter Mussbacher, Gregor v. Bochmann User Requirements Notation (URN) SEG3101 (Fall 2010)
© 2008 by Borland Software Corp; made available under the EPL v1.0 | 17 March 2008 Introduction to the Graphical Modeling Framework Artem Tikhomirov, Borland.
Goal Modeling and GRL Gregor v. Bochmann, University of Ottawa
UML Profile for Goal-oriented Modelling Muhammad Rizwan Abid Supervising Professors: Daniel Amyot Stéphane Sotèg Somé.
SRDC Ltd. 1. Problem  Solutions  Various standardization efforts ◦ Document models addressing a broad range of requirements vs Industry Specific Document.
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Whole Platform Tesi di Dottorato di: RICCARDO SOLMI Università degli Studi di Bologna Facoltà di scienze matematiche, fisiche e naturali Corso di Dottorato.
Course Instructor: Aisha Azeem
Architecture Description Markup Language (ADML) What does it mean? Why should a tools vendor care?
Company LOGO Business Process Monitoring and Alignment An Approach Based on the User Requirements Notation and Business Intelligence Tools Pengfei Chen.
S CHOOL OF I NFORMATION T ECHNOLOGY AND E NGINEERING U NIVERSITY OF O TTAWA, C ANADA Daniel Amyot Q.18/17 Rapporteur SITE, University of Ottawa, Canada.
Business Requirements Using Unified Modeling Language Eric H. Castain, SVP Internet Services Group, Architecture Wells Fargo March 2005.
Integration of User Requirements Notation (URN) and DOORS with URNtoDOORS SEG3201 Fall 2006.
An Introduction to Software Architecture
TOWARDS ADVANCED GOAL MODEL ANALYSIS WITH JUCMNAV Daniel Amyot, Azalia Shamsaei, Jason Kealey, Etienne Tremblay, Andrew Miga, Gunter Mussbacher, and Mohammad.
Deutsches Elektronen-Synchrotron DESY Helmholtz Association of German Research Centres Hamburg, Germany The European X-Ray Laser Project.
1 GRL Tools JUCMNav vs. OpenOME CSI5112 – Project Winter 2008 Bo Peng, Li Chen, Yessine Daadaa.
Tools for Diagrammatic Specifications Stian Skjerveggen Supervisors: Yngve Lamo, Adrian Rutle, Uwe Egbert Wolter.
Integrated Development Environment for Policies Anjali B Shah Department of Computer Science and Electrical Engineering University of Maryland Baltimore.
Jan 20-21, 2005Weiss and Amyot, MCETECH 051 Designing and Evolving Business Models with the User Requirements Notation Michael Weiss (Carleton University)
Exploring the Intentional Dimension during Software (Architecture) Design adding the “why” and the “who/where” to the “what” and the “how” Daniel Gross.
S CHOOL OF I NFORMATION T ECHNOLOGY AND E NGINEERING U NIVERSITY OF O TTAWA, C ANADA Daniel Amyot Q18/17 (URN) Rapporteur User Requirements.
1 Presentation and tool by Jason Kealey University of Ottawa CSI5180 Automatic conversion of Use Cases to Use Case Maps.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Abstract Use Case Map (UCM) scenarios are useful for elicitation and analysis of software requirements However, they must be used in cooperation with complementary.
Selected Topics in Software Engineering - Distributed Software Development.
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.
Miguel Garzón, University of Ottawa Based on material from: Mussbacher and Amyot User Requirements Notation (URN) Part 1: Goal-oriented Requirement.
Hybrid Transformation Modeling Integrating a Declarative with an Imperative Model Transformation Language Pieter Van Gorp
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,
ModelPedia Model Driven Engineering Graphical User Interfaces for Web 2.0 Sites Centro de Informática – CIn/UFPe ORCAS Group Eclipse GMF Fábio M. Pereira.
JUCMNav Updates Daniel Amyot March 26, Contributors Mainly: –Jason Kealey –Andrew Miga –Etienne Tremblay –Daniel Amyot Also: –Azalia Shamsaei –Gunter.
Graphical Modeling Framework (GMF) Richard C. Gronback Project Lead.
INFORMATION NETWORKING MODEL DSL James McAvoy and Yifeng Li CSI Information Networking Model DSL 1 Winter Term
A Metrics Program. Advantages of Collecting Software Quality Metrics Objective assessments as to whether quality requirements are being met can be made.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
Adding a Textual Syntax to an Existing Graphical Modeling Language: Experience Report with GRL Vahdat Abdelzad, Daniel Amyot, Timothy Lethbridge University.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher(2009) with material from Amyot User Requirements Notation (URN)
QPE A Graphical Editor for Modeling using Queueing Petri Nets Christofer Dutz.
Generating Software Documentation in Use Case Maps from Filtered Execution Traces Edna Braun, Daniel Amyot, Timothy Lethbridge University of Ottawa, Canada.
S CHOOL OF I NFORMATION T ECHNOLOGY AND E NGINEERING U NIVERSITY OF O TTAWA, C ANADA Daniel Amyot Q18/17 (URN) Rapporteur User Requirements.
Survey of Tools to Support Safe Adaptation with Validation Alain Esteva-Ramirez School of Computing and Information Sciences Florida International University.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect, V7.5 Module 18: Applying Patterns and Transformations.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
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.
Requirement Engineering with URN: Integrating Goals and Scenarios Jean-François Roy Thesis Defense February 16, 2007.
JUCMNav Milestone Five Quality Assurance Presentation.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
A framework that describes the activities performed at each stage of a software development project. A life-cycle or a software process is the organisational.
Decomposing Java Legacy Systems into Components Shimin Li and Ladan Tahvildari Software Technologies Applied Research Lab Department of Electrical & Computer.
Introduction to Visual Basic. NET,. NET Framework and Visual Studio
Avoiding Redundancy in the Management of Technical Documentation and Models: Requirements Analysis and Prototypical Implementation for Enterprise Architecture.
SysML v2 Formalism: Requirements & Benefits
Introduction to Eclipse Process Framework: EPF Composer and OpenUP
Daniel Amyot and Jun Biao Yan
Model-Driven Analysis Frameworks for Embedded Systems
The Extensible Tool-chain for Evaluation of Architectural Models
Chapter 5 Designing the Architecture Shari L. Pfleeger Joanne M. Atlee
An Introduction to Software Architecture
EMF Compare Ganymede Simultaneous Release
Metadata The metadata contains
Automated Analysis and Code Generation for Domain-Specific Models
Applying Use Cases (Chapters 25,26)
Presentation transcript:

1 Towards Integrated Tool Support for the User Requirements Notation Jean-François Roy Jason Kealey Daniel Amyot SITE, University of Ottawa

Outline Context Metamodel jUCMNav Integrating UCM and GRL Model Analysis Capabilities Future Work Demo

User Requirement Notation (URN) URN combines two views: - Use Case Maps (UCM): operational scenarios over architectural components - Goal Requirements Language (GRL): modeling goals, requirements, alternatives and rationales. URN language requirements defined in Z.150

Notations in isolation Tool support for each view in isolation:  UCMNav: Supports UCM notation, but has usability and maintainability issues  OpenOME: Supports multiple goal/agent notations including GRL No integrated solution for complete URN models

Motivation Develop a tool that supports both views Integrate these views by linking elements Provide model analysis features Support reusability of models

Metamodel Structure 2 metamodels: abstract and implementation 4 main packages: URN, URNcore, GRL, UCM URNcore package defines basic concept for both notations URN package defines links between UCM and GRL

Abstract Metamodel

From Abstract to Implementation Add visual elements: Attributes: - position (x, y) - size (height, width) - color - … Classes: - links routing Abstract elements common to both UCM and GRL - graphs - nodes - links - containers - container references

Implementation Metamodel

UCM Implementation Metamodel

jUCMNav Eclipse plug-in Open-source application available under the Eclipse Public License (EPL) Uses the Eclipse Modeling Framework (EMF) and the Graphical Modeling Framework (GEF) First developed as a replacement for UCMNav User interface follows Eclipse standards

Basic Editing Features jUCMNav takes advantage of the Eclipse views (hierarchical/graphical outline, properties, resources) Improved usability: drag & drop editing, group manipulation, unlimited undo/redo, … Multiple element references Autolayout mechanism Only allows the creation of syntactically valid models jUCMNav

Reusability: GRL Catalogues Export GRL definitions for reuse in other models Catalogue Catalogue name, Description, Author Intentional Element Id, Name, Description, Type, Decomposition Type Decomposition Name, Description, Source id, Destination id Contribution Name, Description, Source id, Destination id, Contribution type, Correlation Dependency Name, Description, Dependee id, Depender id

Integrating UCM and GRL Provides traceability links between elements of both notations Used during model analysis Improved consistency between views

Supported URN Links - Intentional Elements  Responsibilities - Intentional Elements  Components - Intentional Elements  Maps - Actors  Components - Actors  Responsibilities - Actors  Maps - Others to come

GRL Strategies User defined sets of initial evaluations Evaluation propagated in the model Implemented using the strategies view Numerical interpretation of the satisfaction levels Evaluation of the impact of strategies on the operational and architectural aspects, using URN links

Numerical Evaluation Evaluation between -100 and 100. E = > Denied -100 Weakly Denied E = 0 -> Undecided 0 Weakly Satisficed 100 -> Satisficed

Propagation Algorithm Developed a new propagation algorithm for numerical evaluations Supports automatic conflict resolution Uses all link types to calculate the evaluation Decompositions, Contributions and Dependencies.

Decompositions Calculated as a standard And/Or graph And Decomposition Or Decomposition

Contributions Suppose E, the evaluation value of an intentional element after the decomposition calculation with N contributions. For each contribution, convert the contribution level to the corresponding factor (LEV): Make = 1 Help = 0.5 Some Positive = 0.25 Unknown = 0 Some Negative = Hurt = -0.5 Break = -1

Contributions Normalize non-zero source element evaluations for each contribution to a value between 0 and 100 (0 for denied, 100 for satisficed) – NEVAL Calculate the Total Contribution value (TCON): If (TCON >= 100): TCON = 99 Else If (TCON <= -100): TCON = -99 Calculate the target evaluation by adding TCON to evaluation E.

Examples

Dependencies Intentional element evaluation is set to the minimal value in the set of dependees evaluation or it current evaluation

Algorithm Implementation Strategy design pattern. Using Eclipse extension points, new algorithms can be added easily. public void init(EvaluationStrategy strategy, HashMap evaluations); public boolean hasNextNode(); public IntentionalElement nextNode(); public int getEvaluation(IntentionalElement element);

Actor Evaluation New evaluation to deal with negotiation between stakeholders. Helps analyzing and comparing the satisfaction levels of each actor based on the selected strategy Computed from priority and criticality of intentional element references bound to actors

Actor Evaluation Example Priority = Low Criticality = None Priority = None Criticality = High

jUCMNav Extensibility jUCMNav plugin to export/synchronize URN models to/with Telelogic DOORS

Future Work Add missing UCM notation elements Extend jUCMNav to support scenario definitions Export to Core Scenario Model format for performance modeling Add a simple data model compatible with SDL Add other analysis capabilities to measure the impact of strategic decisions on the scenario and architectural aspects of the model Work on further URN links and improve the modeling and analysis process based on those links Develop further analysis algorithms for the GRL strategies.

Demo