• DocumentCode
    781788
  • Title

    Toward the Reverse Engineering of UML Sequence Diagrams for Distributed Java Software

  • Author

    Briand, Lionel C. ; Labiche, Yvan ; Leduc, Johanne

  • Author_Institution
    Dept. of Syst. & Comput. Eng., Carleton Univ., Ottawa, Ont.
  • Volume
    32
  • Issue
    9
  • fYear
    2006
  • Firstpage
    642
  • Lastpage
    663
  • Abstract
    This paper proposes a methodology and instrumentation infrastructure toward the reverse engineering of UML (Unified Modeling Language) sequence diagrams from dynamic analysis. One motivation is, of course, to help people understand the behavior of systems with no (complete) documentation. However, such reverse-engineered dynamic models can also be used for quality assurance purposes. They can, for example, be compared with design sequence diagrams and the conformance of the implementation to the design can thus be verified. Furthermore, discrepancies can also suggest failures in meeting the specifications. Due to size constraints, this paper focuses on the distribution aspects of the methodology we propose. We formally define our approach using metamodels and consistency rules. The instrumentation is based on aspect-oriented programming in order to alleviate the effort overhead usually associated with source code instrumentation. A case study is discussed to demonstrate the applicability of the approach on a concrete example
  • Keywords
    Java; Unified Modeling Language; formal specification; formal verification; object-oriented programming; program diagnostics; reverse engineering; software quality; UML sequence diagram; Unified Modeling Language; aspect-oriented programming; consistency rule; distributed Java software; dynamic program analysis; formal specification; formal verification; metamodel; quality assurance; reverse engineering; source code instrumentation; Documentation; Information retrieval; Instruments; Java; Object oriented modeling; Quality assurance; Reverse engineering; Runtime; Testing; Unified modeling language; AspectJ; OCL.; RMI; UML; distribution; reverse engineering; sequence diagram;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2006.96
  • Filename
    1707665