DevOps Plan – Waterfall is not yet over


Waterfall vs Agile, Introduction

This article describes the arguments when to use waterfall or an incremental and interative approach.

Waterfall vs Agile, Definitions

Increment
DevOps Articles

The Agile way of working consists of building increments rather than a complete product or service. Each increment has an added value. The architecture of the product / service has to be designed that it allowed to evolve.

Iterative

The Agile way of working consists of cyclical building of a product and/or service. These cycles may be fixed like in Agile Scrum of may differ per delivery like in Kanban.

Waterfall

The waterfall approach means that there is one flow from requirement to delivery in which the complete product is delivered. The steps of the DevOps process (see article DevOps process) are the same, however in the waterfall approach they are only executed once.

Waterfall vs Agile, Concepts

Waterfall project

A waterfall project uses the waterfall approach to realize a product or service. However, a waterfall project may consist of phases in which the product is realized. When using phases, the product breakdown structure in which the product functionality is described will be coarse at the start of the project and will get more detailed per phase.

Agile project

An Agile project starts with a business case, roadmap and release plan that is realised cyclical by realizing of an increment of a product or service. At each cycle, part of the product backlogs is realized. Priority and sequence has been identified in the roadmap and release planning, but can change per cycle if necessary. Per cycle, a product is put into use. It also checks whether there is still a business case, or that another project provides more added value for the business against less time and money.

Waterfall vs Agile, Best practices

One of the most important discussions when starting with Agile project management is whether or not the Agile way of working can be used for all projects. Since Agile states that products and services should be build incremental and iteratively. Each increment should add value to the business. DevOps even does one step further and states that “done” means “running in production”. However, in most organization 20% of the projects are creating monolithic solutions. This means that the added value is only experienced after the completion of the whole project. So, using DevOps for these kinds of projects still can be done but the whole concept of adding value per cycle is not in place. The DevOps team might even feel uncomfortable to use DevOps for these projects. This article gives the arguments to choose for a DevOps approach or a Waterfall approach for a new project.

Waterfall is to stay for ever

In a survey conducted at ten organizations [Best 2015], it has been found that all organizations that Agile project management also do still have Waterfall projects. However, the ratio Agile: Waterfall often is 80:20. There are good arguments whether or not to choose for Agile or Waterfall approach. The following criteria are relevant.

Agile project management is useful as:

Agile project management is not useful as:

  • The organization does not want or cannot change.
  • The required knowledge and skills are insufficient and the persons concerned do not have the ambition to expand their skills.
  • The DevOps employees have little experience.
  • The requirements are prerequisite and stable, as well as the requirements of time and money.
  • The information system context is stable and changes little.
  • The information system is integrated (tightly coupled) with other information systems.
  • The organization does not wish self-control and self-development (Caluwé green) because the Scrum development processes are bound to strong rules (Caluwé blue).
  • The requirements between the analysis and the realization do not change or may not change.
  • The organization thinks and works highly hierarchically, whereby project managers get the role of product owners, thus managing a DevOps team as if it were a waterfall project team.

The essence

The core message of DevOps is that ‘done’ means that the user gets a working product at the end of each cycle that adds value to his business process. However, many organizations use a DevOps approach to save the final result until a release is deployed after a number of cycles have been completed. In itself, this is not a wrong approach, but it means a delay in the time-to-market and feedback loop.

LinkedIn Group

The disadvantage of waterfall projects is exact this deviation of the Agile project. The added value is achieved much later. As a result, the Return On Invest (ROI) is also much worse.

Discuss with us about this article on LinkedIn.

More information

DevOps Best Practices, ISBN: 9789492618078
Agile Service Management with Scrum, ISBN: 9789071501807

Related Article:

Service Management

Samenvatting
DevOps Plan - Waterfall is not yet over
Artikel
DevOps Plan - Waterfall is not yet over
Beschrijving
This article describes the arguments when to use waterfall or an incremental and interative approach. A waterfall project uses the waterfall approach to realize a product or service. However, a waterfall project may consist of phases in which the product is realized. When using phases, the product breakdown structure in which the product functionality is described will be coarse at the start of the project and will get more detailed per phase.
Auteur
Publisher Naam
ITpedia
Publisher Logo
Sidebar