Information Technology Reference
In-Depth Information
UCMs [38] are part of the User Requirements Notation (URN) [39], a stan-
dardization effort of the International Telecommunication Union (ITU). The
UCM notation is a visual scenario language that focuses on the causal flow of
behavior superimposed on a structure of components. UCMs depict the inter-
action of architectural entities while abstracting from message and data details.
UCMs have been used to drive performance analysis, scenario interaction detec-
tion, testing activities, and the evaluation of architectural alternatives at a very
early stage in the software development process. In addition to UCMs, URN con-
tains a second language for goal modeling and the description of non-functional
requirements (GRL — the Goal-oriented Requirement Language [37]), making it
the first standardization effort to address non-functional requirements explicitly
in a graphical way.
This paper describes the first step in unifying URN concepts and aspects con-
cepts, both on a notational level as well as on a process level, in order to take
advantage of mutual benefits. Aspects can improve the modularity, composition-
ality, reusability, scalability, and maintainability of URN models. Considering the
strong overlap between non-functional requirements and concerns encapsulated
by aspects, aspects can help bridge the gap between goals (non-functional re-
quirements described with GRL) and operational scenarios (the UCM scenarios
which describe how a goal is achieved). On the other hand, aspects can benefit
from a standardized way of modeling non-functional requirements (and therefore
concerns) with URN.
The aforementioned first step endeavors to unify UCMs and aspects by us-
ing existing notational elements of UCMs to describe aspect-oriented concepts.
Aligning UCM and aspect concepts makes it possible to visually describe aspect-
oriented models with UCM models (as long as the aspect models are scenario-
based). Furthermore, it allows aspect concepts to be used as first class modeling
elements when building UCM models.
The remainder of the paper gives an overview of UCMs in Sect. 2.1 and an
overview of modeling techniques for early aspects in Sect. 2.3. Section 3 describes
how aspects can be modeled with UCMs at the requirements level and explains
extensions to the URN metamodel in order to accommodate aspect-oriented
UCMs. Section 4.1 discusses a matching algorithm for aspect-oriented UCMs and
Sect. 4.2 a composition algorithm for aspect-oriented UCMs. Section 4.4 talks
about additional features and tool support for them. Throughout the paper,
a hotel reservation system is used as an example to illustrate standard UCMs
in Sect. 2.2, aspect-oriented UCMs in Sect. 3.5, and the composed system in
Sect. 4.3. The paper ends with a conclusion and a discussion of future work in
Sect. 5.
2
Background
This section provides an overview of UCMs and modeling techniques for sce-
nario/use case-based approaches to aspect-oriented requirements engineering.
Search WWH ::




Custom Search