Exercise Instructions

Design sample class diagrams for asset management system

To visualise the respective classes, attributes and relationships of objects within the asset management system.

Exercise Brief


The asset management system keeps track of a number of assets that can be borrowed, their ownership, their availability, their current location, the current borrower and the asset history. Assets include books, software, computers, and peripherals. Assets are entered in the database when acquired, deleted from the database when disposed. The availability is updated whenever it is borrowed or returned. When a borrower fails to return an asset on time, the asset management system sends a reminder to the borrower and informs the asset owner.

AMS Functions

The administrator enters new assets in the database, deletes obsolete ones, and updates any information related to assets. The borrower search for assets in the database to determine their availability and borrows and returns assets. The asset owner loans assets to borrowers. Each system has exactly one administrator, one or more asset owners, and one or more borrowers. When referring to any of the above actor, we use the term "user". All users are known to the system by their name and their email address. The system may keep track of other attributes such as the owner's telephone number, title, address, and position in the organization.

The administrator can create one or more assets using a web form. Each asset includes a name ("LaserWriter 6000"), a unique identifier ("P-1291"), a brief description ("Double sided, Apple Laser printer"), an owner ("Bernd Bruegge"), a state (i.e., new, used, unusable), and a status (i.e., borrowed, available). Assets can also be related to other assets (e.g., a printer is related to the software driver required to operate it, a computer contains a DVD Drive). The initial status of an asset is available.

The administrator can also delete one or more specified assets. The assets can be deleted from the system only if they are available. The administrator can also modify any information related with an asset, except for its status which is modified only by the asset owner.

A user can search the asset information using any asset attribute or using free text search. The system displays references to all matching assets, sorted by a user specified criteria (e.g., alphabetical by name, by state, by status, by owner, chronologically by date checked out, by due date). Once an asset record is displayed to the user, the user browse related assets. A user can browse the asset information by listing all references to assets sorted by a user specified criteria.

After establishing that an asset is available, a borrower checks out an asset by visiting the owner of the asset. The owner uses a web form to record the borrower's name, email address, and other contact information. The system uses the email address to identify the borrower, and update any previous information on the borrower. The owner also enters a due date associated with the loan.

Once the asset is checked out and associated with the borrower, the system records the loan and updates the status of the asset. If the due date arrives without the asset being returned, the system sends an email message to the borrower listing all the assets that are past due. The owner of a past due asset also receives an email informing him/her of the delay.

The borrower returns the asset to the owner. The owner then searches for the asset record and marks the asset returned. If the state of the asset has changed (e.g., from new to used or from used to unusable), the owner also updates this information. The system takes out the loan from the list of active loans and archives it. The system also updates the status of the item.

The system should support at least 200 borrowers and 2000 assets. The system should be extensible to other types of assets. The system should checkpoint the state of the database every day such that it can be recovered in case of data loss. Owners and the administrator are authenticated using a user/password combination. Actors interact with the system via a web browser capable of rendering HTML and HTTP without support for JavaScript and Java. The persistent storage is realized using an SQL database. The business logic is realized using the WebObjects runtime system.

The system includes:

  • a storage subsystem managing persistent data
  • a session subsystem controlling authentication, check out, and check in
  • a notification subsystem sending past due notices
  • an administration subsystem realizing administration requests
  • a user interface subsystem translating HTTP requests into requests to other subsystems and translating results into HTML pages.

Asset Management System for a Growing Company

Data Modelling

EquipmentUnlim is a rapidly growing camera equipment rental company that is automating their paper based processes and systems. Part of their transformation includes an asset management system to manage the movements of the different items both internally and externally with their customers.

Estimated Time Taken

~ 45 minutes






Job Opportunities Requiring This Competency


At Talentail, we believe that everyone should be given an equal opportunity to control their career paths and ultimately their happiness.

7 Temasek Boulevard

#12-07 Suntec Tower One

Singapore 038987