|
This information is a copy of the quick guide publised on the i* wiki
The 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.
As 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 of i* usage are collected, this can facilitate interesting and useful comparisons.
This 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.
Set 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.
The relationships between actors are described by graphical association links between actors.
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.
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.
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.
The association link covers is used to describe the relationship between a
position and the roles that it covers.
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.
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.
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.
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.
>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.
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.
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:
The 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.
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.
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.
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.
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.
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.
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.
Yu01 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.