Presentation is loading. Please wait.

Presentation is loading. Please wait.

© 2007 Prentice Hall, Inc.1 Using Management Information Systems David Kroenke Database Processing Chapter 4.

Similar presentations


Presentation on theme: "© 2007 Prentice Hall, Inc.1 Using Management Information Systems David Kroenke Database Processing Chapter 4."— Presentation transcript:

1 © 2007 Prentice Hall, Inc.1 Using Management Information Systems David Kroenke Database Processing Chapter 4

2 © 2007 Prentice Hall, Inc.2 Learning Objectives Know the purpose of database processing. List the components of a database system. Understand important database terms. Know the elements of the entity-relationship model.

3 © 2007 Prentice Hall, Inc.3 Learning Objectives (Continued) Understand the general nature of database design. Recognize the need for and know the basic tasks of database administration.

4 © 2007 Prentice Hall, Inc.4 Purpose of a Database The purpose of a database is to keep track of things that involve more than one theme.

5 © 2007 Prentice Hall, Inc.5 Figure 4-1 A List of Student Grades

6 © 2007 Prentice Hall, Inc.6 Figure 4-2 Student Data Shown in Form from Database

7 © 2007 Prentice Hall, Inc.7 What Is a Database? A database is a self-describing collection of integrated records. A byte is a character of data. Bytes are grouped into columns, such as Student Number and Student Name. Columns are also called fields.

8 © 2007 Prentice Hall, Inc.8 What Is a Database? (Continued) Columns or fields, in turn, are grouped into rows, which are also called records. There is a hierarchy of data elements. A database is a collection of tables plus relationships among the rows in those tables, plus special data, called metadata. Metadata describes the structure of the database.

9 © 2007 Prentice Hall, Inc.9 Figure 4-3 Student Table (also called File)

10 © 2007 Prentice Hall, Inc.10 Figure 4-4 Hierarchy of Data Elements

11 © 2007 Prentice Hall, Inc.11 Relationships Among Records A key is a column or group of columns that identifies a unique row in a table. Student Number is the key of the Student table. A foreign key is a non-key column or field in one table that links to a primary key in another table. Student Number in the Email and Office_Visit tables Relational databases store their data in the form of tables that represent relationships using foreign keys.

12 © 2007 Prentice Hall, Inc.12 Figure 4-5 Components of a Database

13 © 2007 Prentice Hall, Inc.13 Figure 4-6 Examples of Relationships Among Rows

14 © 2007 Prentice Hall, Inc.14 Metadata Databases are self-describing because they contain not only data, but also data about the data in the database. Metadata are data that describe data. The format of metadata depends on the software product that is processing the database. Field properties describe formats, a default value for Microsoft Access to supply when a new row is created, and the constraint that a value is required for the column.

15 © 2007 Prentice Hall, Inc.15 Metadata (Continued) The presence of metadata makes databases much more useful. Because of metadata, no one needs to guess, remember, or even record what is in the database. Metadata make databases easy to use for both authorized and unauthorized purposes.

16 © 2007 Prentice Hall, Inc.16 Figure 4-7 Example Metadata (in Access)

17 © 2007 Prentice Hall, Inc.17 Components of a Database Application System By itself database, is not very useful. Pure database data are correct, but in raw form they are not pertinent or useful. Database applications make database data more accessible and useful.

18 © 2007 Prentice Hall, Inc.18 Components of a Database Application System (Continued) Users employ a database application that consists of forms, formatted reports, queries, and application programs. Each of these, in turn, calls on the database management system (DBMS) to process the database tables.

19 © 2007 Prentice Hall, Inc.19 Figure 4-8 Components of a Database Application System

20 © 2007 Prentice Hall, Inc.20 Database Management System A database management system (DBMS) is a program used to create, process, and administer a database. Almost no organization develops its own DBMS. Companies license DBMS products from vendors like IBM, Microsoft, Oracle, and others.

21 © 2007 Prentice Hall, Inc.21 Database Management System (Continued) Popular DBMS products are: DB2 from IBM Access and SQL Server from Microsoft MySQL, an open-source DBMS product that is free for most applications The DBMS and the database are two different things: A DBMS is a software program. A database is a collection of tables, relationships, and metadata.

