Answered step by step
Verified Expert Solution
Question
1 Approved Answer
The users of the bike share program must be able to register, log-in, logoout, and view their ride history though the ride app system. The
The users of the bike share program must be able to register, log-in, logoout, and view their ride history though the ride app system. The system must track information about each user's ride, including the start time, end time, bike ID, User ID, and the start and end stations. Each bikeshare station can update the status of the bike and provides the inventory of available bikes. Each bike has an ID, status, and current location if it is at a station. The possible bike status values are: Available: bike is at a station and can be taken for a ride Reserved: bike is at a station and has been assigned to a user for a specic date/ time. CheckedOut: has been taken by a user Maintenance Hold : After 24 hours of being checked-out, the bike will be held for inspection and maintenance Service Hold: the user can indicate that there is an issue with the bike which requires maintenance. For this phase of the assignment create a 0 domain model 0 use case diagram c class diagram based on the background description above. Identify any information you believe would be important for the design that you would ask the stakeholders, and any assumptions you believe you can have in order to being your design User Attributes: ID, name, email, password, rideHistory Operations: register(), login(), logout(), viewRideHistory(), cancelReservation() Bike Attributes: ID, status(BikeStatus), location, maintenance(BikeMaintenance) Operations: checkin(), checkOut(), reserve(User, time), tellService(), holdForMaintenance() Station Attributes: name, location, ID, inventory Operations: updateBikeInventory(), getAvailableBikes() Ride Attributes: ID, start_time, end_time, bike_id, status(BikeRideStatus) Operations: checkBikeAvailability(), updateBikeInventory() Bike Reservation Attributes: bike_id, user_id, start_time, end_time BikeMaintenance Attributes: last_maintenance_date, last_inspection_date, next_maintenance_date, next_inspection_dateBased on your design models, implement the classes for your BikeShare system. Document various test scenarios that illustrate typical scenarios Create JUnit test cases for each scenario Validate your implementation using against the test cases
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started