Product development using Agile Methodology
Introduction:
Agile software development refers to software development methodologies centered round the idea of iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams. The ultimate value in Agile development is that it enables teams to deliver value faster, with greater quality and predictablity, and greater aptitude to respond to change.
Agile Methods break the product into small incremental builds. These builds are provided in iterations. Each iteration typically lasts from about one to three weeks. Every iteration involves cross functional teams working simultaneously on various areas like planning, requirements analysis, design, coding, unit testing, and acceptance testing.
At the end of the iteration a working product is displayed to the customer and important stakeholders.
Iterative and incremental development is any combination of both iterative design and incremental build model for development.
Let’s consider Zomoto as an example and will consider few features from Zomoto App to develop using Agile framework.
Feature list:
- Rate/Review a restaurant
- Filters for search
- Online Ordering
- Rate /Review a restaurant:
Rate /review is an important feature of zomato and for restaurants as it specifies the quality of the food being served and services provided by restaurant. It also helps zomoto to display rating in the restaurant description so that it helps the customer to choose correct decision.
This feature can be supported in multiple iterations in an incremental manner.
Iteration1:
- Rate a restaurant on a scale of 5 and also write a review
2. share with friends
Iteration2:
3. upload pictures of food/restaurant
4. upload video review.
Iteration 3:
5.provide an option to support hashtags in review.
2.Filters for search:
Iteraton1:
- search by restaurant
- search by dish
- Search by area
Iteration 2:
4. search by food catgeory like pizza, south Indian food, etc
5. search based on restaurant ratings.
3.online ordering:
online ordering allows the user to order food. Ordering needs login to the system. ordering food includes allows user to select favourite food from his desired restaurant, place the oder, integrate multiple payment options , order tracking, etc.
user login, capturing profile details are part of another features.
Iteration1:
1. Provide an option to select faviourite/nearby restaurant
2. Add favourate food to cart
3. Integrate Debit card payment & cash on delivery optiions.
Iteration2:
4. Provide more options like Credit card, UPI and Netbanking in payments.
5.Add order tracking
6. calculate ETA.
Iteration 3:
6.show offers /discounts
7. integrate an option to add promotional code during payment.
8. show previous order on home page if customer wants to repeat the order with one click.
9. provide an option to rate the previous order.
Summary:
In summary Agile helps to deliver the features in incremental manner and adjust the backog based on priority and user needs. The iterative development helps to accomidate the user feedback.