The Tropos and MaSE Agent-Oriented Software Engineering Methodologies. Msury Mahunnah, Tallinn University of Technology

Similar documents
An Investigation of Agent Oriented Software Engineering Methodologies to Provide an Extended Methodology

4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology.

Agent-Oriented Software Engineering PORTO Methodology AIAD 2013/2014. António Castro and Eugénio Oliveira

Prometheus: A Methodology for Developing Intelligent Agents

Use Cases. Massimo Felici. Massimo Felici Use Cases c

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice

Enterprise architecture Manufacturing operations management Information systems in industry ELEC-E8113

A Review of Agent-Oriented Development Methodologies and Programming Languages/Frameworks

Agent-Oriented Software Engineering

Chapter 4 Software Lifecycle and Performance Analysis

Masters of Science in Software & Information Systems

COSC 3351 Software Design. Recap for the first quiz. Edgar Gabriel. Spring For the 1 st Quiz

Basic Unified Process: A Process for Small and Agile Projects

Object-Oriented Design Guidelines

Model-driven Software Development (MDSE) for the Cloud

Object-Oriented Systems Analysis and Design

Business Process (BPMN) Course

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

2. Analysis, Design and Implementation

Integrated Development of Distributed Real-Time Applications with Asynchronous Communication

How To Develop A Multi Agent System (Mma)

Designing Real-Time and Embedded Systems with the COMET/UML method

Table of Contents. Preface. Chapter 1 Introduction 1.1 Background. 1.2 Problem description. 1.3 The role of standardization. 1.4 Scope and objectives

Software Requirements Specification of A University Class Scheduler

Linking BPMN, ArchiMate, and BWW: Perfect Match for Complete and Lawful Business Process Models?

Business-Driven Software Engineering Lecture 3 Foundations of Processes

One and a half hours QUESTION PAPER MUST NOT BE REMOVED FROM THE EXAM ROOM AND MUST BE RETURNED UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE

What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process

Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page:

Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6

RUP Design. Purpose of Analysis & Design. Analysis & Design Workflow. Define Candidate Architecture. Create Initial Architecture Sketch

Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture

Dr. Pat Mirenda. Software Design Specification Document

A Software Development Platform for SOA

Chap 1. Introduction to Software Architecture

Software Architecture Action Guide. Why do we care about Software Architecture?

Designing and Deploying Messaging Solutions with Microsoft Exchange Server 2010 Service Pack 2 MOC 10233

Comparing Agent-Oriented Methodologies

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

Mastem: A Mathematics Tutoring Multi-Agent System

Sofware Requirements Engineeing

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Building Service-oriented User Agents using a Software Product Line Approach. Ingrid Oliveira de Nunes ionunes@inf.puc-rio.br

Frameworks of Process Improvement for Mobile Applications

Tool-supported Development with Tropos: The Conference Management System Case Study.

Table of Contents. CHAPTER 1 Web-Based Systems 1. CHAPTER 2 Web Engineering 12. CHAPTER 3 A Web Engineering Process 24

Software Engineering Reference Framework

Component Based Development Methods - comparison

AN OVERVIEW OF SYSTEMS ANALYSIS: SYSTEMS ANALYSIS AND THE ROLE OF THE SYSTEMS ANALYST. Lecture , Tuesday

UML Diagram Types. Use Cases do the Following. Use Case Diagram

- 5 days (30 PDUs) ITIL V3 Intermediate Capability - Planning, Protection and Optimization... 14

A Comparison of SOA Methodologies Analysis & Design Phases

5054A: Designing a High Availability Messaging Solution Using Microsoft Exchange Server 2007

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

Karunya University Dept. of Information Technology

The Agent Modeling Language (AMOLA)

Logical Data Models for Cloud Computing Architectures

UML TUTORIALS THE USE CASE MODEL

How To Develop A Multiagent System

Case Study Solutions. This appendix contains the solutions to the Acme Mining Company Case Study.

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT

Tropos: An Agent-Oriented Software Development Methodology

Towards an Agent Oriented approach to Software Engineering

Evaluating Agent-Oriented Software Engineering Methodologies

Software Architecture Document

Designing and Deploying Messaging Solutions with Microsoft Exchange Server 2010 Service Pack 2

International Journal of Software Engineering and Knowledge Engineering Vol. 11, No. 3 (2001) World Scientific Publishing Company

Lab Manual. Advanced Pr I IT 314

2. Analysis, Design and Implementation

10233B: Designing and Deploying Messaging Solutions with Microsoft Exchange Server 2010

Applying 4+1 View Architecture with UML 2. White Paper

3.1 Use Case Diagrams

Transcription:

