• No se han encontrado resultados

Informe de los resultados

Agility is increasing throughout organizations. Agile methodologies and agile techniques are used for product development across almost all industries. People in agile environments strive for continuous improvement, which leads to a rapidly evolving knowledgebase in the field of ASD. Agile techniques like continuous delivery (Humble and Farley, 2010) or DevOps (Hüttermann, 2012) are changing the way software is developed and delivered from a technical point of view.

However, requirements are often managed in a plan-driven manner although agile techniques like story mapping (Patton, 2014) or impact mapping (Adzic, 2012) are in place. Organizations still struggle with improving their processes systematically in order to increase value delivery and collaboration.

The main contribution of this PhD thesis is a framework for modeling agile RE. The framework consists of three main components:

• The agile RE metamodel, which allows analyzing the environment of an organization, where the product development takes place.

• A catalogue of agile RE problems, which supports detecting common problems that occur in terms of agile RE.

• A catalogue of agile RE patterns, which can be used to improve the environment and support solving the identified agile RE problems.

134 A Framework for Modeling and Improving Agile Requirements Engineering

The framework provides several benefits for organizations. On the one hand, organizations can use the framework for increasing their value delivery. Value delivery is an organization external parameter, which is related to the outcome of a product in terms of users´ and customers´ needs. The people working in an organization need to define what value means and need to find appropriate KPIs for measuring the value. In this context, they need to leave room for iterating on the definition of value. On the other hand, organizations can utilize the framework to improve the collaboration among people working in the environment. Collaboration is an organization internal parameter, which is related to how people feel during their work as well as on the effectiveness of product development.

The presented framework enables agile practitioners as well as researchers to improve their environments in a systematic manner. In particular, the framework is suitable for complex environments, where a lot of different people with different roles are involved or hybrid models for product development are applied as shown in the case studies.

With regard to the vision of this PhD, which was decomposed into four main objectives (see section 3.2), the following results have been achieved:

• An analysis of the state of the art of agile RE with focus on stakeholder and user involvement.

• A conceptual approach for agile RE management by means of the agile RE metamodel and two examples of domain specific models, which show how the metamodel can be applied in industry. The domain specific models are created by means of a profile for the agile RE metamodel.

• Techniques to apply the conceptual approach to the enterprise environment by means of agile RE problems and agile RE patterns.

• Tool support by means of a web application (agileRE.org)

We analyzed the state of the art of agile RE with focus on user and stakeholder involvement by means of a SLR (Schön et al., 2017a). Therefore, the most relevant related work regarding the relation among Agile, HCD, and RE has been presented. The state of the art study helped us to achieve deep insights into the field of agile RE, in particular in terms of:

• presence of the user perspective • stakeholder and user involvement

• integration of methodologies to make ASD more human-centered • building a shared understanding

• data gathering

• non-functional requirements

• documentation of requirements by means of artifacts

Based on this study, we were able to identify gaps in existing research, which helped us to target our research. The available literature shows that there are still challenges regarding the iterative involvement of user and stakeholder in the development process as well as building a shared understanding of the user perspective. We found a variety of methods and artifacts, which are used in ASD for different purposes in a specific context. However, guidelines for choosing the right kind of artifacts that enhance collaboration among all people involved in the development process are missing.

In a next step, we created the agile RE metamodel, aiming to build an abstraction layer about the variety of existing process models for agile RE in the field. The initial version of the agile RE

135 A Framework for Modeling and Improving Agile Requirements Engineering

metamodel is inferred by an analysis of related process models for agile RE and experiences working in industry projects (Schön, 2016). We improved the metamodel iteratively by means of discussions with other researchers and further empirical studies [Ref].

The agile RE metamodel builds the heart of our framework and shapes the conceptual approach for agile RE management. It allows us to reflect the dependencies among people and product development process and supports improvement by inspection and adaptation.

The metamodel has several implications for both, researchers and practitioners. On the one hand, the metamodel can be used to model new process models for agile RE that are strongly focused on value delivery and therefore can be classified as value-driven process models. On the other hand, existing process models can be evaluated as well as improved by the metamodel.

Moreover, we contribute a visual language for the agile RE metamodel by means of a profile. The profile allows us to extend the metaclasses of the agile RE metamodel with the aim to tailor domain specific models.

Subsequent to the definition of our conceptual approach, we contribute techniques (a catalogue of agile RE problems and a catalogue of agile RE patterns) that allow us to apply the conceptual approach to the enterprise environment.

For creating the catalogue of agile RE problems, we carried out an iterative expert judgement process comprising three complementary rounds (Schön et al., 2017d). Our panel consisted of 26 experts in the field of ASD working for 19 different companies. During these rounds we find the core of a specific problem by abstracting contextual information of the problems. The learnings from previous iterations were used for carrying out the following ones. In sum, we identified 20 problems industry has to address at present in terms of agile RE. Six of these problems have been defined as key problems:

• technical or functional dependencies to other teams (C1) • understanding of agile values of the stakeholders (C2) • staying focused on the big picture (C3)

• continuous requirements management (C4)

• refine requirements in collaboration with users (C5) • involve stakeholder iteratively (C6)

A further result of this study is the analysis of options to deal with those key problems by means of agile techniques, which are recommended by the panel. These results supported us in creating the catalogue of agile RE patterns.

The agile RE problems and agile techniques allow us to create agile RE patterns. As part of the results of this PhD thesis, we introduced the concept of agile RE patterns (Schön et al., 2017b). For creating the agile RE patterns, we carried out a systematic pattern mining process comprising three phases. In the first phase, we collected the agile techniques identified by our SLR. Then, we combined these results with the ones from our iterative expert judgement process. Finally, we mapped the results in order to create agile RE patterns. An agile RE pattern is composed of an agile RE problem and appropriate agile techniques, which can be utilized to solve the problem. With this mapping, we derived in sum 41 agile RE patterns. In this work, we showed an overview of the 41 identified agile RE patterns and presented examples: a) Evaluation and Testing, b) Story Map, c)

136 A Framework for Modeling and Improving Agile Requirements Engineering

The identified agile RE patterns and the knowledge concerning agile RE will be shared among the community by means of a web application (agileRE.org). agileRE.org aims to provide tool support for our framework.

For a better understanding of our conceptual approach, we showed how the framework for modeling agile RE can be applied in industry by means of domain specific models. To this end, we provided two examples of instantiations of the metamodel. Firstly, we exemplify a process model for a Kanban-based process model for developing an internet-based newspaper portal within the e- commerce area. This case detected the agile RE problem Continuous requirements management. This problem is solved by applying the agile RE pattern Continuous management of requirements by

means of tools. Secondly, we derive an instantiation of the agile RE metamodel into a Scrum-based

process regarding the development of web applications in the e-government area. This case detected the agile RE problem Technical or functional dependencies to other teams, which is solved by using the agile RE pattern Discovering services that cover an agile requirement.

Summarizing the implications of this PhD thesis, we can state that we identified evidence in industry by means of identifying real world problems in the context of agile RE. The problems were generalized by reducing the contextual information of the environment. With regard to our conceptual approach for agile RE management we can learn to understand the dependencies and to reflect problems in a specific environment. In this context, the agile RE metamodel allows to analyze the environment within an organization and supports adding contextual information according to the specific needs. This is a necessary task in order to understand the conditions for selecting an appropriate agile technique, with which the detected problem can be solved. Besides, agile RE patterns help to share the knowledge and experiences with problem solving in the context of agile RE among the community.

Documento similar