A small system is required that will help manage cars at a parking site for a company. You are to develop a system that has exactly following four classes:
• Application class
• CarPark class
• ParkingSlot class
• Car class
Application is the interface class including the main() method and handling all inputs and outputs.
CarPark is responsible for maintaining a list of available parking slots. You should be able to find a slot, add a slot, delete a slot, and provide a list of all slots included in the car park.
There are two types of parking slots: slots only for visitors and slots only for staff members. A parking slot must have an identifier, which starts with a capital letter, followed by a two-digit number e.g. “D01”, “E27”. A parking slot also should know if a car and what car is parked in the slot. You must be able to add a car to the slot and remove a car from the slot.
A car will be identified by its registration number. A registration number always starts with a capital letter, followed by a four-digit number e.g. “T2345”. A car should have an owner and knows if the owner is a staff member.
For the purpose of this assessment, you should NOT maintain a list of parked cars in any of your classes.
The office manager requires a simple Console (Text Based) Interface that will have the following menu items.
1. Add a parking slot, all information provided by users
2. Delete a parking slot by slot ID (only if not occupied)
3. List all slots in a well-defined format with information including slot ID, slot type, whether occupied, and if occupied, show the car registration and the owner.
4. Park a car into a slot (provide slot ID and car information)
5. Find a car by registration number and show the slot and the owner if the car is in
6. Remove a car by registration number
Required conditions to be checked for user inputs:
1. User inputs for menu options, car information, and parking slot information should not crash the program
2. Parking slot number must be an uppercase letter followed by 2 digits
3. Car registration number must be an uppercase letter followed by 4 digits
4. Each slot should have a unique slot number
5. A parking slot cannot be deleted if there is a car being parked there
6. Visitor car can only be parked in a visitor slot and staff car can only be parked in a staff slot
7. A car can only be parked in an unoccupied slot
8. A car can only be parked in one slot
• The solution must be a BlueJ Project.
1. All classes and methods include Javadoc
2. Code is well structured and object oriented.
3. User interface class (Application) is broken down into single purposed methods
4. User interface class (Application) is separated from business logic classes
5. The user input is safe and will not crash the program
6. The user should be well informed about what he/she is expected to enter and the feedback of their action.
7. Pre-condition checking is included in the class methods.
11 freelancers are bidding on average $155 for this job
⭐⭐⭐⭐⭐ Hello Sir, Greetings. A Team of Expert JAVA Developers is here. We can help you with your Java project. This is an initial bid. Feel free to message me. We can discuss about the details over chat. Regards. ⭐⭐⭐⭐⭐
Hi there, please leave a message on my chat so we can discuss the budget and deadline of the project. I have read your project description and i'm confident i can do this project for you perfectly. Thanks
Hi I am software engineer and have done many java and technical projects. You can share more details with me so that we can negotiate the price accordingly. Thank you
Hi, i am a enthusiastic freelancer and i am doing this work from 5 years, I had read your requirements and can handle your project please message me so we can discuss more. Thanks
Hi, sir. I checked your project carefully. I have many experience in java development. I can complete your project successfully. I look forward to working with you! Best Regards.