Precedence Health Care The MAS – SE Gap: Bridging the Divide Michael Georgeff Precedence Health Care & Monash University Autonomous Agents and Multiagent.

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

Object-Oriented Application Frameworks Much of the cost and effort stems from the continuous re- discovery and re-invention of core concepts and components.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
Building an Operational Enterprise Architecture and Service Oriented Architecture Best Practices Presented by: Ajay Budhraja Copyright 2006 Ajay Budhraja,
Alternate Software Development Methodologies
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 3 – Building.
Transparent Robustness in Service Aggregates Onyeka Ezenwoye School of Computing and Information Sciences Florida International University May 2006.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
Variability Oriented Programming – A programming abstraction for adaptive service orientation Prof. Umesh Bellur Dept. of Computer Science & Engg, IIT.
Stuart Sim Chief Architect Global Education & research Sun Client Solutions Blog:
Introduction To System Analysis and Design
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Feb. 23, 2004CS WPI1 CS 509 Design of Software Systems Lecture #5 Monday, Feb. 23, 2004.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Design Patterns.
Reuse Activities Selecting Design Patterns and Components
System Engineering Instructor: Dr. Jerry Gao. System Engineering Jerry Gao, Ph.D. Jan System Engineering Hierarchy - System Modeling - Information.
Copyrighted material John Tullis 8/13/2015 page 1 Blaze Software John Tullis DePaul Instructor
Enterprise Resource Planning
a Service Oriented Architecture
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Copyright © 2002, Systems and Computer Engineering, Carleton University Intro.ppt * Object-Oriented Software Development Unit 1 Course.
The Design Discipline.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Framework: ISA-95 WG We are here User cases Studies
Object Oriented Analysis and Design Introduction.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
SWE 316: Software Design and Architecture – Dr. Khalid Aljasser Objectives Lecture 11 : Frameworks SWE 316: Software Design and Architecture  To understand.
CSE 303 – Software Design and Architecture
UNIT – II ARCHITECTING WEB SERVICES. WHAT ARE WEB SERVICES ? Web Services are loosely coupled, contracted components that communicate via XML-based interfaces.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
McGraw-Hill/Irwin © The McGraw-Hill Companies, All Rights Reserved BUSINESS PLUG-IN B17 Organizational Architecture Trends.
What is Service Oriented Architecture ? CS409 Application Services Even Semester 2007.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 09. Review Introduction to architectural styles Distributed architectures – Client Server Architecture – Multi-tier.
SOFTWARE DESIGN.
Progress SOA Reference Model Explained Mike Ormerod Applied Architect 9/8/2008.
Patterns and Reuse. Patterns Reuse of Analysis and Design.
Systems Analysis and Design in a Changing World, 3rd Edition
Common Set of Tools for Assimilation of Data COSTA Data Assimilation Summer School, Sibiu, 6 th August 2009 COSTA An Introduction Nils van Velzen
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
1 UNIT –II Architecting Web Service. 2 Why SOA? – business point of view  Information Technology (IT) workers face many challenges, including: Limited.
Introduction Better Faster Cheaper (pick any two) On-going issue that continues to motivate research in software engineering Applications: –continue to.
Service Oriented Architecture CCT355H5 Professor Michael Jones Suezan Makkar.
Chapter 5 McGraw-Hill/Irwin Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Enterprise Integration Patterns CS3300 Fall 2015.
Enterprise Architecture HOW COMPANIES ARE EXPLOITING INFORMATION TO THROUGH IT.
Service-Oriented Architecture: An Approach to Information Sharing Regional Information Sharing Conference San Diego, CA November 28, 2006 Scott Came SEARCH.
Independent Insight for Service Oriented Practice Summary: Service Reference Architecture and Planning David Sprott.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Providing web services to mobile users: The architecture design of an m-service portal Minder Chen - Dongsong Zhang - Lina Zhou Presented by: Juan M. Cubillos.
HNDIT Rapid Application Development
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
Week 6: Software Design HNDIT Software Engineering Software Design Learning Outcomes  Understand the activities involved in the Design process.
Service Oriented Architecture Enabling the Agile and Flexible Business of the 21 st Century.
DESIGN PROCESS AND CONCEPTS. Design process s/w design is an iterative process through which requirements are translated into a “blueprint” for constructing.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
CLASSIFICATION OF DESIGN PATTERNS Hladchuk Maksym.
By Jeremy Burdette & Daniel Gottlieb. It is an architecture It is not a technology May not fit all businesses “Service” doesn’t mean Web Service It is.
A service Oriented Architecture & Web Service Technology.
Why is Design so Difficult? Analysis: Focuses on the application domain Design: Focuses on the solution domain –The solution domain is changing very rapidly.
Enterprise Service Bus
EI Architecture Overview/Current Assessment/Technical Architecture
Introduction to Design Patterns
Distribution and components
Object Oriented Concepts -I
Inventory of Distributed Computing Concepts and Web services
Service Oriented Architecture (SOA)
Presentation transcript:

