Analyzing the Evolution of Software Systems by Providing and Relating Different Levels of Change Abstractions

This presentation was created for the SATURN conference series and does not necessarily reflect the positions and views of the Software Engineering Institute.

Studies on the life cycle of software-intensive systems conclude that the effort spent on maintenance can amount to 80% of the costs. People developing and maintaining such systems are confronted with a massive amount of information. Developers need to understand how the code to be changed relates to other features or bug fixes. Architects are interested in architecturally relevant changes only. Project stakeholders need to know the hot spots of frequent changes.

Currently, different versions of artifacts are compared at the code level only. Architecture or code-analysis tools evaluate and compare the quality of a software system at different points in time. The approach to be presented here focuses on the incremental or aggregated changes of the software over time. Changes are automatically resolved on structural levels such as architecture, design, and code. Architectural changes consist of added, removed, or changed components and changes of their dependencies. A component implementation is related to changes on the design-construct level, and these are categorized according to additional criteria such as being renamed or moved. Similarities are recognized over different design-construct versions.

When specifying a requirement or bug-tracking identification with configuration management check-ins, changes are also automatically related to requirements or bug fixes. This presentation will describe how impact analysis is supported by resolving all past changes attributable to a specific requirement starting with the last change to the code to be modified at the moment. Hints about how often a certain design construct has changed in combination with another design construct in the past indicate potential implications when modifying this design construct anew.

Analyzing the Evolution of Software Systems by Providing and Relating Different Levels of Change Abstractions

PDF [663 KB]

PRESENTATION

Authors

Juergen Salecker (Siemens AG)

Egon Wuchner (Siemens AG)

This presentation is related to the following area(s) of work:

SATURN

Published: May 2012

Find Us Here

Find us on Youtube  Find us on LinkedIn  Find us on twitter  Find us on Facebook

Share This Page

Share on Facebook  Send to your Twitter page  Save to del.ico.us  Save to LinkedIn  Digg this  Stumble this page.  Add to Technorati favorites  Save this page on your Google Home Page 

For more information

Contact Us

info@sei.cmu.edu

412-268-5800

Help us improve

Visitor feedback helps us continually improve our site.

Please tell us what you
think with this short
(< 5 minute) survey.