Question: Develop an entity-relationship diagram (ERD) using Chen notation for the case study described below. You are to clearly: identify entity sets, relationship sets, all attributes,
Develop an entity-relationship diagram (ERD) using Chen notation for the case study described below. You are to clearly: identify entity sets, relationship sets, all attributes, and primary keys; specify connectivities for relationship sets; specify overlapping/disjoint constraints if there is a specialization/generalization hierarchy. To simplify ERD, assume that phone numbers, addresses, and names are atomic attributes (no need to replace them by a set of atomic fields).
Case Study A small private company Sunny Harbor owns marina that hosts boats privately owned by customers, provides technical services for the boats, and organizes voyages on customers requests. To improve companys operations, the owner of the company decided to store all related information in a database. The company has a few docks to accommodate boats. Each dock is described by its unique number, location within the marina, and capacity. The dock capacity is a number of boats that can be moored to it. All customers are boat owners. They are described by the customer ID, name, and the contact phone number. Each customer may own more than one boat and a boat may have more than one owner. Each boat has a registration number and is described by its special features. Boats are of different models. Models are described by the model name, capacity (maximum number of people onboard at the same time), and length. There may be several boats of the same model in the marina. The company assigns a dock to each boat.
The marina is operated by the companys employees. They are skippers, technicians, and general workers. The last group includes watchers, cleaners, waste collectors, etc. An employee is described by employee ID, name, address, and salary. A skipper is additionally described by their type of certification and the certificate number. Each technician is assigned a category according to experience. The category may vary from 1 to 5. Each technician is an expert in one or more boat models. There may be a few technicians who are experts in the same boat model. The information about technician expertise must be recorded. General workers are described by their occupation. Each employee can work only in one capacity.
For each skipper, the company maintains records about accidences they have been involved during voyages. For each such accidence, a record contains its number for each skipper, the type of the accident, and special conditions (e. g., weather conditions). When a skipper leaves the company, all related records must be removed from the database. A customer may request a voyage implemented by a private skipper. Each requested voyage receives a unique number. The request must include the start date of the voyage, the duration of the voyage in days, and the destination locations for the voyage. A voyage may go through several locations according to the customers request. It is assumed that each location is visited only once during the same voyage. Each location is described by its unique ID, the name of the port, and the county. The planned date of the stop and the stop duration in hours at each location must be recorded in the database. To implement the voyage requested by the customer, the company assigns one skipper and one technician to the request. The boat for the voyage is to be selected from the customers boats. This assignment is to be recorded in the database. It is assumed that a voyage is requested by one customer.
To maintain boats, some work needs to be done regularly. The company has a list of services, and an employee is assigned to implement a required service on a given boat. Each assignment is described by the unique number, and the date. The assignment may include one or more services and one or more employees. The number of hours required for the assigned employee to implement the assigned service must be recorded in the database. Services (e.g., replacing parts, cleaning, loading provision) are presented by service ID, the description, and the price. Some services may call for additional services, for example, replacing a part requires boat cleaning. A service may require more than one additional service, and the same service may be caused by different services.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
