Accepted Papers

  • Tagging in Assisted Tracing
    Wentao Wang, Nan Niu, Hui Liu and Yuting Wu
    Abstract: (Click to expand...)
    Assisted tracing is the process where human analyst vets and makes decisions concerning the automated method’s output. Current research reveals human fallibility in this process, and shows that analyst often makes incorrect decisions that lead to inaccurate final trace matrix. To help enhance analyst performance, we leverage tagging in assisted tracing. Specifically, we implement tagging as a front-end feature that allows analysts to freely mark what they feel worth externalizing during tracing. We then carry out an experiment to investigate the tagging practices of 28 student analysts in vetting requirements-to-source-code trace matrices. Our study shows that tagging is readily adopted by analysts, tags produced in tracing follow power laws, and tags greatly enhance the precision of analyst-submitted final trace matrices. Our work opens up new avenues for researching improved ways to foster analyst-tool integration.
  • Establishing and Navigating Trace Links Between Elements of Informal Diagram Sketches
    Markus Kleffmann, Sebastian Röhl, Volker Gruhn and Matthias Book
    Abstract: (Click to expand...)
    The Augmented Interaction Room is a team room whose walls are outfitted with wall-sized touchscreens that are used to create informal diagram sketches. It strives to help stakeholders in fostering a common understanding of a project’s most important risk and value drivers by visualizing aspects of a software system from different perspectives and allowing stakeholders to annotate elements that are especially important or critical for project success. In this paper, we discuss how a combination of traceability techniques and fuzzy search methods can be used to efficiently support the stakeholders’ collaboration and their early design and decision making activities by providing an easy and intuitive visualization and navigation approach and by automatically uncovering potential inconsistencies and contradictions in the created sketches. Since the pragmatic methodology of the Augmented Interaction Room encourages stakeholders to work with handwritten sketches rather than with formal modeling languages, the identification and maintenance of trace links is particularly challenging.
  • Traceability Recovery for Innovation Processes
    Thomas Beyhl and Holger Giese
    Abstract: (Click to expand...)
    Nowadays, innovation is a competitive business advantage. In practice, innovation and engineering are two distinct process steps with an information handover in between. Often only design prototypes are handed over that present the overall concept, but justify design decisions only partially. However, engineers require thorough knowledge about design rationales when getting the innovation ready for the market. Therefore, innovation processes need to support traceability to enable the retrieval of design rationales. But, existing approaches for documenting innovation processes rather focus on capturing artifacts than enabling the retrieval of traceability information. Furthermore, existing traceability approaches often cannot be employed, because they rely on structured artifacts. In this paper, we present a traceability recovery approach for innovation processes that enables traceability for unstructured artifacts as often used in innovation processes by employing recovery modules, which jointly recover traceability information. We demonstrate and evaluate our approach using the innovation methodology of Design Thinking.
  • The Parameterized Safety Requirements Templates
    Pablo Oliveira Antonino, Mario Trapp, Paulo Barbosa and Luana Sousa
    Abstract: (Click to expand...)
    Despite imposing strict recommendations to be considered during the specification of safety requirements, standards and regulation do not provide guidance to be used throughout the creation of these artifacts. In practice, each safety requirement specification has heterogeneous structures, usually based on the experience of the engineers involved in the specification process. Consequently, it becomes difficult to ensure that the standards recommendations were considered, such as the existence of evidences that the requirements are properly traceable to other development artifacts such as architecture and failure propagation models. To address this challenge, we defined the Parameterized Safety Requirements Templates, which is a controlled natural language approach to support engineers in elaborating the content description of safety requirements specifications, ensuring that elements of the architectural design and of the failure propagation models are explicitly considered along the textual description of the safety requirements, and, therefore, properly traced. The Parameterized Safety Requirements Templates have been used in different domains such as automotive, avionics, and medical devices, and have proven to be effective in improving artifacts traceability. In this paper we present its use in the context of an industrial Automated External Defibrillator system.
  • Managing Security Control Assumptions using Causal Traceability
    Armstrong Nhlabatsi, Yijun Yu, Andrea Zisman, Thein Than Tun, Arosha Bandara, Khaled Khan and Bashar Nuseibeh
    Abstract: (Click to expand...)
    Security control specifications of software systems are designed to meet their security requirements. Both the value of assets and the malicious intention of attackers are hard to know at design time, hence assumptions about the operational environment often reveal unexpected flaws. To diagnose the causes of security requirements violations it is necessary to check these design-time assumptions. Otherwise, the system could be vulnerable to potential attacks. Addressing such vulnerabilities requires an explicit understanding of how the security control specifications were defined from the original security requirements. However, assumptions are rarely explicitly documented and monitored during system operation. This paper proposes a systematic approach to monitoring design-time assumptions explicitly as logs, by using traceability links from requirements to specifications. The work also identifies which alternative security control specifications can be used to satisfy a security requirement that has been violated based on the logs. The work is illustrated by an example of an electronic patient record system.
  • Adaptive User Feedback for IR-based Traceability Recovery
    Annibale Panichella, Andrea De Lucia and Andy Zaidman
    Abstract: (Click to expand...)
    Traceability recovery allows software engineers to understand the interconnections among software artefacts and, thus, it provides an important support to software maintenance activities. In the last decade, Information Retrieval (IR) has been widely adopted as core of semi-automatic tools to extract traceability links between artefacts according to their textual information. However, a widely known problem of IR-based methods is that some artefacts may share more words with non-related artefacts than with related ones.
    To overcome this problem, enhancing strategies have been proposed in literature. One of these strategies is relevance feedback, which allows to modify the textual similarity according to classified links provided by the users. Even though this technique is widely used for natural language documents, previous works have demonstrated that relevance feedback are not always useful for software artefacts. In this paper, we propose an adaptive version of relevance feedback that, unlike the standard version, considers the characteristics of both (i) the software artefacts and (ii) the previously classified links for deciding whether and how to apply the feedback. An empirical evaluation conducted on three systems suggests that the adaptive relevance feedback outperforms both a pure IR-based method and the standard feedback
  • Toward an Evaluation Framework for Benchmarking Traceability Techniques
    Yonghee Shin, Jane Hayes and Jane Cleland-Huang
    Abstract: (Click to expand...)
    Software traceability is mandated in many safety critical domains. Unfortunately the sheer size and complexity of many industrial projects introduces pervasive challenges for effectively creating, maintaining, and using trace links. To address these problems researchers have invested considerable time and energy into developing and evaluating new traceability techniques. Unfortunately, reported studies show that different researchers have adopted a plethora of evaluation methods which have been inconsistently applied, making it almost impossible to compare techniques and thereby hindering advancements in the field. To address these problems it is necessary to create standard benchmarking techniques that enable comparisons between different tracing methods. We report results from a systematic study from which we identified recurring evaluation mistakes, and then define essential properties desirable in evaluation techniques, and propose guidelines for benchmarking the evaluation of traceability techniques. These properties and guidelines are illustrated through the empirical evaluation of three software traceability techniques applied to nine different data sets.
  • Leveraging Traceability to Reveal the Tapestry of Quality Concerns in Souce Code
    Xiaoli Lian, Ahmed Fakhry, Li Zhang and Jane Cleland-Huang
    Abstract: (Click to expand...)
    Software quality concerns, related to attributes such as reliability, security, and performance, are realized through a series of architectural decisions impacting the choice of frameworks, styles, tactics, and even high-level design patterns. These decisions are often undocumented and, as a result, developers maybe unaware of the relationship between various sections of the code and quality concerns. In this paper we utilize an existing classifier to detect architectural tactics in code, and then present three different visualization techniques for visualizing the impact of quality concerns on code. We demonstrate our approach against the Cassandra database system and show that our visualizations offer potentially useful perspectives on the tapestry of quality concerns woven throughout the code.
  • Toward Actionable Software Architecture Traceability
    Mehdi Mirakhorli and Saeed Namdar
    Abstract: (Click to expand...)
    This paper introduces a set of strategic traceability patterns for backward and forward traceability of critical architectural properties. These patterns define architecturally significant elements and factors which are engaged in realizing an architectural tactic and satisfying quality goals. Furthermore a set of traceability realization mechanisms are proposed to implement trace links among quality goals, architectural tactics and solution fragments that implement tactics.
  • Using Traceability for Incremental Construction and Evolution of Software Product Portfolios
    Lukas Linsbauer, Stefan Fischer, Roberto Erick Lopez-Herrejon and Alexander Egyed
    Abstract: (Click to expand...)
    Software reuse has become mandatory for companies to compete and a wide range of reuse techniques are available today. Despite the great benefits of these techniques, they also have the disadvantage that they do not necessarily support the creation and evolution of closely related products – products that are customized to different infrastructures, ecosystems, machinery, or customers. In this paper we outline an approach for incrementally constructing and evolving software product portfolios of similar product variants. An initial proof of concept demonstrates its feasibility.