GIMME FOOD started as an intermediary between restaurants and stores on one side, and customers on the other. Through a mobile app, stores and restaurants could create listings of meals and products, and customers could easily place orders through the app. GIMME FOOD would collect the orders and distribute them to the respective businesses, which then handled the food delivery.
The original GIMME FOOD app was designed to streamline the process of ordering food from restaurants and stores. It included the following key features:
Creating Restaurants: Restaurants and stores could easily add their businesses to the system. Once registered, they could manage their profile, set working hours, address, contact details, and other operational information.
Managing Meals and Products: Businesses could add their products to the app, such as meals or food items they offered. They could manage prices, descriptions, photos, availability, and other details for each item.
User Registration and Login: Customers could register and create an account in the app. Once logged in, they had access to the platform, could browse restaurants and products, save their favorite items, and manage their personal details, including delivery addresses.
Browsing Restaurants and Products: Users could browse through the list of available restaurants and stores based on their location or preferences. Each business had a detailed page displaying all available products and offers.
Ordering Food: Customers could select meals and products, add them to their cart, set a preferred delivery time, and enter their delivery address. After completing the order, the information was passed to the restaurant or store, which handled the preparation and delivery of the food.
This entire process was smooth and efficient, allowing customers to easily order food from the comfort of their homes, while restaurants had a simple way to manage their listings and receive orders.
Now, the company has discovered potential for expanding its portfolio by introducing a warehouse focused on canned and frozen foods. This warehouse will serve as a central hub from which the company itself will handle the distribution of specific products, while still acting as an intermediary for restaurants and stores. It was agreed that an MVP (Minimum Viable Product) will be built first. The MVP will function in such a way that the warehouse will have all the goods in a single pool, and the system will only track the product name and quantity. Products can be added, and their quantities can be updated. The warehouse will operate so that the warehouse worker can always view all orders and see whether the products in stock are available in sufficient quantity (if not, the worker will need to restock them, though the system won't handle the restocking process in the initial phase). The products that are in stock can then be located by name and shipped. The system will subsequently mark the order as fulfilled.
Based on what you know from lectures, how would you design the new system?