11 research outputs found

    Toward a better understanding and support of quality requirement documentation in agile software development

    No full text
    Abstract Software applications and services are essential parts of our daily lives. In today’s vibrant and rapidly changing business world, ensuring the quick delivery of quality software is important. Agile software development (ASD) has been widely adopted in the software industry owing to its capabilities for rapidly delivering valuable software. However, the findings from research reveal that ASD faces challenges regarding the documentation and management of quality requirements (QRs). QRs portray how well software performs its functions, and play a crucial role for the success of software. ASD studies reveal that QRs are often neglected, underspecified, not documented, and managed improperly. These often result in increased maintenance costs and system quality degradation. Examining QR documentation is valuable in obtaining a better understanding about the topic. It also helps in building guidelines and models that support QR documentation in ASD, which is a research gap. This dissertation aims to synthesize a better understanding about the documentation of QRs in ASD and to support QR documentation tasks in ASD. In order to achieve this, it first explored the state of the art of the management of QRs in ASD through a systematic mapping study. Then, it examined the state of the QR documentation practices in ASD through two multiple case studies. Next, a design science research methodology was applied to build Agile QR-Doc guidelines. The dissertation complements the literature with empirical knowledge on QR documentation practices, tools and artifacts and related stakeholders involved in QR documentation in ASD. It reveals the significance of documenting QRs, gives insight into aspects practitioners consider important when documenting QRs and a better understanding about factors influencing QR documentation in ASD. It also developed Agile QR-Doc guidelines and a model to support QR documentation in ASD. The guidelines have been validated by practitioners. They identified them as relevant, useful, understandable, and simple enough to use in supporting QR documentation tasks in ASD. The knowledge from the research can help practitioners proactively approach QR documentation tasks in ASD. For researchers, the dissertation offers the synthesis of empirical knowledge on QR documentation in ASD and identifies opportunities for future studies.Tiivistelmä Ohjelmistosovellukset ja -palvelut ovat olennainen osa jokapäiväistä elämäämme. Nykypäivän vilkkaassa ja nopeasti muuttuvassa yritysmaailmassa on olennaista taata laadukkaan ohjelmiston ripeä toimittaminen. Ketterä ohjelmistokehitys (ASD eng. Agile software development) on otettu laajalti käyttöön ohjelmistoteollisuudessa, koska sen ansiosta kyetään toimittamaan arvokkaita ohjelmistoja nopeasti. Tutkimustulokset osoittavat kuitenkin, että laatuvaatimusten (QRs eng. quality requirements) dokumentointi ja hallinta on haasteellista ASD:ssä. Laatuvaatimukset kuvaavat, kuinka hyvin ohjelmisto suorittaa toiminnallisuutensa, ja niillä on ratkaiseva rooli ohjelmiston menestyksen kannalta. Tutkimukset ASD-kontekstissa osoittavat, että laatuvaatimuksia laiminlyödään, niitä ei spesifioida tarpeeksi, niitä ei dokumentoida ja niitä hallinnoidaan väärin. Nämä johtavat usein kohonneisiin ylläpitokustannuksiin ja järjestelmän laadun heikkenemiseen. QR-dokumentoinnin tutkiminen on ensiarvoista aiheen paremman käsityksen kannalta. Sen avulla kyetään kehittämään ohjeita ja malleja tukemaan QR-dokumentointia ASD:ssä, joka on osoitettu tutkimuksessa puutteelliseksi. Väitöskirjan tavoitteena on lisätä ymmärrystä QR-dokumentoinnista ASD:ssä ja tukea sitä ASD:ssä. Tämän saavuttamiseksi väitöskirja tutkii ensin QR-hallintaa ASD:ssä systemaattisen kartoitustutkimuksen kautta. Tämän jälkeen tarkastellaan QR-dokumentoinnin tilaa ohjelmistoteollisuudessa kahden monitapaustutkimuksen avulla. Seuraavaksi kehitetään QR-Doc-ohjeistus laatuvaatimusten dokumentointiin ASD:ssä kehitystutkimusmenetelmää soveltaen. Tämä väitöskirja täydentää QR-dokumentointiin liittyvää tutkimustietoa empiirisellä tiedolla käytänteistä, työkaluista ja artefakteista sekä QR-dokumentointiin liittyvistä sidosryhmistä. Väitöskirja tuo ilmi QR-dokumentoinnin tärkeyden, valaisee ammatinharjoittajien tärkeinä pitämiä näkökulmia QR-dokumentoinnissa sekä auttaa ymmärtämään QR-dokumentointiin vaikuttavia tekijöitä ASD:ssä paremmin. Se esittää myös QR-Doc-ohjeistuksen sekä mallin, joka tukee QR-dokumentointia ASD:ssä. Kehitetty ohjeistus on arvioitu ammatinharjoittajien toimesta. Ohjeistus miellettiin oleelliseksi, hyödylliseksi, ymmärrettäväksi ja riittävän helppokäyttöiseksi, jotta se tukee QR-dokumentointia ASD:ssä. Tutkimuksesta saatu tieto auttaa ammatinharjoittajia lähestymään QR-dokumentointitehtäviä proaktiivisesti. Väitöskirja tarjoaa tutkijoille koottua empiiristä tietoa QR-dokumennista ASD:ssä sekä mahdollisuuksia jatkotutkimukselle

    Non-functional requirements documentation in agile software development:challenges and solution proposal

    No full text
    Abstract Non-functional requirements (NFRs) are determinant for the success of software projects. However, they are characterized as hard to define, and in agile software development (ASD), are often given less priority and usually not documented. In this paper, we present the findings of the documentation practices and challenges of NFRs in companies utilizing ASD and propose guidelines for enhancing NFRs documentation in ASD. We interviewed practitioners from four companies and identified that epics, features, user stories, acceptance criteria, Definition of Done (DoD), product and sprint backlogs are used for documenting NFRs. Wikis, word documents, mockups and spreadsheets are also used for documenting NFRs. In smaller companies, NFRs are communicated through white board and flip chart discussions and developers’ tacit knowledge is prioritized over documentation. However, loss of traceability of NFRs, the difficulty in comprehending NFRs by new developers joining the team and limitations of documentation practices for NFRs are challenges in ASD. In this regard, we propose guidelines for documenting NFRs in ASD. The proposed guidelines consider the diversity of the NFRs to document and suggest different representation artefacts depending on the NFRs scope and level of detail. The representation artefacts suggested are among those currently used in ASD in order not to introduce new specific ones that might hamper actual adoption by practitioners

    Quality requirement documentation guidelines for agile software development

    No full text
    Abstract In agile software development (ASD), where minimal documentation and rapid delivery are the focus, Quality requirements (QRs) are often underspecified and not documented. Guidelines supporting QR documentation task are scarce. The study developed the Agile QR-Doc QR documentation guidelines, which aim to support QR documentation in ASD. We applied a design science research methodology (DSRM) to build the Agile QR-Doc. We used a survey questionnaire and open discussion with ten software practitioners, from two ASD companies to validate the Agile QR-Doc. The practitioners evaluated the guidelines in terms of usefulness, relevance, understandability, and coverage of important aspects for supporting QR documentation and their impact on the agility of the software development process. Agile QR-Doc list 12 recommendations that are grouped into two categories. The first category introduces three recommendations that focus on raising awareness about the significance of QRs, their documentation and related challenges. The second category lists nine recommendations that introduce artifacts, practices and important aspects for documenting QRs. The validation reveals the relevance, understandability and usefulness of the guidelines to support QR documentation in ASD. It also indicates that the guidelines consider important aspects for documenting QRs and that they do not negatively affect the agility of the software development process. Practitioners can utilize the practices, artifacts and knowledge from the guidelines to support QR documentation in ASD. Researchers can benefit from the knowledge on QR documentation in ASD, and application of DSRM in building artifacts

    How agile software development practitioners perceive the need for documenting quality requirements:a multiple case study

    No full text
    Abstract Agile software development (ASD) promotes minimal documentation and often prioritizes functional requirements over quality requirements (QRs). This may be beneficial in reducing the time to market of software. When considering QRs in ASD, the minimal documentation practice may be seen as a concern since QRs determine the success of software projects and are as well not easy to specify and document. Nevertheless, what do practitioners think of the necessity of documenting QRs in ASD? How do they perceive factors that may affect documentation of QRs in ASD? We conducted a multiple case study of three cases applying ASD, involving 12 participants. ASD practitioners identify that it is important to document QRs, and perceive that it contributes to ensuring quality, clarifying QRs, and helping in decision making. Time constraint, QR awareness and communication gaps on QRs influence the documentation of QRs in ASD. ASD teams may align their documentation practices to fit the sprint duration. The influence of QR awareness on documentation was dependent on project context and roles. Communication gaps can create confusion on QRs. Missing and outdated QR documentation may result in accruing technical debt, and lack of common understanding on QRs. The study synthesizes empirical evidence on the significance of documenting QRs in ASD and provides an insight into factors affecting documentation of QRs in ASD

    Agile quality requirements management best practices portfolio:a situational method engineering approach

    No full text
    Abstract Management of Quality Requirements (QRs) is determinant for the success of software projects. However, this management is currently under-considered in software projects and in particular, in agile methods. Although agile processes are focused on the functional aspects of the software, some agile practices can be beneficial for the management of QRs. For example, the collaboration and interaction of people can help in the QR elicitation by reducing vagueness of requirements through communication. In this paper, we present the initial findings of our research investigating what industrial practices, from the agile methods, can be used for better management of QRs in agile software development. We use Situational Method Engineering to identify, complement and classify a portfolio of best practices for QR management in agile environments. In this regard, we present the methodological approach that we are applying for the definition of these guidelines and the requirements that will lead us to compile a portfolio of agile QR management best practices. The proposed requirements correspond to the whole software life cycle starting in the elicitation and finalizing in the deployment phases

    Towards optimal quality requirement documentation in agile software development:a multiple case study

    No full text
    Abstract Context: Agile software development (ASD) promotes minimal documentation and often prioritizes functional requirements over quality requirements (QRs). The minimal documentation emphasis may be beneficial in reducing time-to-market for software. However, it can also be a concern, especially with QRs, since they are challenging to specify and document and are crucial for software success. Therefore, understanding how practitioners perceive the importance of QR documentation is valuable because it can provide insight into how they approach this task. It also helps in developing models and guidelines that support the documentation of QRs in ASD, which is a research gap. Objective: We aim to understand practitioners’ perceptions of QR documentation and factors influencing this task to derive a model that supports optimal QR documentation in ASD. Method: We conducted a multiple case study involving 12 participants from three cases that apply ASD. Results: Practitioners identify QR documentation as important and perceive it as contributing to ensuring quality, clarifying QRs, and facilitating decision-making. Time constraints, QR awareness, and communication gaps affect QR documentation. Missing and outdated QR documentation may lead to technical debt and a lack of common understanding regarding QRs. We introduce a model to support optimal QR documentation in ASD by focusing on the factors: time constraints, QR awareness, and communication gaps. The model provides a representation and explanation of the factors affecting QR documentation in ASD and identifies mitigation strategies to overcome issues that may occur due to these factors. Conclusion: The study reveals the importance of documenting QRs in ASD. It introduces a model that is based on empirical knowledge of QR documentation practices in ASD. Both practitioners and researchers can potentially benefit from the model. For instance, practitioners can analyze how time constraints or QR awareness affect documentation, see potential issues that may arise from them, and utilize strategies suggested by the model to address these issues. Researchers can learn about QR documentation in ASD and utilize the model to understand the topic. They can also use the study as a baseline to investigate the topic with other cases

    Towards an ontology for strategic decision making:the case of quality in rapid software development projects

    No full text
    Abstract Strategic decision making is the process of selecting a logical and informed choice from the alternative options based on key strategic indicators determining the success of a specific organization strategy. To support this process and provide a common underlying language, in this work, we present an empirically-grounded ontology to support different strategic decision-making processes and extend the ontology to cover the context of managing quality in Rapid Software Development projects. We illustrate the complete ontology with an example

    Strategies to manage quality requirements in agile software development:a multiple case study

    No full text
    Abstract Agile methods can deliver software that fulfills customer needs rapidly and continuously. Quality requirements (QRs) are important in this regard; however, detailed studies on how companies applying agile methods to manage QRs are limited, as are studies on the rationale for choosing specific QR management practices and related challenges. The aim of this study was to address why practitioners manage QRs as they do and what challenges they face. We also analyzed how existing practices mitigate some of the found challenges. Lastly, we connect the contextual elements of the companies with their practices and challenges. We conducted 36 interviews with practitioners from four companies of varying sizes. Since each company operates in different domains, comparing QR management strategies and related challenges in different contexts was possible. We found that the companies apply proactive, reactive, and interactive strategies to manage QRs. Additionally, our study revealed 40 challenges in six categories that companies applying agile methods may face in QR management. We also identified nine contextual elements that affect QR management practice choices and which, importantly, can explain many related challenges. Based on these findings, we constructed a theoretical model about the connection between context, QR management practices, and challenges. Practitioners in similar contexts can learn from the practices identified in this study. Our preliminary theoretical model can help other practitioners identify what challenges they can expect to face in QR management in different developmental contexts as well as which practices to apply to mitigate these challenges

    Management of quality requirements in agile and rapid software development:a systematic mapping study

    No full text
    Abstract Context: Quality requirements (QRs) describe the desired quality of software, and they play an important role in the success of software projects. In agile software development (ASD), QRs are often ill-defined and not well addressed due to the focus on quickly delivering functionality. Rapid software development (RSD) approaches (e.g., continuous delivery and continuous deployment), which shorten delivery times, are more prone to neglect QRs. Despite the significance of QRs in both ASD and RSD, there is limited synthesized knowledge on their management in those approaches. Objective: This study aims to synthesize state-of-the-art knowledge about QR management in ASD and RSD, focusing on three aspects: bibliometric, strategies, and challenges. Research method: Using a systematic mapping study with a snowballing search strategy, we identified and structured the literature on QR management in ASD and RSD. Results: We found 156 primary studies: 106 are empirical studies, 16 are experience reports, and 34 are theoretical studies. Security and performance were the most commonly reported QR types. We identified various QR management strategies: 74 practices, 43 methods, 13 models, 12 frameworks, 11 advices, 10 tools, and 7 guidelines. Additionally, we identified 18 categories and 4 non-recurring challenges of managing QRs. The limited ability of ASD to handle QRs, time constraints due to short iteration cycles, limitations regarding the testing of QRs and neglect of QRs were the top categories of challenges. Conclusion: Management of QRs is significant in ASD and is becoming important in RSD. This study identified research gaps, such as the need for more tools and guidelines, lightweight QR management strategies that fit short iteration cycles, investigations of the link between QRs challenges and technical debt, and extension of empirical validation of existing strategies to a wider context. It also synthesizes QR management strategies and challenges, which may be useful for practitioners

    Quality measurement in agile and rapid software development:a systematic mapping

    No full text
    Abstract Context: In despite of agile and rapid software development (ARSD) being researched and applied extensively, managing quality requirements (QRs) are still challenging. As ARSD processes produce a large amount of data, measurement has become a strategy to facilitate QR management. Objective: This study aims to survey the literature related to QR management through metrics in ARSD, focusing on: bibliometrics, QR metrics, and quality-related indicators used in quality management. Methods: The study design includes the definition of research questions, selection criteria, and snowballing as search strategy. Results: We selected 61 primary studies (2001–2019). Despite a large body of knowledge and standards, there is no consensus regarding QR measurement. Terminology is varying as are the measuring models. However, seemingly different measurement models do contain similarities. Conclusions: The industrial relevance of the primary studies shows that practitioners have a need to improve quality measurement. Our collection of measures and data sources can serve as a starting point for practitioners to include quality measurement into their decision-making processes. Researchers could benefit from the identified similarities to start building a common framework for quality measurement. In addition, this could help researchers identify what quality aspects need more focus, e.g., security and usability that have surprisingly few metrics reported
    corecore