|2.0||October, 2006||Jennifer Horkoff, Eric Yu|
|1.0||August, 2006||Gemma Grau|
Table of contents
- 1. Purpose
- 2. Basic i* Notation
- 3. i* Glossary
- 3.1 Strategic Dependency (SD) Model
- 3.2 Strategic Rationale (SR) Model
- 4. References
1.1 EducationThe i* Quick Guide is intended to be both an introduction to i* for new users and a reference guide for experienced users. It is intended to be brief and readable, without an in depth exploration of the motivations for, usage, and underlying philosophies of the i* Framework.
1.2 CollaborationAs this guide is intended to be part of the i* collaborative wiki we encourage feedback and collaboration in terms of suggesting alternative i* syntax and semantics, including extensions to the Framework. However, in order to keep the Quick Guide brief and easily understandable, we suggest collecting i* adaptations, expansions, and further examples in separate document(s), namely the istarSyntaxVariations? page. If enough variations ends.jpg"}
of i* usage are collected, this can facilitate interesting and useful comparisons.
2. Basic i* NotationThis section provides only the graphical notation of i* syntax. An explanation of each notation can be found in the i* Glossary Section. Note that as i* models can be created by a variety of software tools, there can be small variations in notation appearance, mainly pertaining to color and line size.
2.2 Actor Associations
2.5 Contribution Links
2.6 Strategic Dependencies
2.7 Dependency Strengths
2.8 SR Decomposition Links
2.9 SR Means-End Links
3. i* Glossary
3.1 Strategic Dependency (SD) ModelSet of nodes and links where each node represents an actor and each link between two actors indicates that one actor depends on the other for something in order that the former may attain some goal. The SD model is used to express the network of intentional, strategic relationships among actors.
Active entities that carries out actions to achieve goals by exercising its know-how. We use the term actor to refer generically to any unit to which intentional dependencies can be ascribed. Agents, roles and positions are sub-units of a complex social actor, each of which is an actor in a more specialized sense.
Abstract characterization of the behavior of a social actor within some specialized context or domain of endeavor. Its characteristics are easily transferable to other social actors. The dependencies associated with a role apply regardless of the agent who plays the role.
Actor with concrete, physical manifestations, such as a human individual. We use the term agent instead of person for generality, so that it can be used to refer to human as well as artificial (hardware/software agents). An agent has dependencies that apply regardless of what roles he/she/it happens to be playing. These characteristics are typically not easily transferable to other individuals, e.g. its skills and experiences, and its physical limitations.
Intermediate abstraction that can be used between a role and an agent. It is a set of roles typically played by one agent (e.g., assigned jointly to that one agent). We say that an agent occupies a position. A position is said to cover a role.
3.1.2 Actor Association Links
The relationships between actors are described by graphical association links between actors.
220.127.116.11 Is-part-of (Part) Association
Roles, positions, and agents can each have subparts. Aggregate actors are not compositional with respect to intentionality. Each actor, regardless of whether it has parts, or is part of a larger whole, is taken to be intentional. There can be intentional dependencies between the whole and its parts, e.g., a dependency by the hole on its parts to maintain unity.
18.104.22.168 ISA Association
The is_a association represents a generalization, with an actor being a specialized case of another actor. Both ISA and Is-part-of can be applied between any two instances of the same type of actor.
22.214.171.124 Plays Association
The plays association is used between an agent and a role, with an agent playing a role. The identity of the agent who plays a role should have no effect on the responsibilities of that role, and similarly, aspects of an agent should be unaffected by the roles it plays.
126.96.36.199 Covers Relationship
The association link covers is used to describe the relationship between a position and the roles that it covers.
188.8.131.52 Occupies Relationship
The occupies link is used to show that an agent occupies a position, meaning that it plays all of the roles that are covered by the position.
184.108.40.206 INS Relationship
The ins association, representing instantiation, is used to represent a specific instance of a more general entity. An agent is an instantiation of another agent.
3.1.3 Strategic Dependencies
Actor who is depended upon on a dependency relationship.
The depending actor on a dependency relationship.
Element around which a dependency relationship centers.
We distinguish among four types of dependencies, based on the type of the dependum: Resource dependency, Task dependency, Goal dependency, Softgoal dependency.
220.127.116.11 Goal Dependency
In a goal dependency, the depender depends on the dependee to bring about a certain state of affairs in the world. The dependum is expressed as an assertion statement. The dependee is free to, and is expected to, make whatever decisions are necessary to achieve the goal (namely, the dependum). The depender does not care how the dependee goes about achieving the goal.
18.104.22.168 Task Dependency
In a task dependency, the depender depends on the dependee to carry out an activity. The dependum names a task which specifies how the task is to be performed, but not why. The depender has already made decisions about how the task is to be performed. Note that a task description in i* is not meant to be a complete specification of the steps required to execute the task. It is a constraint imposed by the depender on the dependee. The dependee still has freedom of action within these constraints.
22.214.171.124 Resource Dependency
In a resource dependency, the depender depends on the dependee for the availability of an entity (physical or informational). By establishing this dependency, the depender gains the ability to use this entity as a resource. A resource is the finished product of some deliberation-action process. In a resource dependency, it is assumed that there are no open issues to be addressed or decisions to be made.
126.96.36.199 Softgoal Dependency
In a softgoal dependency, a depender depends on the dependee to perform some task that meets a softgoal. A softgoal is similar to a goal except that the criteria of success are not sharply defined a priori. The meaning of the softgoal is elaborated in terms of the methods that are chosen in the course of pursuing the goal. The depender decides what constitutes satisfactory attainment of the goal, but does so with the benefit of the dependee's know how.
Vulnerability is implied with Dependency Link(s). The dependency link represents that the depender, by depending on the actor who is the dependee, is able to achieve goals that it was not able to achieve before, or not as well, or not as quick. However this results in the depender becoming vulnerable to the intentions of the dependee. This vulnerability is implied because the dependee may fail to accomplish the specified element.
The model distinguishes three degrees of strength for the dependency according to the level of vulnerability. These types of dependencies apply independently on each side of a dependency. They are described in the following:
- Open dependency (uncommitted): Not obtaining the dependum would affect the depender to some extent but not seriously. This dependency strength is represented by including an "O" on the appropriate side of the link.
- Committed dependency: Not obtaining the dependum would cause some action for achieving a goal to fail in the depender.
- Critical dependency: Not obtaining the dependum would cause all actions to fail that the depender has planned to achieve a goal. This dependency strength is represented by including an "X" on the appropriate side of the link.
3.1.5 Strategic Dependency Example Model: Buyer Drive E-Commerce from Yu01
3.2 Strategic Rationale (SR) ModelThe SR model is a graph, with several types of nodes and links that work together to provide a representational structure for expressing the rationales behind dependencies. The actors with the SD model are "opened up" to show their specific intentions. There are four types of nodes, based on the same distinctions made for dependum types in the SD model: goal, task, resource, and softgoal. There are three main classes of links internal to the i* actor: means-ends links, task decomposition links and contribution links.
3.2.1 Boundary / Actor Boundary
Actor boundaries indicate intentional boundaries of a particular actor. All of the elements within a boundary for an actor are explicitly desired by that actor. In order to achieve these elements, often an actor must depend on the intentions of other actors, represented by dependency links across actor boundaries. In turn, an actor is depended upon to satisfy certain elements, represented by a dependency link in the opposite direction.
The meanings of these elements are the generally the same as found in dependencies, with the exception that the satisfaction of elements may be accomplished internally.
188.8.131.52 Goals (Hard Goals)
Represents and intentional desire of an actor, the specifics of how the goal is to be satisfied is not described by the goal. This can be described through task decomposition.
Softgoals are similar to (hard) goals except that the criteria for the goal's satisfaction are not clear-cut, it is judged to be sufficiently satisfied from the point of view of the actor. The means to satisfy such goals are described via contribution links from other elements. The notion of softgoal satisfaction is described by the term satisficed meaning sufficiently satisfied. The converse is still described as denied.
The actor wants to accomplish some specific task, performed in a particular way. A description of the specifics of the task may be described by decomposing the task into further sub-elements.
The actor desires the provision of some entity, physical or informational. This type of elements assumes there are no open issues or questions concerning how the entity will be achieved.
A belief is a condition about the world that the actor holds to be true. The actual degree of truth (As indicated by evaluation labels) is influence by contributions from other beliefs. A belief is distinct from a goal in that the actor has no explicit desire to make the specified condition become true. Beliefs can effect other elements in the model via contribution links. Such links can effect other links, saying that this belief effects the effect of an element on another, or can have a direct effect on softgoals.
3.2.3 Means-Ends Links
These links indicate a relationship between an end, and a means for attaining it. The "means" is expressed in the form of a task, since the notion of task embodies how to do something, with the "end" is expressed as a goal. In the graphical notation, the arrowhead points from the means to the end.
3.2.4 Decomposition Links
A task element is linked to its component nodes by decomposition links. A task can be decomposed into four types of elements: a subgoal, a subtask, a resource, and/or a softgoal - corresponding to the four types of elements. The task can be decomposed into one to many of these elements. These elements can also be part of dependency links in Strategic Dependency model(s) when the reasoning goes beyond an actor's boundary.
- Task-Goal Decomposition: Subgoal. In this kind of decomposition it is not specified how the goal is to be achieved, allowing alternatives to be considered.
- Task-Task Decomposition: subtask. When a task is specified as a subcomponent of a (higher) task, this restricts the higher task to that particular course of action.
- Task-Resource Decomposition: resourceFor: The entity represented by the resource is not considered problematic by the actor. The main concern is whether it is available (and from whom, if it is an external dependency).
- Task SoftGoal Decomposition: softgoalFor: When a softgoal is a component in a task decomposition, it serves as a quality goal for that task, and thus guides (or restricts) the selection among alternatives in further decomposition of that and other tasks.
3.2.5 Contribution Links
A positive contribution strong enough to satisfice a softgoal.
Either a make or a help contribution, a positive contribution whose strength is unknown.
A partial positive contribution, not sufficient by itself to satisfice the softgoal.
A contribution to a softgoal whose polarity is unknown.
A negative contribution sufficient enough to deny a softgoal.
Either a break or a hurt contribution, a negative contribution whose strength is unknown.
A partial negative contribution, not sufficient by itself to deny the softgoal.
The parent is satisficed if any of the offspring are satisficed.
The parent is satisficed if all of the offspring are satisficed.
3.2.6 Strategic Rationale Example Model: Buyer Drive E-Commerce from Yu01
4. ReferencesYu01 Yu, Eric. Presentation: Strategic Actor Relationships Modelling with i*, December 13-14, 2001, IRST, Trento, Italy.
Yu95 E. Yu. Modelling Strategic Relationships for Process Reengineering Ph.D. Thesis. Dept. of Computer Science, University of Toronto. 1995.
The evolution of i* syntax, deviating from the original description in Yu95 has occurred over the course of many papers. Such work can be found in the i* Readings Roadmap.