using meta-model-driven views to address scalability in i* models jane you department of computer...
TRANSCRIPT
![Page 1: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/1.jpg)
Using Meta-Model-Driven Views to Address Scalability in i* Models
Jane YouDepartment of Computer Science
University of Toronto
![Page 2: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/2.jpg)
2
Outline
Background Architecture of the view extension Features of the view extension
Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 3: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/3.jpg)
3
An Example
•1 out of four models from the London Ambulance Service (LAS) case study
•4 out of 10 actors in that model
•82 out of some 400 domain objects (elements and links)
![Page 4: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/4.jpg)
4
Scalability Issues in i*
Model a large-scale application into i* models
Present a large-scale i* model Perform analysis using i* models
![Page 5: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/5.jpg)
5
Research Objectives
A first step in address scalability—model representation
Seek a systematic method to break down a large and complex i* model into segments that are: self-contained comprehensible to human
Maintain inter-segment connections
![Page 6: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/6.jpg)
6
Outline
Background Architecture of the view extension Features of the view extension
Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 7: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/7.jpg)
7
Architecture of the View Extension
Domain Level Domain Level (Modeling (Modeling Features)Features)
Meta Level Meta Level (Representational (Representational
Constructs)Constructs)
ViewsViewClass Definition
View Map Syntax and Semantics
Reformulated i* framework
Selection Rule
View Type
View Maps
An i* baseline model
Qualified objects in a
specific view
View Name
Model layer (i*)
View layer (extension)
View management
![Page 8: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/8.jpg)
8
Outline
Background Architecture of the view extension Features of the view extension
Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 9: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/9.jpg)
9
The Original i* Framework
Strategic Dependency (SD) model: express the intentional relationship s among agents
Strategic Rationale (SR) model: show how processes are comprised of intentional elements of the agents
Adapted from Eric Yu’s 1994 PhD Thesis
![Page 10: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/10.jpg)
10
Reasons for Reformulation
The emergence of the Goal-oriented Requirements Language (GRL) framework
The separation of the actor diagram from the Strategic Dependency (SD) diagram
The release of the Organization Modelling Environment (OME) tool
Views in the proposed view extension are defined on i* meta-level concepts
![Page 11: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/11.jpg)
11
Baseline Model and View
The baseline model: a domain i* model which consists of the collection of i* objects (elements and links) structured according to i* syntax and semantics
View: presents a partial of the baseline model
![Page 12: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/12.jpg)
12
Four Basic View Types
Actor Class (AC) view: focusing on various forms of actors and the associations among the different forms of each actor
Strategic Dependency (SD) view: focusing on inter-actor dependencies
Strategic Rationale (SR) view: focusing on the internal rationales of the actors
Evaluation Results (EVLR) view: showing the results of the evaluation process
![Page 13: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/13.jpg)
13
A baseline model
Partial baseline model from the LAS case study
![Page 14: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/14.jpg)
14
The Basic AC View
Agent Instance
Specifies Link
Complete Composition Link
![Page 15: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/15.jpg)
15
The Basic SD View
External Link
![Page 16: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/16.jpg)
16
The Basic SR View
Decision Point
![Page 17: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/17.jpg)
17
The Basic EVLR View
Starting Label
![Page 18: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/18.jpg)
18
Outline
Background Architecture of the view extension Features of the view extension
Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 19: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/19.jpg)
19
View Type Properties
Category (AC | SD | SR ) Unique name (e.g. Single Actor
Focus SD view) Selection rule
One for each view type Formally defined in a Telos
compatible First Order Logic formulae
![Page 20: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/20.jpg)
20
AC View Types
One basic AC view type Six partial AC view types:
Plain-Actors-Only view Agents-Only view Abstract-Actors-Only view Single-Plain-Actor view Single-Network view Direct-Replaceable view
![Page 21: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/21.jpg)
21
An Original AC View
![Page 22: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/22.jpg)
22
Abstract-Actors-Only View
![Page 23: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/23.jpg)
23
Direct-Replaceable View
External relationship inheritance rule: automatically substitute one actor for
another according to the associations among actors
![Page 24: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/24.jpg)
24
SD View Types
Two basic view types: Plain-Actor-Based view Specified-Actor-Based view
Two partial view types (also work for SR views): Single-Actor-Focused SD view Pair-wise-Actors SD view
![Page 25: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/25.jpg)
25
Plain- and Specified-Actor-Based SD views
Actor with no plain form
Refine abstract dependum and
external link to instance ones
![Page 26: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/26.jpg)
26
SR View Types
Share same view types of SD A hierarchy of SR views based on the
Single-Actor-Focus SR view: Single-Actor-Internal view
Internal-Functional view Internal-Non-functional view
Single-Softgoal view Single-Actor-External view
Single-Affected-Dependum view Single-Affected-Actor view
![Page 27: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/27.jpg)
27
Single-Actor-Focus SR View
![Page 28: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/28.jpg)
28
Single-Actor-Internal View
![Page 29: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/29.jpg)
29
Single-Actor-External View
![Page 30: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/30.jpg)
30
Internal-Functional View
![Page 31: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/31.jpg)
31
Internal-Non-functional View
This case is also a Single-Softgoal view
![Page 32: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/32.jpg)
32
Single-Affected-Dependum View
The affected dependum
![Page 33: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/33.jpg)
33
Single-Affected-Actor View
This sample is taken from the Trusted Computing Group (TCG) casestudy—since we do not have such patterns in the LAS case study
The affected actor
![Page 34: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/34.jpg)
34
Outline
Background Architecture of the view extension Features of the view extension
Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 35: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/35.jpg)
35
Notations
![Page 36: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/36.jpg)
36
View Map
A generic view map (semantics)
A domain instance of the generic one
![Page 37: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/37.jpg)
37
An Domain View Map Sample
![Page 38: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/38.jpg)
38
Outline
Background Architecture of the view extension Features of the view extension
Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 39: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/39.jpg)
39
Embedded into Telos
To formally define the selection rules: the i* framework is embedded into Telos
To make the view extension extensible in a systematic manner: it is also embedded into Telos
![Page 40: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/40.jpg)
40
Sample Formal Representation of an i* model
% plain actor Ambulance Crew %TELL SimpleClass AmbulanceCrew_PlainActor IN ActorElementClass WITH
namedisplayName : “Ambulance Crew”
specifiedByLink: ACSpecifiesAC_Link
END% agent Ambulance Crew %TELL SimpleClass AmbulanceCrew_Agent IN AgentElementClass WITH
namedisplayName : “Ambulance Crew”
specifiesLink: ACSpecifiesAC_Link
children: AC_QualityService: AC_TimelinessService: AC_TimelinessArrivalLocation: AC_AccuracyAmbInfo …
[outDepLinks: AC_TALtoOptimalLink]
END
![Page 41: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/41.jpg)
41
Partial Meta-Model of the AC view
![Page 42: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/42.jpg)
42
Meta-Model of AC view classes
![Page 43: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/43.jpg)
43
Sample Selection Rule
internalNonfunctionalRule(v_a:InternalViewClass)::=
§o:ObjectClass· ov_a o{find_root_softgoals(a), {find_all_descendants(sg) | sg
find_root_softgoals(a) }}
The selection rule attached to the
Internal-Non-functional (SR) view:
Informal Description: An Internal-Non-functional view presents the
selectedactor, its top-level softgoals, and all the
descendants(reasoning structure) of these softgoals.
![Page 44: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/44.jpg)
44
O-Telos Query ClassesIndividual find_root_softgoals in GenericQueryClass isA SoftgoalElementClass with attribute,retrieved_attribute name : String attribute,parameter a : ActorElementClass attribute,constraint c : $ (this parent ~a) and
(not (exists l/LinkClass not (l in DependencyLinkClass) and
(l from this)) )$end
![Page 45: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/45.jpg)
45
O-Telos Query Classes (2)
Individual find_all_descendants in GenericQueryClass isA IntentionalElementClass with attribute,parameter ie : IntentionalElementClass attribute,constraint c : $ (this in find_direct_descendants[~ie/ie]) or
(exists d/IntentionalElementClass a/ActorElementClass(d parent a) and (this parent a) and(d in find_all_descendants[~ie/ie]) and (this in find_direct_descendants[d/ie]) ) $
end
![Page 46: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/46.jpg)
46
Outline
Background Features of the view extension
Architecture of the view extension Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 47: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/47.jpg)
47
Related work
Scalability handling in KAOS and EKD Multiple sub-models each grouping
related meta-concepts Using tool support to preserve
elements consistency and to maintain hierarchies of modeled elements (e.g., diagrams, concepts, etc.)
Provide text-based search engines
![Page 48: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/48.jpg)
48
Related Work (2)
Scalability Handling in OO and SADT: IDEF0 (a SADT approach) use node tree
to track relationships between diagrams Higraph-based visual formalization
introduces hierarchy to flat models Representation first approach taken by
most conceptual modeling researches
![Page 49: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/49.jpg)
49
Future work
Defining new view types Based on unused meta concepts (e.g.
routine, dependency strength, ect.) Based on domain knowledge-base
(e.g. attacker, defender, etc.) Seek heuristics for the modeling
process Broader applications
![Page 50: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/50.jpg)
50
Outline
Background Features of the view extension
Architecture of the view extension Reformulating i* using view View types View map
Representational constructs Related and future work Conclusions
![Page 51: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/51.jpg)
51
Conclusions
This work offers a systematic approach to present large scale i* models
The foundation lies in the notion of view
Proposed a view extension As a by-product, streamlined the i*
framework
![Page 52: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/52.jpg)
52
References
38 references, please see my thesis for detail
http://www.cs.toronto.edu/~janeyou/avs/master-thesis-v4.3.pdf
![Page 53: Using Meta-Model-Driven Views to Address Scalability in i* Models Jane You Department of Computer Science University of Toronto](https://reader036.vdocuments.us/reader036/viewer/2022081519/56649f2b5503460f94c46122/html5/thumbnails/53.jpg)
53
Discussion