• No se han encontrado resultados

Procesamiento de MNRU

Apéndice I – Valores de referencia para determinar la calidad objetiva mediante la

I.6 Procesamiento de MNRU

Scrum (Beck, 2000) is an agile methodology that can be classified as an time-box approach comprising a set of roles, meetings and artifacts. Since Scrum is described as a framework where people can address complex problems, we need to adapt the framework to the specific context of a project. This case presents an instantiation of the agile RE metamodel in a project using NDT-Agile (based on Scrum and Earned Value Management) to create a web application for e-government. The full description of the case study can be found in Sedeño (Sedeño, 2017).

7.3.2.1. Background of the Project

The project was carried out at Junta de Andalucía, the regional government of the Spanish region of Andalusia. The Information and Communication Technologies (ICT) Department of the Ministry of Culture has led the project in liaison with other departments belonging to the regional government.

In between 2008-2012, the Ministry of Culture transformed itself into an organization to be able to operate under SOA paradigm (Sedeño et al., 2014). In 2012, they started to adopt agile methodologies (Torrecilla-Salinas et al., 2013), (Torrecilla-Salinas et al., 2015).

7.3.2.2. Instantiation into Scrum-based Process Model

In the following paragraphs, we will provide an instantiation of the metamodel (Figure 17). Moreover, we will discuss the way of working within the scope of case b. Figure 51 displays the domain specific model for agile RE in a Scrum-based environment for case b. For the creation of the instance, we used the profile in Enterprise Architect (see section 4.4.3).

129 A Framework for Modeling and Improving Agile Requirements Engineering

Figure 51: Domain specific model for agile RE in a Scrum-based environment

The methodology, which had been used in case b is NDT-Agile (based on Scrum and Earned Value Management). Scrum as well as NDT have an impact on how requirements are managed in case b. Requirements are managed by a Product Backlog and described in the form of user stories or using NDT. The domain of the organizational environment is related to the public sector and in particular, the area of e-government. The system in case b comprises all information systems involved in these web applications together with the services portfolio that belong to the organization. Moreover, the IT infrastructure is key part of the system. With regard to the stakeholder, we can describe them as people in charge of the different departments (e.g. ministry, IT or business). The users are citizens and public employees as well as the IT responsible or even the agile team. In light of this, the context of use is the Ministry of Culture that delivers e- government services by means of web applications using agile software developments. An agile team belongs to the IT service and consists of one Scrum Master, agile developers, and one Product Owner, who is the deputy head of IT department. All the aforementioned information describes the organizational environment in terms of the project setting for case a.

With regard to this analysis, we detected the agile RE problem technical or functional

dependencies to other teams. In particular, the problem is related to the discovery of what services

exist in the services portfolio, which are covering the user story proposed for a new web application. Moreover, this problem is related to software reusability in early stages of the software development lifecycle. The detected agile RE problem was solved by applying the agile RE pattern

discovering services that covers an agile requirement. This pattern is categorized by the agile RE

activities discovery and refinement. In the following, we will detail the pattern discovering services

130 A Framework for Modeling and Improving Agile Requirements Engineering

Pattern name Discovering services that cover an agile requirement

Context Detecting existing services, which can be found in the service portfolio of the organization, that cover user stories functionality identified by the agile team. This pattern is used in early stages of a sprint, directly after the Sprint Planning and it is necessary for the software reutilization. The identification of existing services is a very difficult task since the services area is not connected with the agile techniques that are used in the requirements elicitation phase.

Tag Discovery, refinement, methods Problem

summary

In ASD functional or technical dependencies with other teams are a challenge because a considerable coordination effort is required (see C1, Table 21).

• discovery of services in early stages of ASD.

• discovering what services exist in the services portfolio, which cover the user story proposed for a new web application.

• reusability of software in early stages of the software development lifecycle. Usage

description

For applying the solution, the process named DS4aRE (Discovering services for

agile requirements) by (Sedeño, 2017) is used:

1) Indexing the Services Portfolio.

2) Formalizing the agile requirement by means of the value-based agile requirements metamodel (Sedeño, 2017).

3) Transforming this formalization into a query. 4) Launching this query against the index. 5) Preparing the result of the query.

6) Obtaining the Candidate Services (i.e. a Service that is inside the Services Portfolio and would cover an agile requirement).

