On the Impact of Rigorous Approaches on the Quality of Development

Marta Olszewska

Forskningsoutput: Typer av avhandlingarDoktorsavhandlingSamling av artiklar

5 Nedladdningar (Pure)

Sammanfattning

Software systems are expanding and becoming increasingly present ineveryday activities. The constantly evolving society demands that they delivermore functionality, are easy to use and work as expected. All these challengesincrease the size and complexity of a system. People may not be aware of apresence of a software system, until it malfunctions or even fails to perform. Theconcept of being able to depend on the software is particularly significant whenit comes to the critical systems. At this point quality of a system is regarded asan essential issue, since any deficiencies may lead to considerable money loss orlife endangerment.Traditional development methods may not ensure a sufficiently high level ofquality. Formal methods, on the other hand, allow us to achieve a high level ofrigour and can be applied to develop a complete system or only a critical part ofit. Such techniques, applied during system development starting at early designstages, increase the likelihood of obtaining a system that works as required.However, formal methods are sometimes considered difficult to utilise intraditional developments. Therefore, it is important to make them moreaccessible and reduce the gap between the formal and traditional developmentmethods. This thesis explores the usability of rigorous approaches by giving aninsight into formal designs with the use of graphical notation. Theunderstandability of formal modelling is increased due to a compactrepresentation of the development and related design decisions.The central objective of the thesis is to investigate the impact that rigorousapproaches have on quality of developments. This means that it is necessary toestablish certain techniques for evaluation of rigorous developments. Since weare studying various development settings and methods, specific measurementplans and a set of metrics need to be created for each setting. Our goal is toprovide methods for collecting data and record evidence of the applicability ofrigorous approaches. This would support the organisations in making decisionsabout integration of formal methods into their development processes.It is important to control the software development, especially in its initialstages. Therefore, we focus on the specification and modelling phases, as well asrelated artefacts, e.g. models. These have significant influence on the quality of afinal system. Since application of formal methods may increase the complexityof a system, it may impact its maintainability, and thus quality. Our goal is toleverage quality of a system via metrics and measurements, as well as genericrefinement patterns, which are applied to a model and a specification. We arguethat they can facilitate the process of creating software systems, by e.g.controlling complexity and providing the modelling guidelines. Moreover, wefind them as additional mechanisms for quality control and improvement, alsofor rigorous approaches.The main contribution of this thesis is to provide the metrics andmeasurements that help in assessing the impact of rigorous approaches ondevelopments. We establish the techniques for the evaluation of certain aspectsof quality, which are based on structural, syntactical and process relatedcharacteristics of an early-stage development artefacts, i.e. specifications andmodels. The presented approaches are applied to various case studies. Theresults of the investigation are juxtaposed with the perception of domain experts.It is our aspiration to promote measurements as an indispensable part of qualitycontrol process and a strategy towards the quality improvement.
OriginalspråkOdefinierat/okänt
Förlag
Tryckta ISBN978-952-12-2671-7
StatusPublicerad - 2011
MoE-publikationstypG5 Doktorsavhandling (artikel)

Nyckelord

  • Quality Assessment
  • Software Development
  • Rigorous Systems
  • Maintainability
  • Software Metrics
  • Measurement

Citera det här