Systems Analysis and Design in a Changing World, Fourth Edition

Systems Analysis and Design in a Changing World, Fourth Edition

Systems Analysis and Design in a 1212 12 Changing World, Fourth Edition Learning Objectives Describe the differences and similarities between relational and object-oriented database management systems Design a relational database schema based on Chapter 12: an entity-relationship diagram Designing Databases Design an object database schema based on a class diagram Systems Analysis and Design in a Changing World, 4th Edition 2 12 12 Learning Objectives ( continued ) Overview Design a relational schema to implement a hybrid This chapter describes design of relational and object-relational database OO data models Developers transform conceptual data models into detailed database models Describe the different architectural models for distributed databases Entity-relationship diagrams (ERDs) for traditional analysis Class diagrams for object-oriented (OO) analysis Detailed database models are implemented with database management system (DBMS) Systems Analysis and Design in a Changing World, 4th Edition 3 Systems Analysis and Design in a Changing World, 4th Edition 4 12 12 Databases and Database Databases and Database Management Systems Management Systems (Cont.) Databases (DB) – integrated collections of stored The database (DB) consists of two related data that are centrally managed and controlled information store: o Entity or class attribute( eg. names, prices ). o The physical data store: used by DBMS to store the raw bits and bytes of a database. o Relationships among the entities or classes ( eg. which orders belong to which customers) . o The schema: description of structure, content, and access controls of a physical data store or DB. o Stores descriptive information about data, such as field names, restrictions on allowed data and Database management system (DBMS) – system access control to sensitive information. software that manages and controls access to database (eg. Microsoft access, Oracle, DM2) Systems Analysis and Design in a Changing World, 4th Edition 5 Systems Analysis and Design in a Changing World, 4th Edition 6 12 12 Components of a DB and DBMS Important DBMS Capabilities Simultaneous access by multiple users and applications. Access to data without writing application programs (via a query language). Organizational data management with uniform access and content controls Systems Analysis and Design in a Changing World, 4th Edition 7 Systems Analysis and Design in a Changing World, 4th Edition 8 12 12 Database Models Relational Databases Impacted by technology changes since 1960s Relational database management system (RDBMS): organizes data into tables or relations Model types Tables are two dimensional data structures Hierarchical Tuples – rows or records Network Fields – columns or attributes Relational Object-oriented Tables have primary key field(s) that can be used to identify unique row of relational database table. Most current systems use relational or object- oriented data models Keys: A field that contains a value that is unique within each row of a RDBMS. Systems Analysis and Design in a Changing World, 4th Edition 9 Systems Analysis and Design in a Changing World, 4th Edition 10 12 12 Partial Display of Relational Database Designing Relational Databases Table (Figure 12-2) Create table for each entity type Choose or invent primary key for each table Add foreign keys to represent one-to-many relationships Create new tables to represent many-to-many relationships Define referential integrity constraints Evaluate schema quality and make necessary improvements Choose appropriate data types and value restrictions (if necessary) for each field Systems Analysis and Design in a Changing World, 4th Edition 11 Systems Analysis and Design in a Changing World, 4th Edition 12 12 12 RMO Entity-Relationship Diagram (Figure 12-5) Entity Tables with Primary Keys (Figure 12-7) Systems Analysis and Design in a Changing World, 4th Edition 13 Systems Analysis and Design in a Changing World, 4th Edition 14 12 12 Represent One-to-Many Relationships by Representing Relationships Adding Foreign Keys (in italics) (Figure 12-8) Relational databases use foreign keys to represent relationships One-to-many relationship Add primary key field of “one” entity type as foreign key in table that represents “many” entity type Many-to-many relationship Use the primary key field(s) of both entity types Use (or create) an associative entity table to represent relationship (Figure 12-9 in text book) Systems Analysis and Design in a Changing World, 4th Edition 15 Systems Analysis and Design in a Changing World, 4th Edition 16 12 12 Relationship Between Data in Two Tables Enforcing Referential Integrity Referential Integrity: describes a consistent state among foreign key and primary key( eg. An order must be from a customer). Every foreign key value also exists as a primary key value DBMS enforces referential integrity automatically after schema designer identifies primary and Systems Analysis and Design in a Changing World, 4th Edition 17 foreign keys 18 12 12 DBMS Referential Integrity Enforcement Evaluating Schema Quality When rows containing foreign keys are created High-quality data model has DBMS ensures that value also exists as a primary Uniqueness of table rows and primary keys key in a related table Ease of implementing future data model changes When row is deleted (flexibility and maintainability) DBMS ensures no foreign keys in related tables have same value as primary key of deleted row Lack of redundant data (database normalization ) When primary key value is changed Database design is not objective or quantitatively DBMS ensures no foreign key values in related measured; it is experience and judgment based tables contain the same value Systems Analysis and Design in a Changing World, 4th Edition 19 Systems Analysis and Design in a Changing World, 4th Edition 20 Database Normalization 12 12 Decomposition of 1NF Table into 2NF Tables Normalization: Ensures relational database schema quality by minimizing data redundancy. Normal forms minimize data redundancy First normal form (1NF) – no repeating fields or groups of fields. IssueDate is Functional dependency – one-to-one relationship between determined by CatalogID alone, the values of two fields. not by both CatalogID and The relationship is formally stated as follows: ProductID Field A is functionally depend on field B if for each value of B there is only one corresponding value of A 2NF – in 1NF and if each non-key element is functionally dependent on entire primary key 3NF – in 2NF and if no non-key element is functionally dependent on any other non-key element 21 Systems Analysis and Design in a Changing World, 4th Edition 22 12 12 Object-Oriented Databases Conversion of 2NF Table into 3NF Tables Direct extension of OO design and programming paradigm ODBMS stores data as objects or class instances and to interface with OO programming languages ZipCode determines the Direct support for method storage, inheritance, value for State, and ZipCode is nested objects, object linking, and programmer- not the key to the table defined data types Object Definition Language (ODL) Standard object database description language for describing structure and content of an object database Systems Analysis and Design in a Changing World, 4th Edition 23 24 12 12 Representing Classes Designing Object Databases There are two types of classes for purpose of DM Determine which classes require persistent storage Transient classes Objects exist only during lifetime of program or Define persistent classes process Examples: view layer window, pop-up menu Represent relationships among persistent Persistent classes classes Objects not destroyed when program or process ceases execution. State must be remembered. Choose appropriate data types and value restrictions (if necessary) for each field Exist independently of program or process Examples: problem domain( customer information, employee information). Systems Analysis and Design in a Changing World, 4th Edition 25 26 12 12 Representing Relationships Representing Relationships ( continued ) Object identifiers Advantages include Used to identify objects uniquely ODBMS assumes responsibility for determining connection among objects Physical storage address or reference ODBMS assumes responsibility for maintaining Relate objects of one class to another referential integrity ODBMS uses attributes containing object Type of relationships identifiers to find objects that are related to other objects 1:1, 1:M, M:M (one-to-one, one-to-many, many-to- many) Keyword relationship can be used to declare relationships between classes Association class used with M:M Systems Analysis and Design in a Changing World, 4th Edition 27 Systems Analysis and Design in a Changing World, 4th Edition 28 12 One-to-One Relationship Represented 12 with Attributes Containing Object RMO Domain Identifiers Model Class Diagram (Figure 12-15) Systems Analysis and Design in a Changing World, 4th Edition 29 Systems Analysis and Design in a Changing World, 4th Edition 30 12 12 One-to-Many Relationship Between One-to-Many Relationship Represented with Attributes Containing Object Identifiers Customer and Order Classes Systems Analysis and Design in a Changing World, 4th Edition 31 Systems Analysis and Design in a Changing World, 4th Edition 32 12 12 Many-to-Many Relationship between Generalization Hierarchy within Employee and Project Classes (Figure 12-19) the RMO Class Diagram (Figure 12-21)

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    14 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us