13 research outputs found

    An investigation of requirements traceability practices in software companies in Malaysia

    Get PDF
    Requirement traceability (RT) is one of the critical activity of good requirements management and an important part of development projects. At the same time, it improves the quality of software products. Nevertheless, industrial practitioners are challenged by this lack of guidance or results which serve as a rule or guide in establishing effective traceability in their projects. The outcome of this is that practitioners are ill-informed as to the best or most efficient means of accomplishing their tasks, such as found in software companies. Notwithstanding the lack of guidance, there are a number of commonly accepted practices which can guide industrial practitioners with respect to trace the requirements in their projects. This study aims to determine the practices of RT through conducting a systematic literature review. Also, this study conducted a survey for investigating the use of RT practices in the software companies at northern region of Malaysia. Finally, a series of interviews with practitioners were carried out to know the reasons that influence on the use of these practices in software development. The findings showed that majority software companies do not use traceability practices for tracing requirements due to financial issues and the lack of knowledge of these practices. This study presented empirical evidence about the use of RT practices among software companies. Thus, the findings of this study can assist practitioners to select RT practices, and also enables researchers to find gaps and pointers for future study in this study domain

    Interaction-Based Creation and Maintenance of Continuously Usable Trace Links

    Get PDF
    Traceability is a major concern for all software engineering artefacts. The core of traceability are trace links between the artefacts. Out of the links between all kinds of artefacts, trace links between requirements and source code are fundamental, since they enable the connection between the user point of view of a requirement and its actual implementation. Trace links are important for many software engineering tasks such as maintenance, program comprehension, verification, etc. Furthermore, the direct availability of trace links during a project improves the performance of developers. The manual creation of trace links is too time-consuming to be practical. Thus, traceability research has a strong focus on automatic trace link creation. The most common automatic trace link creation methods use information retrieval techniques to measure the textual similarity between artefacts. The results of the textual similarity measurement is then used to judge the creation of links between artefacts. The application of such information retrieval techniques results in a lot of wrong link candidates and requires further expert knowledge to make the automatically created links usable, insomuch as it is necessary to manually vet the link candidates. This fact prevents the usage of information retrieval techniques to create trace links continuously and directly provide them to developers during a project. Thus, this thesis addresses the problem of continuously providing trace links of a good quality to developers during a project and to maintain these links along with changing artefacts. To achieve this, a novel automatic trace link creation approach called Interaction Log Recording-based Trace Link Creation (ILog) has been designed and evaluated. ILog utilizes the interactions of developers with source code while implementing requirements. In addition, ILog uses the common development convention to provide issues' identifiers in a commit message, to assign recorded interactions to requirements. Thus ILog avoids additional manual efforts from the developers for link creation. ILog has been implemented in a set of tools. The tools enable the recording of interactions in different integrated development environments and the subsequent creation of trace links. Trace link are created between source code files which have been touched by interactions and the current requirement which is being worked on. The trace links which are initially created in this way are further improved by utilizing interaction data such as interaction duration, frequency, type, etc. and source code structure, i.e. source code references between source code files involved in trace links. ILog's link improvement removes potentially wrong links and subsequently adds further correct links. ILog was evaluated in three empirical studies using gold standards created by experts. One of the studies used data from an open source project. In the two other studies, student projects involving a real world customer were used. The results of the studies showed that ILog can create trace links with perfect precision and good recall, which enables the direct usage of the links. The studies also showed that the ILog approach has better precision and recall than other automatic trace link creation approaches, such as information retrieval. To identify trace link maintenance capabilities suitable for the integration in ILog, a systematic literature review about trace link maintenance was performed. In the systematic literature review the trace link maintenance approaches which were found are discussed on the basis of a standardized trace link maintenance process. Furthermore, the extension of ILog with suitable trace link maintenance capabilities from the approaches found is illustrated

    Konzipierung und Realisierung eines Kommunikationsverfahrens zum Austausch von Modellierungsdaten und zur Erstellung und Aufrechterhaltung von Traceability zwischen verteilten Applikationen

    Get PDF
    Verteilte, miteinander vernetzte Softwaresysteme haben in den vergangenen Jahren immer mehr an Bedeutung gewonnen und durchdringen mittlerweile viele Aspekte unseres Lebens. Verteilte Systeme sind deswegen heutzutage eines der aktuellen Forschungsthemen bei der Softwareentwicklung. Da die SW-Anwendungen/Komponenten dabei häufig zwangsweise verteilt sind, wollen Benutzer auch von verschiedenen Orten aus auf gemeinsame Ressourcen, wie etwa eine Datenbank, zugreifen. Die TU Ilmenau hat im Rahmen eines Forschungsprojekts ein Softwaretool/PlugIn, Trace-Maintainer(TM) für das SW-Modellierungstool Enterprise Architect entwickelt. Dieses Tool kann zur Zeit nur im lokalen Rechnerbetrieb dafür eingesetzt werden, die Traceability-Links innerhalb des gesamten Entwicklungsprozesses für eine effektive, evolutionäre Entwicklung zunutzen. Um aber den gesamten Funktionsumfang des Tools ausschöpfen zu können, muss das Tool unbedingt in einer verteilten Rechnerumgebung arbeitsfähig gemacht werden. Das Tool ist keine eigenständige SW-Anwendung und muss zur Laufzeit mit verschiedenen anderen SW-Komponenten kommunizieren. Da alle diese SW-Komponenten und das Tool selbst in Zukunftim Internet vollständig voneinander unabhängig arbeiten müssen, tritt ein neues Problem auf – die Herstellung einer Kommunikation zwischen diesen SW-Anwendungen. Im Rahmen dieser Diplomarbeit wurde eine neue SW-Komponente für das Tool entwickelt, die die Kommunikation dieser SW-Komponenten im lokalen als auch im verteilten Rechnerbetriebeinfach unterstützt. Auf der Basis dieser grundlegenden Systemeigenschaft wurden noch eine Reihe weiterer Funktionalitäten wie Start-Stop-Mechanismus, Sessionverwaltung und Nachrichtenverteilung eingebaut, um die Zusammenarbeit der SW-Komponenten des Tools nach wie vor ohne Schwierigkeiten zu gewährleisten. Die neue SW-Komponente ist nach dem Prinzipvon Netzwerk-Hub und Hub-und-Spoke-System realisiert und erlaubt einen eventbasierten Nachrichtenaustausch zwischen den SW-Komponenten des Tools. Die vorliegende Diplomarbeit zeigt die Ergebnisse der Entwicklung von Programmkomponenten im Zusammenhang mit dem Entwurf eines modularen Nachrichtentransportsystems für TraceMaintainer. Durch die Vorstellung dieses Lösungsansatzes wird in dieser Diplomarbeit vermittelt, dass die Traceability-Link-Beziehungen auch in verteilten Rechnerumgebungen angewendet werden können.Ilmenau, Techn. Univ., Diplomarbeit, 201

    VTrace-A Tool for Visualizing Traceability Links among Software Artefacts for an Evolving System

    Get PDF
    Traceability Management plays a key role in tracing the life of a requirement through all the specifications produced during the development phase of a software project. A lack of traceability information not only hinders the understanding of the system but also will prove to be a bottleneck in the future maintenance of the system. Projects that maintain traceability information during the development stages somehow fail to upgrade their artefacts or maintain traceability among the different versions of the artefacts that are produced during the maintenance phase. As a result the software artefacts lose the trustworthiness and engineers mostly work from the source code for impact analysis. The goal of our research is on understanding the impact of visualizing traceability links on change management tasks for an evolving system. As part of our research we have implemented a Traceability Visualization Tool-VTrace that manages software artefacts and also enables the visualization of traceability links. The results of our controlled experiment show that subjects who used the tool were more accurate and faster on change management tasks than subjects that didn’t use the tool

    VTrace-A Tool for Visualizing Traceability Links Among Software Artefacts for an Evolving System

    Full text link
    Traceability Management plays a key role in tracing the life of a requirement through all the specifications produced during the development phase of a software project. A lack of traceability information not only hinders the understanding of the system but also will prove to be a bottleneck in the future maintenance of the system. Projects that maintain traceability information during the development stages somehow fail to upgrade their artefacts or maintain traceability among the different versions of the artefacts that are produced during the maintenance phase. As a result the software artefacts lose the trustworthiness and engineers mostly work from the source code for impact analysis. The goal of our research is on understanding the impact of visualizing traceability links on change management tasks for an evolving system. As part of our research we have implemented a Traceability Visualization Tool-VTrace that manages software artefacts and also enables the visualization of traceability links. The results of our controlled experiment show that subjects who used the tool were more accurate and faster on change management tasks than subjects that didn't use the tool

    A Modelling Approach to Multi-Domain Traceability

    Get PDF
    Traceability is an important concern in projects that span different engineering domains. Traceability can also be mandated, exploited and man- aged across the engineering lifecycle, and may involve defining connections between heterogeneous models. As a result, traceability can be considered to be multi-domain. This thesis introduces the concept and challenges of multi-domain trace- ability and explains how it can be used to support typical traceability scenarios. It proposes a model-based approach to develop a traceability solution which effectively operates across multiple engineering domains. The approach introduced a collection of tasks and structures which address the identified challenges for a traceability solution in multi-domain projects. The proposed approach demonstrates that modelling principles and MDE techniques can help to address current challenges and consequently improve the effectiveness of a multi-domain traceability solution. A prototype of the required tooling to support the approach is implemented with EMF and atop Epsilon; it consists of an implementation of the proposed structures (models) and model management operations to sup- port traceability. Moreover, the approach is illustrated in the context of two safety-critical projects where multi-domain traceability is required to underpin certification arguments

    Towards a holistic framework for software artefact consistency management

    Get PDF
    A software system is represented by different software artefacts ranging from requirements specifications to source code. As the system evolves, artefacts are often modified at different rates and times resulting in inconsistencies, which in turn can hinder effective communication between stakeholders, and the understanding and maintenance of systems. The problem of the differential evolution of heterogeneous software artefacts has not been sufficiently addressed to date as current solutions focus on specific sets of artefacts and aspects of consistency management and are not fully automated. This thesis presents the concept of holistic artefact consistency management and a proof-of-concept framework, ACM, which aim to support the consistent evolution of heterogeneous software artefacts while minimising the impact on user choices and practices and maximising automation. The ACM framework incorporates traceability, change impact analysis, change detection, consistency checking and change propagation mechanisms and is designed to be extensible. The thesis describes the design, implementation and evaluation of the framework, and an approach to automate trace link creation using machine learning techniques. The framework evaluation uses six open source systems and suggests that managing the consistency of heterogeneous artefacts may be feasible in practical scenarios

    Establishing and Maintaining Semantically Rich Traceability: A Metamodelling Approach

    Get PDF
    This thesis addresses the problem of model-to-model traceability in Model Driven Engineering (MDE). A MDE process typically involves models ex- pressed in different modelling languages that capture different views of the system under development. To enhance automation, consistency and co- herency, establishing and maintaining semantically rich traceability links between models used throughout the software development lifecycle is of paramount importance. This thesis deals with the various challenges associated with providing traceability support in the context of MDE by defining a domain-specific, model-based traceability approach, which supports the main traceability ac- tivities in a rigorous and semi-automatic manner. To evaluate the validity of the thesis proposition, a reference implementation has been provided. The results obtained from the application of the proposed approach to various case-studies and examples have confirmed the feasibility and benefits of such an approach

    Optimierung der Rückverfolgbarkeit von Anforderungen im Software-Entwicklungsprozess : Entwicklung eines Lösungsansatzes zum Verknüpfen von Anforderungen mit Komponenten in der Benutzerschnittstelle

    Get PDF
    Die Rückverfolgbarkeit von Anforderungen ist Voraussetzung für wichtige Aufgaben im Projektmanagement. Sind Anforderungen im Entwicklungsprozess nachvollziehbar, können z. B. der Projektfortschritt effektiv überwacht, die Vollständigkeit der Umsetzung festgestellt oder fundierte Aufwandsschätzungen durchgeführt werden. Diese Arbeit beschäftigt sich mit der Optimierung der Rückverfolgbarkeit im Software-Entwicklungsprozess des Unternehmens intecsoft GmbH & Co. KG. Es wurde eine Software entwickelt, die Anforderungen an der Stelle ihrer Umsetzung in der Benutzeroberfläche des Softwareprodukts darstellt. Das Hauptaugenmerk lag dabei auf einer praktikablen Lösung für den Projektalltag. Es sollte kein weiterer personeller Aufwand zur Etablierung der Rückverfolgbarkeit entstehen. Anstelle einer Erfassungsmethode, die auf manuelles Markieren von Komponenten der Benutzerschnittstelle basiert, wurde auf Beziehungen zwischen Quellcode und Anforderungen zurückgegriffen, die bereits im Versionsverwaltungssystem des Softwareprojekts erfasst warenTraceability is a prerequisite for important tasks in project management. If requirements are traceable, than e.g. the progress of the project or the completeness of implementation can efficiently be monitored or profound cost estimations can be conducted. This thesis deals with the optimization of traceability in the software development process at intecsoft GmbH & Co. KG. A software tool was developed to display requirements at their place of implementation in the user interface of the application during runtime. The major interest was a practicable solution for the daily work in software projects. No extra personal costs should be necessary to establish the traceability solution. The obvious capture method would have been manual linking of components of the user interface with requirements. Instead, there were used traces between source code and requirements, which already existed in the code versioning system of the software project
    corecore