22 © 2007 Prentice Hall, Inc.22 Creating the Database and Its Structures Database developers use the DBMS to create tables, relationships, and other structures in the database. A form can be used to define a new table or to modify an existing one. To create a new table, the developer just fills out a new form. To modify an existing table say, to add a new column, the developer opens the metadata form for that table and adds a new row of metadata.

23 © 2007 Prentice Hall, Inc.23 Figure 4-9 Adding a New Column to a Table (in Access)

24 © 2007 Prentice Hall, Inc.24 Processing the Database The second function of the DBMS is to process the database. Applications use the DBMS for four operations: read, insert, modify, or delete data. The applications call upon the DBMS in different ways: Via a form, when the user enters new or changed data Via a computer program behind the form calls the DBMS to make the necessary database changes Via an application program, the program calls the DBMS directly to make the change

25 © 2007 Prentice Hall, Inc.25 Processing the Database (Continued) Structured Query Language (SQL) is an international standard language for processing a database. All five of the DBMS products mentioned earlier accept and process SQL statements. SQL can be used to create databases and database structures.

26 © 2007 Prentice Hall, Inc.26 Administering the Databases A third DBMS function is to provide tools in the administration of the database. Database administration involves a wide variety of activities. For example, the DBMS can be used to set up a security system involving user accounts, passwords, permissions, and limits for processing the database DBMS administrative functions also include: Backing up database data Adding structures to improve the performance of database applications Removing data that are no longer wanted or needed, and similar tasks

27 © 2007 Prentice Hall, Inc.27 Database Applications A database application is a collection of forms, reports, queries, and application programs that process a database. A database may have one or more applications, and each application may have one or more users. Applications have different purposes, features, and functions, but they all process the same inventory data stored in a common database.

28 © 2007 Prentice Hall, Inc.28 Figure 4-10 Use of Multiple Database Applications

29 © 2007 Prentice Hall, Inc.29 Forms, Reports, and Queries Data entry forms are used to read, insert, modify, and delete data. Reports show data in a structured content. Some reports also compute values as they present the data. DBMS programs provide comprehensive and robust features for querying database data.

30 © 2007 Prentice Hall, Inc.30 Figure 4-11 Example Student Report

31 © 2007 Prentice Hall, Inc.31 Figure 4-12 Example Query

32 © 2007 Prentice Hall, Inc.32 Database Application Programs Application programs process logic that is specific to a given business need. Application programs enable database processing over the Internet. For this use, the application program serves as an intermediary between the Web server and the database. The application program responds to events, such as when a user presses a submit button; it also reads; inserts; modifies; and deletes database data.

33 © 2007 Prentice Hall, Inc.33 Figure 4-13 Four Application Programs on Web Server Computer

34 © 2007 Prentice Hall, Inc.34 Multi-User Processing Multi-user processing is common, but it does pose unique problems that you, as a future manager, should know about.

35 © 2007 Prentice Hall, Inc.35 Multi-User Processing (Continued) When more that one user is trying to access a particular database table at same time, the first user to gain assess to the database table has the the correct content value, the other users may not have the correct content value because the first user may modify the value without the other users knowing. This problem is known as the lost-update problem, exemplifies one of the special characteristics of multi- user database processing. To prevent this problem, some type of locking must be used to coordinate the activities of users who know nothing about one another.

36 © 2007 Prentice Hall, Inc.36 Multi-User Processing (Continued) Converting to a single-user database to a multi- user database requires more than simply connecting another computer. The logic of the underlying application processing needs to be adjusted as well. Be aware of possible data conflicts when you manage business activities that involve multi-user processing.

37 © 2007 Prentice Hall, Inc.37 Enterprise DBMS Versus Personal DBMS DBMS products fall into two broad categories: Enterprise DBMS and Personal DBMS. Enterprise DBMS These products process large organizational and workgroup databases. These products support many users, perhaps thousands, of users and many different database applications. Such DBMS products support 24/7 operations and can manage dozens of different magnetic disks with hundreds of gigabytes or more data. IBM’s DB2, Microsoft’s SQL Server, and Oracle are examples of enterprise DBMS products.

