Download presentation
Presentation is loading. Please wait.
Published byBartholomew Osborne Modified over 9 years ago
1
A Lightweight GRL Profile for i* Modeling Presenter: Alexei Lapouchnian Daniel Amyot, Jennifer Horkoff, Daniel Gross, and Gunter Mussbacher {damyot, gunterm}@site.uottawa.ca jenhork@cs.utoronto.ca byrndaniel.gross@utoronto.ca
2
Motivation i* is a popular goal-modeling language, but it is not standard –Different understandings of what i* really is –Many styles, dialects and extensions that are incompatible –Much effort duplicated in tool support The Goal-oriented Modeling Language (GRL) is standardized as part of ITU-T’s User Requirements Notation (URN) Can i* be cast as a GRL lightweight profile? Potential benefits: –Standard representations (graphical and interchange) –Access to GRL tools and analysis techniques –Integration with Use Case Maps as part of URN –Extensibility to further explore new goal-oriented concepts A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 2
3
A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 3 Overview i* in a nutshell URN, GRL, and the jUCMNav tool i* and GRL: commonalities and differences Lightweight profile Tool support Conclusions
4
i* in a Nutshell Popular conceptual modeling language for capturing and analyzing socio-technical motivation and properties of complex systems in terms of (social) actors, their intentions, and their relationships Two major types of diagrams: –Strategic Dependency (SD) models, where actors and their dependencies are emphasized –Strategic Rationale (SR) models, where actor intentions and their relationships are emphasized Led to numerous extensions and adaptations (see the i* Wiki), many of which with tool support –At times, there are many variants of the language in the same research group! A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 4
5
User Requirements Notation - URN Semi-formal, lightweight graphical language for modeling and analyzing requirements in the form of goals and scenarios Combines two complementary notations –Goal-oriented Requirement Language (GRL) Based on i* and the NFR Framework –Use Case Maps (UCMs) scenario notation Standardized by the International Telecommunication Union –ITU-T Recommendation Z.151, November 2008 –URN metamodel, syntax, semantics, and model analysis –Same language family as SDL, MSC, TTCN-3, and ASN.1 URN models can be used to specify and analyze various types of reactive/telecom systems and business processes A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 5
6
Summary of GRL Graphical Syntax A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 6 Concrete syntax is already based on i*
7
GRL Metamodel: Core Concepts A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 7
8
User Requirements Notation, ITU-T Workshop, 2008p. 8 URN Tool: jUCMNav Free (EPL), open-source plug-in for Eclipse Supports most of GRL and UCM notation elements One model, multiple diagrams (scalability and reuse) Four GRL evaluation algorithms, with colour highlight –Qualitative and quantitative propagation mechanisms UCM path traversal mechanism Also: –Export performance models to Core Scenario Model –Integration with DOORS for Requirements Management –Export to, and viewing of Message Sequence Charts –Extensions for Business Process Modelling –Report generation (RTF, PDF, HTML) –Verification of user-defined (OCL) rules Enables restrictions on the language or on extensions of the language
9
A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 9 Propagation mechanisms inspired from the NFR framework, but automated
10
Commonalities and Differences Commonalities: actors, intentional elements, dependencies, contributions, and decompositions. Missing first-class concepts in GRL: GRL has only actors, whereas i* also defines the notions of roles, agents and positions. i* has many types of relationships between such actors (e.g. ISA). GRL does not distinguish between SD and SR models. GRL permissiveness: GRL is voluntarily permissive in how intentional elements can be linked to each other. However, i* proposes more specific and restrictive usages of relationships. For instance, an i* contribution link cannot have a task as a destination. Additional concepts in GRL: GRL contains additional first-class concepts such as strategies (for the analysis of GRL models), metadata, and URN links (which enable the creation of typed links between any GRL/UCM elements). A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 10
11
GRL Metamodel: URN Links/Metadata and GRL Strategies A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 11 Enables lightweight extensions to the language (new attributes and relationships) Enables the quantitative/qualitative analysis of goal models
12
A GRL Lightweight Profile... Makes use of metadata to support stereotyped elements –E.g.: adding the metadata {name=“ST_iStar”, value=“Agent”} to a GRL Actor turns it into an i* Agent Makes use of URN links to support new relationships –E.g.: adding a URN link whose type is “Plays” between teo stereotyped GRL actors Example with jUCMNav, where the presence of a URN link is indicated by a triangle, and the details shown when hovering A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 12
13
Makes use of OCL constraints on GRL and on the extensions previously discussed to restrict them to an i* style –The i* Wiki discusses strict (error) and loose (warning) rules for i* models Example: (Strict) Contribution links must only have softgoals as destinations. context grl::Contribution inv SoftgoalAsContributionDestination: self.dest.oclIsTypeOf(grl::IntentionalElement) and (self.dest.oclAsType(grl::IntentionalElement)).type= IntentionalElementType::Softgoal A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 13 A GRL Lightweight Profile...
14
User-Defined Constraints in jUCMNav Allows the creation, grouping, and selection of OCL constraints checked against URN models Report constraint violations in the Problems view No need to recompile the tool Based on the MDT-OCL Eclipse project Predefined library of OCL queries A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 14
15
Constraints can be created/deleted, grouped, and selected
16
Example of a constraint definition
17
18 Constraints Defined in the Profile... On intentional elements and links (3 strict, 3 loose) On actor boundaries and dependencies (3 strict, 3 loose) On new metadata elements and URN links (5 strict, 1 loose) –Example: (Strict) ISA (generalization) must be between two actors of the same type context grl::Actor inv ISAbetweenSimilarActors: self.getLinksToForType('ISA') -> forAll (a | a.oclIsTypeOf(grl::Actor) and (a.getMetadata('ST_iStar') = self.getMetadata('ST_iStar'))) (where getMetadata() and getLinksToForType() are predefined in our OCL library) A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 17
18
Invokes the verification of the selected constraints on the current URN model
19
Result summary Errors and warnings generated
20
A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 20 Clicking on a problem brings the violating model element on screen (in the Editor or in the Outline)
21
Conclusions GRL can be profiled through metadata, URN links, and OCL constraints Demonstrated with a lightweight GRL profile for i* –Captures concepts unique to i* –Restricts the usage of GRL (and extensions) to comply with i* guidelines –Supported by the jUCMNav tool Benefits –Casting of i* onto a standardized metamodel (URN’s) –Enables the use of GRL-like analysis for i* models (strategies) –Framework for the comparison of i* stylistic guidelines and evaluation algorithms –Common representation of i* models –Enables low-cost prototyping and exploration of new language features A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 21
22
For More Information URN Virtual Library: –http://www.UseCaseMaps.org/pub/ –Over 225 papers and theses jUCMNav (version 4): –http://jucmnav.softwareengineering. ca/jucmnav/ A Lightweight GRL Profile for i* Modeling, RIGiM’09, Nov. 2009p. 22
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.