Online sales: How Covid-19 is accelerating digital transformation, and our top tips for the successful use of Agile software development
16 April 2020
During and after the C-19 environment, those businesses who adapt what they sell and adapt how they market, sell and deliver their products will be better positioned to survive and grow. The shift from bricks and mortar to online shopping has been going on years. For many, C-19 has accelerated the need for many businesses (both b2c and b2b) to transform their digital platforms. In addition, businesses are having to adapt and make radical changes to their supply chains, including logistics, so as to source and deliver a different mix of products and deliver a greater proportion of products to customer homes instead of to stores or depots.
Even in any ‘normal’ economic environment, implementing a digital transformation can be a complex and daunting task, especially for less nimble businesses, those with legacy systems or lots of SKUs, and especially due to the ever-growing need to build into platforms the ability to provide a seamless, content-rich, experiential journey for customers. These projects are usually made riskier by the pressure to roll out the shiny new platform both on budget and within a very short timeframe.
For those tasked with transforming digital platforms, it can be difficult to resist the new ‘norm’ of ‘going Agile’, usually due to the C-Suite-imposed pressure of getting solutions delivered quickly. Our experience of advising both customers and vendors on Agile is that, while it has benefits, it carries significantly more risk but firmly remains en vogue.
Below, we highlight some key challenges that can arise during an Agile transformation and how projects can be de-risked by both customers and vendors.
- The customer in an agile project typically takes on greater risk than would be the case in a waterfall project. This is usually because specific deliverables are not agreed upfront, and thus usually not for an agreed price or an agreed delivery date. Failure to achieve deliverables within a timeframe will not necessarily create a ‘breach’ of contract. Instead, these deliverables (‘user stories’) are simply added to the ‘Backlog’ of items to be addressed later, depending on the customer's assessment of its business priorities. This can mean that the customer pays more overall as Agile projects are typically charged on a T&M basis. Ways to manage this cost include:
- setting an overall anticipated project budget within which ‘overarching’ concepts or deliverables are to be delivered (but there is an inherent tension here);
- a mechanism to measure, and incentivise, increasing ‘velocity’ (the speed with which the vendor performs tasks as it gets to know its customer, their platform and their needs better);
- ensuring the customer has adequate ‘early termination’ rights, albeit as a last resort.
- The customer needs to check that the vendor is delivering high quality code. It does this by testing the results of each ‘Sprint' against agreed ‘acceptance criteria’. By doing this at the end of each Sprint, the potential for future surprises reduces. However, the acceptance criteria should be described in detail upfront (so far as possible), rather than relying on less formal descriptions in user stories. This requires serious collaboration upfront.
- Next, note that the customer's approval of results achieved during earlier sprints may preclude it from objecting later, if it transpires that the earlier results do not provide an adequate platform for future work. Remedial work is possible as a further requirement to be included in the ‘product backlog’, but the cost of that extra work usually falls to the customer unless specific responsibilities and principles are otherwise agreed upfront. Ways to manage ‘defects’ include:
- embedding a ‘defect remediation’ period at the end of the anticipated sprints whereby the vendor has allocated a pot of money and time within which to undertake remedial work (some of which is ideally provided for ‘free’).
- a payment retention mechanic, whereby a proportion of the monthly sum is not invoiced until the end of the ‘Project’ (which itself is not always easy needs to define).
- As the exact nature of development work may not be clear to the customer or vendor in the early stages and the dependencies of the later results on the earlier ones may also be difficult to forecast, decisions about ‘acceptance’ of results may not be easy to make. This is just one reason why strong ‘governance’ is crucial, including the parties taking time to agree and document escalation procedures and remedial procedures.
- An essential tool for the deployment of Agile is the need for a) substantial investment of time by the customer and b) strong communication and collaboration between customer and vendor. The customer needs to make time for the project, and ensure its own team has a crystal-clear understanding of its goals and the need for excellent communication, at all levels, with the vendor both up-front and during the project. This helps to ensure that there is alignment of goals, priorities and constraints. It can also allow people to take ‘ownership’ of tasks (rather than waiting to be told what to do), which is especially helpful where there is a development team comprised of vendor and customer team members. Ideally, Agile teams are co-located as this facilitates more immediate flow of information and feedback. C-19 presents a small hurdle here but this should at least remind us of the importance of regular virtual ‘stand-ups’ and information sharing video calls.
- The Agile manifesto prescribes no particular methodology, whether ‘Scrum’, ‘Kanban’, ‘Safe’ or others. To pick the ideal option, the parties need to consider the nature of the customer, its needs and the pros and cons of different Agile approaches. Customers should seek recommendations from expert vendors, choose a method, and select a vendor according to the vendor’s strengths.
In short, Agile can work well, but as it is carries inherently more risk, it needs a substantial investment of time by the customer (as well as the supplier) before the vendor gets going to ensure a full alignment of goals, priorities, budget, organisational culture, and a real focus on pricing, quality assurance measures and remediation tools to ensure the project stays on track. When one of the main benefits of Agile is 'speed to market, there is a pressure for development work to begin on, but this should be resisted until the ‘alignment’ exercise has taken place and is well documented in the contract.
The outcome of C-19 will be with us for quite some time, but what seems certain is that businesses selling great products online, who have invested in strong e-commerce platforms and who have well-considered relationships with their third party logistics providers are well placed to survive and prosper.
Watch out for my next article on how C-19 and online shopping is accelerating the change in logistics arrangements both for buyers of logistics services and the providers of those services (3PLs) and how those challenges can best be addressed.
Do get in touch if you need help.