1 / 30

Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project. 3 rd AgentLink III Technical Forum meeting (AL3-TF3) Budapest, September 15-17, 2005 Brian Henderson-Sellers Director, COTAR University of Technology, Sydney www-staff.it.uts.edu.au/~brian

nardo
Download Presentation

Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project

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. Underpinning a Method Engineering Framework with a Powertype-based Metamodel – the FAME Project 3rd AgentLink III Technical Forum meeting (AL3-TF3) Budapest, September 15-17, 2005 Brian Henderson-Sellers Director, COTAR University of Technology, Sydney www-staff.it.uts.edu.au/~brian email: brian@it.uts.edu.au

  2. Preview • I. The FAME project • II. Method engineering • III. Metamodelling • IV. Incorporating a standard method metamodel • V. Existing repository • VI. FAML overview • VII. In summary

  3. Project funded by Australian Research Council (2004-6) I. The FAME Project(FAME = Framework forAgent-oriented Method Engineering) Lead researchers: Brian Henderson-Sellers, Graham Low Postdoc researchers: Cesar Gonzalez-Perez, Ghassan Beydoun

  4. Project to • create an AO, method engineering (ME)-based approach to software development • Offer a supportive and integrative framework to consolidate and strengthen existing AO methodologies • FAME project includes both process and product aspects (based on AS4651 and forthcoming ISO standard) including an AO modelling language (FAML) based on a generic model of agents at both design and run time

  5. We thus seek consensus, whilst ensuring consistency and maximizing coverage • We seek collaborative incorporation of fragments from all other identified AO methodologies • We propose continuing to support these various methodologies by providing a set of interfaces (façades) to the repository to maintain consistency for current AO methodology users

  6. Prometheus- style interface Tropos-style interface BrandX-style interface Repository

  7. instances of Construction Guidelines uses instance of Step 2: Project Manager Methodology Instance II. Method Engineering Repository Method fragments/ chunks/components Metamodel Step 1: Method engineer Methodology M (a.k.a. Process Model) (a.k.a. Process)

  8. From the method fragments in the repository can be assembled an individually tailored process Constructed methodology method fragments

  9. III. Metamodelling A metamodel is at a higher level of abstraction than a conventional model. It is often called “a model of a model“. It provides the rules/grammar for the modelling language (ML) itself. The ML consists of instances of concepts in the metamodel.

  10. Strict Metamodelling “is-instance-of“ is key relationship i.e. instance -> class is paralleled by element -> set BUT “is-instance-of” is not transitive

  11. Adding process to product adds problems Enacted tasks need to have a duration duration=50

  12. An apparent solution using generalization Activity results in 1 * Diagram duration M2 DesignActivity ClassDiagram results in 1 * usePatterns classCount M2 «instanceOf» «instanceOf» Brian’sDesigns Brian’sClassDiagram results in contains Brian’sClass duration=50 classCount=2 usePatterns=TRUE M1

  13. In this “solution” • element Activity can now define an attribute duration. • Brian’sClassDiagram and Brian’sClass at same level (M1) • BUTHave lost processes being enacted at M0 and not M1 • AND M2 level standardization has to identify all Activities, all Tasks etc. i.e. all contents of a method fragment repository • FURTHERMORE • Semantics of “Activity” have been completely changed. [This is a commonly occurring error in the metamodelling literature]

  14. ActivityKind Activity class ActivityKind class Design Code x x x x x Design x x x x x x Code x x x x x x Test Test Activity Design Design Test So, in “Strictness restored” slide, we have also changed the original “Activity” to “ActivityKind” but forgotten to rename it as such. ActivityKind and Activity are two very different Sets. Here Activity class has 14 elements, ActivityKind class has only 3.

  15. IV. Incorporating a standard method metamodel Current possibilities include • OMG‘s SPEM • AS4651 (SMSDM)/draft of ISO24744 (SEMDM) – used here

  16. SMSDM/SEMDM Standard Metamodel for Software Development Methodologies (AS4651-2004 standard)/Software Engineering – Metamodel for Development Methodologies (draft ISO24744) • Underpinned by powertype patterns • Three layer architecture: metamodel, method, endeavour

  17. endeavour method methodologies assessment quality tools metamodel SMSDM/SEMDM architecture

  18. Task +assignedTeam : String is classified into TaskKind name : String DefineOperation name=DefineOperation +assignedTeam : String : DefineOperation +assignedTeam=Liz,John An Example of a Powertype in Process Modelling

  19. endeavour metamodel method Solves the problem of non-transitivity “MySystem” Requirements Specification “MySystem” Req. Spec. Version 1.5 Req. Spec. Document Must be approved: yes Title Version RequirementsSpecificationDocument Document Document Kind Title Version Name MustBeApproved

  20. In summary: the core of the SMSDM/SEMDM

  21. V. Existing Repository • Precursor to FAME project focussed on the OPF repository • Fragments consistent with OPF metamodel are currently being (easily) translated to be SEMDM-compatible • Existing fragments offer wide software development support beyond existing AO methodologies

  22. AOSE fragments From the literature, we have evaluated Tropos, Prometheus, MaSE, Gaia, Cassiopeia, MAS-CommonKADS, AgentFactory, CAMLE and PASSI for new method fragments We have so far identified 1 new Activity, 28 new Tasks, 11 new Subtasks, 23 new Techniques and 28 new Work Products

  23. It is now possible to • recreate standard AO methods like Gaia, Prometheus • create an enhanced or integrated method e.g. Prometheus enhanced by Tropos

  24. Prometheus enhanced by Tropos Tasks Tasks Tasks Tasks Technique Technique Technique Technique 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 Abstract class identification Abstract class identification Abstract class identification Abstract class identification Agent internal design Agent internal design Y Y AND/OR decomposition Y Y Class naming Class naming Y Y Y Y Control architecture Control architecture Y Y Context modelling Context modelling Y Y Y Y Delegation analysis Delegation analysis Y Y Y Y Event modelling Event modelling Y Y Intelligent agent identification Intelligent agent identification Y Y . . Y Y Means-end analysis Role modelling Role modelling Y Y Y Y Y Y Y Y State modelling State modelling Y Y Textual analysis Textual analysis Y Y Y Y 3 3 - - layer BDI model layer BDI model Y Y Y Y Key: Key: Key: Key: Key: Key: 1. Model dependencies for actors and goals; 2. Construct the age 1. Model dependencies for actors and goals; 2. Construct the age 1. Model dependencies for actors and goals; 2. Construct the age nt model; nt model; nt model; 3. Design agent internal structure; 4. Model the agent’s environ 3. Design agent internal structure; 4. Model the agent’s environ 3. Design agent internal structure; 4. Model the agent’s environ ment; ment; ment; 5. Model responsibilities; 6. Model permissions 5. Model responsibilities; 6. Model permissions 5. Model responsibilities; 6. Model permissions

  25. Tasks Tasks Work Product 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Y Y Y Y Y Y Y Y Y Y Y Y Y Agent Class Descriptor Agent Acquaintance Diagram Agent Overview Diagram Capability Diagram Role Model Role Schema (Tropos) Goal Diagram (Tropos) Actor Diagram UML Sequence Diagram . Key: Key: 1. Model dependencies for actors and goals; 2. Construct the agent model; 3. Design agent internal structure; 4. Model the agent’s environment; 5. Model responsibilities; 6. Model permissions; 7. Code

  26. Agent- internal Agent- external Agent definition- level System- level Design time Agent- level Environment- level Run time VI. FAML Overview Start with core concepts of agent: • Autonomy • Situatedness • Interactivity Two scopes Two layers

  27. e.g. Agent-related, run time

  28. VII. In Summary • No one methodology can fit all situations; hence need to create flexibility such that the process remains “standard” yet can somehow be moulded to various circumstances • Method engineering a solid basis for both standardization and flexibility • Comprehensive metamodel needed to support process+product aspects of an AO methodology. Simple combination of method metamodels dangerous because of implicit assumptions (e.g. agents collaborate vs. agents compete) and use of same term but with different semantics

  29. In Summary – cont. • Start with existing repository of method fragments and consolidate • Implement the new standard metamodel • Create exemplar methodologies for industry testing • Encourage community effort to intercompare approaches and make recommendations (1, 2 or more?) • Identification of weak points for further research endeavours?

  30. THE END

More Related