Download presentation
Presentation is loading. Please wait.
1
IS 421 Information Systems Analysis James Nowotarski 14 October 2002
2
Recap basics of data modeling Understand more advanced data modeling concepts: –Special types of entities –Foreign keys –Normalization (time permitting, intro only) Today’s Objectives
3
Course Map Contents 1. Introduction Planning Phase 2. Project Initiation 3. Project Management Analysis Phase 4. Systems Analysis 5. Gathering Information 6. Process Modeling 7. Data Modeling 1234678910115 Assignments Quizzes Final Week Core Exam Review
4
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
5
SDLC The systems development life cycle (SDLC) is a description of the phases of an information system PlanningAnalysisDesign Implementation
6
Data Modeling in the Analysis Phase From Planning Phase: System request Feasibility analysis Workplan. Dev Analysis Plan Examine- As-is Identify Improve- ments Develop Basic System Concepts Develop Data Model Develop Process Model Prepare Proposal To Design Phase: Deliverables: Analysis PlanFunctional Requirements Quality Requirements System Concept Data Model Process Model System Proposal Develop Concept for To-Be System
7
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
8
Key Definitions A data model is a –Formal representation of the data to be used for a business system. A data model should illustrate: –The people, places and things about which data is collected, –And how they are related to each other
9
Key Definitions A logical data model shows the logical organization of data –Without regard for how data gets stored, created or manipulated A physical data model shows how the data will physically be stored in the database (secondary memory). –E.g. Oracle may store a customer table in several files (cust1.dbf, cust2.dbf…) that span several hard drives.
10
Data Modeling Entity-relationship diagram (ERD) Entity descriptions Attribute descriptions Relationship descriptions Domain descriptions (not covered here) A logical data model deliverable includes an ERD and descriptions of entities, attributes, and relationships Components of a Logical Data Model
11
Entities and Instances Instances are occurrences of an entity
12
Examples of Attributes Entity: Person –Attributes: first_name last_name eye_color date_of_birth address Entity: Classroom –Attributes: room_no max_capacity
13
Depicting Entities, Attributes and Identifiers Entity name Attributes Identifier Or, use cd_id (PK)
14
Relationships Relationships represent connections, links, or associations between entities e.g., Patient-Appointment Relationships have some important properties: 1.Names, that should be active verbs –(A patient schedules appointments) 2.Cardinality 3.Modality.
15
Cardinality Cardinality refers to the number of times instances in one entity can be related to instances in another entity –One instance in an entity refers to one and only one instance in the related entity (1:1) –One instance in an entity refers to one or more instances in the related entity (1:M) –One or more instances in an entity refer to one or more instances in the related entity (M:M)
16
Modality Modality refers to the minimum number of times that an instance in one entity can be related to an instance in another entity –One means that an instance in the related entity must exist for an instance in another entity to be valid –Zero means that no instance in the related entity is necessary for an instance in another entity to be valid
17
Meanings of the Crow’s Feet Min Max Cardinality 011 0M[any] 1M[any]
18
The Entity-Relationship Diagram (ERD)
19
An ERD Example
20
What Is an ERD? A picture of the logical data model, –i.e., an ERD shows the information created, stored, and used by a business system.
21
An ERD Example A patient must have at least 1 appointment
22
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
23
Homework Ch. 7: Exercises A, D-3, D-4, H, Minicase 2
24
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
25
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
26
Still More Definitions A foreign key is all of these things: a primary key of one entity (sometimes called parent entity), duplicated in another entity (child entity) provides a common linkage between the two entities
27
Foreign Key Example Customer(cust_id (PK), cust_name) Order (ord_no (PK), cust_id (FK), ord_date) Customers (Parent) cust_id cust_name 100Slick Willy, Inc. 200George_W, Co. 300Gore, Ltd. … ord no cust_idord_date 2100 20013-Sep-2000 2101 10014-Nov-2000 2102 10023-Dec-2000 2103 100 24-Dec-2000 … Orders (Child) A foreign key is a primary key of one entity that is duplicated in another entity to provide a common linkage between entities. Why use them? PK FKCust_id
28
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
29
Entity Types 1.Independent 2.Dependent 3.Intersection
30
Independent Entities An independent entity exists without the help of another entity –Common entities such as student, professors, customers, products –The identifier is created by the entity’s own attributes –Usually on the “1” side of a relationship –a.k.a. fundamental entity (in Visual Analyst, e.g.) or strong entity
31
Dependent Entities Alternatively, a dependent entity cannot exist without the help of another entity –Special entities such as emp_dependent (needs an employee to exist) –The identifier is usually based on another entity’s attributes (emp_ssn & dep_ssn) –Usually on the “M” side of a relationship –a.k.a. attributive entity (in Visual Analyst, e.g.) or weak entity
32
Intersection entities An intersection entity exists based on the relationship between two entities. –They have attributes that are peculiar to the relationship between those entity instances, not the individual entities themselves –They are created to store information about two entities sharing an M:M relationship –a.k.a. associative entities, gerunds
33
Intersection Entity Example A student may take many classes. A class may have many students. Where are grades stored? Student Class An instance in the student entity is related to _____ instances in the class entity. An instance in the class entity is related to _____ instances in the student entity. RosterStudentClass
34
An ERD Example: CD’s Relationships Expanded
35
An Intersection Entity Example A CD may be a part of many orders. An order may contain many CDs. The CD-order relationship is M:M. Where do you store quantity of CD’s on an order?
36
Adding Intersection Entities 1.Create an intersection entity (line item). 3. The “1” side goes on the original entities. 2.Move the “M’s” are adjacent to the intersection entity.
37
M:N to 1:Ms Rule: The M always go to the intersection entity. Why?
38
Creating An Entity- Relationship Diagram
39
Steps in Building Data Models 1.Review existing data models 2.Define entities a.Independent b.Dependent, including Intersection entities 3.Define attributes and keys (primary, foreign) 4.Define relationships 5.Finalize ERD 6.Normalize 7.Integrate data models as required 8.Verify completeness of the data model 9.Validate the data model a.With users b.With the enterprise’s data administrator
40
Design Guidelines Best practices rather than rigid rules Entities should have many instances (don’t include fixed items such as stationery headings) Avoid unnecessary attributes (outside the scope of your system) Apply correct cardinality and modality Labels reflect common business terms Assumptions should be clearly stated
41
Summary The ERD is the most common technique for drawing data models. The building blocks of the ERD are: –Entities (nouns), describe people, places, or things –Attributes (nouns), capture information about the entity –Relationships (active verb sentences) associate data across entities; they have cardinality and modality
42
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
43
Group Exercise Textbook, p.207, Your Turn 7-2 Show: Entities Attributes Identifier(s) Relationships Cardinality Modality 15 minutes
44
Topic Duration Recap Last Week20-30 minutes Homework30-40 minutes *** Break15 minutes Foreign keys30 minutes Special entity types30 minutes Data Modeling: Group Exercises45 minutes Assignment 3 Intro10 minutes Today’s agenda
45
Some final points
46
Why Normalize? Prevent inconsistencies Prevent update anomalies
47
Normalization Process 1NF = No repeating groups 2NF = 1NF + no partial dependencies (non-key attribute dependent on portion of primary key) 3NF = 2NF + no transitive dependencies (non- key attribute dependent on another non-key attribute)
48
Metaphors ER ModelRelational Model DatabaseSpreadsheet EntityRelationTable, FileTable InstanceTupleRecordRow Attribute FieldColumn IdentifierKey
49
Identifiers An identifier should have the following characteristics: –Its value should not change over the life of each instance –Its value should never be “null” or empty –It should be composed of the minimal number (preferably one) of attributes required to ensure uniqueness
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.