On conclusion students should be able to:
- Develop a problem-based strategy for creating and applying programmed solutions
- Create, edit, compile, run, debug and test programs using an appropriate development environment
The management of APU has completed the construction of a three story car park where students may park their cars. The car park can accommodate a total of 45 cars, where each level will have 15 parking spaces. In order to facilitate the management of the car park, and enable students to rent parking spaces, a system is needed to handle the registration of students for each available car park for each semester. A student, once registered may park his or her car at the car park for duration of 120 days. The system would be used by the parking administration office to register students who wishes to park at the car park. The users should be able to insert, update, delete, read the following information about the students, parking spaces as well as user details.
|StudentID||Student’s TP number|
|FirstName||Student’s first name|
|LastName||Student’s last name|
|Contact Number||Student’s mobile number|
|E-mail address||Student’s e-mail address|
|CarNumber||Student’s car number|
|Date Registered||Date of registration for the car park|
|ParkingSpaceID||The parking bay number, using the car park level and the bay number. Example, the parking bay number 10 at level 2 would be L2010.|
|Status||Parking bay status as “Available” or “Assigned”|
|UserID||User’s ID Number e.g. PKO1234 (PKO = Parking Office)|
|Password||User’s password for logging into the system|
|User’s First Name||User’s first name|
|User’s Last Name||User’s first name|
- The system must require user to enter his or her ID and an assigned password before using the system. Upon login, the system shall display the user’s actual name on the system’s user interface.
- The system must have the following functionalities:
- New Registration where students who wish to park their car at the car park is registered by the system. Once registered, a parking bay is assigned by the system depending on the availability of parking bays. If all the parking bays are already assigned, then the system shall indicate to the user its status.
- Cancel (Delete) a registration where a student who do not wish to park at the car park anymore. The parking bay occupied then will be released, and the student’s record will be deleted from the system.
- Update a student’s information such as Car Number, Contact Number and E-mail address. Other student’s information such as StudentID, FirstName and LastName should not be available for editing. To facilitate the update process, a Search for the student’s information using the StudentID will be required.
- Generate a report of all cars parked at the car park which should include the following information:
2) Car Number
4) Date Registered
5) Date Expired (to be calculated from the date of registration)
The applications can be developed using structure programming or object-oriented approach. Data may be stored in collections i.e. array of objects or into data files
This is a group assignment. Each group should consist of 2 – 3 members only. Upon submission of your assignment, you would be required to present your assignment at a date and time specified by your module lecturer.
Each team member is required to contribute towards all sections of the assignment, present and explain his or her contribution of the work done. Each team member should also be able to answer questions posed with regards to the project and / or subject matter.
You are required to submit:
- A softcopy of the program coded in Python – submitted on a CD. The program should include the following:
Basic programming concepts such as displaying and reading of inputs, displaying of outputs, declaration of variables and assignment of values, comments – to explain various parts of the program, etc.
Using selection control structures and iteration structures and arrays
Object-oriented concepts such as the use of classes / objects / inheritance / constructors
- Documentation of the system, that incorporates basic documentation standards such as header and footer, page numbering and which includes
- Cover page
- Table of contents
- Workload matrix to indicate the contribution of each individual for each required component (shown in %age form) and signed off by each team member
- Design of the program – using use case diagram, use case description, class diagram, IPO (input, process, output) chart, pseudocode or flowcharts – which adheres to the basic requirements listed above
- Test plan
- Sample outputs when the program is executed with some explanation of the outputs / sections of the program
The documentation should be comb-bound with the CD attached.