Examination of the challenges in agile projects from the ... · PDF file suppliers™...
Embed Size (px)
Transcript of Examination of the challenges in agile projects from the ... · PDF file suppliers™...
Examination of the challenges in agile projects from the
suppliers perspective in Norway´s software industry
Insight and recommendations
Thesis submitted for the degree of Philosophiae Doctor
Department of Informatics Faculty of Mathematics and Natural Sciences
University of Oslo, Norway
© , 2017
Series of dissertations submitted to the
Faculty of Mathematics and Natural Sciences, University of Oslo
All rights reserved. No part of this publication may be
reproduced or transmitted, in any form or by any means, without permission.
Cover: Hanne Baadsgaard Utigard.
Print production: Reprosentralen, University of Oslo.
This research aims at structuring understanding related to the core challenges faced by project
managers and software developers while working with agile-based software projects in the
Norwegian software industry. Agile methods are lightweight processes that employ short
iterative cycles, actively involve users to establish, prioritize and verify requirements and rely
on a teams tacit knowledge, as opposed to documentation. Two major results have emerged
from this research: firstly there is a critical need to have more formalized approaches to regulate
the relationship between software developers and customers. Evidence based on qualitative
studies from this research suggests that contract management and ensuring customer
involvement are the most critical challenges for agile-based development, as seen from the
project managers and software developers perspectives. Another emergent result from this
research suggests that embedded mechanisms in agile-based software projects, such as small
iterations, frequent delivery and continuous assessment are a contributing factor in reducing
the scope of the challenges outlined above. These mechanisms contribute, among other things,
toward establishing trust and knowledge sharing which, in turn, enhances customer
involvement and compensates for inadequately formulated contracts.
In this research, I distinguish between two perspectives regarding agile-based software
perspectives: the customers perspective and the project managers or software developers
perspective. The point of departure for this research was to establish an overview of the
challenges from the project managers/software developers perspectives in the Norwegian
software industry. One major result emerged from the first study that suggested that poor
customer involvement and problems related to contracting were among the most significant
challenges that needed to be addressed.
To dig deep into these reported challenges, the subject of the second study was related to
contracting. The second study was conducted in order to shed light on the challenges related to
contract selection and management, as well as its consequences. One important result that
emerged from the second study indicated that these challenges are results of using the standard
software contracts which were designed on the principle of waterfall-based approaches, which
meant precisely that there is unequal sharing of risk. Other challenges that rise due to this
waterfall mindset are that contract selection is based on preferences of the supplier/customer
which, in turn depends on the share of risk rather than the suitability of the methodology. This
is the reason public companies prefer to use fixed-price contracts while suppliers prefer to use
Time and material contracts. This waterfall mindset consequently results in inadequate
customer involvement. Other problems that the results indicated include: unsatisfied
customers, disputes, unpaid effort, early shutdown of projects, delays and increased costs.
Based on these findings, second study suggests contract management strategies that can help
software practitioners mitigate these challenges. There are certain factors that can help combat
the challenges related to contracting. The second study listed these factors that requires
clarification before writing a contract, and these include: customer vision, business goals, cost
of project, software specification, role of customer and his degree of involvement and steering
required, response times required by own organization, the jargon/language used for reporting
and understanding the status of the project needs also (informal) consideration. Further, making
efforts and following strategies to involve customer could help to address these challenges.
The importance of adequate customer involvement has been identified by practitioners as a key
factor for ensuring a smooth contracting process and successful project development. The
findings of third study suggested a list of enabling factors for customer involvement, including:
understanding the customers perception of success, effective communication, being
forthcoming and accommodating, establishing trust, transparency and openness, having the
product owner understand their role, having a good understanding of the technical and
functional side and persistent cooperation. The findings also present barriers to customer
involvement. One of the barriers is lack of understanding regarding agile methodology on
customers side. If a customer is not aware of the methodology, they will not understand that
it requires them to collaborate closely during the project development process. It would also be
challenging if people working on the project lacked essential skills, because agile project
methods require a team of competent individuals.
A fourth study was conducted to look at the risk management process for agile software
projects. The results of this study show that although agile methods themselves dont provide
any process or mechanism for a risk management process, the embedded mechanisms in agile
methods, i.e. are communication and collaboration, shorter iterations, frequent delivery, early
feedback and delivering complex parts first, helps to implicitly manage risks in agile projects.
A study about success in agile projects showed that frequent deliveries help to evaluate the
project deliverables in a continuous manner, and therefore it helps to have customer get the
working parts of the project. In this situation, a supplier can then get early feedback from the
customer about the quality of the deliverables and missing requirements can be made up in the
next iterations. Thus, frequent delivery and early feedback also help support the risk
management objectives is shown in this study. The study presents findings that a second way
of managing risk in agile projects is the same as in waterfall projects, and a fourth study defined
the following strategies explicitly as risk management strategies: relative estimates, burn down
chart, SWOT analysis and risk matrix.
Understanding a customers perception of success has been identified as a key driver for
ensuring customer involvement, and findings relating to this are presented in a third study. A
fifth study showed that evaluation of understanding the perception of success happens through
continuous assessment of project outcomes during a projects development. Furthermore, the
assessment is handled jointly by both the supplier and the customer. This embedded mechanism
of continuous and joint assessment creates an atmosphere of close contact with the customer,
along with better knowledge sharing between both parties. This, in turn, builds stronger trust
between the parties, which then facilitates conflict resolution. Sources of conflicts and their
consequences are presented in the first study. Assessing the chances of success at the iteration
level also helps to improve customer involvement and reduction in task uncertainty which, in
turn, increases the predictability of project direction and project outcomes. This might help to
increase control over changes and account for the various stakeholders perceptions of success.
Thus, this study presents its contributions in terms of presentation and an in-depth empirical
study of the challenges that project managers and software developers face while working with
agile software projects. These are related to contracting and ensuring customer involvement
and risk management. The number of practitioners interviewed for this study numbered 56 in
total. All of the practitioners were either from the suppliers side or they were from companies
who had in-house development. The scope of this study is that it was conducted in the
Norwegian software industry. Keeping in mind that with this relatively small number of
informants, this research does not have a strong ground for generalizations; the results provide
an overview of challenges experienced by the project managers and developers.
The method used for this research is Grounded theory. Using Grounded theory for any research
has both advantages and disadvantages. The advantage of usi