Agile versus Waterfall for CRM Implementation Success

Comparing Agile and Waterfall CRM Implementation Methods

Waterfall implementation methodologies have been the norm for over two decades of CRM deployments. These approaches are often visually depicted in cascading or linear diagrams and follow a progressive sequence of phases (for example, Requirements to Design to Development to Testing to Deployment). A significant risk with this deployment approach is that it can be unforgiving as success or failure is realized in largest part at the end of the project – thereby severely limiting remediation measures if outcomes don’t match objectives.

Agile methods such as Scrum are an alternative to predictive methods such as waterfall. An agile approach defines the business goals and success criteria in smaller increments, delivers continuous subsets of high-value features and puts them in the hands of users as fast as possible. This provides the development team with faster product verification so they may continue to deliver iterations which align with user expectations or adapt their output to counter for missed or changing expectations.

Waterfall and Agile CRM Implementation

Agile versus Waterfall

CRM software implementation projects place heavy emphasis on the factors of Requirements, Resources and Time. Waterfall methods presume Requirements to be fixed and Time and Resources to be projected.

As illustrated in the below diagram, agile methods flip these factors. Agile presumes Resources to be fixed by capacity and Time to be constrained by time-boxes. This leaves Requirements (aka features) to be flexible and derived from available Resources and Time. The team’s productivity (measured as velocity) will determine the volume of requirements satisfied in a given time-box.

Waterfall CRM Deployments

A waterfall approach begins with clearly defined business requirements which determine the project scope and generate a full life cycle project plan. Work then proceeds and the requirements ultimately get realized as originally specified. This defined or predictive approach may work well when business requirements are clear and business objectives are fixed.

However, if requirements are incomplete, inaccurate or faulty, or the requirements change during the course of the project, the project will march to a mistaken destination. The larger the project or the longer the duration, the more likely the original slated point in time objectives will change or become obsolete during the course of the project. This will cause extra time for change order processes and incur wasted efforts.

Agile versus Waterfall for CRM

Agile CRM Deployments

Agile for CRM is best targeted to large or complex implementations with unclear, incomplete or fluid requirements.

Agile implementations break deployment tasks into short increments with minimal planning and without concrete long-term planning. Each iteration generally lasts between 1 and 4 weeks and is driven by a self-organizing and cross-functional team. Near the end of the iteration the team delivers a working solution that is verified by the user or customer. Each subsequent iteration builds upon the prior for a cumulative effect. This process demonstrates value earlier and continuously, increases project visibility and forecasting, and reduces risk as deviations are recognized more quickly.

By dividing the deployment into smaller and more manageable increments, development teams can more quickly adapt to incomplete or changing requirements. This reduces waste, rework and project administration while also providing earlier assurance that development delivery meets user expectations.

Below are illustrative diagrams showing how agile and waterfall projects differ in the areas of project visibility, project risk and value.

Agile VisibilityAgile RiskAgile Value
With frequent deliveries, inspections and user verification, agile provides continuous visibility of project progress and outcomes.Agile testing is continuous. Delays, defects or missed value are evident with each sprint. Early recognition of these risks permits earlier invention measures.Agile projects deliver and demonstrate increments of value throughout the project. The highest value functions are normally delivered first.
Due to value being delivered at the end of the project, waterfall projects have limited visibility until the end.Waterfall delivery of features and value is held until project completion. Delays or lack of value generally aren’t recognized until it's too late.Waterfall projects deliver all value at the end of the project. If objectives don’t match outcomes the project will incur waste and rework.

Agile or Waterfall?

While agile methods offer some unique merits it’s important to recognize there is no one size fits all methodology. Below are some of the primary differences that may influence which method is right for any given project.

Understood and proven CRM software deployment methodologyProven software development methodology; newer to CRM software deployments
Long term planning horizonShort term planning scale
Defined, predictive and sequential planningAdaptive and iterative
More of a top down or hierarchical approachMore of a self-governing or lateral team approach
Lots of roles on the project teamFew roles (only 3 roles in Scrum)
Roles have varying levels of responsibilityRoles share equal responsibility
User interaction concentrated at beginning (requirements gathering) and end (testing)User interaction is continuous throughout project
Better defines requirements up frontRequirements evolve and are defined just in time
Less dependent on users during the middle phasesHighly dependent on users throughout the project
More process orientedMore people oriented
Process steps are strictly followedLow value processes often bypassed
Testing and quality control largely at the endTesting and QA are continuous throughout the project
Disciplined change control process discourages changesChanges are accepted and welcome
Less responsive to changeContinually responding to change
Team meets weekly to review project progressTeam meets daily to review project progress
Interim project progress measurement is difficult and notoriously inaccurateFrequent deliveries of customer verified features provide sound basis for project progress measurement
Delivery is big bang event at endEach sprint delivers incremental working solutions
Value delivered at endContinuous flow of value
Success is the result of conformance to the requirementsSuccess is the result of business value delivered to the customer

Why the Rise in Agile?

The pace of business change is an overarching influence driving increased acceptance of agile methods integrated to CRM implementation plans.

Agile provides supporting principals and frameworks to organizations incurring increased change. Agile methods will continue to see increased adoption as market forces, industry trends and technology advancements continue to accelerate and require compensating changes to business strategies in shorter cycles.