|
[document not available for download!]
Authors: Alexander Egyed
To support the
development of software products we frequently make use of
general-purpose software development models (and tools) such as the
Unified Modeling Language (UML). However, software development in
general and software architecting in particular (which is the main
focus of our work) require more than what those general-purpose
models can provide. Architecting is about:
1) modeling the
real problem adequately
2) solving the model problem and
3) interpreting the model solution in the real world
In doing so, a
major emphasis is placed on mismatch identification and
reconciliation within and among architectural views (such as
diagrams). We often find that this latter aspect, the analysis and
interpretation of (architectural) descriptions, is under-emphasized
in most general-purpose languages. We architect not only because we
want to build (compose) but also because we want to understand.
Thus, architecting has a lot to do with analyzing and verifying the
conceptual integrity, consistency, and completeness of the product
model.
The emergence of the
Unified Modeling Language (UML), which has become a de-facto
standard for OO software development, is no exception to that. This
work describes causes of architectural mismatches in UML views and
shows how integration techniques can be applied to identify and
resolve them in a more automated fashion. In order to do so, this
work introduces a view integration framework and describes its major
activities – Mapping, Transformation, and Differentiation. To deal
with the integration complexity and scalability of our approach, the
concept of VIR (view independent representation) is introduced and
described.
|