Font Size: a A A

A model-driven approach to design pattern visualization and evolutions

Posted on:2007-11-14Degree:Ph.DType:Dissertation
University:The University of Texas at DallasCandidate:Yang, ShengFull Text:PDF
GTID:1448390005473331Subject:Computer Science
Abstract/Summary:
Design patterns are generic design solutions which can be applied and composed in different applications where pattern-related information is generally implicit in the UML diagrams. It is unclear which pattern instances each modeling element, such as class, attribute and operation, participates. Consequently, the benefits of design patterns are compromised because the designers cannot communicate with each other in terms of the design patterns they use and their design decisions and tradeoffs. In the document of each design pattern, in addition, the evolution information is generally not explicitly specified. As a result, the changes can be tedious and error-prone. In this paper, we present a UML profile which defines new stereotypes, tagged values and constraints for tracing design patterns in UML diagrams based on the Model Driven Architecture. These new stereotypes and tagged values, which is an extension to UML meta-model, are attached to a modeling element to explicitly represent the role the modeling element plays in a design pattern so that the user can identify the pattern in a UML diagram. Based on this profile, we also develop a web service (tool) for explicitly visualizing design patterns in UML diagrams. With this service, users are able to trace design patterns in their applications and compositions since pattern-related information can be dynamically displayed. Furthermore, we propose two-level transformations (primitive-level and pattern-level) to capture the evolution processes of design patterns, which are generally implicit in the descriptions of design patterns. The evolution processes are specified formally in description logics and automated based on XML Metadata Interchange (XMI) format to transform the UML models of design pattern applications. We also automate such evolution processes based on XSLT and the Query, View, Transformation (QVT). In this way, a software system design with the applications of design patterns represented in UML model may be automatically evolved to a new design based on the model transformation rules defined for the corresponding design patterns applied. Semantic Web Consistency Checker is also proposed to ensure the consistency of the evolved software system. Three case studies and a comparative experiment are also conducted to evaluate our approach.
Keywords/Search Tags:Design pattern, UML, Evolution, Model, Applications
Related items