If you ask managers whether they follow Agile methods, most of them would probably say yes. But when it comes to practice, it turns out that they aren’t using it at all. Here’s the thing: most have probably read books or expert articles on Agile and Scrum. At first glance, it might seem that implementing Agile/Scrum practices is a piece of cake. But when it comes to dealing with it in reality, there might be some obstacles that make using it a bit difficult.
First of all, it’s important to understand how Scrum can help improve your business processes. That is to say, not just adapting the Scrum to the current process or adapting the current process to Scrum, but understanding the value of this framework for your business.
In this case study, we’ll share our experience of optimizing the work on the client's project using Agile/Scrum practices.
For our client, we developed a social platform. The company is growing fast and continuously adding new functionality. The challenge was to help deliver quality and stable product.
Our client had a certain product vision and results that they wanted to achieve. However, they wanted to get a bigger picture of the entire project on a release-by-release basis.
The company invested a lot of time on requirements specification. In addition, there was a high risk of making a product that won’t provide any value to the end-user, achieve product-market fit, and correspond to the client’s original vision of the product.
In the early releases, our client followed a traditional project management methodology, where the stages of the product development process were run in sequential cycles. The client adhered strictly to this approach since he wasn’t introduced to other more effective alternatives.
The client reached out to us with baseline requirements reflecting product features, performance, and also defined cost targets. He also wanted to keep following the traditional project management methodology.
However, the problem was that there was no verification of whether the existing requirements truly mattered to the intended users' needs, which could lead to a bloated set of legacy requirements, and, consequently, redesign, redevelopment, retesting, and increased costs.
This was the point where we saw the main risks of the traditional methodology and decided to switch to Agile project management, gradually involving our client so that he could experience the drastic improvement in the digital product development.
The advantages of this methodology for the project were:
For starters, let’s brush up on the concepts of Agile and Scrum.
Agile Software Development is a term used to describe a set of methods and practices to deliver frequent value to customers. This approach encourages teamwork and constant communication between all stakeholders and the development team. Scrum is an Agile framework. Its main principles are based on the transparency of the process, the openness of communication, and continuous improvement.
We suggested our client continue with Agile methodology and Scrum framework which is based on constant interaction with a client. Scrum framework included conducting regular meetings with the development team and a product owner, where the product owner played a crucial role in achieving the project's success. We established the following process:
We started the project with a zero sprint so the team could analyze, prioritize, and estimate each user story.
The main challenge was to build trust with the client and convince them of the effectiveness of the Agile approach. In this case, we had to take on the role of coaches and educate the client on the main principles and benefits of Agile for project efficiency.
Above all, we needed to respect the customer’s business values, had a clear prioritization of tasks and time boxing, so that the client understood that they received the most explicit workflow in each iteration.
Our client had a certain number of resources and an indefinite number of requirements that were constantly changing. Besides, the client didn’t have a clear understanding of the product MVP.
If we continued following the Waterfall approach, we would need to force our customer to form the scope of MVP at the beginning of the project. With Agile, the customer can now change requirements during each sprint.
We based the product delivery workflow on:
This principle is aimed at assuring the client that the software development process is constantly under their control and is carried out following the initial business goals. The customer takes part in the formation and detailing of all business requirements. Since the process is iterative with a short delivery time, the cost of misrepresenting a feature is low. As a result of the iteration, we received new and working functionality that fully corresponds to the client’s vision.
We have a team dedicated to achieving the goal of each sprint. We also have a business goal for each sprint that we agree on with our client.
Collaboration & Empirical Process Control
The value-driven agile approach is based on empirical process control. It means that the product scope that was originally set is not the final one and can be changed over time. Instead, we usually create a small amount of working functionality in short cycles, analyze it, and decide how to adapt the product accordingly.
Collaboration in Scrum refers to the product development team working together and constantly interacting with the stakeholders to come up with effective solutions to complex problems, and meet the goals defined in the project vision.
We managed to build cooperation based on trust with our client.
Our team delivered a quality and working product that meets all the business and technical requirements within six sprints.
Our client valued the increased responsiveness to change, the faster time to market, and the product improvement.
541 Jefferson Ave. Ste. 100
Redwood City, CA, USA 94063
4a bakulina st. Ste. 48
Kharkiv, Ukraine 61000
4a bakulina st. Ste. 48
Kharkiv, Ukraine 61000