Quality Improvement with Focus on Performance in Software Platform Development

University dissertation from Department of Communication Systems, Lund University

Abstract: Platform development provides software organisations with means to quickly respond to changing consumer needs. Product reuse and improved development efficiency can be achieved if platform development is introduced. A major challenge when using software platforms to produce a variety of products is to keep a high quality of the platform throughout the development of the products. It is therefore essential to monitor, control and explore quality attributes when designing and managing the platform. The thesis presents a number of approaches to support quality improvements in software platform development. Empirical methods, i.e. case studies and surveys in real industrial settings together with a controlled experiment, are used to investigate the introduced approaches. Approaches directed to both quality improvement in general and improvement with focus on software performance are introduced. The thesis introduces an approach to find process improvements by benchmarking the platform management process used in the organisation. The benchmarking approach is evaluated in a case study involving two different companies providing gains for both, according to their own evaluation. A measure for tracking degradation in software product lines is introduced in the thesis. The measure is validated with data from different version of a commercial software platform. A qualitative methodology is introduced to survey and tailor processes to improve management of software performance. The methodology was used in a company and provided valuable data for process improvement. In a controlled experiment, we validate different methods using subjective estimations of software performance. The result shows that a method relying on data from prior platforms improve the estimation of software performance. Case studies are carried out with software performance measurements from a commercial software platform. Principles for storing and using the measurements related to software performance estimations are presented and evaluated. Also, it is shown how a simple performance model, parameterized with trace files, provides useful support for estimating software performance in software platform development.

  CLICK HERE TO DOWNLOAD THE WHOLE DISSERTATION. (in PDF format)