EMS (Employee Management System)

EMS is a human resources system used by company HR specialists to manage employee data. The system consists of two packages:

Utilities

The following model shows most of the classes in the utils package:

Personnel

The following model shows the major classes in the personnel package:

Labs

Lab 1

Translate the utils package model (including the Money class) into Java class declarations. Be sure to include constructors, getters, setters, delegators, and any other needed utility functions such as toString, equals, compareTo, etc. Your code should compile.

Lab 2

Repeat Lab 1 for the personnel package.

Hints

Use caution when implementing bi-directional associations. Decide which end should control the association.

Use stereotypes to distinguish between value and reference objects. A reference object (aka entity object) represents some entity in the problem domain, such as an employee. Reference objects are mutable. They can change their attributes without changing their identity. Two reference objects are equal if they represent the same entity. On the other hand, two value objects are equal if they have the same properties. Date and Money instances are good examples. It doesn't matter if there are many value objects in a system that are equal.