Upload
unibo
View
0
Download
0
Embed Size (px)
Citation preview
Situated Process Engineering for Integrating Processesfrom Methodologies to Infrastructures
Ambra Molesini Elena Nardini Enrico Denti Andrea Omicini
Alma Mater Studiorum – Universita di Bologna{ambra.molesini,elena.nardini,enrico.denti,andrea.omicini}@unibo.it
24th ACM Symposium on Applied ComputingSpecial Track on AOSE Methodologies and Systems
Waikiki Beach, Honolulu, HI, USA9 March 2009
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 1 / 30
1 Foreword
2 BackgroundSODATuCSoN
3 Integration
4 Conclusions & Future Work
5 Bibliography
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 2 / 30
Scenario
The creation of a single universally-applicable development process isa recognised chimera
→ Software designers tend to define their own problem-specific process bymeans of the Method engineering technique
→ New process can be created starting from existing process parts(method fragments)
A unified meta-model and a specific AO Method Engineeringtechnique are needed, allowing existing methodologies/ processes tobe represented and integrated in a uniform way
The Software Process Engineering Metamodel (SPEM) 2.0[Object Management Group, 2008] and the Agent-OrientedSituational Method Engineering [Cossentino et al., 2008] seem to bethe natural candidates
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 3 / 30
Objectives
→ Understanding the semantics of the infrastructures’ processes
→ Exploring SPEM 2.0 applicability to the AOSE methodologies andinfrastructures
→ Exploring the applicability of Agent-Oriented Situational MethodEngineering for composing methodologies and infrastructures
→ A simple case studyI methodology: SODAI infrastructure: TuCSoN
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 4 / 30
AOSE Methodologies & MAS Infrastructures: The Gap
AOSE methodologies: top-down evolution
Most AOSE methodologies have mostly followed a top-downevolution path, where abstractions and metaphors (models andstructures) from human organisations have been used to analyse,model and design software systemsThis is the case of methodologies like Gaia, Tropos, PASSI and SODA
MAS infrastructure: bottom-up evolution
Many MAS infrastructures have mostly followed a bottom-upevolution path, evolving out of necessity from existing programminglanguages and development environments, “stretching” the agentparadigm on top of more traditional paradigms and technologiesDespite JADE, TuCSoN, TOTA, among the many others, introducespecific agent-oriented abstractions, yet, the imprint of theobject-oriented paradigm is still visible—for instance, in agents takingthe form of Java threads
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 5 / 30
AOSE Methodologies & MAS Infrastructures: The Gap
AOSE methodologies: top-down evolution
Most AOSE methodologies have mostly followed a top-downevolution path, where abstractions and metaphors (models andstructures) from human organisations have been used to analyse,model and design software systemsThis is the case of methodologies like Gaia, Tropos, PASSI and SODA
MAS infrastructure: bottom-up evolution
Many MAS infrastructures have mostly followed a bottom-upevolution path, evolving out of necessity from existing programminglanguages and development environments, “stretching” the agentparadigm on top of more traditional paradigms and technologiesDespite JADE, TuCSoN, TOTA, among the many others, introducespecific agent-oriented abstractions, yet, the imprint of theobject-oriented paradigm is still visible—for instance, in agents takingthe form of Java threads
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 5 / 30
Previous Work
[Cabri et al., 2008] and [Molesini et al., 2008] explore a mappingbetween methodologies’ meta-models and infrastructures’meta-models
Such investigations have paved the way towards a more precisemapping between the concepts supported by methodologies andinfrastructures leading to the definition of infrastructures’meta-models
However, this is still not enough for a software development processaimed at covering all the stages of the software lifecycle
In fact, this approach provides only guidelines on abstractions’mapping. . .
. . . but says nothing about the process resulting from such anintegration and how to use it
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 6 / 30
Infrastructure Process
The presence of a specific infrastructure clearly affects the engineeringprocess [Molesini et al., 2009]
→ There would be no need to design a function if it is already provided bythe services/functionalities of the selected infrastructure
The methodologies processes could be influenced by the adoption ofan infrastructure instead of another
Infrastructures represent a key piece of the software developmentprocess
→ Infrastructures do have a process behind themI it is usually ‘silent’ and unspecified
→ To define a complete software development process, we believe thatsuch an infrastructure process needs to come ‘out of the water’, so asto be first explicitly detailed, and then clearly integrated with themethodologies’ process
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 7 / 30
Key Idea
We mean to re-useI Agent-Oriented Situational Method Engineering (AO-SME) technique
[Cossentino et al., 2008, Cossentino et al., 2007]I Software Process Engineering Meta-model (SPEM)
[Object Management Group, 2008]
For integrating methodologies and infrastructures
→ We consider methodology and infrastructure as two fragments to beintegrated in order to obtain a new software process
→ We use the integration between SODA and TuCSoN as a case study
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 8 / 30
Outline
1 Foreword
2 BackgroundSODATuCSoN
3 Integration
4 Conclusions & Future Work
5 Bibliography
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 9 / 30
SODA: Societies in Open and Distributed Agent spaces
SODA . . .
. . . is an agent-oriented methodology for theanalysis and design of agent-based systems. . . focuses on inter-agent issues, like theengineering of societies and environment forMAS. . . adopts agents and artifacts – after theA&A meta-model – as the main buildingblocks for MAS development. . . introduces a simple layering principle inorder to cope with the complexity of systemdescription. . . adopts a tabular representation
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 10 / 30
The SODA meta-modelSODA 2008/09/04
Actor Requirement
*1
Relation LegacySystem ExternalEnvironment
* 1
Task
1..*
1
Dependency
**
participates
**
participates
* *
participates
Function
* *participates
Topology
*
*
participates
*
*
participates
1..*
1
1..*
1
0..*
1
0..*
1
0..*
1
Role
Action
1..*
1
performs
Interaction
Resource
Operation
1..*
1provides
1..*
1
1
1..*
1..*
1
1
1..*
Space *
*
participates
1..*
1..*
participates*
1
0..*
connection
1..*
1
1..*
1
Workspace
1..*
1..*
Agent
1
1..*
Artifact
1..*
1
perceives 1..*
1
is allocated
Composition
Society Aggregate
Individual Artifact
Social Artifact
Environmental Artifact
1..*
1
participates
Rule
0..*
1..*
constrains
connection
** participates* *
participates
1..* 1..*constrains
1..*1..*
constrains
1..*
1..*constrains
1
1..*
1
1..*
1
1..*
Uses1..*1..* 1..*1..*
Manifests1..*
1..*1..*
1..*
Speaks to 1..* 1..*
participates
1..*
1..*
Links to
1..*
1..*
Autonomous Behaviour
exhibits
exhibits
Functional Behaviour
exhibits
exhibits
1..*
1..*
participates
Requirements Analysis
Analysis
Architectural Design
Detailed Design
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 11 / 30
The SODA Process
Requirements Analysis
Analysis
Layering
Architectural Design
Layering
Detailed Design
Is the problem well specified?
no
Is the system well specified?
yes
yes no
Are there problems in the system?
yes
no
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 12 / 30
Layering in SODA as a Capability Pattern
In-zoom Out-zoom
Projection
Select Layer
increases detail increases abstraction
new layer?
no
yes
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 13 / 30
Detailed Design Process
Carving
Mapping
Agent design Environment design Workspace design
Interactions design
noyes
is the system well specified?
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 14 / 30
Outline
1 Foreword
2 BackgroundSODATuCSoN
3 Integration
4 Conclusions & Future Work
5 Bibliography
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 15 / 30
TuCSoN: Tuple Centres Spread over the Network
TuCSoN . . .
. . . is a MAS infrastructure for thecommunication and coordination ofagent-based systems. . . adopts ReSpecT as a language forexpressing the behaviour specification oftuple centre. . . introduces Agent Coordination Contextas the conceptual boundary between anagent and its organisational environment
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 16 / 30
The TuCSoN meta-modelTuCSoN
TopologyNetworkNode
Reaction
Tuple Centrenn
runs
Event
Tuple0..n0..n
stored
ACC
accesses
OrganisationRole** **
Reaction Spec
nn
t riggers execution of
Agentread/write
uses
negotiation/join
plays
programs
Events can be both internally generated and perceived from the tuple centre.
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 17 / 30
TuCSoN Process
Organisation Definition
Organisation Implementation Organisation Test
Yes
New Interation ?
No
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 18 / 30
Organisation Definition Process
Agent Behaviour Definition
Organisation Test Definition
Society Class Definition
Society Instance Definition
TC Behaviour DefinitionTopology Definition
New Iteration ? Yes
No
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 19 / 30
Agent-Oriented Situational Method Engineering
Our approach is based on the composition process approach byCossentino et al. [Cossentino et al., 2008]
I process analysis → kind of process & a set of MAS Meta-modelelements (MMMEs)
I process design → method fragments selection and assemblyI process deployment → process istantiation
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 20 / 30
Analysis Outcome
Since both SODA process and TuCSoN process are iterative andincremental
→ SODA+TuCSoN will be iterative and incremental
MMMEs mapping
!"#$%&"'"()*
+),)"'"()
!"#$%
&'()
*+,-.)/0/
1/)/
2-,3/405
6')0/)4),0-074/5,54-,48)+(074+/08+00)944,)((+4:+80-;+4<),=5,54:5-4>-?:()?),0+0)>4+008+<)8/54@)-4:8505;5((-94?+4,)(4,5/0854?)0+A?5@)((54+BB-+?54:8).)8-054>;+(;+8)>4/'((+4@-/0-,C-5,)4@)-40-:-4@-4-,0)8+C-5,)4;D)4:5//5,54+<<),-8)44
E'F"5G
":)+3/405
"5;-)0H%==8)=+0) I583/:+;)%=),0
J,@-<-@'+(%80-.+;0
K,<-85,L%80-.+;0
"5;-+(%80-.+;0
M
&5()
%;0-5,
#:)8+0-5,
F558@-,+0-5,N8-?-0-<)/
E':()4F),08)
%FFE':()4F),08)#:)8+0-5,
K<),0
O)D+<-5'84":);
&)+;0-5,
N5(-;H
&5() G5@) %=),0 #8=+,-/+0-5,
2-,3)@E':()F),08)
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 21 / 30
Key Questions
The integration between a methodology process and an infrastructureprocess raises a new peculiar problem
I the impact of the infrastructure process onto the software engineeringprocess
So, a process designer should be prepared to answer several keyquestions before facing the process integration
I Where does the infrastructure process intervene?I Does the integration change the methodology or infrastructure – and if
so, how – and the format of their Workproducts?I . . .
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 22 / 30
The SODA+TuCSoN Integrated Process
The TuCSoN process can be naturally located at the end of theSODA process
I SODA is neutral with respect to the implementation technologiesI The MMMEs involved in the assembly are just either SODA
abstractions that belong to the Design phase, or TuCSoN abstractionsbelonging to the Organisation Definition phase
I Since neither SODA nor TuCSoN make any assumption on the natureof agents, TuCSoN does not influence the SODA process in its earlystages, nor does SODA influence the TuCSoN process’ late stages
SODA does not change its nature in the integrationI SODA Workproducts could change
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 23 / 30
The SODA+TuCSoN Integrated Process
TuCSoN
SODA
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 24 / 30
Organisation Design Process
Carving
Mapping
Agent design Environment design Workspace design
Interactions design
Society Class Definition
Society Instance Definition
Topology DefinitionAgent Behaviour Definition
TC Behaviour Definition
Organisation Test Definitionno
Is the system well designed?
yes
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 25 / 30
Conclusions
Since this research is still in its early stage, we are well aware that ourcurrent approach opens many questions, which are only partiallyaddressed
I the role and the impact of the MAS infrastructures in the softwareengineering process
I the meaning of a process of an infrastructure
Future workI a generalisation of our study about of the methodologies and
infrastructure integrationI the improvement of the description of the TuCSoN processI a better understanding of the adequacy of the SME technique and of
the prioritisation algorithm to evaluate whether they could cover “asthey are” also the integration among methodologies and infrastructuresfragments that present the new issues highlighted or they need someextension
I we also plan to make the same experiments with other methodologiesand infrastructures
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 26 / 30
Bibliography I
Cabri, G., Leonardi, L., and Puviani, M. (2008).Methodologies and infrastructures for agent society simulation:Mapping passi and RoleX.In Trappl, R., editor, Cybernetics and Systems 2008, Vienna, Austria.Vienna: Austrian Society for Cybernetic Studies.Proceedings of the 19th European Meeting on Cybernetics andSystems Research, Vienna, Austria, 2007.
Cossentino, M., Gaglio, S., Garro, A., and Seidita, V. (2007).Method fragments for agent design methodologies: fromstandardisation to research.International Journal of Agent-Oriented Software Engineering(IJAOSE), 1(1):91–121.
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 27 / 30
Bibliography II
Cossentino, M., Gaglio, S., Gaud, N., Hilaire, V., Koukam, A., andSeidita, V. (2008).A MAS metamodel-driven approach to process composition.In Luck, M. and Gomez-Sanz, J., editors, 9th International Workshopon Agent Oriented Software Engineering (AOSE’08), AAMAS 2008,Estoril, Portugal.
Molesini, A., Denti, E., and Omicini, A. (2008).From AO methodologies to MAS infrastructures: The SODA casestudy.In Artikis, A., O’Hare, G., Stathis, K., and Vouros, G., editors,Engineering Societies in the Agents World VIII, volume 4995 of LNAI,pages 300–317. Springer.8th International Workshop (ESAW’07), 22–24 October 2007, Athens,Greece.
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 28 / 30
Bibliography III
Molesini, A., Nardini, E., Denti, E., and Omicini, A. (2009).Situated process engineering for integrating processes frommethodologies to infrastructures.In Shin, S. Y., Ossowski, S., Menezes, R., and Viroli, M., editors, 24thAnnual ACM Symposium on Applied Computing (SAC 2009),Honolulu, Hawai’i, USA. ACM.
Object Management Group (2008).Software & Systems Process Engineering Meta-Model Specification2.0.http://www.omg.org/spec/SPEM/2.0/PDF.
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 29 / 30
Situated Process Engineering for Integrating Processesfrom Methodologies to Infrastructures
Ambra Molesini Elena Nardini Enrico Denti Andrea Omicini
Alma Mater Studiorum – Universita di Bologna{ambra.molesini,elena.nardini,enrico.denti,andrea.omicini}@unibo.it
24th ACM Symposium on Applied ComputingSpecial Track on AOSE Methodologies and Systems
Waikiki Beach, Honolulu, HI, USA9 March 2009
Molesini/Nardini/Denti/Omicini (UniBo) SODA+TuCSoN SAC 2009 30 / 30