Feature development using Agile methodology- at Zomato

Founded by Deepinder Goyal and Pankaj Chaddah in 2008, Zomato is an Indian restaurant aggregator and food delivery start-up. Zomato provides information like menus & user-reviews of restaurants as well as food delivery options from partner restaurants. Zomato is available in more than 10K cities, 24 countries. Zomato also started grocery delivery at the time of COVID-19 outbreak.

Tuhina Porel
7 min readJul 15, 2020
(Screenshot from Google Play Store)

Zomato continuously strives to enhance user experience and bring delight to customers. UX of Zomato has evolved from previous versions with different features. There are many methodologies followed by organizations to develop features. There are primarily two types of methodologies used for a software development cycle - Traditional/Waterfall and Agile.

What is the Waterfall methodology?

The Waterfall method is one of the earliest traditional methods. It is a linear-sequential life cycle model, where each phase must be completed before the next step can begin. There is no overlapping in the phases.

Via: https://www.seguetech.com/waterfall-vs-agile-methodology/

Disadvantages of Waterfall/traditional model:

· Testing is done only at later stages in the project. Without the testing, the development team does not get the validation-whether the right product is being built. If in later stages after testing, changes are required, then the delivery can get delayed. Thus high risks and uncertainty.

· At latter stages of the development life cycle, working software is produced

· Not suitable for long, complex projects and where requirements are at a moderate to high risk of changing.

What is an Agile methodology?

Atlassian defines: ”Agile is an iterative approach to project management and software development that helps teams deliver value to their customers faster and with fewer headaches. Instead of betting everything on a “big bang” launch, an Agile team delivers work in small, but consumable, increments. Requirements, plans, and results are evaluated continuously so teams have a natural mechanism for responding to change quickly.”

In this iterative development methodology, requirements and solutions evolve in sprints and not in a linear sequence. The focus is on quick delivery by organized & cross-functional teams of fully functional components.

The official Agile manifesto, created in 2001, highlights four key values of the methodology:

· Individuals and interactions over processes and tools

· Working software over comprehensive documentation

· Customer collaboration over contract negotiation

· Responding to change over following a plan

Why Agile?

· In Agile, detailed and interactive inputs are taken from both customers and the product (including designers, engineers, and product managers) team

· Agile is more adaptable and accepts changes. Comprehensive early testing plans help with catching errors faster and resolves problems as they occur.

· Better quality deliverables with quicker time-to-market make Agile suitable for a complex project with changing requirements.

Via: https://dzone.com/articles/you-will-thank-us-5-good-reasons-why-agile-should

What is the meaning of iterative and incremental?

Iterative: In an iterative approach feature is developed with minimal functionality and later the features are refined with every iteration until desired product requirements are met.

Incremental: In an incremental approach fully functional features in part-by-part is delivered accordingly to complete the overall project. Hence, each increment is fully functional with no requirement for iterations.

Why does Zomato use Agile?

Zomato’s competitors:

Via: https://www.owler.com/company/zomato- 2019 data

In the present scenario of food tech delivery sector, the competition is very high and the companies continuously deliver features at short intervals to stay ahead of other food delivery apps. For any feature, user feedback at each level is mandatory for a successful feature release. Therefore, the use of Agile in such situation helps with continuous development and continuous integration.

Being a product enthusiast, I took the opportunity to step into the shoes of a Zomato product manager to deliver the features of rate/review restaurant, filters for search, online ordering for Zomato.

Agile product ninja

Following are some of the iterative and incremental ways of Agile methodology to develop the features. Various feature prioritization methods are available to help us in decision making about which features should be included first. I have described various frameworks for feature prioritization in my previous post.

Filters for search:

The search feature and the filters allow a user to effectively select restaurants by cuisines, rating, category (like dining out, delivery etc.), thus increasing the conversions/food orders.

With each iteration and increment, multiple features were refined and released to customers.

Filters based on cuisine and location are imperative to any food delivery app. So the first version would have those.

Version 1:

Basic filters based on:

a. Type of cuisine

b. Location

The sort by filters would help users with faster and focused search

Version 2:

Sort by filters based on:

a. Rating

b. Popularity

c. Cost

d. Delivery time

Easily accessible filters add to customer delight

Version 3:

Easily accessible filters:

a. Trending near you

b. Recommended for you

c. Top brands

Online ordering:

Online ordering is very important for any food delivery app and release of features will be distributed over several iterations and increments depending on the user requirements and complexity. Few of the features are broken down in different versions:

Version 1 contains the must-have features:

a. Display restaurant menu

b. Add items to the cart

c. Edit/View items in the cart

d. Add delivery address

Version 2 inclines towards the should-have features:

a. Online order tracking

b. Add COD as another payment options

c. Integration of mobile wallets

d. Integration of promotional coupons/discounts

Version 3 is a mix of should-have & could-have

a. Rate the food ordering service

b. Integration of customer support service

Rate/review restaurant:

Along with restaurant rating like other delivery apps, Zomato provides a review of restaurants including the image of menus and dishes. This feature enhances the credibility of the restaurant and builds trust among users. It also acts as a check for restaurants to assess and improve themselves.

Features like 5-star rating, reviews of the restaurant based on suggestions, photos with the review, like and comment by the user were not done in one release. With each iteration and increment, the features were refined and released to customers.

Version 1 has features which have higher priority than others. Some features got refined and some new features were added all together for a delightful UX. Categories of reviews in version 2 was a refinement from text box review of version 1. Version 4 is a new feature which would validate the reviews provided by users and may lead to an increase in engagement for the app.

Version 1:

1. Add like or dislike

2. Review a restaurant with text box

Version 2:

1. Rate a restaurant on a scale

Add star ratings to the review for the restaurant

2. Add categories of reviews like:

a. Taste

b. Quantity

c. Worth the money

d. Quality

Version 3:

Option to add images to the review

Version 4:

Like and comment option for the user review

Dependencies are identified by product owners, scrum masters and teams after user stories are listed. Once those are identified, the product backlog is created by the product owner. In consultation with their scrum team, each product owner then creates their sprint backlog. After this, the sprint starts.

In conclusion, Agile is a mindset than a methodology

An Agile mindset is an attitude- if inculcated results in high performing teams. Agile mindset would include collaboration, ownership, improvement with every learning cycles, and pivot around delivering value, flexibility and adaptability towards change. This mind-set would not only be instrumental to keep happy employees but also, helps to deliver great value and make customers delighted with the end product.

Let me know your experience with Agile in the comments.

--

--