Agile & Traditional PM cocktail
Line 23: | Line 23: | ||
[[File:Waterfall.jpg | thumb|right|350px|Figure 1:zu]] | [[File:Waterfall.jpg | thumb|right|350px|Figure 1:zu]] | ||
+ | |||
+ | |||
+ | == References == | ||
+ | |||
+ | <references /> |
Revision as of 14:02, 26 February 2018
Contents |
Abstract
Nowadays projects and business processes become more complex and the uncertainty around projects can be very high depending on the circumstances. In many cases due to the continuous customer requests and demands it is inevitable to have a flexibility in the management of projects. It can be said that there two opposite sides of project management approach exist – the agile and traditional project management approach. Having their own use cases both approaches have their advantages and disadvantages. In many cases a transition from traditional to agile project management can be observed. This article aims to introduce a merged hybrid version of these two approaches with particular suggestions for practitioners critically reflecting on limitations. First the terms project management methodology and project management approach will be discussed. Then the main traits of the traditional and agile project management approaches will be briefly elaborated on with a highlight on the main advantages and disadvantages of both approaches. Eventually a mixture of the two methodologies will be introduced.
Introduction
The project management methodologies are often tailored to specific needs of the company that runs the project. Therefore there is no silver bullet for choosing the right methodology and the right approach, however there is clearly a need among companies to implement methodologies from both agile and traditional approaches. The agile principles are not reflected in the ISO 21500 standard because agile and waterfall approaches were formerly considered as “competing bipolar choices” [4]. Addressing this problem this article elaborating on the essentials and differences of the agile and traditional approaches strives to find a solution for developing a methodology that utilizes the agile and traditional principles and guidelines aswell. As agile methodologies are mostly used in software development projects, the focus of this article is narrowed down to those types of projects.
Methodology vs approach
Defined by the Project Management Institute, “methodology is a system of practices, techniques, procedures and rules used by those who work in a discipline”. [2] According to other literatures project management methodology can be considered as structured set of techniques and tools used for solving specific problems. [1] Therefore project management methodology is commonly considered to include detailed techniques and tools. The term project management approach is most frequently used as a set of principles and guidelines that define how a specific project is managed. Therefore project management methodologies can be considered as the application of approaches and principles. In this sense the approach is a broader term than methodology and methods and represents methods, operative set of rules, processes and templates to be used during the project lifecycle. As an example the agile project management approach is built on the agile principles that are framed in the agile manifesto [3]. It can be stated that there is no single “best” methodology that would represent optimal solution for all projects in a specific environment, and some kind of adaptation is needed to create the best fit methodology for a specific project.
Traditional
The traditional principles imply that methods and procedures should be applied to most of the projects in a uniform way. Such a uniform implementation should ensure robustness and applicability to a wide range of projects, from the simple and small projects to the complex and large ones. The traditional approach assumes that projects are predictable with a linear life cycle and their boundaries can be clearly defined making the detailed planning easy that can be followed without major changes throughout the life cycle of the project.
This robustness however results in one of the biggest disadvantages of the traditional approach. Projects become progressively complex, with higher number of complex interrelations and tasks, while traditional project management approach is based on mostly linear and hierarchical task relations and cannot properly reflect all complexity and dynamics of many of today’s projects.
In case of software development, in many cases changes in the initial plan are inevitable due to adjustments to unpredictable and dynamic changes (for example continuous customer requests) in the project environment or in the project itself. It is usually also very hard to create complete project plan at the outset of the project due to inability to clearly define project goals, or not having all the product requirements. Therefore it can be stated that predictability is the basis of the traditional approach and the emphasis is on thorough planning.