• DocumentCode
    1241751
  • Title

    An Efficient and Scalable Approach to Correct Class Model Refinement

  • Author

    Shen, Wuwei ; Wang, Kun ; Egyed, Alexander

  • Author_Institution
    Dept. of Comput. Sci., Western Michigan Univ., Kalamazoo, MI, USA
  • Volume
    35
  • Issue
    4
  • fYear
    2009
  • Firstpage
    515
  • Lastpage
    533
  • Abstract
    Today, programmers benefit immensely from Integrated Development Environments (IDEs), where errors are highlighted within seconds of their introduction. Yet, designers rarely benefit from such an instant feedback in modeling tools. This paper focuses on the refinement of UML-style class models with instant feedback on correctness. Following the Model-Driven Architecture (MDA) paradigm, we strongly believe in the benefit of maintaining high-level and low-level models separately to 1) document the lower level model and 2) continuously ensure the correctness of the low-level model during later evolution (i.e., high- or low-level models may be evolved independently). However, currently the refinement and subsequent evolution lack automated support, let alone an instant feedback on their correctness (i.e., consistency). Traditional approaches to consistency checking fail here because of the computational cost of comparing class models. Our proposed instant approach first transforms the low-level model into an intermediate model that is then easier comparable with the high-level model. The key to computational scalability is the separation of transformation and comparison so that each can react optimally to changes-changes that could happen concurrently in both the high- and low-level class models. We evaluate our approach on eight third-party design models. The empirical data show that the separation of transformation and comparison results in a 6 to 11-fold performance gain and a ninefold reduction in producing irrelevant feedback. While this work emphasizes the refinement of class models, we do believe that the concepts are more generally applicable to other kinds of modeling languages, where transformation and subsequent comparison are computationally expensive.
  • Keywords
    Unified Modeling Language; software architecture; UML-style class models; Unified Modeling Language; class model refinement; computational scalability; integrated development environment; model-driven architecture; Class models; and UML.; consistency checking; refinement; separation of concerns;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2009.26
  • Filename
    4815278