Modeling History to Understand Software Evolution

Gîrba, Tudor (2005). Modeling History to Understand Software Evolution. (Dissertation, University of Bern, Philosophisch-naturwissenschaftliche Fakultät)

[img] Text
girba-phd.pdf - Published Version
Restricted to registered users only
Available under License Publisher holds Copyright.

Download (3MB) | Request a copy

Over the past three decades, more and more research has been spent on understanding software evolution. The development and spread of versioning systems made valuable data available for study. Indeed, versioning systems provide rich information for analyzing software evolution, but it is exactly the richness of the information that raises the problem. The more versions we consider, the more data we have at hand. The more data we have at hand, the more techniques we need to employ to analyze it. The more techniques we need, the more generic the infrastructure should be. The approaches developed so far rely on ad-hoc models, or on too specific meta-models, and thus, it is difficult to reuse or compare their results. We argue for the need of an explicit and generic meta-model for allowing the expression and combination of software evolution analyses. We review the state-of-the-art in software evolution analysis and we conclude that: \emphTo provide a generic meta-model for expressing software evolution analyses, we need to recognize the evolution as an explicit phenomenon and model it as a first class entity. Our solution is to encapsulate the evolution in the explicit notion of history as a sequence of versions, and to build a meta-model around these notions: Hismo. To show the usefulness of our meta-model we exercise its dif ferent characteristics by building several reverse engineering applications. This dissertation of fers a meta-model for software evolution analysis yet, the concepts of history and version do not necessarily depend on software. We show how the concept of history can be generalized and how we can obtain our meta-model by transformations applied on structural meta-models. As a consequence, our approach of modeling evolution is not restricted to software analysis, but can be applied to other fields as well.

Item Type:

Thesis (Dissertation)

Division/Institute:

08 Faculty of Science > Institute of Computer Science (INF)
08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG)

UniBE Contributor:

Girba, Tudor Adrian

Subjects:

000 Computer science, knowledge & systems
500 Science > 510 Mathematics

Language:

English

Submitter:

Manuela Bamert

Date Deposited:

29 Jan 2018 16:25

Last Modified:

29 Mar 2018 06:35

BORIS DOI:

10.7892/boris.104534

URI:

https://boris.unibe.ch/id/eprint/104534

Actions (login required)

Edit item Edit item
Provide Feedback