Example The Ministry needs to develop a new web application to comply with Law 39/2015 that obliges to make any notification by telematics means. The Ministry needs to know how many services of the existing e-government services portfolio could be used in this application to cover the user stories identified by the agile team.

131 A Framework for Modeling and Improving Agile Requirements Engineering

7.3.3.Impact and Limitations

The application of the agile RE metamodel allows us to reflect the agile RE problems, which occurred in the presented cases (see section 7.3.1 and section 7.3.2) as well as to find appropriate solutions for handling these problems.

Analyzing the two cases, we can observe some differences in terms of the elaboration of information related to specific stereotypes (see Figure 49, Figure 51). For instance, the context of use is deeper explored and more elaborated in case a (see Figure 49). This effect occurs because of the integration of HCD. In HCD, the context of use is very important in terms of user research. Taking this as an example, we can discuss whether it makes sense to put some effort in the analysis of the context of use in case b and discuss what impact this analysis might have on the value delivery.

Further differences between the two domain specific models can be found in the manner of how people are related to each other. For instance in case b (Figure 51), the user is part of the agile team, since some member of the agile team use the system as citizens or employers of the Ministry of Culture.

Another difference between both domain specific models can be observed in the relation between the methodology and the agile RE pattern. In case a, the agile RE pattern is part of the methodology, since the agile technique Kanban board, is rooted in the methodology Kanban. In comparison, the agile technique in case b (DS4aRE process), is a new technique, which is not part of a methodology.

The profile is capable of presenting more details in the resulting domain specific models as displayed in Figure 49 and Figure 51. For instance, all attributes of the metaclasses from the agile RE metamodel (see Figure 17) can be displayed with their corresponding values. For both presented cases in this PhD thesis, we decided to hide this feature, because it is not necessary to show the details for understanding the application of the framework.

In general, the longer the framework is used, the more mature becomes the organizational environment and more information in terms of details of the domain specific model will be clarified.

With regard to the presented cases in this work, there are some shortcomings in terms of the analysis of the organizational environment. We have to state that we were not able to gather all the data the metamodel is capable of due to the time, when the case studies were carried out. The final version of the metamodel and the profile were created in July 2017, whereas the case studies were conducted before this time. This fact causes us some difficulties in applying the whole framework accurately. Nevertheless, we started new case studies, where we are going to apply the full framework in an international environment where the product development takes place with people working in different countries.

However, what we have learned from both cases is that the domain specific models allow us to receive a detailed view on complex organizational environments. This detailed view enables us to identify the problems and impediments that occur in terms of people, processes, or tools. In addition, the detailed view supports us to compare specific excerpts of different organizational environment with the aim to reflect what went well and what should be shared.

In light of this, the combination of agile RE problem and corresponding solution can be inferred to new agile RE patterns. These agile RE patterns facilitate sharing the experience with the

132 A Framework for Modeling and Improving Agile Requirements Engineering

community. The gathered knowledge can help other people to solve their own agile RE problems, which may be similar to the presented ones.

Moreover, we were able to demonstrate that the framework for modeling agile RE is applicable on an international level and brings benefits for the industry.

7.4. Chapter Summary

In this chapter we showed how the framework for modeling agile RE can be applied in industry and how the different components of the framework collude with each other. Moreover, we explained the research method we followed to receive domain specific models for two cases.

The first domain specific model for agile RE (case a) presents a Kanban-based process model for developing an internet-based newspaper portal in the area of e-commerce. The case study was conducted in Germany. In this case, we detected the agile RE problem Continuous requirements

management. This problem was solved by applying the agile RE pattern Continuous management of requirements by means of tools.

The second domain specific model for agile RE (case b) highlights a process model for a Scrum-based process regarding the development of web applications in the e-government area. This case study was located in Spain. In case b, we detected the agile RE problem Technical or

functional dependencies to other teams, which was solved by using the agile RE pattern Discovering services that cover an agile requirement.

Moreover, we discussed the benefits and difficulties, which occur while applying the framework for modeling agile RE.

What we can conclude is that the framework for modeling agile RE can be applied on an international level. In addition it brings benefits for the industry since it allows to analyze the organizational environment of a company and helps to improve it in terms of value delivery and collaboration.

After presenting how the framework for modeling agile RE is applied in industry, the following chapter will summarize the results of this PhD thesis together with the conclusion.

133 A Framework for Modeling and Improving Agile Requirements Engineering

Documento similar