Week3

Uploaded from authorPOINTLite
Views:
 
Category: Education
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

AOSE and ROADMAP: 

AOSE and ROADMAP

The story so far: 

The story so far Agents are a new paradigm for today’s open, distributed computing world Agents are not well-defined Some concrete languages and ‘architectures’ have been used Ad-hoc developments

Overview for today: 

Overview for today What is Software Engineering? Approaches to AOSE Agent concepts ROADMAP High-level models Later lectures Prometheus for design JACK as one method for implementation RAP/AOR and JADE Other methodologies Gaia, Tropos, MaSE, …

What is Software Engineering?: 

What is Software Engineering? Software Engineering is a discipline applied by teams to produce high-quality, large-scale, cost-effective software that satisfies the users’ needs, and can be maintained over time Software Development is a weaker term where standards, tools, processes, etc. may not be applied

What is Software Engineering?: 

What is Software Engineering? A handy person can build a shed in the backyard - but does it scale to a 30-floor office building? A scientist can write a program to do some calculations for an experiment - but does it scale to air traffic control?

Why Software Engineering?: 

Why Software Engineering? Repeat success (on time on budget) with assurance Capture expert knowledge in a process to allow industry developers/students to perform tasks that previously require experts in research areas Underappreciated by Computer Science

Software Lifecycle Stages: 

Software Lifecycle Stages Requirements Elicitation and Analysis Design Architectural design Detailed Design Implementation Testing Maintenance

Software Quality Characteristics: 

Software Quality Characteristics Correctness Reliability Robustness Usability Efficiency Modularity Reusability Traceability Maintainability Extendibility Measurement of Software Quality Factors Directly Measurable (e.g. correctness, reliability) Indirectly Measurable (e.g. usability)

Socio-technical systems: 

Socio-technical systems a system that includes hardware and software and people

Approaches to AOSE: 

Approaches to AOSE The vendor view Building on Agent Concepts Building on UML AUML

How to build an agent-based system?: 

How to build an agent-based system? architectures choice of component modules and how they interact design methodologies JSD - for “conventional” structured design UML and RUP - for Object Oriented Design ??? - for Agent Oriented Design development environments, e.g. AgentBuilder - IRS: JAM AAII: dMARS - Toshiba: Bee-GENT AOS: JACK - OMG: Grasshopper IBM: ABE and Aglets - Java, Jini, Oz, ….

Fundamental Agent Concepts: 

Fundamental Agent Concepts Roles Interactions Agents Goals Capabilities Services Tasks, activities, ...

Conceptual AOSE Approaches: 

Conceptual AOSE Approaches Gaia Tropos MASE Message Prometheus / ROADMAP … Custom Methodologies

Smart Home: Overview: 

Smart Home: Overview Home server(s) to handle the computing needs Broadband connection to the internet, and suitable wireless connections to devices / appliances at home Software agents on home server or internet co-operate to offer services

Smart Home: Co-operating Appliances: 

Smart Home: Co-operating Appliances Phone rings CD Player near the phone turns down the volume during the conversation After hang-up the volume resumes

Smart Home: Greeting Example: 

Smart Home: Greeting Example Agent version of ‘Hello World’ An agent is greeted by another agent and the greeting is evaluated as to whether it is good/appropriate Good greeting depends on people / situation, need much knowledge and reasoning

What is ROADMAP?: 

What is ROADMAP? AOSE methodology developed here Ph.D. thesis of Thomas Juan, started in 2002 Evolved out of GAIA Focussed on Requirements elicitation and analysis Plans to merge with Prometheus Prototype Rebel tool to support it

ROADMAP Models: 

ROADMAP Models

Greeting Goal Model: 

Greeting Goal Model

Greeting Role Model : 

Greeting Role Model Greetee: To be greeted by greeter Responsibilities: To be noticed by greeter; To perceive greeting Constraints: None Greeter: To greet another agent coming within environment Responsibilities: To notice greetee; To formulate greeting; To articulate greeting Constraints: Articulation within 10 seconds of noticing; Formulation must be appropriate to greetee + environment Evaluator: To evaluate the greeting Responsibilities: To observe greeting; To evaluate greeting; To publish report Constraints: timeliness

ROADMAP Analysis: 

ROADMAP Analysis Collect scenarios that socio-technical systems should encompass Create goal model to analyze system objectives and purposes Create role model to cover system requirements Iteratively improve the models until satisfactory

Goal Model: 

Goal Model Hierarchy of (functional / quality) goals Roles associated with goals Quality goals built in from the start Scenarios for details Replaces OO Use-Case Model, e.g. no system boundary for openness

Smart Home: Intruder Handling: 

Smart Home: Intruder Handling Computer vision in a networked home finds a stranger in the house. Mining of family images shows he is not a friend or relative. The house owner and his family and scheduled guests are warned to stay away via their smartphone, PDA or PC. Police are automatically notified, and mining of the police image database brings up the records of the suspect.

Smart Home enactment: 

Smart Home enactment Show video

