AbstractsComputer Science

Abstract

Software traceability is an important factor for effective development, maintenance, understanding and reuse of a software system. While traceability historically focused on ensuring that all requirements were implemented according to the specifications, the traceability concept is today widened to include tracing all kind of relations between all entities that is related to the developed artefacts. Although the importance of traceability is acknowledged, the formal and systematic recording and use of it is not as common as one could expect. Many software development tools support some kind of traceability, but this is normally done in a proprietary way. In a heterogenic software development environment, where many different tools from different vendors are used, it is difficult to establish traceability information that can be recorded and used in a uniform way for all the relevant tools. This problem increases when the development project involves different departments and institutions. This thesis will describe a way to record and use traceability data by combining technologies and methodologies from the world of model-driven development with semantic web technologies. This will facilitate the sharing of traceability information in a coherent way, not only between different kinds of software tools, but also between tools from different vendors and between different participating institutions. Using the concepts from semantic web allows traceability information to be recorded according to simple models that are both extensible related to future needs, and also has the flexibility that allows easy integration of different sets of traceability information. By using well accepted open standards, and exemplifying by using open source software, the thesis will show a way of implementing traceability that can be a basis for a more widespread use of traceability information in software development.