Chapter 5 Validation and Evaluation of the Distributed Agile Patterns Catalogue
5.3 Evaluating Distributed Agile Patterns
In this section we will evaluate the distributed agile patterns (DAP) approach with the other existing approaches present in literature and discuss what advantages our approach has over the existing solutions that were mentioned in Section 2.4.
Table 5.8. Existing Solutions in Comparison to the DAP Catalogue. No. Type Existing Solutions for Global Software Development 1. Approach Using Agile Practices to Solve Global Software
Development Problems. Offshore Challenges
answered in this approach
Beecham proposed to overcome the challenges of poor communication, lack of control, low staff morale and ambiguous requirements (Beecham et al., 2014). They achieved this by identifying agile practices that solve the identified challenges. As mentioned in Table 2.7 that the solution presented did not provide details of how the identified practices will overcome the offshore challenges. Further they have not addressed offshore challenges such as trust, socio-cultural and knowledge transfer.
Limitation The limitation to their approach is that even though they have considered the challenges of GSD, they have not discussed in detail how practitioners can solve them. For example for the challenge identified as “vague/missing requirements” the solution they presented was a one line answer, “ Product owner role; Planning game; Frequent interactions; on-site customer.” They didn’t give any detail on how or what affect these practices will have.
2. Approach Ontology-Based Multi-Agent System to Support Requirements Traceability in Multi-Site Software Development Environment.
answered in this approach
and knowledge transfer challenges. They have used software engineering ontology as a communication framework to enable knowledge sharing and reuse. The proposed framework supports automated requirements traceability tasks. As mentioned in Table 2.7, Agent Communication Language is used for requirement traceability.
This approach only focuses on requirement traceability in a distributed environment and they did not consider offshore challenges such as trust and socio-cultural issues.
Limitations A major limitation to their approach is that it is too technical considering in agile the requirements/user stories are written by the product owner. A simple request to update a requirement using the Agent Communication Language (ACL) looks like below:
((action (agent-identifier :name UserAgent@platform1 :addresses (sequence http://192.168.0.4:7778/acc)) (UpdateRequirement :name FR03 :resourceType Requirements)))
For a technical person it isn't a difficult piece of code, but considering the fact that product owners do not have a technical background. It is difficult to use this system. Secondly they have only focused on the requirements phase thus providing us with an incomplete solution to the challenges affecting the offshore development process
3. Approach Experiments for Offshore Project to Address Centrifugal Forces.
Offshore Challenges answered in this approach
Larman has suggested experiments to overcome offshore challenges such as communication and coordination (Larman et al., 2010). But they have just provided us with brief description of experiments that they think based on their experience with Valtech should predict success for other organisations offshoring their projects using agile. For example one of their experiment is to:
“Try.. Outside-the-site agile coaches, in which they state that every organisation benefits by bringing in outside agile coaching experts to act as viral agent. This is doubly true for offshore organisations steeped in traditional command-and- control managements and process culture. If the offshore organisation is multinational start by looking for in-company coaches from other nations.“
This approach focuses on providing agile experiments in distributed environment and they did not consider offshore challenges such as trust, socio-cultural and knowledge transfer issues.
Limitations Limitation of their approach is that they have not provided example on how and why should practitioners perform that experiment. They have not provided samples of organisations doing that experiment and what results did they achieve by doing that experiment and what difference does it make if practitioners do not perform this
experiment.
4. Approach Understanding Collaborative Practices in Distributed Agile Development using Theoretical Concepts
Offshore Challenges answered in this approach
Modi research presented a new way of solving the collaboration challenge (Modi et al., 2013). They have
presented a model representing the interrelationship with common ground, boundary objects and awareness as according to their proposed solution interlinking these theoretical models within the globally distributed agile setting, can lead to increasing awareness regarding the project artefacts which in turn contributes to establishing and negotiating common ground for joint collaborative practices to be held at different distributed sites.
This approach focuses on collaboration challenges and does not consider trust, socio-cultural and knowledge transfer challenges.
Limitations Although this research presented a new way of solving the collaboration challenge; they haven’t presented any results as their idea was presented as a research proposal. They have just mentioned what research methodology they will use and what their expected results will be based on their assumptions.
5. Approach Distributed Agile Patterns for Offshore Software Development
Offshore Challenges answered in this
As part of this research we designed a catalogue of 15 distributed agile patterns. The focus of these patterns was
approach to overcome offshore challenges such as trust, socio- cultural, communication and coordination, and knowledge transfer. In chapter 4 we have presented the catalogue.
Strengths Compared to the above-mentioned approaches, our pattern catalogue covers the main challenges of offshoring; we have categorised the catalogue based on what type of problem it solves such as management, communication, collaboration and verification patterns. The pattern catalogue also provides details of how practitioners can use the patterns and in each pattern there is a section on known uses in which examples are given on which companies have used the pattern.
5.4 Chapter Summary
This chapter presented the validation of the distributed agile patterns catalogue by using Kerth’s (2001) keep/try reflection workshop method. For the workshop we invited four companies to take part and we presented our patterns catalogue to them. Based on their feedback we modified our patterns catalogue. In order to evaluate the results of this research we compared our catalogue with other existing solution present in literature such as ontology-based multi-agent system to support requirements and experiments for offshore project to address centrifugal forces. For the different approaches we identified what challenges they helped solve and then discussed their limitations and further explained how our patter catalogue addresses the offshore challenges.
In next chapter a case study has been presented which shows how the distributed agile patterns can be used in the requirement phase.