Corporate PC Repair: You work in the IT support division of a large firm and are responsible for keeping track of PC repairs and service throughout the organization. Each computer in the organization is identified by a unique property tag number and is for the use of a single employee; your database needs to remember to which employee each computer is assigned. An employee can have more than one computer — for example, a desktop and a laptop. For each computer, you also want to store its date of purchase and its configuration. Each configuration represents a type of computer that the company has purchased; for each configuration, you want to store the manufacturer name, model name, hard disk size, memory size, processor name, and screen size. Typically, you order computers in large batches, so many computers share the same configuration.
Each employee is identified by an employee ID number. For each employee, you want to record their first name, middle initials, last name, phone number, e‐mail address, office room number, and date hired. The database should also remember at which location each employee is stationed. Each employee is assigned to a single company location (such as “headquarters,” “West Coast sales,” etc.), each of which is identified by a four‐letter location code. In addition to this code, you want to store each location’s name and address information. Assume you do have access to a master zip code table.
Your database should also keep track of every service event. For each service event, your database needs to remember which computer was serviced, the date/time the service started, the date/time it ended, a text description of the work performed, and who performed it. Dates and times should be stored together in MS‐Access‐style “Date/Time” fields. The technicians servicing the computers are all employees of your firm, and information about them is stored in the same table as all other employees.
You may create synthetic keys as necessary or convenient.