914 research outputs found
Grand Challenges of Traceability: The Next Ten Years
In 2007, the software and systems traceability community met at the first
Natural Bridge symposium on the Grand Challenges of Traceability to establish
and address research goals for achieving effective, trustworthy, and ubiquitous
traceability. Ten years later, in 2017, the community came together to evaluate
a decade of progress towards achieving these goals. These proceedings document
some of that progress. They include a series of short position papers,
representing current work in the community organized across four process axes
of traceability practice. The sessions covered topics from Trace Strategizing,
Trace Link Creation and Evolution, Trace Link Usage, real-world applications of
Traceability, and Traceability Datasets and benchmarks. Two breakout groups
focused on the importance of creating and sharing traceability datasets within
the research community, and discussed challenges related to the adoption of
tracing techniques in industrial practice. Members of the research community
are engaged in many active, ongoing, and impactful research projects. Our hope
is that ten years from now we will be able to look back at a productive decade
of research and claim that we have achieved the overarching Grand Challenge of
Traceability, which seeks for traceability to be always present, built into the
engineering process, and for it to have "effectively disappeared without a
trace". We hope that others will see the potential that traceability has for
empowering software and systems engineers to develop higher-quality products at
increasing levels of complexity and scale, and that they will join the active
community of Software and Systems traceability researchers as we move forward
into the next decade of research
Grand Challenges of Traceability: The Next Ten Years
In 2007, the software and systems traceability community met at the first
Natural Bridge symposium on the Grand Challenges of Traceability to establish
and address research goals for achieving effective, trustworthy, and ubiquitous
traceability. Ten years later, in 2017, the community came together to evaluate
a decade of progress towards achieving these goals. These proceedings document
some of that progress. They include a series of short position papers,
representing current work in the community organized across four process axes
of traceability practice. The sessions covered topics from Trace Strategizing,
Trace Link Creation and Evolution, Trace Link Usage, real-world applications of
Traceability, and Traceability Datasets and benchmarks. Two breakout groups
focused on the importance of creating and sharing traceability datasets within
the research community, and discussed challenges related to the adoption of
tracing techniques in industrial practice. Members of the research community
are engaged in many active, ongoing, and impactful research projects. Our hope
is that ten years from now we will be able to look back at a productive decade
of research and claim that we have achieved the overarching Grand Challenge of
Traceability, which seeks for traceability to be always present, built into the
engineering process, and for it to have "effectively disappeared without a
trace". We hope that others will see the potential that traceability has for
empowering software and systems engineers to develop higher-quality products at
increasing levels of complexity and scale, and that they will join the active
community of Software and Systems traceability researchers as we move forward
into the next decade of research
What have we learnt from the challenges of (semi-) automated requirements traceability? A discussion on blockchain applicability.
Over the last 3 decades, researchers have attempted to shed light into the requirements traceability problem by introducing tracing tools, techniques, and methods with the vision of achieving ubiquitous traceability. Despite the technological advances, requirements traceability remains problematic for researchers and practitioners. This study aims to identify and investigate the main challenges in implementing (semi-)automated requirements traceability, as reported in the recent literature. A systematic literature review was carried out based on the guidelines for systematic literature reviews in software engineering, proposed by Kitchenham. We retrieved 4530 studies by searching five major bibliographic databases and selected 70 primary studies. These studies were analysed and classified according to the challenges they present and/or address. Twenty-one challenges were identified and were classified into five categories. Findings reveal that the most frequent challenges are technological challenges, in particular, low accuracy of traceability recovery methods. Findings also suggest that future research efforts should be devoted to the human facet of tracing, to explore traceability practices in organisational settings, and to develop traceability approaches that support agile and DevOps practices. Finally, it is recommended that researchers leverage blockchain technology as a suitable technical solution to ensure the trustworthiness of traceability information in interorganisational software projects.publishedVersio
A Model Traceability Framework for Network Service Management
Automating the enactment of processes using model-driven methods and tools paves the way for streamlining or optimizing these processes. Establishing traceability in automated processes is instrumental in carrying out analysis of the process and the involved artifacts.
In this thesis, we propose a traceability information generation, visualization and analysis approach integrated with process modelling and enactment. A process model (PM) defined as an Activity Diagram has associated model transformations implementing the various activities and actions in the process. Enactment of the PM is carried out with the use of model transformation chaining in cooperation with model management means, in particular, megamodelling. We have incorporated both traceability in the small (at the model transformation level) and traceability in the large (at the PM level) in our approach. The traceability information is retained in the megamodel and forms the basis for traceability analysis of the enacted process. We have built a change impact analysis which allows the impact of a change in a model involved in the process to be assessed with the help of the derived megamodel.
We further extended our approach with the notion of intents. We propose the usage of intents at both the PM and model-transformation levels as part of our traceability information. We define intents as information representing the objective of the PM actions/activities and their implementations. Furthermore, we have incorporated traceability visualization support to visualize trace links relating models at different levels through the captured intents. The intent-enriched traceability information and the enhanced visualization enable semantically richer traceability analysis.
We applied our work to Network Service (NS) management in the context of the Network Functions Virtualization (NFV) paradigm.We believe automation of the orchestration and management of network services can progress rapidly with the help of model-driven engineering methods and tools. We applied our approach on a NS design process to analyze the impact of changing input models on output models as well as to show the benefits of intents not only in the context of this process, but also for the whole NS lifecycle management operations.
Our work is concretized in a tool, MAPLE-T, built as an Eclipse plugin. It extends MAPLE, an integrated process modelling and enactment environment
Towards a holistic framework for software artefact consistency management
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
A document based traceability model for test management
Software testing has became more complicated in the emergence of distributed network, real-time environment, third party software enablers and the need to test system at multiple integration levels. These scenarios have created more concern over the quality of software testing. The quality of software has been deteriorating due to inefficient and ineffective testing activities. One of the main flaws is due to ineffective use of test management to manage software documentations. In documentations, it is difficult to detect and trace bugs in some related documents of which traceability is the major concern. Currently, various studies have been conducted on test management, however very few have focused on document traceability in particular to support the error propagation with respect to documentation. The objective of this thesis is to develop a new traceability model that integrates software engineering documents to support test management. The artefacts refer to requirements, design, source code, test description and test result. The proposed model managed to tackle software traceability in both forward and backward propagations by implementing multi-bidirectional pointer. This platform enabled the test manager to navigate and capture a set of related artefacts to support test management process. A new prototype was developed to facilitate observation of software traceability on all related artefacts across the entire documentation lifecycle. The proposed model was then applied to a case study of a finished software development project with a complete set of software documents called the On-Board Automobile (OBA). The proposed model was evaluated qualitatively and quantitatively using the feature analysis, precision and recall, and expert validation. The evaluation results proved that the proposed model and its prototype were justified and significant to support test management
Supporting Multiple Stakeholders in Agile Development
Agile software development practices require several stakeholders with different kinds of expertise to collaborate while specifying requirements, designing and modeling software, and verifying whether developers have implemented requirements correctly. We studied 112 requirements engineering (RE) tools from academia and the features of 13 actively maintained behavior-driven development (BDD) tools, which support various stakeholders in specifying and verifying the application behavior. Overall, we found that there is a growing tool specialization targeted towards a specific type of stakeholders. Particularly with BDD tools, we found no adequate support for non-technical stakeholders —- they are required to use an integrated development environment (IDE) —- which is not adapted to suit their expertise. We argue that employing separate tools for requirements specification, modeling, implementation, and verification is counter-productive for agile development. Such an approach makes it difficult to manage associated artifacts and support rapid implementation and feedback loops. To avoid dispersion of requirements and other software-related artifacts among separate tools, establish traceability between requirements and the application source code, and streamline a collaborative software development workflow, we propose to adapt an IDE as an agile development platform. With our approach, we provide in-IDE graphical interfaces to support non-technical stakeholders in creating and maintaining requirements concurrently with the implementation. With such graphical interfaces, we also guide non-technical stakeholders through the object-oriented design process and support them in verifying the modeled behavior. This approach has two advantages: (i) compared with employing separate tools, creating and maintaining requirements directly within a development platform eliminates the necessity to recover trace links, and (ii) various natively created artifacts can be composed into stakeholder-specific interactive live in-IDE documentation. These advantages have a direct impact on how various stakeholders collaborate with each other, and allow for rapid feedback, which is much desired in agile practices. We exemplify our approach using the Glamorous Toolkit IDE. Moreover, the discussed building blocks can be implemented in any IDE with a rich-enough graphical engine and reflective capabilities
MATrA: meta-modelling approach to traceability for avionics
PhD ThesisTraceability is the common term for mechanisms to record and navigate relationships between artifacts
produced by development and assessment processes. Effective management of these relationships is
critical to the success of projects involving the development of complex aerospace products.
Practitioners use a range of notations to model aerospace products (often as part of a defined technique
or methodology). Those appropriate to electrical and electronic systems (avionics) include Use Cases
for requirements, Ada for development and Fault Trees for assessment (others such as PERT networks
support product management). Most notations used within the industry have tool support, although a
lack of well-defined approaches to integration leads to inconsistencies and limits traceability between
their respective data sets (internal models).
Conceptually, the artifacts produced using such notations populate four traceability dimensions. Of
these, three record links between project artifacts (describing the same product), while the fourth relates
artifacts across different projects (and hence products), and across product families within the same
project.
The scope of this thesis is to define a meta-framework that characterises traceability dimensions for
aerospace projects, and then to propose a concrete framework capturing the syntax and semantics of
notations used in developing avionics for such projects which enables traceability across the four
dimensions. The concrete framework is achieved by exporting information from the internal models of
tools supporting these notations to an integrated environment consisting of. i) a Workspace comprising
a set of structures or meta-models (models describing models) expressed in a common modelling
language representing selected notations (including appropriate extensions reflecting the application
domain); ii) well-formedness constraints over these structures capturing properties of the notations (and
again, reflecting the domain); and iii) associations between the structures. To maintain consistency and
identify conflicts, elements of the structures are verified against a system model that defines common
building blocks underlying the various notations.
The approach is evaluated by (partial) tool implementation of the structures which are populated using
case study material derived from actual commercial specifications and industry standards
Supporting multiple stakeholders in agile development
Agile software development practices require several stakeholders with different kinds of expertise to collaborate while specifying requirements, designing, and modelling software, and verifying whether developers have implemented requirements correctly. We studied 112 requirements engineering (RE) tools from academia and the features of 13 actively maintained behavior-driven development (BDD) tools, which support various stakeholders in specifying and verifying the application behavior. Overall, we found that there is a growing tool specialization targeted towards a specific type of stakeholders. Particularly with BDD tools, we found no adequate support for non-technical stakeholders-- they are required to use an integrated development environment (IDE)-- which is not adapted to suit their expertise.
We argue that employing separate tools for requirements specification, modelling, implementation, and verification is counterproductive for agile development. Such an approach makes it difficult to manage associated artifacts and support rapid implementation and feedback loops.
To avoid dispersion of requirements and other software-related artifacts among separate tools, establish traceability between requirements and the application source code, and streamline a collaborative software development workflow, we propose to adapt an IDE as an agile development platform. With our approach, we provide in-IDE graphical interfaces to support non-technical stakeholders in creating and maintaining requirements concurrently with the implementation. With such graphical interfaces, we also guide non-technical stakeholders through the object-oriented design process and support them in verifying the modelled behavior. This approach has two advantages: (i) compared with employing separate tools, creating, and maintaining requirements directly within a development platform eliminates the necessity to recover trace links, and (ii) various natively created artifacts can be composed into stakeholder-specific interactive live in-IDE documentation. These advantages have a direct impact on how various stakeholders collaborate with each other, and allow for rapid feedback, which is much desired in agile practices. We exemplify our approach using the Glamorous Toolkit IDE. Moreover, the discussed building blocks can be implemented in any IDE with a rich-enough graphical engine and reflective capabilities
- …