Chapter 4 Database Concepts II Prepared by Kent Wilson University of South Australia Top down V Bottom up database design Entity relationship diagram presents top down view Normalisation looks at the bottom up view Normalisation: a set of rules and a process of assigning attributes to entities to eliminate repeating groups and data redundancies, and to form tables representing entities that promote structural and data independence Top down V Bottom up database design (Cont) Normalisation maximises the efficiency of the structure by: o Reducing data redundancies, o Eliminating data anomalies o Producing a set of controlled redundancies Controlled redundancies are redundancies that are allowed for the convenience of structuring data, data manipulation or reporting 1
Normalisation & DB Design First Normal Form (1NF) o A table should have no repeating groups o Each line in a table requires a unique primary key Second dnormal lf Form (2NF) o A table in 1NF that does not contain any partial dependencies Third Normal Form (3NF) o A table in 2NF that contains no transitive dependencies Definitions Relational database: a database that stores data in a number of tables Table: a collection of columns (attributes) and rows (objects) that describean entity Fields: a characteristic of a record that contains data that have a specific meaning Entity: something you wish to record data about in a database Definitions (Cont) Record: a connected set of fields that describe a person, place or thing Primary key: an attribute (or column) that uniquely identifies a particular object (or row) Composite key: a combination of more than one primary key. It indicates an M:N relationship between the columns 2
First Normal Form Second Normal Function Third Normal Form 3
Different ways a business works = Different data structures E R Diagram example Enterprise Models Combining the E R diagrams and normalisation results for each part of the organisation allows the preparation of an enterprise model The development of an enterprise model is an iterative process involving six steps. The process begins with the development of E R diagrams as outlined in chapter 3 4
Developing an Enterprise Model The REA Accounting Model Another way to model data is to use the REA Accounting Model This model is based on the premise that in every exchange in a process there is a resource, event and agent involved Differences Between REA & E R Modelling Despite the reluctance of businesses to use REA to implement accounting systems, one of the REA model s greatest advantages is that it can store non financial data as well as financial data It is possible for organisations to use REA to model their business processes, but then implement the relationships via a traditional accounting system 5
Database Implementation Client server system: a computing model that is based on distributing functions between two types of independent and autonomous processes servers & clients o A client is any process that requests specific services from server processes o A server is a process that provides requested services for clients Client Server Systems Can be classified as 2 tier or 3 tier Based on three major components o Hardware o Software o Communications middleware Communications middleware aid the transmission of data and control of information between the client and server Databases in E Commerce E commerce and the internet have affected database systems Staff, suppliers and customers can have access to the database dtb Allows the use of value chain and customer relationship management software 6
Review of Chapter 4 Normalisation assists in creating an efficient database design Different ways in which a business operates are reflected in different data dt structures t The enterprise model of a business coupled with the steps in creating this model were overviewed Review of Chapter 4 (Cont) The REA accounting model was considered and contrasted with E R modelling An explanation of how client server systems & e commerce have affected the design and implementation of databases was provided Key Terms o Attributes o Back end application software o Client server systems o Communications middleware o Composite keys o Controlled redundancies o Entities, fields & records o Files & tables o Foreign key o Front end application software o Hardware & software o M:N relationships o Normalisation o 1:M relationships o Partial dependency o Primary key o Relational database o Server o Transitive dependency 7
8