Experiences from a standardization attempt in AO methodologies Massimo Cossentino (Italian National Research Council)

Slides:



Advertisements
Similar presentations
Andrea Maurino Web Service Design Methodology Batini, De Paoli, Maurino, Grega, Comerio WP2-WP3 Roma 24/11/2005.
Advertisements

Software Process Modeling with UML and SPEM
CASE tools Upper CASE tools: support for the analysis and design Lower CASE tools: support for construction and maintenance 1980s… Nowadays… Integrated.
Business Architecture
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
Object-Oriented Analysis and Design
1 The ADELFE Methodology Concepts and Definition using SPEM Marie-Pierre Gleizes, Frédéric Migeon, Sylvain Roug le, Carole Bernon, Thierry Millan,
Developing MAS The GAIA Methodology A Brief Summary by António Castro and Prof. Eugénio Oliveira.
CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Requirements Analysis Concepts & Principles
April 15, 2005Department of Computer Science, BYU Agent-Oriented Software Engineering Muhammed Al-Muhammed Brigham Young University Supported in part by.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Engineering Foundations of Software Systems Integration Peter Denno, Allison Barnard Feeney Manufacturing Engineering Laboratory National Institute.
Software Product Lines Krishna Anusha, Eturi. Introduction: A software product line is a set of software systems developed by a company that share a common.
Capstone Design Project (CDP) Civil Engineering Department First Semester 1431/1432 H 10/14/20091 King Saud University, Civil Engineering Department.
Chapter 1 The Systems Development Environment
Developing Enterprise Architecture
Software Development Process
Introduction to Interactive Media 02. The Interactive Media Development Process.
S/W Project Management
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
The composition of ad-hoc agent-oriented design processes Miniscuola WOA’08 18 Novembre 2008 Massimo Cossentino ICAR- Consiglio Nazionale delle Ricerche.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
John D. McGregor Module 6 Session 2 Tailoring Processes
TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)
Multi-agent Research Tool (MART) A proposal for MSE project Madhukar Kumar.
WG Methodology Chair: Massimo Cossentino (Italian National Research Council)
1 MFI-5: Metamodel for Process models registration HE Keqing, WANG Chong State Key Lab. Of Software Engineering, Wuhan University
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Patterns of agents Massimo Cossentino Massimo Cossentino, Luca Sabatucci ICAR/CNR High performance computing and networks institute Italian National Research.
Chapter 7 System models.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
System models l Abstract descriptions of systems whose requirements are being analysed.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Presentation on Issues and Challenges in Evaluation of Agent-Oriented Software Engineering Methodologies By: kanika singhal.
9/01RUT1 NASA OSMA SAS '01 R equirements U se case T ool James R. McCoy SRS Information Services NASA Software Assurance Technology Center
Rational Unified Process Fundamentals Module 5: Implementing RUP.
1 ©B. Henderson-Sellers SEMAT 2010 SEMAT – Definitions Track March 17, 2010 Chair: Brian Henderson-Sellers.
Systems Analysis and Design in a Changing World, Fourth Edition
 The need for a formal methodology description  SPEM for describing an agent oriented methodology  PASSI: an example  The needed extension  Discussion.
