• DocumentCode
    1022777
  • Title

    Model-driven reverse engineering

  • Author

    Rugaber, Spencer ; Stirewalt, Kurt

  • Author_Institution
    Coll. of Comput., Georgia Inst. of Technol., Atlanta, GA, USA
  • Volume
    21
  • Issue
    4
  • fYear
    2004
  • Firstpage
    45
  • Lastpage
    53
  • Abstract
    Reverse engineering is the process of comprehending software and producing a model of it at a high abstraction level, suitable for documentation, maintenance, or reengineering. But from a manager´s viewpoint, there are two painful problems: 1) It´s difficult or impossible to predict how much time reverse engineering will require. 2) There are no standards to evaluate the quality of the reverse engineering that the maintenance staff performs. Model-driven reverse engineering can overcome these difficulties. A model is a high-level representation of some aspect of a software system. MDRE uses the features of modeling technology but applies them differently to address the maintenance manager´s problems. Our approach to MDRE uses formal specification and automatic code generation to reverse the reverse-engineering process. Models written in a formal specification language called SLANG describe both the application domain and the program being reverse engineered, and interpretations annotate the connections between the two. The ability to generate a similar version of a program gives managers a fixed target for reverse engineering. This, in turn, enables better effort prediction and quality evaluation, reducing development risk.
  • Keywords
    formal specification; project management; reverse engineering; software development management; software maintenance; software quality; systems re-engineering; SLANG; application domain; automatic code generation; formal specification; model-driven reverse engineering; modeling technology; software maintenance project; software system; Application software; Documentation; Engineering management; Formal specifications; Performance evaluation; Quality management; Reverse engineering; Software maintenance; Software systems; Technology management; 65; algebraic specifications; design representation; domain engineering; models; reverse engineering;
  • fLanguage
    English
  • Journal_Title
    Software, IEEE
  • Publisher
    ieee
  • ISSN
    0740-7459
  • Type

    jour

  • DOI
    10.1109/MS.2004.23
  • Filename
    1309646