Systems Analysis & Design 7th Edition Chapter 8 Chapter Objectives Explain data design concepts and data structures Describe file processing systems Explain database systems and define the components of a database management system (DBMS) Describe Web-based data design 2 Chapter Objectives Explain data design terminology, including entities, fields, common fields, records, files, tables, and key fields Describe data relationships, draw an entityrelationship diagram, define cardinality and use cardinality notation Explain the concept of normalization Explain the importance of codes and describe various coding schemes 3 Chapter Objectives Describe relational and object-oriented database models Explain data warehousing and data mining Differentiate between logical and physical storage and records Explain data control measures 4 Introduction You will develop a physical plan for data organization, storage, and retrieval Begins with a review of data design concepts and terminology, then discusses file-based systems and database systems, including Webbased databases Concludes with a discussion of data storage and access, including strategic tools such as data warehousing and data mining, physical design issues, logical and physical records, data storage formats, and data controls 5 Data Design Concepts Data Structures – A file or table contains data about people, places or events that interact with the system – File-oriented system – File processing – Database system 6 Data Design Concepts Overview of File Processing – Can be more efficient and cost-effective in certain situations – Potential problems • Data redundancy • Data integrity • Rigid data structure 7 Data Design Concepts Overview of File Processing – Various types of files • • • • • • Master file Table file Transaction file Work file Security file History file 8 Data Design Concepts The Evolution from File Systems to Database Systems – Advantages • • • • • Scalability Better support for client/server systems Economy of scale Flexible data sharing Enterprise-wide application – database administrator (DBA) 9 Data Design Concepts The Evolution from File Systems to Database Systems – Advantages • • • • • Stronger standards Controlled redundancy Better security Increased programmer productivity Data independence 10 Data Design Concepts Database Tradeoffs – Because DBMSs are powerful, they require more expensive hardware, software, and data networks capable of supporting a multi-user environment – More complex than a file processing system – Procedures for security, backup, and recovery are more complicated and critical 11 DBMS Components Interfaces for Users, Database Administrators, and Related Systems – Users – Database Administrators – Related information systems • A DBMS can support several related information systems that provide input to, and require specific data from, the DBMS 12 DBMS Components Data Manipulation Language – A data manipulation language (DML) controls database operations Schema – The complete definition of a database, including descriptions of all fields, tables, and relationships – You also can define one or more subschemas 13 DBMS Components Physical Data Repository – The data dictionary is transformed into a physical data repository, which also contains the schema and subschemas – The physical repository might be centralized, or distributed at several locations – ODBC – open database connectivity – JDBC – Java database connectivity 14 Web-Based Database Design Characteristics of Web-Based Design 15 Web-Based Database Design Internet Terminology – Web browser – Web page – HTML (Hypertext Markup Language) – Tags – Web server – Web site 16 Web-Based Database Design Internet Terminology – Intranet – Extranet – Protocols – Web-centric – Clients – Servers 17 Web-Based Database Design Connecting a Database to the Web – Database must be connected to the Internet or intranet • Middleware • Adobe ColdFusion 18 Web-Based Database Design Data Security – Web-based data must be totally secure, yet easily accessible to authorized users – To achieve this goal, well-designed systems provide security at three levels: the database itself, the Web server, and the telecommunication links that connect the components of the system 19 Data Design Terminology Definitions – Entity – Table or file – Field • Attribute • Common field – Record • Tuple 20 Data Design Terminology Key Fields – Primary key • • • • Combination key Composite key Concatenated key Multi-valued key 21 Data Design Terminology Key Fields – Candidate key • Nonkey field – Foreign key – Secondary key 22 Data Design Terminology Referential Integrity – Validity checks can help avoid data input errors – In a relational database, referential integrity means that a foreign key value cannot be entered in one table unless it matches an existing primary key in another table – Orphan 23 Entity-Relationship Diagrams Drawing an ERD – The first step is to list the entities that you identified during the fact-finding process and to consider the nature of the relationships that link them – A popular method is to represent entities as rectangles and relationships as diamond shapes 24 Entity-Relationship Diagrams Types of Relationships – Three types of relationships can exist between entities – One-to-one relationship (1:1) – One-to-many relationship (1:M) – Many-to-many relationship (M:N) • Associative entity 25 Entity-Relationship Diagrams Cardinality • Cardinality notation • Crow’s foot notation • Unified Modeling Language (UML) 26 Normalization Standard Notation Format – Designing tables is easier if you use a standard notation format to show a table’s structure, fields, and primary key Example: NAME (FIELD 1, FIELD 2, FIELD 3) 27 Normalization Repeating Groups and Unnormalized Design – Repeating group • Often occur in manual documents prepared by users – Unnormalized 28 Normalization First Normal Form – A table is in first normal form (1NF) if it does not contain a repeating group – To convert, you must expand the table’s primary key to include the primary key of the repeating group 29 Normalization Second Normal Form – A standard process exists for converting a table from 1NF to 2NF 1. First, create and name a separate table for each field in the existing primary key 2. Next, create a new table for each possible combination of the original primary key fields 3. Finally, study the three tables and place each field with its appropriate primary key 30 Normalization Second Normal Form – Four kinds of problems are found with 1NF description that do not exist with 2NF • Consider the work necessary to change a particular product’s design • 1NF tables can contain inconsistent data • Adding a new product is a problem • Deleting a product is a problem 31 Normalization Third Normal Form – A table design is in third normal form (3NF) if it is in 2NF and if no nonkey field is dependent on another nonkey field – To convert the table to 3NF, you must remove all fields from the 2NF table that depend on another nonkey field and place them in a new table that uses the nonkey field as a primary key 32 Normalization A Normalization Example 33 Using Codes During System Design Overview of Codes – Because codes often are used to represent data, you encounter them constantly in your everyday life – They save storage space and costs, reduce transmission time, and decrease data entry time – Can reduce data input errors 34 Using Codes During System Design Types of Codes 1. Sequence codes 2. Block sequence codes 3. Alphabetic codes a. Category codes b. Abbreviation codes – mnemonic codes 35 Using Codes During System Design Types of codes 4. Significant digit codes 5. Derivation codes 6. Cipher codes 7. Action codes 36 Using Codes During System Design Developing a Code 1. Keep codes concise 2. Allow for expansion 3. Keep codes stable 4. Make codes unique 5. Use sortable codes 37 Using Codes During System Design Developing a Code 6. Avoid confusing codes 7. Make codes meaningful 8. Use a code for a single purpose 9. Keep codes consistent 38 Steps in Database Design 1. 2. 3. 4. Create the initial ERD Assign all data elements to entities Create 3NF designs for all tables Verify all data dictionary entries – After creating your final ERD and normalized table designs, you can transform them into a database 39 Database Models Relational Databases – The relational model was introduced during the 1970s and became popular because it was flexible and powerful Object-Oriented Databases – Many systems developers are using objectoriented database (OODB) design as a natural extension of the object-oriented analysis process 40 Data Storage and Access Data storage and access involve strategic business tools Strategic tools for data storage and access – Data warehouse – dimensions – Data mart – Data mining 41 Data Storage and Access Logical and Physical Storage – Logical storage • Characters • Date element or data item • Logical record – Physical storage • Physical record or block • Buffer • Blocking factor 42 Data Storage and Access Data Storage Formats – Binary digits – Bit – Byte – EBCDIC and ASCII – Unicode - internationalize 43 Data Storage and Access Data Storage Formats – Binary • • • • Binary storage format Integer format Long integer format Other binary formats exist for efficient storage of exceedingly long numbers 44 Data Storage and Access Selecting a Data Storage Format – In many cases, a user can select a specific data storage format – For example, when using Microsoft Office, you can store documents, spreadsheets, and databases in Unicode-compatible form by using the font called Arial Unicode MS – Best answer is it depends on the situation 45 Data Storage and Access Date Fields – Most date formats now are based on the model established by the International Organization for Standardization (ISO) – Can be sorted easily and used in comparisons – Absolute date – Best method depends on how the specific date will be printed, displayed or used in a calculation 46 Data Control User ID Password Permissions Encryption Backup Recovery procedures Audit log files Audit fields 47 Chapter Summary Files and tables contain data about people, places, things, or events that affect the information system DBMS designs are more powerful and flexible than traditional file-oriented systems 48 Chapter Summary Data design tasks include creating an initial ERD; assigning data elements to an entity; normalizing all table designs; and completing the data dictionary entries for files, records, and data elements A code is a set of letters or numbers used to represent data in a system The most common database models are relational and object-oriented 49 Chapter Summary File and database control measures include limiting access to the data, data encryption, backup/recovery procedures, audit-trail files, and internal audit fields Chapter 8 complete 50