Intruder Handling Goal Model: 

Intruder Handling Goal Model

Security Goal Model: 

Security Goal Model Generalize to higher-level goal diagram which easily lead to fire, flood and other security issues

Smart Home: Flight Delay: 

Smart Home: Flight Delay Need to wake up at 6am to catch flight Agent notices flight delay for 2 hours and re-set alarm to 8am Happy with extra sleep

Flight Delay Goal Model: 

Flight Delay Goal Model

Schedule Simulation Goal Model: 

Schedule Simulation Goal Model Generalize to higher-level goal diagram which easily lead to simulation of user's daily events

Role Model: 

Role Model Name, Description, Responsibilities and Constraints Older ROADMAP papers have a different view Current set under discussion

Exercise: 

Exercise Role model for security example

Environment Model: 

Environment Model Clear need to describe role (and agent) behaviour contingent on environmental context Decompose environment into Zones Affordances Trade-off between intelligent roles and intelligent environments, connection to perception and biology

Zone Hierarchy: 

Zone Hierarchy OO like relationship between environment zones and objects in the zones

Zone Description: 

Zone Description Each zone has Objects, i.e., chair Zone processes, i.e., weather Constraints Sources of uncertainty Assumptions made about the zone

Knowledge Model: 

Knowledge Model Domain knowledge decomposed into hierarchies of cohesive, low coupling knowledge components Identify and manage dependencies Knowledge components can have different representation based on their purposes

Example Knowledge Hierarchy: 

Example Knowledge Hierarchy

Knowledge Dependency Diagram: 

Knowledge Dependency Diagram Show knowledge components needed to achieve a goal and their inter-dependencies

Knowledge Issues: 

Knowledge Issues Local Ontologies Multi-agent system should allow individual agents to have differing ontologies Evolving knowledge components

Greeting Ontology (part): 

Greeting Ontology (part) greeting_type(formal). greeting_type(informal). greeting_type(welcome). greeting_type(insult). greeting_attribute(sound). greeting_attribute(time). greeting_attribute(location) greeting_attribute(person). greeting_evaluation(good). greeting_evaluation(bad). location(lab). location(home). isa(academic, person). isa(student, person). academic_type(honorary). academic_type(visitor). person_type(family). person_type(friend). person_type(stranger). elapsed_time(T1,T2,T) :- T is T2-T1.

Social Model: 

Social Model Want to express social norms E.g. greetee waits for greeting Team conventions at this level Contains policies, e.g. privacy, access

Agent model: 

Agent model To be discussed next week

UML: 

UML Becoming a standard for software The Unified Modeling Language (UML) has gained broad industry acceptance as the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. It simplifies the complex process of software design, making a "blueprint" for construction. The UML definition was led by Rational Software's industry-leading methodologists, Grady Booch, Ivar Jacobson, and Jim Rumbaugh. <from Rational publicity>

Example ACL spec: 

Example ACL spec

Example continued: 

Example continued

Interaction Model: 

Interaction Model Concretization of the Protocol model attached to the agent model Discussed next week Specify purpose, performatives, message exchange rules, message structure

Interaction Purpose component: 

Interaction Purpose component Interaction description Domain Objective Type Interaction protocol name Pre-conditions Post-conditions

Place for Perception: 

Place for Perception Value in accounting for it specifically

Services Model: 

Services Model Can connect to Web (and other) services

ROADMAP ‘Highlights’: 

ROADMAP ‘Highlights’ Abstract models appeal to a broad community Clear separation of analysis and design No commitment to a particular product or agent framework Allows for composite methodologies through a meta-model Compatible with Rational Unified Process

Scenarios - exercise tomorrow: 

Scenarios - exercise tomorrow Smart Bath Can’t wait for the bath to fill up?Don’t have a butler handy to do it for you? Smart Hydro is the world’s first automated bathing system. Simply send your desired bath settings to the Smart Hydro tub via your mobile phone, internet or Pocket PC and it will be ready for you to soak in when you get home. Settings include water temperature and level, bath essence or foam, and a variety of hydro-massage programs. The smart tub can also be programmed to call you on your mobile phone when your bath is ready. Not yet available in Australia Sunday Age, August 2005

iHouse (in Brazil): 

iHouse (in Brazil) Smart Bath Smart Door Smart Shower Smart Gate Smart Eye Smart Sauna Smart Shop Smart Control

ROADMAP Meta-model: 

ROADMAP Meta-model

Other Examples: 

Other Examples Secure Identity Management Pedagogical Agents Intelligent Lifestyles Real Estate Agent System 682 projects from 2004

Goal model: 

Goal model

Implementation Status: 

Implementation Status ROADMAP 1.0 being frozen Rebel Tool under enhancement ROADMAP.NET experiments

Pedant goals: 

Pedant goals

Pedant Goals ctd.: 

Pedant Goals ctd.

Conclusion: 

Conclusion Described meta-model for incorporating agent concepts into software projects Described a range of ROADMAP models Several active projects applying ROADMAP Very promising and exciting