38 © 2007 Prentice Hall, Inc.38 Enterprise DBMS Versus Personal DBMS (Continued) Personal DBMS These products are designed for smaller, simpler database applications. Such products are used for personal or small workgroup applications that involve fewer than 100 users, and normally fewer than 15. The great bulk of databases in this category have only a single user. Microsoft Access is the only available personal DBMS.

39 © 2007 Prentice Hall, Inc.39 Figure 4-14 Personal Database System

40 © 2007 Prentice Hall, Inc.40 Developing a Database Application The reason that user involvement is so important for database development is that the database design depends entirely on how users view their business environment. Database structures can be complex, in some cases, very complex. Before building, the database, the developers construct a logical representation of database data called a data model.

41 © 2007 Prentice Hall, Inc.41 Developing a Database Application (Continued) The data model describes the data and relationships that will be stored in the database. The data model is referred to as a blueprint.

42 © 2007 Prentice Hall, Inc.42 Figure 4-15 Database Development Process

43 © 2007 Prentice Hall, Inc.43 Entities An entity is something that the users want to track. Examples of entities are Order, Customer, Salesperson, and Item Some entities represent a physical object, such as an Item or Salesperson; others represent a logical construct of transaction, such as Order or Contact. Entities have attributes that describe characteristics of the entity. Example attributes of Salesperson are SalespersonName, Email, Phone, and so forth

44 © 2007 Prentice Hall, Inc.44 Entities (Continued) Entities have an identifier, which is an attribute (or group of attributes) whose value is associated with one and only one entity instance. For example, OrderNumber is an identifier of Order, because only one Order instance has a given value of OrderNumber. CustomerNumber is an identifier of Customer. If each member of the sales staff has a unique name, then SalespersonName is an identifier of Salesperson.

45 © 2007 Prentice Hall, Inc.45 Figure 4-16 Student Data Model Entities

46 © 2007 Prentice Hall, Inc.46 Relationships Entities have relationships to each other. An Order, for example, has an relationship to Customer entity and also to a Salesperson entity Database designers use diagrams called entity- relationship (E-R) diagrams. All of the entities of one type are represented by a single rectangle. A line is used to represent a relationship between two entities.

47 © 2007 Prentice Hall, Inc.47 Relationships (Continued) If two entities have a plain straight line between them, then this type of relationship is called one-to- one. If two entities have a line between them, but at the end of one line in one of the two directions (left or right) exists an arrow (crow’s foot), then this type of relationship is called one-to-many.

48 © 2007 Prentice Hall, Inc.48 Relationships (Continued) If two entities have a line between them, but at the end of the line in both directions (left and right) exists an arrow (crow’s foot), then this type of relationship is called many-to-many. The crow’s-foot notation shows the maximum number of entities that can be involved in a relationship. This is called the relationship’s maximum cardinality. Common examples of maximum cardinality are 1:N, N:M, and 1:1. Constraints on minimum requirements are called minimum cardinalities.

49 © 2007 Prentice Hall, Inc.49 Figure 4-17 Example of Department, Adviser, and Student Entities and Relationships

50 © 2007 Prentice Hall, Inc.50 Figure 4-18 Example of Relationships-Version 1

51 © 2007 Prentice Hall, Inc.51 Figure 4-19 Example Relationships-Version 2

52 © 2007 Prentice Hall, Inc.52 Figure 4-20 Example Relationships Showing Minimum Cardinalities

53 © 2007 Prentice Hall, Inc.53 Database Design Database design is the process of converting a data model into tables, relationships, and data constraints. The database design team transforms entities into tables and expresses relationships by defining foreign keys.

54 © 2007 Prentice Hall, Inc.54 Normalization Normalization is the process of converting poorly structured tables into two or more well-structured tables. Data Integrity Problems For example, suppose for a given table, the value for a defined attribute is changed correctly in two rows, but not in the third The table has what is called a data integrity problem: Some rows indicate that the name of the attribute is one value and another row indicates that the name of the value of the attribute is another. This is called multi-value. Data integrity problems are serious.

