CHALLENGEDevelop a feature-rich social platform
PRODUCTA social platform
DELIVERABLESWe’ve analyzed the business needs, developed an agile product launch plan, prioritized platform features, and delivered a piece of functionality at the end of each sprint
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, which 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 won’t 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 follow the Agile product launch plan, gradually involving our client so that he could experience the drastic improvement in the product development.
The pros of this methodology for this project were:
- Delivering new functionality to market quicker and more often with every release.
- Keeping our client involved and engaged throughout the project.
- Ensuring that the development process aligns with the client’s business needs and vision.
- Demonstrating ongoing progress with all estimates and possible risks.
- Providing constant and immediate feedback from end-users on newly developed product functionality.
- Delivering high-quality software.
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:
- Defined and prioritized the user stories of the product.
- Created acceptance criteria for every user story.
- Adjusted features and priority before each iteration.
- Performed acceptance testing of every user story in collaboration with the customer.
- Demonstrated our client the new product features or changes that were made to the previous iteration.
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 product launch 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 get 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 product launch approach is based on empirical process control, which assumes that the product scope that was originally set is not fixed and can be changed. Instead, we create a small amount of working functionality in short cycles, analyze what and how we create, what needs to be fixed and 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.
Let's create somethingawesome
OUR RECENT PROJECTS
- restaurant app
- MVP scope
- business requirements
- digital product strategy
- performance tracking app
- mobile-first development
- data entry automation
- software integration
- survey app
- UI/UX design
- data synchronization
- cross-platform development