Maching Coding Round
Design problem:
Splitwise Requirements
1 : Add/remove users -
Design Round HLDLLD
PROBLEM STATEMENT
Design a Ride sharing application where drivers can offer rides based on origin , destination and number of seats
Basic Functionalities :-
i) Add Driver
ii) Add Rider
iii) Create Ride (id , origin , destination and number of seats)
iv) Update Ride (id , origin , destination and number of seats)
v) Withdraw Ride (id)
vi) Close Ride and show amount charged
vii) Upgrade Rider to preferred Rider if he/she has done more than 10 trips
Design a pricing strategy. Charge should be on the basis of kilometers covered and number of seats.Preferred rider should be charged less
Design a driver assignment strategy. Preferred rider should be assigned driver first
Draw a HLD diagram showing all the required components , classes , methods and their interaction. Draw an activity diagram to describe Rider journey
Design should be extensible and scalable . Should be easy to add/remove functionality