Development of an ER Diagram and Database Implementation
To give you practical experience in using Entity-Relationship and Relational Database modelling techniques.
Monday of Week 7 (see Course Description for further dates and times).
Alan Counting, Edward Quals and Peter Rofit are in partnership in an accounting practice, CQR. The practice specialises in taxation, auditing and financial advice for small to medium sized clients. They started the practice in 2005 and it has grown to now employ 25 people. These employees include other accountants and office staff. Alan, Edward and Peter believe the practice is headed for a period of significant growth and have come to you to help them redevelop their Client Billing (CB) system so that it copes better with their workflows and supports future growth opportunities.
At the moment, when a client turns up for a scheduled appointment or when an accountant visits a client, the client's information is referenced using the client’s name. If it is the first contact between the practice and client, the client is asked to complete their details (i.e. name, address, contact name, contact number, ABN, TFN, structure, sector, service) on a client information form. Some of this information is optional based on the type of client and area they operate in. For example, some clients are simply salary and wage earners looking for assistance to complete tax returns and would not have an ABN, whilst others are companies requiring advice and assistance with the many different aspects of operating their business. Once the relevant information is obtained for a new client, a unique client number is allocated to the client.
The client is the legal entity being dealt with by the practice and clients are created based on their business structure type. A client record can only have one structure type. Examples include sole trader, individual, private company, partnership and trust. If for example, two individuals operate a business as a private company, and they want their company’s tax return completed as well as their own, a client record would be created for that private company and separate client records would be set up to deal with the affairs of each of the individuals. There are circumstances though where a legal entity sits within another but this is not obvious e.g. where the practice performs superannuation duties and compiles returns for a self-managed superannuation fund for an individual. In these circumstances, there are two client records - the individual and the superannuation fund.
Sectors are the broad categories that allow grouping of clients for reporting purposes. Examples include retail, construction, financial services, hospitality and manufacturing. Occasionally new sector categories are created and the practice would like to record these with their code and description in a separate table. They would also like to be able to record that a client may operate in none, one or more sectors. Services are the broad categories that the practice offers. Examples include auditing, taxation, financial planning, corporate advice and superannuation administration. The practice would like to be able to record that a client must use at least one service but may use a number of services.
The practice has a separate Human Resources (HR) system recording all employee details but for the purposes of billing, they record specific billing details about an employee within the CB system. This information is recorded based on the unique employee number assigned in the HR system. Within the CB system, all employees including Alan, Edward and Peter are given an employment domain, employee type, a charging/billing rate (see below) and an audit supervisor identifier. An employee may have multiple employment domains e.g. taxation, auditing, superannuation but only has one employee type e.g. accountant, administrator. The audit supervisor status refers to whether or not another employee is responsible for supervising and signing off on the audit of a client i.e. only the supervisor highest in the hierarchy is able to sign-off. Further details are recorded for each employee based on qualifications. An employee may have many qualifications and they may be specific to the particular employee type e.g. employees cannot have a public practice certificate unless they are an accountant. These qualifications should be chosen from a set rather than being separately keyed for each employee but they have had problems in their current system with ensuring the integrity of this data.
All contact with the client - appointments at the client or at the practice's offices, letters, emails, phone calls to and from the client, auditing and stocktaking at the client - is billable to the client. All work conducted on behalf of the client - completing tax, superannuation or BAS returns, preparing Profit and Loss and Balance Sheet statements for the various legal entities used by a client/s, reviewing legislation or communicating with statutory authorities on behalf of the client - is also billable to the client. All staff bill/charge in spans of 15 minutes. That is, they record the amount of time they work on a particular client by entering a starting date and time for the work they do, as well as a category of work (these are from a reference set common to many accounting practices and occasionally have new references added) and must charge a minimum time of 15 minutes and charge in multiples of this amount. When they have finished their particular activity, they key in an ending time. They always end any opened charges on the same day. An employee can work for and bill against none, one or many clients. Two or more employees could work together on a job and in such a case separate billing records would be created for each employee.
All employees as well as Alan, Edward and Peter have a charging rate which is the rate at which each individual is billed to the client. The charging rate is an hourly figure. The charging rates are reviewed yearly by Alan, Edward and Peter. Their review is based on consideration of:
• the experience and salary of employees;
• the overheads of the practice (some costs are not directly attributable to the client but are incurred as part of the running of the practice); and
• their hoped for profit and distributions to themselves as partners.
Alan, Edward and Peter generally follow a process of determining the hourly charge/bill rate per employee based on the employee's salary and then multiply by the same factor for all to arrive at the final charge rate for the employee. You are not expected to provide the algorithm for this process but as noted below they would like to record the rate and time period for which it applies.
As well as charging employee time, the practice also on-charges for services or costs that are directly incurred on behalf of the client e.g. lodgement fees, penalties or fines.
At the end of each month the practice runs its monthly account run. The outstanding balance from the previous month for a client is obtained (stored previously), any payments or credits received are itemised, any work or on-costs performed for the client are also itemised and an outstanding balance for the client is calculated (stored) and included on the account. In some cases, summaries of accounts are also produced and an amalgamated account sent to an individual responsible for payment of a number of different billing clients. All these processes are handled by a separate, existing Accounts Payable (AP) system. You do not need to do anything in this assignment with respect to the monthly account run and this description is provided as background.
As part of their intended improvements, Alan, Edward and Peter would like their system to handle the following situations:
• For new and existing clients, the sector they operate in is recorded literally against each client rather than allowing for predefined categories to be used and therefore allow multiple categories to be assigned to the client. Alan, Edward and Peter believe if they could correctly record these categories they could identify growth areas with individual clients and within sectors themselves;
• Alan, Edward and Peter believe there is similar scope to offer add-on services to clients but the data recorded against the client is literal and does not align with the categorisation of services provided by the practice. Generally what is recorded is the 'service' the client originally contacted the practice to perform and because of this the practice may be unclear or missing out on offering other services the client would benefit from;
• Up to now the practice has not been able to keep historical employee charging rates - when the new rates are keyed in, the historical records are lost - as that information is not kept to that detail in the AP system. Alan, Edward and Peter would like this to change so that it is possible to record the rate per employee against a time period for which the rate applies. They would like this functionality to be in the CB system;
• The practice would like some idea of how clients 'fit together'. That is they would like to be able to understand how many clients they have that are related in some way but are separated by legal structures. This will assist them with understanding if they have missed out on any service opportunities with existing clients. For example they would like to be able to run a report that groups the three clients mentioned earlier – the private company and the two individuals. In such a case the two individual client records would ‘point’/‘link’ to the private company client record and the private company client record would link to no others. In each client record therefore there should be a relationship link attribute that allows this linking.
You are required to design (using an E-R diagram) an entity-relationship model of the problem, convert the model into a relational model, and assess the normal form of each schema.
You should produce a single pdf file, created using Word, containing all of the requirements as specified within this document. Your lecturer will provide details of how the file is to be submitted
The design document should contain:
1. A completed copy of the SITE Assignment Coversheet.
2. An appropriate title page that includes an acknowledgement of all students you have spoken to about the assignment.
3. A table of contents and automatically generated page numbers.
4. An entity relation (E-R) diagram that models the problem which includes:
a. all entities, relationships (including names) and attributes;
b. primary (underlined) and foreign (italic) keys identified;
c. cardinality and participation (optional / mandatory) symbols; and
d. assumptions you have made, e.g. how you arrived at the cardinality/participation for those not mentioned or clear in the business description, etc.
The E-R should be completed using the standards of this course (crow’s feet).
5. Relational data structures that translate your E-R diagram which includes:
a. relation (table) names,
b. attribute (column ) names and field types (as required by WAMP),
c. primary and foreign keys identified;
The data structures should be shown using the standards of this course.
6. Normalisation of relations which identifies:
a. dependency diagram for each relation
b. the level of Normalisation achieved for each relation;
c. the reasons for any relation that is maintained NOT in 3NF.
7. A bibliography, in APA format, containing all resources used to complete the assignment. If no resources have been used please indicate this appropriately.
Your assignment should be completed according to the University of Ballarat General Guide for the Presentation of Academic Work. This is available online at the following web address:
1. How clear and well-presented your submission is.
2. E-R diagram: adherence to our standard, assumptions made, inclusion of correct primary and foreign keys, appropriate entities, relationships, and attributes.
3. Relational data structures: correct and meaningful translation of your E-R diagram.
4. Normalisation: appropriate interpretation of each normal form, arguments for leaving the schema in the normal form you consider optimal.
5. Conversion of E-R diagram to relational schema: schema is a correct translation of the E-R submitted with appropriate tables, columns, and primary keys.
Assignment 1 – Marking Overview
ER Diagram / 5
Relational Structure /1
Relational Schema /1
Total l /10 /20%