Software evolution refers to the process of adopting software systems to modification request caused by requirements and technology changes that occur after the initial system delivery. Prior to implementing a requirements change, decision-makers must determine if a modification request is feasible and the cost associated with it. Traditional modification analysis approaches have focused mainly on the analysis of source code to determine the potential impact of a change. In this research, we present a novel approach to support modification analysis early in the software evolution life cycle thus allowing management, who are not necessarily familiar with the detailed system implementation, to determine the impact associated with a modification request. In our research we develop several analysis techniques to support the system evolution at the requirements level, namely impact analysis at the requirements level, prediction of regression testing effort, feature interaction analysis including detecting potential bad smells of the requirements, in order to provide support for improving the comprehensibility and maintainability of requirements. In our approach, we combine Use Case Maps, as a notation to model requirements, with Formal Concept Analysis in order to explore the applicability of Formal Concept Analysis during modification analysis at the requirements level. We implemented a proof of concept tool implementation and several case studies are presented to demonstrate the applicability of our methodology.
- Please feel free to discuss this article directly on this page. Constructive comments are welcomed! Please sign your TWiki name.
| Title || Supporting UCM Requirements Evolution by Means of Formal Concept Analysis |
| Authors || Maryam Shiri |
| Type || Thesis |
| Conference/Journal Title || |
| Volume/Number || |
| Editors || |
| Publisher || Dept. of Computer Science and Software Engineering, Concordia University, Canada |
| Month || February |
| Year || 2008 |
| Pages || |
| Keywords || |