Slicing functional aspects out of legacy applications
Barth\'el\'emy Dagenais, Hafedh Mili

TL;DR
This paper proposes a program slicing approach to extract functional aspects from legacy object-oriented applications, aiding understanding and modularization of existing software.
Contribution
It introduces a novel method combining program slicing with aspect mining to identify functional aspects in legacy applications.
Findings
Program slicing can effectively identify functional aspects with proper criteria.
Design quality influences the clarity of extracted aspects.
Preliminary results on open source programs are promising.
Abstract
Aspect-oriented software development builds upon object-oriented development by offering additional abstraction boundaries that help us separate different types of requirements into so-called aspects. Given a legacy OO application, it pays to identify existing aspects to help understand the structure of the application and potentially to extract those aspects into separate software modules that can be maintained and reused individually. We present an approach to extract functional aspects using program slicing. We first characterize what we mean by functional aspect, and explore the extent to which program slicing techniques could improve over existing aspect mining and feature location methods for such aspects. We then describe the results of applying our approach to two medium-sized open source programs. Our preliminary results show that program slicing can yield well-defined…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Advanced Software Engineering Methodologies · Software Reliability and Analysis Research
