Why would a customer work Agile Scrum?
The risks, the uncertainties… Many project-based software buyers are hesitant to agree to develop a complex software project in an Agile way. They feel it is too vague, with too few certainties to offer the confidence that they will end up with a fully working product within their budget, delivered before the deadline.
Well, let me pop that bubble for you!
This rarely happens when we are talking about delivering (semi-)complex software. Why, you ask? Because along the way there will be many unpleasant surprises, such as complex 3rd party integrations, infrastructural problems, data issues, personnel changes, and so on. And that is exactly why working in an Agile way is better. To put it simply, it reduces risks.
Cost vs Quality vs Scope
As a customer, you want to know what is going to be readied at a certain time. To be able to do this, all requirements need to be outlined in detail, and carefully estimated, beforehand. Further, there is no time for uncertainties or unexpected changes during development – although, as stated earlier, this is a rarity while developing complex software.
There are 3 variables within a project: time, scope and quality. When a project is set with a fixed budget and scope, the quality of the product will be affected if setbacks or changes arise along the way. Working Agile ensures quality will never fall victim to setbacks, as the work will adapt and change as new insights are learned. Hence, developers will always work based on constantly evolving knowledge.
Waterfall projects almost always either go over budget or deliver what was not originally intended – or both! This may be due to the fact that the work is mostly based on pre-defined requirements and solution designs. Additionally, lots of changes need to be made afterwards, having gained new insights.
When working on a traditional project process, it is very hard to define what the scope of a project is, and to then set this in stone. There will often be discussions on what is in and out of scope along the way. This is an issue that certainly doesn’t improve the relationship between the customer and supplier.
The 3 variables within a project
Change is good!
Despite what most people think, change is good. Scrum welcomes changes - meaning when new insights are obtained, more clarity and quality is brought to the product. Scrum allows the entire team to handle these changes. This methodology is actually based on iterations as, after every sprint, prioritisation, focus and value can be changed.
Don’t be Agile because you want to be Agile. Be Agile because you want to be quick on your feet. As the customer can adapt on what is built, changes can be made based on feedback. The customer is fully in control of these changes, because he or she will make prioritised decisions.
Rules of engagement: a need-to-know basis
Notice how I used the singular person in the previous sentence? Another benefit of using Scrum is communication. For the development team, there is a single point of contact when it comes to the customer. The product owner will decide how to focus and prioritise, and will inform the rest of the stakeholders. This way, the development team will have no interference from anybody who doesn’t have mandate, resulting in optimal focus and a reduction in unnecessary interferences. The customer is free to join daily updates without losing valuable time. Meetings are short and to the point.
As a member of the customer team will be highly involved in the project, the customer will benefit from great transparency. Due to this involvement, there will be far greater team spirit as the development party changes from supplier to a partner.
Of course, you might ask yourself if you really need to use Scrum for all projects. But complex software development demands a smart and clear framework for delivery. And Scrum will support you, as it builds on the latest piece of products. After each piece of product, the development team will have learnt from their last sprint, and the customer can align with a better approach and gravitate to functionalities that add more value to the product. This way of working encourages the customer to get more involved, thereby forming the basis of a healthy, transparent and trustful relationship.
At Salmon, we work as Agile as possible, not only to make life easier for ourselves, but also to support our customers by creating more transparency, commitment and team spirit.