
This model focuses on the intentional relationships among organizational actors. It consists of a set of nodes and links connecting them, where nodes represent actors and each link indicates a dependency between two actors. The depending actor is called depender, and the actor who is depended upon is called the dependee. Hence, an SD model consists of a network of dependency relationships among various actors, capturing the motivation and the rationale of activities. i* distinguishes four types of dependencies. Three of these related to existing intentions – goal dependency, resource dependency and task dependency, while the fourth is associated with the notion of non-functional requirements, the so called softgoal dependency. In a goal dependency, an agent depends on another to fulfil a goal, without worrying how this goal will be achieved. In a resource dependency, an agent depends on another agent to provide a physical resource or information. In a task dependency, an agent depends on another to carry out a task. A softgoal dependency is similar to a goal dependency, except that a softgoal is not precisely defined. In i* we can also model different degrees of dependency commitment on the part of the relevant actors (open, committed, or critical). We can also classify actors into agents, roles and positions. An agent is an actor with concrete physical manifestations (a person or a system). A role is an abstract characterization of the behaviour of a social actor within some specialized context, domain or endeavor. A position is a set of roles typically played by one agent. Finally, i* supports the analysis of opportunities and vulnerabilities for different actors [6].
Suppose a situation in which a Client wishes to buy CDs and goes to a specialized store because its services are of good quality and it claims to have most (if not all) available titles on stock. If a client cannot find his/hers preferred title, the shop can happily place an order for it and notify the client upon its arrival. The shop has decided to improve its services by commissioning a new software system (SmartCD) to handle orders as well as providing an online catalogue (it would be so convenient!). In Figure , we have the Strategic Dependency (SD) model of the CD store case study.
At this early stage of requirements capture we have identified three actors: Client, Store and SmartCD. This last actor indeed corresponds to the system to be developed, handling orders, notifications of CD arrivals and providing the online catalogue. The dependencies between the Client and the Store actor can be find in Figure 1. The Client depends on the Store for getting the CD (resource dependency). However, he/she wishes the services to be of good quality (softgoal Quality[Service]) and the store to maintain a good stock of CDs (softgoal Good variety). Of course these goals are not yet precisely defined at this early stage, hence the use of softgoals. Turning to the relationship between actors Client and SmartCD, we notice that one of the goals for introducing the online system is to enable browsing facilities (goal dependency Browse Catalogue). In fact, the store may stock thousands of CDs, making it difficult (or even impossible) for a customer to manually search all of them. In the (unlikely) situation that a CD is not on stock, the SmartCD actor will be able to handle orders online (the system will inform what and how it should be done, hence task dependency Order new CD). This feature is much awaited, since filling orders manually (through a sales person) is time consuming. Of course, when the (ordered) CD arrives, the Client will be notified as soon as possible (actually there is a pre-defined procedure for dealing with it, hence the task dependency Notify CD Arrival). The Client expects the access to software system to be fast (softgoal Fast[Access]) and to use it to keep the stock updated (task Update Stock). Last but not least, the Store actor also has some expectations on the commissioned SmartCD system. It relies on the software system to process internet orders (goal Process Internet Orders) and to controls its stock (task Update Stock).