Agent OrientationAgent Orientationandand
Information SystemsInformation Systems
Eric YuUniversity of Toronto
Presentation at Tsinghua University, Beijing, China
July 8, 1999
@ Eric Yu 19992
Information Systems research at theInformation Systems research at theUniversity of TorontoUniversity of Toronto
Dept. of Computer Science Databases, Information Systems Artificial Intelligence, Knowledge Rep. Software Engineering, Requirements Eng.
Dept. of Industrial Engineering Faculty of Management Faculty of Information Studies Knowledge Media Design Institute
@ Eric Yu 19993
Outline of this talk Outline of this talk
1. An Emerging Paradigm in Computing
2. Agent Orientation for Enterprise Information Systems?
3. An Agent-Oriented Modelling Framework i*i*
4. Research Directions
@ Eric Yu 19994
AOIS workshop AOIS workshop @ AutonomousAgents’99 Seattle USA May 1, 1999 @ AutonomousAgents’99 Seattle USA May 1, 1999 @ CAiSE*99 Heidelberg Germany June 14-15, 1999 @ CAiSE*99 Heidelberg Germany June 14-15, 1999
Invited speakers Katia Sycara (Carnegie-Mellon Univ.) Mike Huhns (Univ. S.Carolina) John Mylopoulos (Univ. Toronto) Cristiano Castelfranchi (Psych., NRC, Italy) Stefan Kirn (TU-Ilmenau, Germany)
2 panels, 9 contributed papers
http://aois.org
@ Eric Yu 19995
Part 1Part 1
Agent-Orientation as an emergingAgent-Orientation as an emergingparadigm in Computingparadigm in Computing
Programming Paradigms Agent Abstractions Agent Architectures
@ Eric Yu 19996
Programming ParadigmsProgramming Paradigms 1950’s -- Machine and assembly language 1960’s -- Procedural programming 1970’s -- Structured programming 1980’s -- Object-based and declarative programming 1990’s -- Frameworks, design patterns, scenarios, protocols, and
components (ActiveX/COM and Java Beans)
The trend has been from elements that represent abstract computations to elements that represent the real world
[Huhns AOIS’99]
@ Eric Yu 19997
Features ofFeatures ofLanguages and ParadigmsLanguages and Paradigms
Concept Procedural Language Object Language Multiagent Language
AbstractionBuilding BlockComputation modelDesign ParadigmArchitecture
Modes of BehaviorTerminology
TypeInstance, DataProcedure/CallTree of proceduresFunctional decomposition
CodingImplement
ClassObjectMethod/MessageInteraction patternsInheritance and PolymorphismDesigning and usingEngineer
Society, TeamAgentPerceive/Reason/ActCooperative interactionManagers, Assistants, and PeersEnabling and enactingActivate
[Huhns AOIS’99]
@ Eric Yu 19998
Agent AbstractionsAgent Abstractions Agent abstractions are mentalistic
• beliefs: agent’s representation of the world
• knowledge: (usually) true beliefs
• desires: preferred states of the world
• goals: consistent desires
• intentions: goals adopted for action
Multi-agent abstractions involve interactions• social: about collections of agents
• organizational: about teams and groups
• ethical: about right and wrong actions
• legal: about contracts and compliance
[Huhns AOIS’99]
@ Eric Yu 19999
Why Do These Abstractions Matter?Why Do These Abstractions Matter?
Because modern applications go beyond traditional metaphors and models in terms of their dynamism, openness, and trustworthiness virtual enterprises: manufacturing supply
chains, autonomous logistics electronic commerce: utility management communityware: social user interfaces problem-solving by teams
[Huhns AOIS’99]
@ Eric Yu 199910
Agent architecturesAgent architecturesAgent architecturesAgent architectures
AgentArchitectures
ReactiveAgents
HybridAgents
OtherApproaches
InteractingAgents
DeliberativeAgents
[Kirn AOIS’99]
@ Eric Yu 199911
Reactive AgentsReactive AgentsReactive AgentsReactive Agents
World
SSeennssoorr
EEffffeeccttoorr
Pattern 1
Pattern 2
Pattern n
Plan 1
Plan 2
Plan n
.
.
.
.
.
.
Stimuli PlansController
Agent
[Kirn AOIS’99]
@ Eric Yu 199912
Deliberative AgentsDeliberative AgentsDeliberative AgentsDeliberative Agents
World
SSeennssoorr
EEffffeeccttoorr
Agent
Memory
EnvironmentModel
Domain Knowledge
Cognition
Goals
UtilityFunction
Inter-pretation
Planner
Inference Strategies
[Kirn AOIS’99]
@ Eric Yu 199913
Types of Information AgentsTypes of Information Agents
“Standard” information agents and architectures are becoming available Ontology Agent
Application Program
MediatorAgent
BrokerAgent
Database Resource Agent Database Resource Agent
Query orUpdateIn SQL
Reply
Reg/Unreg (KQML)
Reg/Unreg(KQML)
Reg/Unreg(KQML)
Mediated Query (SQL)
Reply
Schemas(CLIPS)
Reply
Mediated Query (SQL)
Ontology(CLIPS)
User InterfaceAgent
ReplyReg/Unreg(KQML)
[Huhns AOIS’99]
@ Eric Yu 199914
Part 2Part 2
Agent-Orientation for Agent-Orientation for Enterprise Enterprise Information SystemsInformation Systems
The Changing Nature of Enterprise The Challenge for Enterprise Systems Why Agent-Orientation for Enterprise Systems
@ Eric Yu 199915
The Changing Nature of EnterpriseThe Changing Nature of Enterprise
distributed and networked people, organization, and work practices, not just
the technology! diversity, local autonomy, open-endedness
much uncertainty, incomplete knowledge & control
need flexibility change and evolution
constantly and rapid
@ Eric Yu 199916
The Challenge for Enterprise SystemsThe Challenge for Enterprise Systems
need to deal with conflicting needs and demands from many players / stakeholders
From Integration to Cooperation
FullIntegration
AutonomousIslands
Cooperation“working together”
@ Eric Yu 199917
Why Agent-Orientation for Why Agent-Orientation for Enterprise Information SystemsEnterprise Information Systems Agent orientation addresses the demands and
challenges of new enterprise environments and systems What would it mean?
We should develop Agent-Oriented... requirements engineering techniques, models design and architectural approaches implementation methods and technologies run-time and evolution support
@ Eric Yu 199918
Part 3Part 3
An Agent-Oriented Modelling An Agent-Oriented Modelling Framework Framework i*i*
Understanding “Why” — intentionality Strategic Dependencies Strategic Rationales Analysis and Design Support Knowledge Representation
@ Eric Yu 199919
Modelling for Enterprise SystemsModelling for Enterprise Systems
It is well-recognized that many types of modelling are required to deal with the various aspects of enterprise, e.g., activity modelling function modelling resource modelling information modelling organization modelling
e.g., CIMOSA, GERAM,...
@ Eric Yu 199920
Towards richer organization Towards richer organization modellingmodelling How do we express and reason about
motivations rewards different ways for achieving objectives
•understanding “why”•opportunities and vulnerabilities
… … strategicstrategic business and social business and social relationshipsrelationships
@ Eric Yu 199921
Consider one very successful Consider one very successful enterprise...enterprise...
important organizational and social aspects are missing in conventional models
@ Eric Yu 199922
Modelling Strategic Actor Modelling Strategic Actor Relationships and Rationales Relationships and Rationales
- - thethe i*i* modelling frameworkmodelling framework
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
@ Eric Yu 199924
A Strategic Dependency ModelA Strategic Dependency Model
actor
goal dependencytask dependencyresource dependencysoftgoal dependency
LEGEND
@ Eric Yu 199925
Roles, Positions, AgentsRoles, Positions, Agents
A Strategic Dependency model showing reward structure for improving performance, based on an example in [Majchrzak96]
agent
position
role
LEGEND
@ Eric Yu 199926
Some strategic dependencies between Some strategic dependencies between IKEA and its customersIKEA and its customers
@ Eric Yu 199928
Analysis and Design SupportAnalysis and Design Support
opportunities and vulnerabilities ability, workability, viability, believability insurance, assurance, enforceability node and loop analysis [Yu ICEIMT’97]
design issues raising, evaluating, justifying, settling based on qualitative reasoning
[Chung Nixon Yu Mylopoulos, forthcoming monograph]
29 @ Eric Yu 1999
Means-Ends AnalysisMeans-Ends Analysis
Settleclaim
Verifypolicy
ClaimsClaimsHandlingHandlingClaimsClaimsHandlingHandling
Handleclaim
Settlementcost?
Prepareoffer
Whosefault?
Get accidentinfo
Determinefault
Police
Witness
DoctorAppraiser
Determinecost to settle
Accidentinfo
Sufficienttreatment Injury
infoAppraisedamage
Minimalrepairs
DDD D
D
ActorActorboundaryboundary
[Mylopoulos AOIS’99]
@ Eric Yu 199930
Sample Sample i*i* representation for an actor representation for an actor (in (in TelosTelos)) TELL Class Physician IN PositionClass ISA ProfessionalPosition WITH
resDepends, committedTo fs: FeeForTreatment WITH dependee cm:ClaimsManager end
goalDepended, commitsTo td: $Treated(p.injury)$ WITH depender p:Patient end
taskDepends, committedTo tm: TakeMedication(p.med) WITH dependee p:Patient end
covers tp: TreatingPatient(p) bi: Billing(p.insurCo)
integrityConstraint correctClaimsManager: $cm=p.insurCo.claimsMgr$
end
@ Eric Yu 199931
The Strategic Rationale Model The Strategic Rationale Model - a partial schema- a partial schema
Title:
Creator:idrawPreview:This EPS picture was not savedwith a preview included in it.Comment:This EPS picture will print to aPostScript printer, but not toother types of printers.
@ Eric Yu 199932
ContributionsContributions
new ontology new types of reasoning applied to business process modelling, enterprise
modelling, requirements engineering, software process, organization analysis
Some applications by external groups software maintenance domain [Briand95, 97] CIM [Petit98]
@ Eric Yu 199933
Ongoing WorkOngoing Work
formal knowledge representation using a conceptual modelling language Telos
tool building - GUI, repository support knowledge libraries
• strategic knowhow
• case-based reasoning
• patterns
case studies coordination with other modelling techniques
@ Eric Yu 199934
Related WorkRelated Work
Goal-Oriented and Agent-Oriented Requirements Engineering (e.g., Feather87, Dardenne93, Chung93, Bubenko93, Dubois94, Anton97)see also ISRE, ICRE, RE j., REFSQ.
CSCW, groupware, workflow, COOCS (now GROUP)
Enterprise Integration (e.g., ICEIMT) AI, Distributed AI Organization Theories
@ Eric Yu 199935
Part 4Part 4
Research DirectionsResearch Directions
#1 Requirements-Driven Information Systems Engineering (J. Mylopoulos, E. Yu)
#2 Cooperative Information Systems(G. DeMichelis, E. Dubois, M. Jarke, F. Matthes, J. Mylopoulos,
M. Papazoglou, J. Schmidt, C. Woo, E. Yu)
#3 Intentionality Management (E. Yu)
36 @ Eric Yu 1999
Research Direction #1Research Direction #1Requirements-Driven Information Requirements-Driven Information System EngineeringSystem Engineering
Traditionally, IS Engineering has been implementation-driven. This means that the programming paradigm of the day dictated the
design and requirements paradigms. So, structured programming led to structured design and
(requirements) analysis, while object-oriented programming led to object-oriented design and analysis.
What wouldWhat would requirementsrequirements-driven-driven
IS Engineering look like??IS Engineering look like??
[Mylopoulos AOIS’99]
37 @ Eric Yu 1999
Why Requirements-Driven?Why Requirements-Driven?
Requirements analysis is arguably the most important phase of information system development; that’s where the most and the costliest errors are introduced in software systems.
The importance of detailed design and implementation will wear off over time, thanks to software reuse, COTS and the like; requirements analysis will always be there and will always be important.
Requirements analysis is the phase where technology meets the real world, where technical considerations have to be balanced against personal, organizational and social ones; this calls for special skills on the part of the requirements engineer, and makes the phase particularly challenging.
[Mylopoulos AOIS’99]
38 @ Eric Yu 1999
Where Are We??Where Are We??
Early
Early
requirements
requirements Late
Late
requirements
requirements
Architectural
Architectural
design
design Detaile
d
Detailed
design
design
Implementatio
n
Implementatio
n
i*i*
KAOSKAOS
ZZ
UMLUML
Agent-oriented Agent-oriented programmingprogramming
[Mylopoulos AOIS’99]
39 @ Eric Yu 1999
Where Do We Want To Be??Where Do We Want To Be??
Early
Early
requirements
requirements Late
Late
requirements
requirements
Architectural
Architectural
design
design Detaile
d
Detailed
design
design
Implementatio
n
Implementatio
n
i*i*Agent-oriented Agent-oriented programmingprogramming
Guiding Principle: Push concepts as far down as Guiding Principle: Push concepts as far down as possible (…and see what happens!)possible (…and see what happens!)
[Mylopoulos AOIS’99]
@ Eric Yu 199940
Research Direction #2Research Direction #2Cooperative Information SystemsCooperative Information Systems
“Cooperative Information Systems: A Manifesto” G. DeMichelis, E. Dubois, M. Jarke, F. Matthes, J. Mylopoulos, M.
Papazoglou, K. Pohl, J. Schmidt, C. Woo, E. Yu in Cooperative Information Systems: Trends and Directions, M. Papazoglou and G. Schlageter (eds).
Academic Press, 1997.
“A three-faceted view of information systems”G. DeMichelis, E. Dubois, M. Jarke, F. Matthes, J. Mylopoulos,
J. Schmidt, C. Woo, E. Yu. Communications of the ACM, December 1998.
@ Eric Yu 199941
When is an IS When is an IS cooperativecooperative??
“An information system is cooperative if it shares goals with other agents in its environment, such as other information systems, human agents and the organization itself, and contributes positively towards the fulfillment of these common goals.”
@ Eric Yu 199942
Three Facets of Three Facets of “Working Together”“Working Together”
GroupCollaborationFacet
OrganizationalFacet
SystemsFacet
@ Eric Yu 199943
Complementarity of...Complementarity of... Organizational Facet andOrganizational Facet andGroup Collaboration FacetGroup Collaboration Facet
Execution ModelOrganizationalModel
defines what is possible
modifies
GroupCollaborationSupport
@ Eric Yu 199944
Towards a generic architectureTowards a generic architecturefor Cooperative Information Systemsfor Cooperative Information Systems
GroupCollaborationFacet
OrganizationalFacet
Systems FacetBase Layer
CooperationSupport Layer
base layer systemsystems coop. support agentorganizational coop. support agentgroup coop. support agentmulti-facet coop. support agentrepository
@ Eric Yu 199945
Research Direction #3Research Direction #3Intentionality ManagementIntentionality Management Beyond information management
managing the networks of intentional attitudes and relationships – goals, beliefs, wants, abilities, commitments, …
managing choice, decision making, uncertainty, openness and freedom
is an elaboration on an important aspect of “knowledge management”
@ Eric Yu 199946
Intentionality Management (cont’d)Intentionality Management (cont’d)
Software development is but one example of “intentionality-intensive” work environments. other examples: enterprise management, virtual
enterprise, product design/development, “knowledge work” in general, ...
@ Eric Yu 199947
Summary and ConclusionsSummary and Conclusions
We are at the threshold of a new era for computing.
Agent-Orientation will give us
(not only) more powerful computing technologies (but also) more effective computing that will better meet
enterprise and human needs
• through use of social organization paradigm for computing
•and incorporation of social organizational analysis into overall framework for modelling analysis, and design
@ Eric Yu 199948
Sponsors and PartnersSponsors and Partners Natural Sciences and Engineering Research Council of
Canada (NSERC) Communications and Information Technology Ontario
(CITO) Institute for Robotics and Intelligent Systems (IRIS) Mitel Corporation IBM
For further information and references, please see http://www.fis.utoronto.ca/~yu