Separating Crosscutting Concerns in Agent Oriented Detailed Design: The Social Patterns Case Carla Silva Jaelson Castro Advisor: Jaelson Castro João Araújo.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
AOT Lab Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Unifying MAS Meta-Models ADELFE, Gaia & PASSI Carole Bernon, Massimo.
1 OO Analysis & Design - Introduction to main ideas in OO Analysis & design - Practical experience in applying ideas.
©B. Henderson-Sellers, Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project 3 rd AgentLink III Technical.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Introduction to OPEN Sidney Nogueira 12/11/2003.
Rational Unified Process Fundamentals Module 5: Implementing Rational Unified Process Rational Unified Process Fundamentals Module 5: Implementing Rational.
Towards filling the gap between AOSE methodologies and infrastructures: requirements and meta-model Fabiano Dalpiaz¹, Ambra Molesini², Mariachiara Puviani³,
Statistical process model Workshop in Ukraine October 2015 Karin Blix Quality coordinator
Software Design Process. What is software? mid-1970s executable binary code ‘source code’ and the resulting binary code 1990s development of the Internet.
Page 1 An Overview of The COTS-Aware Requirements Engineering and Software Architecting Project (CARE/SA) The University of Texas at Dallas Department.
Understanding Enterprise Architecture
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Methodology/ Process Engineering/ Process Design ? WG/SG?
Object oriented system development life cycle
Abstract descriptions of systems whose requirements are being analysed
Model-Driven Analysis Frameworks for Embedded Systems
Tools of Software Development
Using and extending the SPEM specifications to represent agent oriented methodologies Valeria Seidita Valeria Seidita - 3 Dicembre 2007.
Object oriented analysis and design
The Tropos visual modeling language A meta-model.
Agent-oriented Software Engineering Methodologies
PASSI (Process for Agent Societies Specification and Implementation)
Presentation transcript:

Experiences from a standardization attempt in AO methodologies Massimo Cossentino (Italian National Research Council)

Reference Scenario for this talk I don’t like your methodology!!! I’m going to create a new, better one! … how ??

Place of events The (ex) FIPA Methodology Technical Committee

AOSE Today (methodological point of view) Several methodologies exist with different advantages: Gaia Ingenias/Message MaSE PASSI Prometheus Tropos … e.g.: one size does not fit all !!!

The FIPA Methodology TC Goals Problem: It makes no sense to define one unique methodology and to force everyone to adopt it in order to be “FIPA compliant” (Proposed) Solution: Let the developer of a multi-agent system create his own methodology: Suited for the specific problem/system to be built Not conflicting with his (development) environmental constraints Coherent with his (or his group) knowledge and skills Supported by a CASE tool Supported by a FIPA methodology composition framework (specifications, guidelines and construction bricks)

The proposed approach Adopting and customizing for Agent-based systems the well known Method Engineering paradigm: The development methodology is built by the developer assembling pieces of the process (method fragments) taken from a repository. The repository is composed of contributions coming from existing methodologies and other novel and specifically conceived fragments

What is method engineering

The ‘normal’ agent development process

The Method Engineer analyzes the problem and the development context/people to deduce new methodology features The proposed Method Engineering approach The Method Engineer uses a CAME tool to compose the new methodology by reusing fragments from the repository The CAME tool is used to instantiate a methodology specific tool

Key elements OK sounds interesting, now, I want to create my new methodology with this approach. What do I need? A collection of method fragments Some guidelines about how to assemble fragments A CAME (Computer Aided Method Engineering) tool … an evaluation framework (is my new methodology really good?)

The results of the FIPA Methodology TC

A new and problem specific methodology is built A CAME (Computer Aided Method Engineering) tool assists in the selection of fragments and composition of design process Fragments are identified and described according to the previous discussed definition A method fragments repository is composed with all existing fragments All methodologies are expressed in a standard notation (we adopt SPEM - Software Process Engineering Metamodel – by OMG) New fragments are defined if necessary The methodology design tool is aware of the selected MAS meta-model (this helps in fragments selection and consistency check) The new methodology production process

What has been done 1.First release of a glossary of agent-design related terms (one of the TC deliverables) (see FIPAmeth/glossary.htm) 2.Definition of the method fragment structure (meta-model) In terms of: a portion of process, some deliverables, preconditions, list of concepts addressed in the fragment, guidelines, glossary of terms, composition guidelines, aspects and dependencies. 3.Study of several MAS meta-model, definition of an unifying proposal 4.Extensive experimentation of OMG SPEM (Software Process Engineering Metamodel) as a modeling language for representing process aspects of fragments of MAS design processes 5.Collection of fragments from several methodologies (Adelfe, Gaia, PASSI, Tropos, to be completed: Ingenias) 6.Experiments of methodologies composition

