Reverse engineering is a crucial task to support software comprehension and maintenance, especially when software systems lack of up-to-date and adequate documentation. This paper overviews key achievements in different areas of reverse engineering, discusses the role of reverse engineering in today’s’ software development practice, and outlines new challenges deriving from new and emerging software development scenarios. Commun. ACM 54(4): 142-151 (2011) |
Preprints >