Conference Paper

Managing Requirements Knowledge (MaRK_08)

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

MaRK_08 focuses on potentials and benefits of lightweight knowledge management approaches, such as ontology-based annotation, semantic Wikis and rationale management techniques, applied to requirements engineering. Methodologies, processes and tools for capturing, externalizing, sharing and reusing of knowledge in (distributed) requirements engineering processes are discussed. Furthermore, the workshop is an interactive exchange platform between the knowledge management community, requirements engineering community and industrial practitioners. This proceeding includes selected and refereed contributions.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... For Gallardo-Valencia and Sim [31] requirements knowledge is ideally captured in a requirements specification document using a written format, although such written knowledge is complemented by requirements knowledge that is shared in an informal manner through conversations among and between stakeholders. Moreover, Maalej et al. [50] affirm that it is necessary to capture and share tacit knowledge about requirements and make it explicit, in order to be able to manipulate it, because: (1) reuse is enhanced; (2) traceability is enabled; (3) requirements evolution is supported; and (4) collaboration between participants in distributed projects is improved. Besides, Ma et al. [49] have noted that the presence of tacit knowledge might have a negative impact on communication through requirements documents; such knowledge should therefore be properly managed with the intention of avoiding miscommunication, misinterpretation and inappropriate contextualisation among stakeholders, especially in the case of a GSE context [2]. ...
... Besides, Ma et al. [49] have noted that the presence of tacit knowledge might have a negative impact on communication through requirements documents; such knowledge should therefore be properly managed with the intention of avoiding miscommunication, misinterpretation and inappropriate contextualisation among stakeholders, especially in the case of a GSE context [2]. Even though recent technologies and advancements have boosted KM support within distributed software development teams [2], in particular KM support to RE [50], usual technologies and infrastructures typically focus only on addressing issues related to the management of explicit knowledge, whereas they should capture, formalise and manipulate tacit or implicit knowledge [2,50]. ...
... Besides, Ma et al. [49] have noted that the presence of tacit knowledge might have a negative impact on communication through requirements documents; such knowledge should therefore be properly managed with the intention of avoiding miscommunication, misinterpretation and inappropriate contextualisation among stakeholders, especially in the case of a GSE context [2]. Even though recent technologies and advancements have boosted KM support within distributed software development teams [2], in particular KM support to RE [50], usual technologies and infrastructures typically focus only on addressing issues related to the management of explicit knowledge, whereas they should capture, formalise and manipulate tacit or implicit knowledge [2,50]. ...
Chapter
Full-text available
Knowledge sharing and reuse in global software engineering (GSE) are challenging issues. Knowledge management (KM) is specifically impacted be-cause on top of distance, culture and language mismatches, there is also the per-ceived risk of sharing something which could mean that others could take over some work. Mistrust and protectionism are often the consequence, leading to in-sufficient reuse. This is visible specifically in requirements engineering (RE), where all reuse should start. In this article we will look to reuse in RE with a de-tailed look on how to improve knowledge sharing and collaboration in distributed environments. We first look into the state of the practice. Then we present a light-weight, reuse-based, global RE method called PANGEA (Process for global re-quiremeNts enGinEering and quAlity), based on natural language requirements and software engineering standards. Based on this method we also build a proto-typical tool, called PANTALASA (PANgea Tool And Lightweight Automated Support Architecture) which provides automated support for PANGEA. Its fea-tures are drawn from PANGEA and the state of the practice commercially availa-ble RE tools. A prototype of PANTALASA was developed by using Semantic MediaWiki and Facebook, and applied to a case study in the domain of hotel man-agement. We could show with this method and prototype that collaboration and thus KM and reuse in RE is improved.
... According to the scale and complexity of problems, in order to solve them by ULS systems mean that, in many cases, the requirements to be satisfied by the systems will not be adequately known until the system are in use, which means each solution will be provided will give a deeper understanding of what the problem is and lead to attempt for a solution 11 ...
Article
Full-text available
According to the growing evolution in complex systems and their integrations, Internet of things, communication, massive information flows and big data, a new type of systems has been raised to software engineers known as Ultra Large Scale (ULS) Systems. Hence, it requires dramatic change in all aspects of “Software Engineering” practices and their artifacts due to its unique characteristics.
Chapter
Working with requirements is a knowledge-intensive task. During the elicitation, comprehension, or management of requirements, practitioners often consume and produce additional information such as domain knowledge, rationale, requirements dependencies, “who knows what”, or how-to’s. However, current requirements engineering processes and tools lack a systematic support for the management of knowledge about requirements. This makes it difficult for practitioners to capture and share such knowledge. This chapter summarises our experience on implementing a lightweight, pragmatic approach to capture and share requirements knowledge. We recommend practitioners to Draw a knowledge landscape, Use lightweight tools, Follow a simple iterative process, Interact with external communities, Capture tacit knowledge, and Establish a knowledge culture. We introduce these guidelines, report on motivating examples, and discuss how they can be applied successfully in practice.
Chapter
This chapter summarises the Managing Requirements Knowledge book and concludes with the future work. For this purpose, we performed a case-by-case review of the book chapters as well as other relevant publications and extracted the research issues, main contributions, benefits or lessons learned, and future research directions.
Article
Variability management is a key activity in software product line engineering. This paper focuses on managing rationale information during the decision-making activities that arise during variability management. By decision-making we refer to systematic problem solving by considering and evaluating various alternatives. Rationale management is a branch of science that enables decision-making based on the argumentation of stakeholders while capturing the reasons and justifications behind these decisions.
Conference Paper
Full-text available
Large software development projects are complex endeavours that involve numerous participants which can work across several sites and act in various roles. Each participant produces and consumes information relevant for the success of the project. In such settings, an effective and efficient allocation of knowledge is a hard challenge, especially if there is no central authority, which enforces standards for the whole ecosystem. We consider semantic technologies as an important enabler to improve information and knowledge sharing in such scenarios, by helping to exchange and interconnect software engineering knowledge across the web. In this paper, we describe the corresponding vision of a Software Engineering Semantic Web and the role of intelligent IDEs in order to benefit from and contribute to it.
Chapter
Two of the biggest challenges in knowledge management are making tacit knowledge explicit and keeping explicit knowledge up-to-date. In this chapter, we focus on how to manage knowledge about a software system with respect to change, so that changes can be evaluated and realized with less effort and without reducing quality. We use a rationale-based approach for making explicit change knowledge and the knowledge activities that need to occur during requirements specification and evolution. The knowledge activities keep the requirements and the change knowledge up-to-date. While these issues have been examined to some extent independently in the requirements, change, and knowledge management communities, we focus on the integration of methods from all three communities. The goal of the chapter is to illustrate the synergy effects and resulting benefits that occur when interleaving knowledge and requirements activities.
Article
Rationale is the justification behind decisions. It is captured and used in many different forms during software engineering. While it has not achieved widespread use in practice, several approaches have emerged and successfully been used in selected projects. The goal of this chapter is to review the current state-of-the art of rationale management approaches and tool support in software engineering, and map future research directions.
Conference Paper
Modeling variability is a challenging issue in product line requirements engineering. Particular problems include, the instantiation of variations for individual products, the long-term evolution of the product line, and the support of collaboration between stakeholders. These problems are even more complicated when the product line organization is globally distributed. To address theses problems, this paper identifies four higher-level similarities between rationale management (which focus on knowledge management during software design) and variability management. Furthermore, exploiting the similarities, rationale management is combined with variability management to contribute issue-based variability modeling. Issue-based variability modeling was implemented and empirically evaluated based on a series of case studies with multi-case design. The results of the evaluation show that our approach improves the instantiation and evolution of variability, enables better informal collaboration between distributed stakeholders with different levels of modeling expertise and enhances the longevity of product lines.
Concepts and Techniques