• DocumentCode
    1703952
  • Title

    Improving program understanding by unfolding layers of interacting patterns

  • Author

    Klösch, René R. ; Mittermeir, Roland T.

  • Author_Institution
    Dept. of Inf. & Comput. Sci., California Univ., Irvine, CA, USA
  • fYear
    1996
  • Firstpage
    208
  • Lastpage
    217
  • Abstract
    Reverse engineering of legacy systems is a cumbersome task. Some of its aspects can be automated reasonably well, others are better not touched or require the intervention of a human expert. In an attempt to improve our rearchitecturing methodology, COREM, we found that various patterns, software developers use or have to use when developing systems, can serve to support the program understanding part of the reverse engineering process. We depart from the widely accepted hypothesis that software developed by experts is not a mere sequence of relatively primitive statements, but rather the result of a set of interacting, time and situation specific problem, design, and language patterns. To support these considerations, the paper shows how different language paradigms influence the actual code even with a simple problem. The extension of these ideas to interacting high level design patterns is motivated
  • Keywords
    automatic programming; reverse engineering; software reusability; software tools; COREM; interacting high level design patterns; language paradigms; language patterns; legacy systems; program understanding; rearchitecturing methodology; reverse engineering; reverse engineering process; situation specific problem; Application software; Computer science; Error analysis; Humans; Image analysis; Informatics; Information analysis; Programming profession; Reverse engineering; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Program Comprehension, 1996, Proceedings., Fourth Workshop on
  • Conference_Location
    Berlin
  • ISSN
    1092-8138
  • Print_ISBN
    0-8186-7283-8
  • Type

    conf

  • DOI
    10.1109/WPC.1996.501135
  • Filename
    501135