1 / 37

The UML for Engineering Agent Systems

The UML for Engineering Agent Systems. Michael Papasimeon and Clint Heinze Aeronautical & Maritime Research Laboratory DSTO Presented to Agents Victoria - May 2001. Outline of Talk. Architectural design [brief] (Clint) The AUML Specification – UML and Use Cases (Clint)

jabari
Télécharger la présentation

The UML for Engineering Agent Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The UML for Engineering Agent Systems Michael Papasimeon and Clint Heinze Aeronautical & Maritime Research Laboratory DSTO Presented to Agents Victoria - May 2001

  2. Outline of Talk • Architectural design [brief] (Clint) • The AUML • Specification – UML and Use Cases (Clint) • Design and Implementation - Extending UML to Design Jack Agents (Mike) • Tool Support (Mike) • UML Symbology for Agents (Mike/Clint) • Generalising to Different Types of Agents (Mike/Clint) • Questions

  3. Engineering Agent Systems The Unified Modelling Language (UML) is an obvious choice

  4. Why Obvious? • UML is mainstream and widely adopted • Good tool support • Many agent projects are < 20% agent • One modelling language for the whole project seems like a good idea • The UML is dynamic and developing fast • The AUML is on the way • Business modelling looks like agent modelling • Agent languages (JACK) are extensions of OO languages like (JAVA) • Agents Live in Object Oriented Environments

  5. Obvious Does Not Equal Useful • So let’s try it! • Explore suitability of the UML for the software engineering of agent systems • Allow the possibility of extensions and modifications to the UML as necessary • Consider the research and development activities of others • Many aspects of software engineering • Business Modelling • Knowledge Management • Architectural Design • Specification • Design and Implementation

  6. Architectural Design Is the UML useful for architectural design in agent systems?

  7. F/A-18 Hornet Component Interactions

  8. www.auml.org Small team – James Odell, Van Parunak et. al. Focus on agent interactions and architectural issues Presentation AOSE 2001 (next week) by Parunak and Odell Representing social structures in UML The AUML http://www.jamesodell.com/AOSE_2001-presentation.pdf played by ROLE AGENT * * 1..* consists of 1 employs 0..1 ENVIRONMENT GROUP 1..* supported by

  9. Specification Can the UML assist the software engineer in the specification of an agent system? C. Heinze, M. Papasimeon, and S. Goss. Specifying Agent Behaviour With Use Cases. In Proceedings of Pacific Rim Workshop on Multi-Agents, 2000.

  10. An Interactive Software System Software System

  11. Characters Interacting with a Synthetic Environment Synthetic Environment

  12. Tactical Behaviour 1 Military Decision Maker Model 1 Control Simulation Analyst Tactical Behaviour 2 Military Decision Maker Model 2 The Systems We Build Synthetic Environment Software System - Military Simulation

  13. Design and Implementation Can the UML assist the software engineer in the detail design and implementation of an agent system? M. Papasimeon, C. Heinze. Extending the UML for designing JACK agents. In Proceedings of Australian Software Engineering Conference (ASWEC) 2001 (to appear).

  14. UML Extensions for JACK • JACK = Java + Extensions + Agent Architecture • UML can easily be used to model Java systems • UML can be extended to support JACK at the detailed design and implementation level using <<stereotypes>>

  15. JACK Agents - Detailed Design • High Level JACK Stereotypes • <<agent>>, <<plan>>, <<event>>, <<database>>, <<capability>> • Association Stereotypes • <<uses plan>>, <<handles event>>, <<posts>>, <<reads database>> • Low Level Stereotypes • <<key field>>, <<value field>>, <<indexed query>>

  16. database FactorialDb extends ClosedWorld { #key field int value; #value field long factorial; #indexed query get(int v, logical long f); #indexed query get(logical int v, logical long f); }

  17. Key Field Value Fields Indexed Query relevant context Reasoning Method Plan body

  18. Plan Body Specified with Activity Diagram

  19. JACK Capabilities in UML <<has>> <<has>> <<uses>> <<uses>> <<uses>> <<uses>> <<uses>>

  20. Representing Teams

  21. UML Tool Support for Jack Extensions

  22. Can easily write a Jack code generator RoseScript = VBScript + REI (VBA) Java Code Scripts already available - can be modified Jack Script will need to handle stereotypes correctly Only stubs in first cut Jack Code Generation

  23. Dialog Editor Fictitious Jack Plan Editor Common GUI Controls Rose Script Can Create Dialogs and Dialogs can Call Scripts Relevant Context Plan Body Can include Jack and Java Code Click Here To Display UML Activity Diagram Associated with this Plan Body

  24. Activity Diagram…with dMARS Theme

  25. Reuse and Knowledge Management Does the UML support reuse of software components across systems? Does the UML assist with knowledge management?

  26. Ongoing Investigation – Sneak Preview • Business Modelling • Agent Modelling • Domain Modelling • Knowledge Management • Reuse • At least one tangible ouput - Agent Symbology

  27. UML Agent Symbology

  28. Use Case Symbols

  29. Analysis Classes (Control, Boundary, Entity)

  30. MILITARY SIMULATION SOFTWARE Use Case Modelling

  31. AIR OPERATIONAL ANALYSIS BRANCH Business Modelling

  32. Fly To Target Pilot Run Simulation Defence Analyst Synthetic Environment Defence Simulator Launch Weapon Weapons Officer Agent Use Case Modelling

  33. Web Spider Fighter Controller Pilot B2B Agent Online Shopper Quake Bot Mobile Agent Medical Diagnosis Agent Agent Therefore, the symbol for Agent should be...

  34. Generalising Agent Extensions Is there are general set of agent extensions? What is it?

  35. Extending the UML for all BDI Agent? • Beliefs • Goals and Events • Plans and Intentions Can the UML be extended to accommodate many different types of Agents?

  36. ?

More Related