580 likes | 750 Views
Lecture 07. ITEC 4040 – Requirements Management Prof. Dawid Kasperowicz http://www.yorku.ca/dkasper. Agent-Oriented Software. Situated / Pro-Active Sense the environment and perform actions that change the environment Autonomous Have control over their own actions and internal states
E N D
Lecture 07 ITEC 4040 – Requirements Management Prof. DawidKasperowicz http://www.yorku.ca/dkasper
Agent-Oriented Software • Situated / Pro-Active • Sense the environment and perform actions that change the environment • Autonomous • Have control over their own actions and internal states • Can act without direct intervention from humans • Flexible • Respond to changes in the environment, goal-oriented, opportunistic, take initiatives • Social • Interact with other artificial agents and humans to complete their tasks and help others ITEC 4040 – Requirements Management
Why Agent Orientation? • The “world” (application environment) has become more distributed, autonomous, networked… • I.e.: Agent properties are being found in the world • E.g.: E-commerce, e-health, e-learning, group work, knowledge management • Question is: how to make the software systems meet these desired properties (in the world) • That’s the job of RE • Previously, there was no way of expressing these properties • RE languages need to be social • Most methodologies focus on the system and not on the relationships to the world ITEC 4040 – Requirements Management
Requirements Engineering • Relationship between system and environment • Bubenko (1980), Greenspan (1982), Jackson (1983) • Traditional focus: • Consistency and completeness • E.g.: “Three dimensions of RE” Pohl (1993) • Informal formal (representation) • Opaque Complete (specification) • Personal view common view (agreement) • Suitable for a more stable, non-distributed world • Recent: • Goals, scenarios, agents • See overview in van Lamsweerde (ICSE 2000) ITEC 4040 – Requirements Management
Ubiquity • The continual reduction in cost of computing capability has made it possible to introduce processing power into places and devices that would have once been uneconomic • As processing capability spreads, sophistication (and intelligence of a sort) becomes ubiquitous • What could benefit from having a process embedded in it…? ITEC 4040 – Requirements Management
Interconnection • Computer systems today no longer stand alone, but are networked into large distributed systems • The Internet is an obvious example, but networking is spreading its ever-growing tentacles… • Since distributed and concurrent systems have become the norm, some researchers are putting forward theoretical models that portray computing as a primary process of interaction ITEC 4040 – Requirements Management
Intelligence • The complexity of tasks that we are capable of automating and delegating to computers has grown steadily • If you don’t feel comfortable with this definition of “intelligence”, it’s probably because you are a human ITEC 4040 – Requirements Management
Delegation • Computers are doing more for us – without our intervention • We are giving control to computers, even in safety critical tasks • One example: fly-by-wire aircraft, where the machine’s judgment may be trusted more than an experienced pilot • Next on the agenda: fly-by-wire cars, intelligent braking systems, cruise control that maintains distance from car in front… ITEC 4040 – Requirements Management
Human Orientation • The movement away from machine-oriented views of programming towards concepts and metaphors that more closely reflect the way we understand the world • Programmers (and users) relate to the machine differently • Programmers conceptualize and implement software in terms of higher-level – more human-oriented – abstractions ITEC 4040 – Requirements Management
Global Computing • What techniques might be needed to deal with systems composed of 1010 processors? • Don’t be deterred by its seeming to be “science fiction” • Hundreds of millions of people connected by email, social networks, and phone once seemed to be “science fiction”… • Let’s assume that current software development models can’t handle this… ITEC 4040 – Requirements Management
Where does it bring us? • Delegation and intelligence imply the need to build computer systems that can act effectively on our behalf • This implies: • The ability of computer systems to act independently • The ability of computer systems to act in a way that representsour best interests while interacting with other humans or systems ITEC 4040 – Requirements Management
Interconnection and Distribution • Interconnection and distribution have become core motifs in IT • Interconnection and distribution, coupled with the need for systems to represent our best interests, implies systems that can cooperate and reach agreements (or even compete) with other systems that have different interests (much as we do with other people) ITEC 4040 – Requirements Management
Agents, a Definition • An agent is a computer system that is capable of independent account on behalf of its user or owner (figuring out what needs to be done to satisfy design objectives, rather than constantly being told) • An agent can be software, hardware and people working together to achieve a goal ITEC 4040 – Requirements Management
Multi-agent Systems, a Definition • A multi-agent system is one that consists of a number of agents, which interact with one another • In the most general case, agents will be acting on behalf of users with different goals and motivations • To successfully interact, they will require the ability to cooperate, coordinate, and negotiate with each other, much as people do ITEC 4040 – Requirements Management
Spacecraft Control • When a space probe makes its long flight from Earth to the outer planets, a ground crew is usually required to continually track its progress, and decide how to deal with unexpected eventualities. This is costly and, if decisions are required quickly, it is simply not practical. For these reasons, organizations like NASA are seriously investigating the possibility of making probes more autonomous – given them richer decision making capabilities and responsibilities ITEC 4040 – Requirements Management
Air Traffic Control • “A key air-traffic control system…suddenly fails, leaving flights in the vicinity of the airport with no air-traffic control support. Fortunately, autonomous air-traffic control systems in nearby airports recognize the failure of their peer and cooperate to track and deal with all affected flights” • Systems taking the initiative when necessary • Agents cooperating to solve problems beyond the capabilities of any individual agent ITEC 4040 – Requirements Management
Modelling Strategic Actor Relationships • The i* modelling framework • Strategic actors • Have goals, beliefs, abilities, commitments • Depend on each other for goals to be achieved, tasks to be performed, resources to be furnished • Are semi-autonomous – not fully knowable / controllable ITEC 4040 – Requirements Management
Strategic Dependency Relationship I can … Actor B D Car Be Repaired D I want … Actor A ITEC 4040 – Requirements Management
i* Objectives, Premises, Key Concepts means-ends alternatives D D • Actors are semi-autonomous, partially knowable • Strategic actors, intentional dependencies • Have choice, reasons about alternative means to ends wants and abilities ITEC 4040 – Requirements Management
i* Modelling Basics ITEC 4040 – Requirements Management
i* Modelling Basics ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example Soft Goal Operationalization's: Contribution Relationship ITEC 4040 – Requirements Management
i* Modelling Example Side-Effects to Soft Goals: Correlation Relationship ITEC 4040 – Requirements Management
i* Modelling Example “Strategic Dependency” Model Meeting Schedule Example ITEC 4040 – Requirements Management
i* Modelling Example ITEC 4040 – Requirements Management
i* Modelling Example Scheduling Meeting with Meeting Scheduler ITEC 4040 – Requirements Management
i* Modelling Example “Strategic Rationale” Model with Meeting Scheduler ITEC 4040 – Requirements Management
i* Modelling Analyzing Vulnerabilities Loop Analysis ITEC 4040 – Requirements Management
Ikea i* Example – Strategic Dependency Model LEGEND goal dependency task dependency resource dependency softgoal dependency actor ITEC 4040 – Requirements Management
Ikea i* Example – Wants and Abilities I can provide ... I want... ITEC 4040 – Requirements Management
Ikea i* Example – Strategic Dependencies ITEC 4040 – Requirements Management
Roles, Positions, Agents LEGEND agent position role • A Strategic Dependency model showing reward structure for improving performance, based on an example in [Majchrzak96] ITEC 4040 – Requirements Management
AO Methodology for RE - Motivation • Why a new methodology? • We can frequently see new areas using computer systems to create new or more productive environments • There are a large number of agents playing many different roles interact among them trying to achieve personal and common goals ITEC 4040 – Requirements Management
AO Methodology for RE - Motivation • In the health care domain, healthcare professionals, patients, and even family members would be supported in their interactions and decision making by various kinds of software agents • Each actor would be able to personalize their systems eventually implicating in refusing to provide some services ITEC 4040 – Requirements Management
AO Methodology for RE - Motivation • Focus has been on analysis and design • Very little coverage of requirements and what it means to do RE given the AO characteristics • We need to prevent history from repeating itself: • Requirements modelling concepts being driven from programming • Structured analysis from structured programming ITEC 4040 – Requirements Management
What is Aimed • To define an agent-oriented methodology for requirements elicitation that • Is based on the i* framework • Provides methods and tools for • Understanding and modelling the current state of the domain • Understanding and modelling the goals that underline the current process • New alternatives and systematically evaluating them • The methodology intends to be well defined so it can be repeatedly used in a consistent manner ITEC 4040 – Requirements Management
Methodology at a Glance • Identify the common terms used in the domain using the LEL • Identify the main agents involved in the process and how they relate to each other • Identify the main dependencies • Identify the man tasks • Identify the main goals • Identify the soft goals • Look for alternative ways system-to-be ITEC 4040 – Requirements Management
The i* Framework • Supports goal-orientation & agent-orientation • Deals with non-functional requirements • Concepts in i* graphical notation: • Intentional elements • Goal, task, resource, soft goal, belief • Intentional links • Dependency, means-ends, decomposition, contribution, correlation • Actors • Agent, role and position • 2 models • Strategic dependencies • Strategic rationales ITEC 4040 – Requirements Management
What is the LEL? • Aims to register the vocabulary used in the UofD • It is based on a system of symbols composed of Notations and Behavioural Responses • Notations specify the meaning of the symbol(denotation) • Behavioural Responses register the results driven from the symbol utilization (connotation) • Its construction is based on the minimum vocabulary and circularity principles ITEC 4040 – Requirements Management
Build a First Approach for the Social Context • Can and must happen in parallel with the LEL construction • Start picking up all the symbols of the LEL classified as subject. They are all strong candidates to be agents • For each one of the symbols that you picked up to be an agent, look if any other agent is presented in the notations of this symbol • Symbols Classified as verbs can be either a task/goal or a role. Be careful ITEC 4040 – Requirements Management
Example ITEC 4040 – Requirements Management
Identifying Dependencies • Whenever two symbols appear in the same sentence and both are subjects, you may be facing a relationship among actors • This kind of sentences may also hide tasks, goals and resources • For each actor already found ask: • On whom do you depend on to do your job? • What other people or devices do you interact with? ITEC 4040 – Requirements Management
Finding Tasks/Goals and Resource Depend. B A ITEC 4040 – Requirements Management