You are on page 1of 5

Conceptual Data Modeling A worked example NCAA (Solutions)

(21)18.The NCAA (National Collegiate Athletic Association) wants to develop a database to


keep track of information about college basketball. Each university team belongs to only one
conference (e.g., the University of Houston belongs to American Athletic Conference; the
University of Cincinnati belongs to the BigEast Conference, etc.); but a few teams may not
belong to any conference. A conference has several teams; no conference has less than five (5)
teams. Each team can have a maximum of twenty (20) players and a minimum of thirteen (13)
players. Each player can plays for only one team. Each team has from three (3) to seven (7)
coaches on its coaching staff and a coach works for only one team. Lots of games are played in
each university location every year; but a game between any two universities is played at a
given location only one time a year. Three referees from a larger pool of referees are assigned to
each game. A referee can work several games; however, some referees may not be assigned to
any game. Players are called players because they play in games; in fact several games. A game
involves at least ten players. It is possible that some players simply sit on the bench and do not
play in any game. Player performance statistics (i.e., points scored, rebounds, assists, minutes
played, and personal fouls committed) are recorded for each player for every game. Information
collected about a game includes the final score, the attendance and the date of the game. During
the summer months, some of the players serve as counselors in summer youth basketball camps.
These camps are identified by their unique campsite location (e.g., Mason, Bellaire, Kenwood,
League City, etc.). Each camp has at least three (3) players who serve as counselors,and a player
serving as a counselor may work at a number of camps.
A player can be identified by student number(i.e., Social Security number) only. The other
attributes for a player include name, major, and grade point average. For a coach, relevant
attributes include name, title (e.g., head coach, assistant coach), salary, address, and telephone
number. Attributes for a referee include name, salary, years of experience, address,telephone
number, and certifications. Both coaches and referees are identified by their personal NCAA
identification number. A team is identified by the name of the university(i.e., team). Other team
attributes include current ranking, capacity of home court, and number of players. Each
conference has a unique name, number of teams, and an annual budget. For the basketball
camps, data is available on the campsite (i.e., location) and the number of courts.
Develop a Presentation Layer ER model for the NCAA database. The ERD should be
fullyspecified with the unique identifiers, other attributes for each entity type, and the
relationship types that exist among the various entity types. All business rules that canbe
captured in the ERD must be present in the ERD. Any business rule that cannot be captured in
the ERDshould be specified as part of a list of semantic integrityconstraints.
Hint: No more than seven entity types are needed to complete this design.
Entities & Attributes
1. CONFERENCE: name, #teams and annual budget.
2. TEAM(location):University Name, ranking, location, capacity of home court, number of players
(derived)

3. COACH: NCAA_id_number,name, title (e.g., head coach, assistant coach), salary, address, telephone
number.
4. GAME: Location, year (partial key), final score, attendance
5. REFEREE: NCAA_id ,name, salary, years of experience, address, telephone number, certifications
(multi-valued)
6. PLAYER: Stu# , name, major GPA.
7. CAMP: location, number of courts., Size, Site
Relationships & Structural Constraints
Participates: between TEAM (0,1) & CONFERENCE -(5,n)
Belongs_to: between TEAM (13,20) & PLAYER(1,1)
Coaches:between TEAM (3,7) & COACH (1,1) \
Calls: Between REREREE(0,n) & GAME(3,3)
Plays_in:Between PLAYER(0,m) & GAME(10,n)
Time played, points scored, rebounds, assists, minutes played, and fouls
Counsels: between PLAYER(0,m) & CAMP(3,n)
Plays:between GAME(1,1)& TEAM.hosts(1,n) & TEAM.guest (0,m) (Exclusive Arc across Teams to
address address team cant play itself)

Presentation Layer ER diagram for the NCAA database


Game as a weak entity type. The business rules, a game between any two universities is played at a given
location only one time a year and a team cannot play itself in any game are captured in the entityrelationship diagram.

22. (19) Add Deletion constraints and develop a design-specific ER diagram for the NCAA database in
Exercise 21, by decomposing constructs that cannot directly be mapped to a logical schema: multivalued attributes and binary relationships of cardinality ratio n:m relationship.
When a referee retires, all links to the games handled by that referee should be removed. Likewise, if a game
is cancelled, all links to the referees for that game should be dropped. Although it is does not happen often, a
university may sometimes leave the conference of which it is a member. Naturally, we want to keep the team
in the database since the university could decide to join another conference at a later date. However, if a team
(university) leaves the NCAA altogether, all players and coaches of that team should be removed from the
database along with the team. In all other relationships that exist in the database, the default value of
Restriction of Deletion should be explicitly indicated

Deletion:
1. When a referee retires, all links to the games handled by that referee should be removed.2. When a game is cancelled, all links to the referees for that game should be dropped
3. A university may sometimes leave the conference of which it is a member. Naturally, we want to keep
the team in the database since the university could decide to join another conference at a later date.
4. However, if a team (university) leaves the NCAA altogether, all players and coaches of that team should
be removed from the database along with the team.
5. In all other relationships that exist in the database, the default value of Restriction of Deletion should
be explicitly indicated.
1. Transform multi-valued attributes REFEREE.Certificaitons to a single-valued attribute

Create Weak Entity Type CERTIFICATION, partial key Certification


Identification Relationship: Has between REFEREE (1,n)& CERTIFICATION(1,1)
2. Decompose binary m:n relationship type by creating a gerund entity type & required identification
dependencies

Plays_in:Between PLAYER(0,n) & GAME(10,n)


gerund entity type: EVENT
identification dependency Of between GAME_EVENT (1,1) & GAME(1,N)
identification dependency: Participates between GAME_EVENT(1,1) & PLAYER (1,n)
Counsels: between PLAYER(0,n) & CAMP(3,n)
gerund entity type: COUNCEL
identification dependency Serves_as between PLAYER () & ADVISOR (1,1)
identification dependency Uses CAMP (1,N) and ADVISOR (1,1)
Calls: Between REREREE(0,n) & GAME(1,n)
gerund entity type: REF_CALL
identification dependency Makes between REFEREE (1,N) & CALL (1,1)
identification dependency Called_by between GAME (1,N) & CALL (1,1)

Design-Specific ER diagram for the NCAA database

Note: Restrict contraint is the default when no deltion constraint is specified. R conflict with other deletion
constraints specified. C are suggested reslolution.

You might also like