Chapter 7 Application of the Framework in Industry
7.1. General Application of the Framework
A user can use a product in several different manners. During the usage of a product, new ways of how to use the product are discovered and the usage is tailored to the context of use. The same metaphor is applicable for the framework presented in this PhD thesis. Organizations are complex systems and each environment is influenced by several factors as outlined by the agile RE metamodel (see Figure 17). The organizational environment in which the product development is carried out is volatile due to the different parameters, which affects it. To this end, there do not exist one fits all solution for agile RE. The proposed framework of this PhD thesis allows tailoring domain specific models for agile RE, which can be applied to specific environments.
Organizations can use the framework for modeling agile RE. On the one hand, they can use it to increase the value delivery. Value delivery is an organization external parameter since it is related to the outcome of the product according to users´ and customers´ needs. The definition of what value means can vary from organization or environment and needs to be defined by people who work on the product. On the other hand, organizations can utilize the framework to improve the collaboration among people working in the environment, where the product development takes
123 A Framework for Modeling and Improving Agile Requirements Engineering
place. This is an organization internal parameter, which has a direct impact on how people feel during their work as well as on the effectiveness of product development.
The framework for modeling agile RE provides a collection of different techniques and tools, which needs to be tailored to a specific organizational environment for being applicable. Figure 47 outlines the components of the framework and describes how the framework can be used in industry.
Figure 47: General application of the framework by means of tailoring domain specific models for agile RE
The framework for modeling agile RE consists of:
• The agile RE metamodel, which can be used to analyze the environment of an organization.
• A catalogue of agile RE problems, which support identifying recurring problems in terms of agile RE within the organizational environment.
• A catalogue of agile RE patterns, which allows solving the identified agile RE problems. In terms of striving for continuous improvement of value delivery and collaboration, people can use the framework for analyzing the environment of an organization. In this context, the agile RE metamodel allows to analyze the problem domain by means of changing viewpoints in terms of people, relationships, process, and tools. The tool support of the framework (agileRE.org) supports detecting agile RE problems and proposes appropriate agile RE patterns, with which the agile RE problems can be solved. As a result of applying the framework, we receive a domain specific model for agile RE, which is tailored to the specific needs of the environment.
In general, the target group of the framework comprises practitioners as well as researchers, who are developing a product within an (agile) environment. However, the framework is beneficial for complex environments, where different people are involved in the process of product development. This is in alignment with the recommendations for the application of agile methodologies, which are appropriate for solving complex problems.
In the following sections, we present two examples of how to use the framework in industry by means of providing instantiations of the agile RE metamodel into domain specific models.
124 A Framework for Modeling and Improving Agile Requirements Engineering
7.2. Research Method
In the following sections we will detail the objectives of this chapter and present the approach, which was followed in order to achieve the objectives.
7.2.1.Objectives and Research Questions
This chapter aims to show how the framework can be applied in industry. We will demonstrate how the agile RE metamodel can be instantiated to domain specific models. These domain specific models describe what actually happens in the field and detail the way of working. This objective will be addressed by the following research question:
• RQ-7.1: How can the metamodel be tailored to different process models?
7.2.2.Tailoring the Metamodel into Domain Specific Models
In a first step, the agile RE metamodel (Figure 17) needs to be instantiated in terms of conditions of the specific organizational environment. This step is related to the approach by Rolland (Rolland, 1993) who presents a technique for process modeling by means of building abstraction levels (process meta-level, process model and development runs). Following this approach, we are able to define how to apply the agile RE metamodel in practice. Therefore, we create instances of the metamodel (L2) to derive domain specific models (L1) that could be applied in industry (see Figure 48). We adapted the approach by Rolland to become more systematic. Hence, we recommend using a profile for building the instances of the agile RE metamodel. In our framework, the profile can be used as Add-in for EA (see section 4.3.3, 4.4.3).
Figure 48: Modeling agile RE by instantiating the agile RE metamodel
In a next step, the catalogue of agile RE patterns can be used in order to detect specific agile RE problems. If one agile RE problem within the organizational environment is detected, the metamodel allows us to enrich this agile RE problem with contextual information.
These contextual information allows us, to choose appropriate agile RE patterns out of the pattern catalogue, which support solving the detected agile RE problem.
The next section shows how we used the framework for modeling agile RE in two different cases in industry.
125 A Framework for Modeling and Improving Agile Requirements Engineering