CHAPTER 4: ENHANCED
ENTITY-RELATIONSHIP AND UML MODELING
Answers to Selected Exercises
4.18 Consider the BANK ER schema of
Figure 3.18, and suppose that is is necessary to
keep track of different types of
ACCOUNTS (SAVINGS_ACCTS, CHECKING_ACCTS,
...) and LOANS (CAR_LOANS,
HOME_LOANS, ...). Suppose that is is also desirable
to keep track of each account's
TRANSACTIONs (deposits, withdrawals, checks,
...) and each loan's PAYMENTs; both
of these include the amount, date, time, ... .
Modify the BANK schema, using ER and
EER concepts of specialization and
generalization. State any
assumptions you make about the additional requirements.
Answer:

4.19
Solution Pending
4.20
Identify all the important concepts represented in the library database case
study described here. In particular, identify the abstraction of classification
(entity types and relationship types), aggregation, identification, and
specialization/generalization. Specify (min, max) cardinality constraints
whenever possible. List details that will affect the eventual design but have
no bearing on the conceptual design. List the semantic separately. Draw an EER
diagram of the library database.
Answer:

4.21
Solution Pending
4.22
Figure 4.15 shows an example of an EER diagram for a small private airport
database that is used to keep track of airplanes, their owners, airport
employees, and pilots. From the requirements for this database, the following
information was collected: Each airplane has a registration number [Reg#], is
of a particular plane type [of_type], and is stored in a particular hangar
[stored_in]. Each plane_type has a model number [Model], a capacity [Capacity],
and a weight [Weight]. Each hangar has a number [Number], a capacity
[Capacity], and a location [Location]. The database also keeps track of the
owners of each plane [owns] and the employees who have maintained the plane
[maintain]. Each relationship instance in owns relates an airplane to an owner
and includes the purchase date [Pdate]. Each relationship instance in maintain
relates to an employee to a service record [service]. Each plane undergoes
service many times; hence, it is related by [plane_service] o a number of
service records. A service record includes as attributes the date of maintenance [Date], the number of
hours spent on the work [Hours], and the type of work done [Workcode]. We use a
weak entity type [service] to represent airplane service, because the airplane
registration number is used to identify a service record. An owner is either a
person or a corporation. Hence, we use a union type (category) [owner] that is
a subset of the union of corporation [Corporation] and person [Person] entity
types. Both pilots {Pilot] and employees [Employee] are subclasses of person.
Each pilot has specific attributes license number [Lic_Num] and restrictions
[Restr]; each employee has specific attributes salary [Salary] and shift
{Shift]. All person entities in the database have data kept on their social
security number [Ssn], name [Name], address [Address], and telephone number
[Phone]. For corporation entities, the data kept includes name [Name], address
[Address], and telephone number [Phone]. The database also keeps track of the
types of planes each pilot is authorized to fly [Flies] and the types of planes
each employee can do maintenance work on [Works_on]. Show how the small airport
EER schema of Figure 4.15 may be represented in UML notation. (Note: We have
not discussed how to represent categories (union types) in UML, so you do not
have to map the categories in this and the following question.)
Answer:
