BIT203 Assignment 1
Due date: 2:00 pm, 18th October, 2019
Assessment Mode: Individual Assignment
This assignment has been designed to allow students to test and demonstrate their ability to
write a Java program that uses a range of different concepts and facilities. This assessment
relates to the following learning outcomes:
• design and write programs using several classes, including problem domain classes; and
• understand and implement object-oriented principles and key concepts in modern software
design such as inheritance, association, encapsulation, and reusable software.
In particular, this assignment tests the students ability to use appropriate class hierarchies and
Expected Learning Outcomes Assessed
• LO1: write programs using several classes based on UML class diagrams and other models;
• LO2: apply object-oriented concepts in the design and implementation of the programs;
• LO3: use and extend Java interfaces and classes in the implementation of their programs
Your assignment has to submit to TurnItIn, with the following all contain in a single file:
1. All your Java source files, printed in Word document format
2. Printed output (showing your interactivity with your program) is to be included at the end
of your Java source files, in Word document created in (1)
3. A Turnitin Report, again to be attached within the Word document created in (1)
Turnitin Report (http://www.turnitin.com)
Register yourself in AdvJavaS319 using the following details:
class ID : 22523789
Enrollment password: java2S319
MicroHousing System in Kuala Lumpur
Big cities are always expensive to live in, but even more so for young people who have to live
independently, whether they are college students, fresh graduates or job seekers.
Proposals to alleviate the housing crisis in major cities have been proposed in the United States
and-a-business/), Hong Kong (https://www.scmp.com/lifestyle/article/2142632/six-ways-solvehong-
Youths in Kuala Lumpur also face similar problems. Therefore, the Kuala Lumpur City Hall (DBKL)
has proposed a scheme to help youths to rent accommodation at affordable prices
Your job is to create the information system for the MHS (Micro Housing System) for DBKL. Some
analysis and design artifacts have been developed. The use case diagram (Figure 1) shows the main
users of the system and basic functionalities.
The Conceptual Model shown above depicts the relationship that exists between classes in this
assignment. The User class is an abstract class, and is the superclass to the two concrete
subclasses – Applicant and HousingOfficer. For all classes, you may include additional
methods if you wish to do so, for example the toString, and equals methods. Two users are
considered equal if their username are the same.
A MHS object references a collection of Users and a collection of Residences. These two
collections are separate. You will also notice that Residences are linked to the Application class
as well as the Unit class. Class Unit is an inner class of Residence. Both classes, Application
and Unit, are linked together throught the class Allocation.
The following shows the high level use cases for the functionalities stated above.
Use Case Set Up New Residence
Actors Housing Officer
Description The Housing Officer is responsible a particular Residence, and thus for setting up
information about a new residence that is ready for occupation. The residenceID,
address, number of units available, size of each unit and monthly rental is
recorded. The Units are created according to the number of units entered. The
availability of each unit is set to “available”.
Use Case View Residences
Description The Applicant selects to view residences. For each residence, the residence ID,
address, monthly rental, size of each unit and number of available units is shown.
Use Case Submit Application
Description Before submitting an application for a unit, the Applicant will have to login or
register by entering a username, password, fullname, email and monthly Income to
create an account. (May need to submit copy of payslip to prove income).
The applicant selects the residence to submit an application for, and the month and