What is (still) to be done (according to the old plan) Extraction of more fragments from existing methodologies in order to improve the methods base Documents to be completed: Fragments Repository architecture definition Methodology Composition Guidelines

Our Plans for the future Starting a debate With both old TC members and new interested people Defining the new strategy From the technical point of view: Merging with OPF? Exploring new directions? Consolidating this position? From the organizational point of view: Preparing a proposal for an IEEE FIPA WG/SG? Collaborating within other contexts? (ISO, Agentlink, research projects, …)

Are you interested? Please, contact me:

Further details

What is a (method) fragment A fragment 1 is a portion of the development process, composed as follows: 1. A portion of process (what is to be done, in what order), defined with a SPEM diagram 2. One or more deliverables (artifacts like (A)UML/UML diagrams, text documents and so on). 3. Some preconditions (they are a kind of constraint because it is not possible to start the process specified in the fragment without the required input data or without verifying the required guard condition) 4. A list of concepts (related to the MAS meta-model) to be defined (designed) or refined during the specified process fragment. 5. Guideline(s) that illustrates how to apply the fragment and best practices related to that 6. A glossary of terms used in the fragment (in order to avoid misunderstandings if the fragment is reused in a context that is different from the original one) 7. Other information (composition guidelines, platform to be used, application area and dependency relationships useful to assemble fragments) complete this definition. 1 According to the (old) FIPA Methodology TC definition (see FIPAmeth/metamodel.htm)

MAS meta-models It is the meta-model of the system to be built It specifies which elements (agents, roles, behaviors, communications, …) will constitute the agent solution which relationships exist among these elements The MAS meta-model (when chosen before of the methodology) provides a guideline for the methodology pieces selection and assembling

Method Fragment structure

Description of a methodology in SPEM (From the PASSI process)

Description of a methodology in SPEM (From PASSI process: the Agent Society Phase) Fragment

Relationship with the MAS meta-model MAS meta-model elements and work products are directly related Kinds of relationships: Define Refine Quote Relate …

A unifying MAS meta-model (from Adelfe, Gaia, Ingenias, PASSI) C. Bernon, M. Cossentino, M.P. Gleizes, J. Pavon, P. Turci, F. Zambonelli. Towards Unification of Multi-Agent Systems Meta-Models.

Experiments of methodologies compositions Recently, several papers have been written Among the others: Following the Methodology TC approach: M. Cossentino, V. Seidita. Composition of a New Process to Meet Agile Needs Using Method Engineering. Software Engineering for Large Multi-Agent Systems vol. III. LNCS Series, Elsivier Ed. (2004) A. Garro, G. Fortino, W. Russo. Using Method Engineering for the Construction of Agent-Oriented Methodologies. In Proc. of WOA 04 - Dagli Oggetti agli Agenti, Sistemi Complessi e Agenti razionali, pages 51–54, Torino, Italy, December Following similar approaches: B. Henderson-Sellers. Method Engineering for OO Systems Development. Communications of the ACM, 46(10), [29] B. Henderson-Sellers. Creating a comprehensive agent-oriented methodology - using method engineering and the OPEN metamodel. In B. Henderson-Sellers and P. Giorgini, editors, Agent-Oriented Methodologies Idea Group, T. Juan, and L. Sterling, and M. Winikoff. Assembling Agent Oriented Software Engineering Methodologies from Features. In Proc. of the Third International Workshop on Agent-Oriented Software Engineering, at AAMAS’02.

Proposals for a new plan Merging with OPF (Open Process Framework)? Design tools A standardization effort could help in enabling the development of this kind of tools Specific topics of interest for FIPA: Definition of a MAS meta-model, Definition of the methodology meta-model Identification of the basic activities that constitute a MAS design process (?) Proposals?