55 © 2007 Prentice Hall, Inc.55 Normalization (Continued) Data Integrity Problems (Continued) A table that has data integrity problems will produce incorrect and inconsistent information. Users will lose confidence in the information, and the system will develop a poor reputation. Information systems with poor reputations become serious burdens to the organizations that use them.

56 © 2007 Prentice Hall, Inc.56 Figure 4-21 A Poorly Designed Employee Table

57 © 2007 Prentice Hall, Inc.57 Figure 4-21 A Poorly Designed Employee Table (Continued)

58 © 2007 Prentice Hall, Inc.58 Normalization (Continued) Normalizing for Data Integrity The data integrity problem can occur only if data are duplicated. Because of this, one easy way to eliminate the problem is to eliminate the duplicated data. This can be done by transforming the table into two tables. Because such joining of tables is common, DBMS products have been programmed to perform it efficiently, but it still requires work. Dealing with such trade-offs is an important consideration in database design. The general goal of normalization is to construct tables such that every table has a single topic or theme.

59 © 2007 Prentice Hall, Inc.59 Normalization (Continued) Normalizing for Data Integrity (continued) Database practitioners classify tables into various normal forms according to the kinds of problems they have. Transforming a table into a normal form to remove duplicated data and other problems is called normalizing the table.

60 © 2007 Prentice Hall, Inc.60 Figure 4-22 Two Normalized Tables

61 © 2007 Prentice Hall, Inc.61 Figure 4-23 Transforming a Data Model into a Database Design

62 © 2007 Prentice Hall, Inc.62 Figure 4-24 Representing a 1:N Relationship

63 © 2007 Prentice Hall, Inc.63 Figure 4-24 Representing a 1:N Relationship (Continued)

64 © 2007 Prentice Hall, Inc.64 Figure 4-25 Representing a N:M Relationship

65 © 2007 Prentice Hall, Inc.65 Importance of User’s Review Users are the final judges as to what data the database should contain and how records in the database should be related to one another. The easiest time to change the database structure is during the data modeling stage. However, once the database has been constructed, loaded with data, and application forms, reports, queries, and application programs created, changing a relationship means weeks of work.

66 © 2007 Prentice Hall, Inc.66 Importance of User’s Review (Continued) When a database is developed for your use, you must carefully review the data model. If you do not understand any aspect of it, you should ask for clarification until you do. The data model must accurately reflect your view of the business. Do not proceed unless the data model is correct.

67 © 2007 Prentice Hall, Inc.67 Database Administration In light of both the importance and the management challenges of databases, most organizations have created a staff function called database administration. In smaller organizations, this function is usually served by a single person, sometimes even on a part-time basis. Larger organizations assign several people to an office of database administration.

68 © 2007 Prentice Hall, Inc.68 Database Administration (Continued) Depending on the context, the letters DBA either stand for the database administrator or for the office of database administration. The purpose of database administration is to manage the development, operation, and maintenance of a database so as to achieve the organization’s objectives. This function requires balancing conflicting goals: protecting the database while maximizing its availability for authorized use.

69 © 2007 Prentice Hall, Inc.69 Figure 4-26 Summary of Database Administrative Tasks

70 © 2007 Prentice Hall, Inc.70 DBA Development Responsibilities The DBA is not a user of the database or any of its applications. The DBA is an auditor, a consultant, sometimes a policeman, and a diplomat who works as a liaison between the users and professional developers. One of the first tasks for the DBA is to create a steering committee that consists of key users. The DBA uses the committee as a forum for community-wide decisions regarding the development, use, and maintenance of the database.

71 © 2007 Prentice Hall, Inc.71 DBA Operations Responsibilities An important DBA function is to establish community- wide policies for the processing of the database. The DBA uses the steering committee to determine processing rights for each column of each table. These rights include what data users are authorized to read, create, modify, and delete. The DBA also works with development personnel to ensure that a security system is in place to enforce these processing rights.

72 © 2007 Prentice Hall, Inc.72 DBA Backup and Recovery Responsibilities As a protector of the database, the DBA has the responsibility to ensure that appropriate procedures and policies exist for backing up the database and that those procedures are followed. The DBA needs to ensure that users and operations personnel are appropriately trained with regard to backup and recovery procedures. Finally when failures occur, in many organizations the DBA is responsible for managing the recovery process.

