International Conference on Model Driven Engineering Languages and Systems

MODELS 2008: Model Driven Engineering Languages and Systems pp 660-674

Enriching Reverse Engineering with Annotations

  • Andrea Brühlmann
  • Tudor Gîrba
  • Orla Greevy
  • Oscar Nierstrasz
Conference paper

DOI: 10.1007/978-3-540-87875-9_46

Volume 5301 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Brühlmann A., Gîrba T., Greevy O., Nierstrasz O. (2008) Enriching Reverse Engineering with Annotations. In: Czarnecki K., Ober I., Bruel JM., Uhl A., Völter M. (eds) Model Driven Engineering Languages and Systems. MODELS 2008. Lecture Notes in Computer Science, vol 5301. Springer, Berlin, Heidelberg

Abstract

Much of the knowledge about software systems is implicit, and therefore difficult to recover by purely automated techniques. Architectural layers and the externally visible features of software systems are two examples of information that can be difficult to detect from source code alone, and that would benefit from additional human knowledge. Typical approaches to reasoning about data involve encoding an explicit meta-model and expressing analyses at that level. Due to its informal nature, however, human knowledge can be difficult to characterize up-front and integrate into such a meta-model. We propose a generic, annotation-based approach to capture such knowledge during the reverse engineering process. Annotation types can be iteratively defined, refined and transformed, without requiring a fixed meta-model to be defined in advance. We show how our approach supports reverse engineering by implementing it in a tool called Metanool and by applying it to (i) analyzing architectural layering, (ii) tracking reengineering tasks, (iii) detecting design flaws, and (iv) analyzing features.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Andrea Brühlmann
    • 1
  • Tudor Gîrba
    • 1
  • Orla Greevy
    • 1
  • Oscar Nierstrasz
    • 1
  1. 1.Software Composition GroupUniversity of BernSwitzerland