Precedence Health Care The MAS – SE Gap: Bridging the Divide Michael Georgeff Precedence Health Care & Monash University Autonomous Agents and Multiagent Systems, Estoril, Portugal, May 2008

Precedence Health Care We have not identified the value proposition for MAS across sufficient application domains to make it compelling; We have not translated the way we describe MAS into the framework used in conventional SE development environments We have not sufficiently focused on the key ideas, instead selling a whole package of complex concepts and mechanisms that go beyond the needs of mainstream SE; and We have not sufficiently well integrated our methodologies, frameworks and languages with existing standards and development infrastructures. Why aren’t we having an influence?

Conventional Hard-Wired Process Selection OfferP1 C2 Assess Customer OfferP2 OfferP3 OfferP4 Close Sale C1 C3 C4 OfferP1 OfferP2OfferP3 OfferP4 The names of the called processes and the conditions (C1, etc) determining which to call in which circumstances are included in the calling process, complicating design, validation, reuse, and change. Development of called and calling processes cannot proceed independently of one another.

Semantic encapsulation: Key to SE Assess Customer Close Sale OfferP1 OfferP2OfferP3 OfferP4 Offer Product Sell Process Maximum adaptability and reuse when the calling process is fully independent of the called processes. Should not need to know (i) the locations/names, (ii) the context of use, (iii) the data needs, or (iv) the implementation of other processes. It should be sufficient to state what service or outcome is requested and what service or outcome is provided. Calling process and each of the called processes should be able to be developed independently of one another by independent developers

AO: Goal-Directed Process Selection Assess Customer Close Sale Offer Product Goal: Offer Product Condition: C1 OfferP1 Conditions of use are contained in the called processes. Processes are “loosely coupled”– i.e., selection is made dynamically at run time based on context of use (applicability). The called processes can be created/changed independently of each other and the calling process. Benefits multiply when the requested goal is reused in other calling processes. Goal: Offer Product Condition: C2 OfferP2 Goal: Offer Product Condition: C3 OfferP3 Goal: Offer Product Condition: C4 OfferP4 Loosely Coupled

AO: Automatic Exception Handling Assess Customer Close Sale Offer Product Goal: Offer Product Condition: C1 OfferP1 Using goal-directed processing, no coding is needed in the calling process or the called processes for handling exceptions or failures. Conventional languages require explicit exception-handling links and routines to be coded into the process flows, rapidly turning into spaghetti code. Goal: Offer Product Condition: C2 OfferP2 Goal: Offer Product Condition: C3 OfferP3 Goal: Offer Product Condition: C4 OfferP4 If any selected process fails or is unsuccessful, the call is repeated (reposted) and any newly matching processes invoked. Retry on failure

Conventional SE: Hard-Wired Data Flow OfferP1 C2 Assess Customer OfferP2 OfferP3 OfferP4 Close Sale C1 C3 C4 OfferP1 OfferP2OfferP3 OfferP4 Data D1 Data D2 Data D3 Data D4 The data (D1, etc) needed by the sub-processes has to be passed from the calling process to the called processes (via parameters or interface dialogue). This requires the calling process to know what data the called processes need. This reduces process independence, complicating development, maintenance and change. Development of called and calling processes cannot proceed independently of one another.

AO: Common data shared across processes Assess Customer Close Sale Offer Product Goal: Offer Product Condition: C1 OfferP1 Common data is shared among processes, so that there is no need to explicitly code the data flow. The calling process is simple and independent of the data needs of the called processes. The called processes can therefore be created/changed independently of each other and the calling process. Benefits multiply when the requested goal is reused in other calling processes. Goal: Offer Product Condition: C2 OfferP2 Goal: Offer Product Condition: C3 OfferP3 Goal: Offer Product Condition: C4 OfferP4 Shared Data D (Beliefs) Get D1 Get D2 Get D4 Get D3

AO: Agents as Services Enterprise Services Bus Loosely Coupled Loosely Coupled Agents separate the interface from the implementation and provide a Services Interface to each other and to other components. Internal goals and shared data are localized to an agent. The Services Interface supports loosely coupled Services and Event-Driven processing. Semantics of goal- directed processing is extended to the service level. Seller Agent Shipping Agent

Precedence Health Care Influence the influencers: Get uptake from the Gartner’s, Forresters, and large early adopters of the technology. Transform the story into something that conventional SEs understand. Make it an extension or progression of service oriented and event driven architectures. Identify the weak points in SOA and show how MAS solves these problems. Focus on the concepts and methodologies, not new languages. Let the concepts and methodologies drive extensions to BPEL, SOA. Focus on and standardize the key ideas, preferably by extensions to existing concepts. Don’t try to sell the whole package. Or alternatively, give up on the enterprise level and focus instead on niche markets requiring high flexibility, high complexity software solutions. What do we have to do?