Semester 2, 2013
Assignment 3A
NOTE: This assignment is to be undertaken individually – no group work is permitted.
Background information - Assignment 3A/B
For this assignment you need to write an object-oriented console application in the Java programming language which adheres to basic object-oriented programming principles shown below:
a) Setting the visibility of all instance variables to private.
b) Setting the visibility of all methods in your classes to public
c) Encapsulating both the data for a class and the methods that work with and/or manipulate that data within the same class.
d) Using superclass methods to retrieve and/or manipulate superclass properties from within subclass methods where necessary.
e) Taking advantage of polymorphism wherever possible when invoking methods upon objects that have been created.
The overall scenario we are modelling is that of university employee management system, where you can have standard employees and academic employees.
The standard employee type represents administrative or service provider roles in the university - the pay scale for standard employees is broken down into five levels and the pay scale level for a standard employee is decided by the requirements of their role.
The role that is being performed by a standard employee may change over time, resulting in their current pay scale level being adjusted (ie. their pay scale level can be increased or decreased as required).
An academic employee type represents academic teaching staff in the university. The pay scales for academic staff are also broken down into five levels, but for academics the pay scale reflects the length of time they have worked for the university, as well as their performance in the areas of teaching and research. An academic employee’s pay scale level will move up to the next level when the university decides that they have earned a promotion and once an academic employee’s