You have just been recruited by the very young ExpressFood startup. It aims to deliver quality dishes at home in less than 20 minutes thanks to a network of bicycle drivers.
ExpressFood delivers you home in less than 20 minutes!
Every day, ExpressFood develops 2 courses and 2 desserts at its HQ with the help of experienced chefs. These dishes are cold-packed and then sent to home deliverers who 'maraud' then in the streets waiting for a delivery. As soon as a customer has ordered, one of the deliverers (who already owns the dishes in a bag) is commissioned to deliver in less than 20 minutes.
On its application, ExpressFood offers its customers to order one or more dishes and desserts. Shipping costs are free. The dishes change each day.
Once the order has been placed, the customer has access to a page indicating whether a delivery person has taken his order and the estimated time before delivery.
ExpressFood needs you to design its database. These include:
The list of customers
The list of different dishes of the day
The list of deliverers, with their status (free, in delivery) and their position
The list of orders placed
To structure your reflection you will use UML and the class diagram to model the entities of the application. Once the diagram satisfies you, you will realize the corresponding MySQL database schema and then fill the database with first dummy values.
You will ensure to produce a UML schema that is consistent with the specifications and complies with UML standards. You will then design a suitable SQL database schema.
Orally in real condition, you will present your project. Your mentor will play the role of the client.
The presentation takes place as follows:
The presentation of your database and your UML schema: 15-20 minutes
A moment questions / answers: 10 minutes
Your mentor will debrief with you for 5 minutes at the end of the defense.
For this project you will provide a .zip file containing:
MySQL database with a demo dataset
Competencies to validate
Realize a design schema of the database of the application
Designing the technical architecture of an application using UML diagrams
Implementing the data schema in the database