SportsForge
Added by Ted Husted, last edited by Jeff Wellings on Jul 29, 2006  (view change)
Labels: 
(None)


"Data modeling you identify entity types whereas with class modeling you identify classes. Data attributes are assigned to entity types just as you would assign attributes and operations to classes. There are associations between entities, similar to the associations between classes - relationships, inheritance, composition, and aggregation are all applicable concepts in data modeling."

For more see Data Modeling 101

Iterative Steps

  • Identify entity types
  • Identify attributes
  • Apply naming conventions
  • Identify relationships
  • Apply data model patterns
  • Assign keys
  • Normalize to reduce data redundancy
  • Denormalize to improve performance

Identify Entity Types

Identify the Entity Types used by the system.

Sport

Description An activity engaged by players within a league or section.
Attributes name, team, logo, address, division, class, photo, state_rank, win_percent, section, record, league, alt_name
Relationships A Team PLAYS a Sport

Sports Type

Description A specific type of Sport, such as Basketball or Bowling.
Attributes name, season, alt_name
Relationships A Sport IS A Sports Type

School

Description A specific community in a [section], [league], or [community league], such as Hickory Huskers
Attributes name, logo, nickname, address
Relationships A School IS A Community

School Team

Description A specific team of a School, such as Hickory Boys Basketball
Attributes schoolID, sportID, division, class, teamphoto, staterank, xpoints
Relationships A School Team plays a specific Sport and a is associate with a specific school
Entity Type Description Relationships
Players a person that plays sports Each School Team has Players
Coach a person that enters scores/stats for a School Team Each School Team has a Coach
Schedule an event between 2 School Teams at a particular time and location Each Schedule has a Home Team, Away Team, Location, DateTime
ScheduleSchool Multiple School Teams participate in a Scheduled Event, such as a Swimming and Cross Country meet. It is possible to have 3-10 School Teams in 1 Scheduled event
Points unique point numbering system solely used by Section 10
Results final score of the game and score by quarter or period or inning, etc...
Report A news story with a heading, body, author, status A Report can be a stand alone entity or it can be related to a Game (Schedule)
ReportPlayer A relationship between (mention of) a Player in a Report (news story) Reports can be grouped by Player
ReportSchool A relationship between a School and Report Reports can be grouped by School
Photo A picture of a player or team A photo can be related to a player or players from the same or different School Teams
PlayerPhoto A relationship between a Player and a Photo
PlayerSport A relationship between a Player and a Sport
Class Each School Team has a Classification (size of school), such as AA, A, B, C, D
Division Each School Team is in a Division, such as East, West, Central
TPOW Top Performer of the Week (player of the week)
UserPref Registered User can specify if they would like to get score and stats updates emailed to them when the site is updated. For example they can specify that they would like to be notified when there are any updated to the Hickory Huskers Boys Basketball Team.
User A Visitor to the site that registers for update notifications and the ability to submit news stories
Author A User that writes News Stories (Reports) for the site, must be a registered User

Statistics

A core use case is tracking Statistics perculiar to various sports. Accordingly, there are several flavors of statistics. Each statistic is relevant to a specific Game and Player.

Sub Type Remark
Baseball AB, Hits, 2B, 3B, HR, RBI, Runs, BB, SB, SO
BaseballPitcher IP, W, L, H, R, ER, SV, K, BB
Basketball FGA, FGM, 3FGA, 3FGM, FTA, FTM, Rebound, Assist, Block, Steal, Turnover
Bowling   new!
CrossCountry Place, Minutes, Seconds
Football Pass Att, Pass Comp, Rush Att, Rush Yds, Receptions, Rec Yds, etc...
Golf Score
Hockey Goal, Assist, Save, Goal Allowed
Lacrosse Goal, Assist, Save, Goal Allowed
Soccer Goal, Assist, Save, Goal Allowed
Softball AB, Hits, 2B, 3B, HR, RBI, Runs, BB, SB, SO
Softball Pitcher IP, W, L, H, R, ER, SV, K, BB
Swimming Event, Minutes, Seconds, MSeconds
Swimming Events name
Tennis   new!

Identify Attributes

Entity Type Description
Sports  
School  
Players  
Coach  
Schedule  
ScheduleSchool  
Points Unique point numbering system solely used by Section 10
Results  
Report  
ReportPlayer  
ReportSchool  
Photo  
PlayerPhoto  
PlayerReport  
PlayerSport  
Class  
Division  
TPOW Top Performer of the Week (player of the week)
UserPref  
Users  

Statistics

A core use case is tracking Statistics perculiar to various sports. Accordingly, there are several flavors of statistics. Each statistic is relevant to a specific Game and Player.

Sub Type Attributes
Baseball  
BaseballPitcher  
Basketball  
Bowling   new!
CrossCountry  
FootBall  
Golf  
Hockey  
Lacrosse  
Soccer  
Softball  
Softball Pitcher  
Swimming  
Swimming Events  
Tennis  

Site running on a free Atlassian Confluence Open Source Project License granted to OSS. Evaluate Confluence today.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.5 Build:#811 Jul 25, 2007) - Bug/feature request - Contact Administrators