The Tropos and MaSE Agent-Oriented Software Engineering Methodologies Msury Mahunnah, Tallinn University of Technology

Mailing list for the course aine.aom@lists.ttu.ee You can join at http://lists.ttu.ee/mailman/listinfo/aine.aom

The course webpages General information: http://maurus.ttu.ee/sts/?page_id=818 Lectures and workshops: http://maurus.ttu.ee/sts/?page_id=837

Last time The Prometheus agent-oriented software engineering methodology

Prometheus AOSE methodology developed at RMIT under the leadership of Lin Padgham:

The conceptual space

The Prometheus process Detailed design Architectural design System specification Scenarios Interaction diagrams Protocols Process actors Capability overview Analysis agent acquaintance System Agent agent grouping Event descriptors System goals actions, percepts messages shared data Data descriptions Initial Role descriptors Agent descriptors Capability descriptors Plan descriptors Key final design artefact intermediate design artefact input Code

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Percepts and Actions Agents are situated therefore need to define the interface(s) with the environment

Conference management system A collection of papers presented over several days Academics and students interested in presenting at the conference submit papers for consideration The papers must be submitted by a given deadline The papers are distributed by a program chair to members of the PC PC members may delegate to reviewers The reviews are completed by an internal deadline Papers are selected based on the reviews The authors are notified and provided with comments from the reviews Final copies are collected for publications

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Analysis Diagram

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Goal Diagram

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

System Roles Diagram

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Scenario

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Knowledge Coupling Key A W D role B X E knowledge C Y F role uses knowledge Z G role produces knowledge

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Agent Acquaintance : derivation A W D A D E B C F B X E G C Y F Z G

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Agent Descriptors Name Description Percepts responded to Actions executed Messages sent - to which agent, what content Messages received - from which agent, what content Internal events Knowledge used - external or shared internal Knowledge produced - external or shared internal Goals Roles included Creation/Destruction Cardinality (how many?)

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

System overview diagram

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Interaction Diagram Example with Alternatives Agents Messages Time Multiple scenarios/ variations Decision point Agent X Agent Y Agent Z message A message D message B message C message E message G message E These should be variations in scenarios develop in message protocol F message G specification

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Notation: AUML-2 Initiator Participant query-if x query-ref not-understood refuse failure x inform

Mapping Prometheus to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Analysis Diagram, System Roles Diagram Goal Diagram, Initial Role Descriptors, Scenarios Platformindependent computational design Platform-specific design and implementation Agent Acquaintance Diagram, Interaction, Protocol, System Diagram Event Descriptors Knowledge Coupling Data Descriptors Agent Descriptors Agent, Process Specifications, Capability

Agent overview diagram for Review_manager

Today The Tropos agent-oriented software engineering methodology The MaSE agent-oriented software engineering methodology

The Tropos process

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Actor diagram

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Goal diagrams

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Expanded actor diagram

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Goal diagram for CMS system

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Refined goal diagram for CMS System

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Further refined goal diagram for CMS System

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Capability diagram

Mapping Tropos to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Actor Diagram Actor Diagram Goal Platformindependent computational design Refined Goal Platform-specific design and implementation Agent Interaction UML Class Capability, Plan

Agent interaction diagram

The MaSE process

Mapping MaSE to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Sequence, Role Model Goal Diagram, Use Cases, Role Model Platformindependent computational design Protocol, Agent Class Diagram Concurrent Tasks, Agent Class Diagram Platform-specific design and implementation Plan, Deployment

Mapping MaSE to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Sequence, Role Model Goal Diagram, Use Cases, Role Model Platformindependent computational design Protocol, Agent Class Diagram Concurrent Tasks, Agent Class Diagram Platform-specific design and implementation Plan, Deployment

Goal diagram

Elaborated goal diagram

Mapping MaSE to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Sequence, Role Model Goal Diagram, Use Cases, Role Model Platformindependent computational design Protocol, Agent Class Diagram Concurrent Tasks, Agent Class Diagram Platform-specific design and implementation Plan, Deployment

Role model

Mapping MaSE to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Sequence, Role Model Goal Diagram, Use Cases, Role Model Platformindependent computational design Protocol, Agent Class Diagram Concurrent Tasks, Agent Class Diagram Platform-specific design and implementation Plan, Deployment

Agent class diagram

Mapping MaSE to viewpoint framework Viewpoint models Viewpoint aspect Abstraction layer Interaction Information Behavior Conceptual domain modeling Sequence, Role Model Goal Diagram, Use Cases, Role Model Platformindependent computational design Protocol, Agent Class Diagram Concurrent Tasks, Agent Class Diagram Platform-specific design and implementation Plan, Deployment

Plan diagram for the Referee agent