Bachelor and Master Theses

Title: Validating a Software Evolvability Model and an Evolvability Analysis Method in Industrial Contexts
Level: Advanced
Description: The definitions of a software evolvability model and a method that can be used to analyze software evolvability are based on an industrial case at ABB and have been reported in the licentiate thesis. (1) The idea with the evolvability model is to further derive the identified subcharacteristics to the extent when we are able to quantify them and/or make appropriate reasoning about the quality of the attributes. The subcharacteristics that are of primary importance for software evolvability in a given context (long-lived software-intensive systems) are: Analyzability, Architectural Integrity, Changeability, Extensibility, Portability, Testability and Domain-specific Attribute. (2) The evolvability analysis method is a structured method for analyzing software evolvability at the architectural level. Through using this method as described in the licentiate thesis, the implications of the potential improvement proposals and evolution path of the software architecture are analyzed with respect to the evolvability subcharacteristics.

It would be very interesting if some student can, by taking the results, apply the model and the analysis method to analyze another industrial software system outside of ABB. This is to validate and probably extend the existing evolvability model (by discovering more additional quality attributes that characterize an evolvable software system) and refining the evolvability analysis method. The evolvability analysis part can be done by (joining in the development team) implementing a specific requirement, identifying the potential architectural alternatives to fulfill the requirement, and analyzing their corresponding impacts to software evolvability. The evolvability model part can be done through interviews or surveys, or even the same as for the analysis method. If the student joins the development team for implementation of a certain requirement, he/she needs to have an overview of the driving factors (change stimuli) for refactoring/software improvement, understand the overall requirements that are essential for software architecture to accommodate these change stimuli. He/she should not only focus on implementing a specific functionality.
IDT supervisor: Hongyu Pei-Breivold, 070 240 8200
Examinator: Ivica Crnkovic
Ivica Crnkovic, +46-21-103183

Rapport och bilagor


Senaste uppdatering

  • Mälardalen University |
  • Box 883 |
  • 721 23 Västerås/Eskilstuna |
  • 021-101300, 016-153600 |
  • webmaster |
  • Latest update: 2017.08.23