Process-Integrated Refinement Patterns in UML

Abstract

Abstract: The Unified Modeling Language (UML) is a widely used standard in Model-Driven Engineering (MDE). Using the UML in a software development process means to refine and evolve models in many ways. Firstly, a system model evolves through different layers of abstraction towards an appropriate design in an object-oriented programming language (vertical refinement). Secondly, a set of consecutive revisions is produced within a level (horizontal refinement). Whereas the UML supports the specification of a system at all levels of abstraction, the concept of refinement lacks precise semantics and is open to misconceptions. As a general-purpose modeling language, there are no precise conceptual guidelines on how to use the wide range of UML diagrams in a development process. The semantics of a specific kind of refinement most often requires the context, i.e., the triggering development activity of the enacted process model, to be taken into account. Refinement relationships have to be documented manually, which is a very error-prone and tedious work. In this position paper, we outline our ongoing work on developing a framework for the specification and operationalization of UML refinement patterns

    Similar works