73 © 2007 Prentice Hall, Inc.73 DBA Responsibilities for Adaptation Over time, requirements for the database will change. Changes that benefit one group in the organization may not benefit other groups. The DBA needs to set up a system for recording and tracking requests for changes. The responsibility of the DBA is to provide the forum and to ensure that requests are considered and acted upon in a responsible manner.

74 © 2007 Prentice Hall, Inc.74 Is the DBA a Technical Person? The DBA function has broad managerial responsibilities for the database. Part of the DBA function is technical: Monitoring performance Managing the DBMS Developing backup and recovery procedures For larger organizations, and for databases that touch many different departments and business functions, the DBA’s job is more diplomatic than technical.

75 © 2007 Prentice Hall, Inc.75 Summary The purpose of a database is to keep track of things. A database is a self-describing collection of integrated records. With the relational model, data are stored in tables and relationships are represented by column values. A key, or table key, is a column or group of columns that uniquely identifies a row. A foreign key is a column or group of columns in one table that identifies a row in a second table.

76 © 2007 Prentice Hall, Inc.76 Summary (Continued) Metadata are data that describe data. A database application system includes the database, the database management system (DBMS), and database applications. The DBMS is a program used to create, process, and administer a database. Structured Query Language (SQL) is an international standard for defining and processing database data. A database application consists of forms, reports, queries, and application programs.

77 © 2007 Prentice Hall, Inc.77 Summary (Continued) A data model is a logical representation of a database that describes data and relationships. An entity is something that users want to track. Entities have relationships to one another. Database design is the process of converting a data model into tables, relationships, and data construction. Normalization is the process of converting poorly structured tables into tables that are well structured.

78 © 2007 Prentice Hall, Inc.78 Key Terms and Concepts Access Attribute Byte Column Crow’s foot Crow’s-foot diagram version Data integrity problem Data model Database Database administration Database application system Database management system (DBMS) DBA DB2 Enterprise DBMS Entity Entity-relationship (E-R) data model Entity-relationship (E-R) diagram Field File Firewall

79 © 2007 Prentice Hall, Inc.79 Key Terms and Concepts (Continued) Foreign key Form Identifier Key Lost-update problem Maximum cardinality Metadata Minimum cardinality Multi-user processing MySQL Object-relational database 1:N(one-to-many) relationship N:M (many-to-many) relationship Normal forms Normalization Oracle Query Personal DBMS Record Relation Relational database Relationship Report

80 © 2007 Prentice Hall, Inc.80 Key Terms and Concepts (Continued) Row SQL Server Structured Query Language (SQL) Table Unified Modeling Language (UML) User account User role

81 © 2007 Prentice Hall, Inc.81 Ethics Guide–Nobody Said I Shouldn’t Kelly make a backup copy of his company’s database on CD and took it home and installed it on his home computer. While performing queries on the database, he found customer order information and focused in on his friend Jason’s customer order entries.

82 © 2007 Prentice Hall, Inc.82 Kelly noticed that Jason gave huge discounts to Valley Appliances but not to his other customers. At an after work gathering, Kelly asked Jason about the Valley Appliances discount telling him what he had been doing. When Kelly returned to work, he was fired. Ethics Guide–Nobody Said I Shouldn’t (Continued)

83 © 2007 Prentice Hall, Inc.83 Security Guide–Database Security The firewall, a computing device located between a firm’s internal network and external networks, prevents unauthorized access to the internal network. For the best security, the DBMS computer should be protected by a firewall, and then all other security measures should be designed as if the firewall has been breached.

84 © 2007 Prentice Hall, Inc.84 Security Guide–Database Security (Continued) All operating systems and DBMS patches should be installed as soon as they become available. To prevent unauthorized access, no one other than authorized operations personnel should be able to directly access the computer that runs the DBMS. Instead, all access should be via authorized applications programs The computer running the DBMS should be secured behind locked doors, and visits to that room should be recorded in a log.

