Agent Orientation and Information Systems Eric Yu University of Toronto Presentation at Tsinghua University, Beijing, China July 8, 1999 Information Systems research at the University 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 2 @ Eric Yu 1999 Outline of this talk 1. An Emerging Paradigm in Computing 2. Agent Orientation for Enterprise Information Systems? 3. An Agent-Oriented Modelling Framework i* 4. Research Directions 3 @ Eric Yu 1999 AOIS workshop @ AutonomousAgents’99 Seattle USA May 1, 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 4 @ Eric Yu 1999 Part 1 Agent-Orientation as an emerging paradigm in Computing Programming Paradigms Agent Abstractions Agent Architectures 5 @ Eric Yu 1999 Programming 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] 6 Features of Languages and Paradigms Concept Procedural Language Object Language Multiagent Language Abstraction Building Block Computation model Design Paradigm Architecture Type Instance, Data Procedure/Call Tree of procedures Functional decomposition Modes of Behavior Terminology Coding Implement Class Object Method/Message Interaction patterns Inheritance and Polymorphism Designing and using Engineer Society, Team Agent Perceive/Reason/Act Cooperative interaction Managers, Assistants, and Peers Enabling and enacting Activate [Huhns AOIS’99] 7 Agent 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] 8 @ Eric Yu 1999 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] 9 @ Eric Yu 1999 Agent architectures Deliberative Agents Reactive Agents Hybrid Agents Agent Architectures Interacting Agents Other Approaches [Kirn AOIS’99] 10 @ Eric Yu 1999 Reactive Agents World Controller Stimuli S e n s o r Plans Pattern 1 Plan 1 Pattern 2 Plan 2 . . . . . . Pattern n Plan n E f f e c t o r Agent [Kirn AOIS’99] 11 @ Eric Yu 1999 Deliberative Agents World Cognition Inference Strategies Memory S e n s o r Goals Environment Model Utility Function Interpretation Domain Knowledge Planner E f f e c t o r Agent [Kirn AOIS’99] 12 @ Eric Yu 1999 Types of Information Agents “Standard” information agents and architectures are becoming available Application Program User Interface Agent Reg/Unreg (KQML) Broker Agent Reply Reply Query or Update In SQL Ontology Agent Reg/Unreg (KQML) Reg/Unreg (KQML) Mediator Agent Ontology (CLIPS) Mediated Query (SQL) Reg/Unreg (KQML) Mediated Query (SQL) Reply Schemas (CLIPS) Database Resource Agent Reply Database Resource Agent [Huhns AOIS’99] 13 @ Eric Yu 1999 Part 2 Agent-Orientation for Enterprise Information Systems The Changing Nature of Enterprise The Challenge for Enterprise Systems Why Agent-Orientation for Enterprise Systems 14 @ Eric Yu 1999 The 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 15 @ Eric Yu 1999 The Challenge for Enterprise Systems need to deal with conflicting needs and demands from many players / stakeholders From Integration to Cooperation Autonomous Islands 16 Cooperation “working together” Full Integration @ Eric Yu 1999 Why Agent-Orientation for Enterprise 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 17 @ Eric Yu 1999 Part 3 An Agent-Oriented Modelling Framework i* Understanding “Why” — intentionality Strategic Dependencies Strategic Rationales Analysis and Design Support Knowledge Representation 18 @ Eric Yu 1999 Modelling 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,... 19 @ Eric Yu 1999 Towards richer organization modelling How do we express and reason about motivations rewards different ways for achieving objectives • understanding “why” • opportunities and vulnerabilities … strategic business and social relationships 20 @ Eric Yu 1999 Consider one very successful enterprise... important organizational and social aspects are missing in conventional models 21 @ Eric Yu 1999 Modelling Strategic Actor Relationships and Rationales - the i* modelling 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 22 @ Eric Yu 1999 Wants and Abilities I want ... 23 I can provide ... @ Eric Yu 1999 A Strategic Dependency Model LEGEND actor 24 goal dependency task dependency resource dependency softgoal dependency @ Eric Yu 1999 Roles, Positions, Agents LEGEND agent position role A Strategic Dependency model showing reward structure for improving performance, based on an example in [Majchrzak96] 25 @ Eric Yu 1999 Some strategic dependencies between IKEA and its customers 26 @ Eric Yu 1999 A Strategic Rationale Model 27 @ Eric Yu 1999 Analysis 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] 28 @ Eric Yu 1999 Means-Ends Analysis Claims Handling Actor boundary Get accident info Handle claim Verify policy Settle claim Prepare offer Determine fault Whose fault? Settlement cost? Determine cost to settle D Witness 29 [Mylopoulos AOIS’99] D Doctor D Injury info D Sufficient treatment D Police Accident info Minimal repairs Appraise damage Appraiser @ Eric Yu 1999 Sample i* representation for an actor (in Telos) 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 30 @ Eric Yu 1999 The Strategic Rationale Model - a partial schema Title: Creator: idraw Prev iew : This EPS picture w as not s av ed w ith a preview inc luded in it. Comment: This EPS picture w ill print to a Pos tSc ript printer, but not to other ty pes of printers. 31 @ Eric Yu 1999 Contributions 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] 32 @ Eric Yu 1999 Ongoing 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 33 @ Eric Yu 1999 Related 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 34 @ Eric Yu 1999 Part 4 Research 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 35 (E. Yu) @ Eric Yu 1999 Research Direction #1 Requirements-Driven Information System 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 would requirements-driven IS Engineering look like?? [Mylopoulos AOIS’99] 36 @ Eric Yu 1999 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] 37 @ Eric Yu 1999 Where Are We?? Agent-oriented programming i* KAOS Z UML [Mylopoulos AOIS’99] 38 @ Eric Yu 1999 Where Do We Want To Be?? i* Agent-oriented programming Guiding Principle: Push concepts as far down as possible (…and see what happens!) [Mylopoulos AOIS’99] 39 @ Eric Yu 1999 Research Direction #2 Cooperative 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. 40 @ Eric Yu 1999 When is an IS cooperative? “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.” 41 @ Eric Yu 1999 Group Collaboration Facet Organizational Facet Systems Facet Three Facets of “Working Together” 42 @ Eric Yu 1999 Complementarity of... Organizational Facet and Group Collaboration Facet defines what is possible Execution Group Col l aborati on S upport Organi zati onal Model Model modifies 43 @ Eric Yu 1999 Towards a generic architecture for Cooperative Information Systems Organizational Facet Group Collaboration Facet Cooperation Support Layer Systems Facet Base Layer base layer system systems coop. support agent organizational coop. support agent group coop. support agent multi-facet coop. support agent repository 44 @ Eric Yu 1999 Research Direction #3 Intentionality 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” 45 @ Eric Yu 1999 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, ... 46 @ Eric Yu 1999 Summary 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 47 @ Eric Yu 1999 Sponsors 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 48 @ Eric Yu 1999