Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 3630 Database Design and Implementation. Assignment 1 2 What is 3630?

Similar presentations


Presentation on theme: "CS 3630 Database Design and Implementation. Assignment 1 2 What is 3630?"— Presentation transcript:

1 CS 3630 Database Design and Implementation

2 Assignment 1 2 What is 3630?

3 3 Database Design Relational Database A collection of normalized tables/relations.

4 4 The Three Level ANSI-SPARC Architecture DBTG (Data Base Task Group) Appointed by the Conference on Data Systems and Languages in 1971 Two level approach SPARC: Standards Planning And Requirement Committee ANSI/X3/SPARC, 1975 Based on IBM's view For any database system Data Independence.

5 5 View 1View 2View 3 … Conceptual schema Internal schema External Level Conceptual Level Internal Level Database The Three Level ANSI-SPARC Architecture

6 6 Phases of Database Design Conceptual Database Design Understanding the data Logical Database Design Normalization Physical Database Design We ignore it.

7 7 Conceptual Database Design Users' views Understanding of the meaning of the data Common Sense Business rules Do not assume anything Students without any classes at UWP Classes without any students E-R Model Formal document to specify the requirements Entity and Relationship Independent of the target data model (relational, OO).

8 8 Logical Database Design Designer's view Based on the target data model Relational Normalization.

9 9 Physical Database Design Base relations and constraints File Organization and Storage Structure (Appendix C) Others.

10 10 Conceptual Database Design E-R Model (Ch 11) High level conceptual data model Top-Down approach Widely used but not the only model UML (Unified Modeling Language) Draw ER diagrams.

11 11 Entity Types A group of objects with the same properties, which are identified by the enterprise as having an independent existence. Similar to Class in OOP Class is an implementation of Entity.

12 12 Physical Existence Branch Staff PropertyForRent Client Owner Customer Product Supplier.

13 13 Conceptual Existence Viewing Inspection Sale Work Experience.

14 14 Entity Occurrence A uniquely identifiable object of an entity type. Class and Object.

15 15 Diagrammatic Representation of Entity Types Rectangle The first letter of the entity name is upper case BranchStaff

16 16 Relationship Types (Not Relation) A set of meaningful associations among entity types. Branch Has Staff Staff Manages Branch Owner Owns PropertyForRent.

17 17 Relationship Occurrence A uniquely identifiable association, which includes one occurrence of each participating entity type Example Branch B003 has staff SG5 Owner O321 owns property P1045.

18 18 Semantic Net for Relationship Occurrence BranchHasStaff B003 B007 r1 r2 r3 SG5 SG37 SA9

19 19 Diagrammatic Representation of Relationship Types Directed line with the relationship name BranchStaff Has

20 20 Degree of Relationship Type The number of participating entity types in a relationship Binary Ternary Quaternary

21 21 A Ternary Relationship BranchStaff Client Registers

22 22 A Quaternary Relationship BuyerBank Bid Arranges Solicitor A solicitor arranges a bid on behalf of a buyer supported by a financial institute.

23 23 Recursive Relationship A relationship type where the same entity type participates more than once in different roles. Staff (Supervisor) supervises Staff (Supervisee) Roles Supervisor Supervisee.

24 24 Recursive Relationship Staff Supervisor Supervisee Supervises

25 25 Multiple Relationships between the Same Entity Types Branch Has Staff (Staff Members) Staff (Manager) Manages Branch.

26 26 Multiple Relationships between Entity Types BranchStaff Has Manages

27 27 Relationship or Entity? Viewing As Entity in DreamHome example Could be a Relationship Client Views PropertyForRent It can be treated either way The final design will be the same.

28 28 Attributes of an Entity Type A property of an entity type or a relationship type. Similar to the fields of a class PropertyForRent propertyNo address (street, city, state, zipcode) type rooms rent...

29 29 Attributes of a Relationship Advertises Date Cost NewsPaperPropertyForRent Advertises

30 30 Domain of Attribute The set of allowable values for one or more attributes PropertyForRent propertyNo: String (size) type: ‘Flat’, ‘House’ rooms: integer, 1 - 15 rent: integer, 150 – 1000...

31 31 Simple and Composite Attribute Simple attribute An attribute composed of a single component position salary GPA Composite attribute An attribute composed of multiple components name : firstName, lastName, middle address: street, city, state, zipcode DOB : year, month, day workExperience: organization, position, start, end.

32 32 Single-valued and Multi-valued Attribute Single-valued: An attribute that holds a single value for each occurrence of an entity type branchNo name DOB GPA The value could change from time to time, but one value at any given time. Multi-valued: An attribute that can hold multiple values for each occurrence of an entity type phoneNo studentMajor workExperience.

33 33 Composite and Multi-valued Attribute Composite attribute could be single-valued or multi- valued name: single-valued workExperience: multi-valued Multi-valued attribute could be simple or composite phoneNo: simple workExperience: composite.

34 34 Composite and Multi-valued Attribute Simple attribute could be single-valued or multi- valued salary: single-valued major: multi-valued Single-valued attribute could be simple or composite salary: simple DOB: composite.

35 35 Derived Attribute An attribute that represents a value that is derivable from the values of a set of related attributes, not necessarily in the same entity type. Age Total Number of staff members Deposit of Lease is twice the rent.

36 36 Required or Optional Attribute Required Attributes studentID Name DOB... Optional Attributes phoneNo Major...

37 37 Assignment 2 Due beginning of class, Friday, Feb 6

38 Quiz1 Wednesday 38


Download ppt "CS 3630 Database Design and Implementation. Assignment 1 2 What is 3630?"

Similar presentations


Ads by Google