85 © 2007 Prentice Hall, Inc.85 Security Guide–Database Security (Continued) All major DBMS products have extensive, built-in security features. These features allow for the definition of user accounts and user roles. Each user account belongs to a specific person. A role is a generic employee function, such as payroll clerk or field salesperson. Once an account is defined, it can be assigned specific permissions, and it can also be assigned particular roles. Most DBMS products log failed attempts to sign on and produce other usage reports as well.

86 © 2007 Prentice Hall, Inc.86 Security Guide–Database Security (Continued) The database administrator (DBA) should periodically monitor such logs and reports for suspicious activity. It is important to have a plan of action for security emergencies. The steps to be taken vary from database to database.

87 © 2007 Prentice Hall, Inc.87 Problem Solving Guide–Immanuel Kant, Data Modeler Only the users can say whether a data model accurately reflects their business environment. What happens when the user’s disagree among themselves? It’s tempting to say, “The correct model is the one that better represents the real world.” The problem with this statement is that data models do not model “the real world.” A data model is simply a model of what the data modeler perceives.

88 © 2007 Prentice Hall, Inc.88 Problem Solving Guide–Immanuel Kant, Data Modeler (Continued) What happens when the user’s disagree among themselves? (continued) This very important point can be difficult to understand; but if you understand it, you will save many hours in data modeling validation meetings and be a much better data modeling member. Nothing that humans can do represent the real world. A data model, therefore, is a model of a human’s model of what appears to be “out there.” For example, a model of a salesperson is a model of the model that humans make of salespeople.

89 © 2007 Prentice Hall, Inc.89 Problem Solving Guide–Immanuel Kant, Data Modeler (Continued) What do we do when people disagree about what should be in a data model? First, we realize that anyone attempting to justify her data model as a better representation of the real world is saying, quite arrogantly, “The way I think of the world is the way that counts.” Second, in times of disagreement we must ask the question, “How well does the data model fit the mental models of the people who are going to use the system?” The only valid point is whether it reflects how the users view their world. Will it enable the users to do their jobs?

90 © 2007 Prentice Hall, Inc.90 Opposing Forces Guide–No, Thanks, I’ll Use a Spreadsheet I’m not buying all this stuff about databases. “I’ve tried them and they’re a pain-way too complicated to set up, and most of the time, a spreadsheet works just as well.” “No, unless you are a General Motors or Toyota, I wouldn’t mess with a database.” “You have to have professional IS people to create it and keep it running.” “Besides, I don’t really want to share my data with anyone.” “I work pretty hard to develop my client list.” “Why would I want to give it away?”

91 © 2007 Prentice Hall, Inc.91 Opposing Forces Guide–No, Thanks, I’ll Use a Spreadsheet (Continued) I’m not buying all this stuff about databases (continued) “When I want something, I use Excel’s Data Filter.” “I can usually get what I need.” “Of course, I can’t still send form letters, but it really doesn’t matter.” “I get most of my sales using the phone, anyway.”

92 © 2007 Prentice Hall, Inc.92 Reflection Guide–Requirements Creep Changing requirements is the biggest challenge for creating and managing databases and database applications. The development team just finishes the order entry database and applications when a user asks, innocently enough, “Where do I enter the second salesperson?” The development team responds “This is the first time I’ve heard of it. Why didn’t someone tell me this before?” Of course, the best way to solve this problem is not to have it in the first place; it would be better to learn of the need for multiple salesperson’s names long before the system is created.

93 © 2007 Prentice Hall, Inc.93 Reflection Guide–Requirements Creep (Continued) It is very important for user involvement in both requirements specification and data model validation. Unfortunately, however, not all change requests are preventable. Some occur only after a period of system use. An information system enables its users to behave in new ways, and as they behave in new ways, they think of new requirements for the system.

94 © 2007 Prentice Hall, Inc.94 Reflection Guide–Requirements Creep (Continued) As the system is adapted to add new features, the users again will be able to behave in new ways, and they will then think of yet additional features and functions. The bottom line is there will always be new requirements for an information system. The users and the development team must specify all the requirements that they know about and validate the data model as best they can.


Download ppt "© 2007 Prentice Hall, Inc.1 Using Management Information Systems David Kroenke Database Processing Chapter 4."

Similar presentations


Ads by Google