Title: SELMASicse
1Expressiveness vs. Usabilityin Requirements
EngineeringMethodologies for MAS
- Paolo Bresciani
- ITC-irst, Trento (Italy)
2RE in TROPOS
- TROPOS focuses on both RE and SE
- The TROPOS main phases are
- early requirements analysis to describe and
analyze the socio-technical environment for the
system-to-be - late requirements analysis to describe and
analyze the system-to-be and how it will
influence the socio-technical system - architectural design to define the system
architecture - detailed design to provide an implementable
system design - TROPOS makes extensive use of the concepts of
actor, goals, plans, intentional dependencies,
3RE to provide the business knowledge
4Tropos RE development process
- To support the analyst and the stakeholders to
develop actors and goal diagrams - by providing guidelines (see Jaelson talk)
- by providing operational to manage the language
Lets see what happen by using the so called
Transformational approach AOSE 2001 AOM 2002
AgeS 2002 start with simple diagrams including
only few nodes (actors, goals, softgoals, ) and
few edges (intentional dependencies)
iteratively and incrementally add details and
revise dependencies.
5An Example the Tropos Tool
- Consider the process of early and late analysis
for a tool for supporting the use of the Tropos
methodology. The tool must address several
requirements - support the software engineer along all the
phases of the process software development (at
least the first four), - to support the notions of traceability and
retrotraceability, - to support the transformational approach,
- to allow for goal/plan analysis and for
non-functional analysis, - to visualize different possible views on the
conceptual model (i.e., different roles played by
the user, different point of view, and so on), - and so on.
6ExampleEarly requirements building the actor
diagram
7building goal diagrams
requirements
PRG
2 modeled
Manager
Analyst
8 and so on
9 combining and revising
10An evident obstacle to usability
- Expressiveness is important
- Tropos allows for a very expressive RE language
with the potential of capturing various aspects - BUT
- The RE process in Tropos require to deal with
many diverse elements (AND-OR goal decomposition,
task decomposition, means-ends analysis,
contribution analysis, dependency analysis, ),
and, in order to fully exploit Tropos
flexibility, it is hard to impose a strict
requirement analysis process sequence and give
guidelines
Stakeholders acceptability of the methodology
may be badly affected.
11Solution
- Simplified language
- REF is more direct both in the requirement
analysis process (three interconnetcted modelling
activities) and in the adopted language - THUS
- It may provide more insight for the soft-goals
analysis (operazionalization by means of
constraints), and specially, a better support for
understandability and acceptability by the
stakeholders and ,so, an improved usability.
12Of course
- There is not a better approach (depend on the
domain, the application, the stakeholders, ). - Possibly, the ideal solution is to provide a
fusion of REF and Tropos ( and other
methodologies?) in order to take advantage from
both.
13Concluding
- Several methodologies for AOSE have lastly been
proposed,
none is emerging, yet, but comparisons and
evaluations are starting to be applied, driven by
application cases and analytic methods (see also
AOIS bi-workshop _at_ AAMASER)
Usability and expressiveness are only 2 possible
features (in particular, which other features are
important specifically for Development
Methodologies for LMAS?)
14My question is
To what extent can we think to compose/merge
(part of) different methodologies/languages to
get get the best from all?
- Corollary question
- The presence of (too ?) many AOSE methodologies
is seen a possible cause of the scarce industrial
adoption of AOSE. - May this limit be overcame by making
methodologies converge?
15BUP SLIDES
16Tropos RE development process
- A crucial point of the Tropos methodology is
How to perform the refinement process that allow
for a smooth development process?
A transformational approach start with simple
diagrams including only few nodes (actors, goals,
softgoals, ) and few edges (intentional
dependencies) iteratively and incrementally add
details and revise dependencies.