LESSON 2: A REVIEW ON THE DATABASE ENVIRONMENT AND DEVELOPMENT PROCESS Source: Modern Database Management, 12th Edition Author: Jeff Hoffer, Ramesh Venkataraman, and Heikki Topi Copyright © 2016 Pearson Education, Inc. LEARNING OBJECTIVES After studying this chapter, you should be able to Concisely define each of the following key terms: data, database, database management system, data model, information, metadata enterprise data model, entity, relational database, enterprise resource planning (ERP) system, database application, data warehouse, data independence, repository, user view, enterprise data modeling , systems development life cycle (SDLC), prototyping, agile software development, data modeling and design tools, conceptual schema, logical schema, and physical schema. Name several limitations of conventional file processing systems Explain at least 10 advantages of the database approach, compared to traditional file processing. Identify several costs and risks of the database approach. List and briefly describe nine components of a typical database environment. Identify four categories of applications that use databases and their key characteristics. Describe the life cycle of a systems development project, with an emphasis on the purpose of database analysis, design, and implementation activities. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-2 LEARNING OBJECTIVES Explain the prototyping and agiledevelopment approaches to database and application development. Explain the roles of individual who design, implement, use and administer databases. Explain the differences among external, conceptual, and internal schemas and the reasons for the three-schema architecture for databases. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-3 BASIC CONCEPTS AND DEFINITIONS Data - are facts concerning objects and events that could be recorded and stored on computer media. Types: Structured: numeric, alphabetic (text), alphanumeric that can normally be stored in tabular form. Example: student name, age, birthdate, address Unstructured: multimedia data like images, videos, documents, sounds, etc. Information - data that has been processed in such a way that it can increase the knowledge of the person who uses it. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-4 DATA VS INFORMATION The terms data and information are closely related, and in fact are often used interchangeably. Information is data that is organized and meaningful. Data without context is useless Data is not exactly information but data is a very powerful asset Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-5 DATA VS INFORMATION Data+Interpretation --> Information/Knowledge Example: Clark C. Lewis Joan E. Doyle Kenneth D. Baker Clive R. Finkle Chapter 1 1998-01023 1999-67890 2001-12345 2000-00001 Copyright © 2016 Pearson Education, Inc. 1-6 CONVERTING DATA TO INFORMATION (by Context) Figure 1-1a Data in context Context helps users understand data Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-7 Figure 1-1b Summarized data Graphical displays turn data into useful information that managers can use for decision making and interpretation Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-8 Metadata - data that describes the properties or characteristics of end-user data and the context of those data - also defined as “data about a data” Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-9 Descriptions of the properties or characteristics of the data, including data types, field sizes, allowable values, and data context Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-10 PROGRAMS VS SYSTEMS Program - a set of step-by-step instructions that directs a computer to perform specific tasks and produce certain results. Examples: computation of taxes, computation of deductions, MS Excel, MS Word, etc. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-11 System - an organized set of related components established to perform a certain task. Example: Payroll System MS Office System Inventory System HRIS Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-12 Database – is a collection of logically related data designed to meet the information needs of multiple users in an organization. A database may be of any size and complexity. For example, a salesperson may maintain a small database of customer contacts—consisting of a few megabytes of data—on her laptop computer. A large corporation may build a large database consisting of several terabytes of data on a large mainframe computer that is used for decision support applications . Very large data warehouses contain more than a petabyte of data. • • a terabyte is a trillion bytes a petabyte is a quadrillion bytes Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-13 EVOLUTION OF DATABASE SYSTEMS 1960s - Traditional File Processing Systems 1970s - Hierarchical and Network 1980s – Relational Models 1990s - Object-Oriented Databases and Object-Relational Databases 2000+- Relational and Non-relational Databases; NoSQL; cloud databases Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-14 FILE SYSTEMS: THE TRADITIONAL APPROACH This approach to information systems design met the data processing needs of individual departments rather than the overall information needs of the organization. Each department has its own set of files * A file is a collection of related records. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-15 DISADVANTAGES OF FILE PROCESSING Program-Data Dependence Duplication of Data No centralized control of data users have little opportunity to share data outside their own applications. Lengthy Development Times Different systems/programs have separate copies of the same data Limited Data Sharing All programs maintain metadata for each file they use Programmers must design their own file formats Excessive Program Maintenance 80% of information systems budget the data descriptions and the logic for accessing data are built into individual application programs (this is the program-data dependence issue described earlier). As a result, changes to data formats and access methods inevitably result in the need to modify application programs. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-16 Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-17 Duplicate Data Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-18 SOLUTION: THE DATABASE APPROACH Central repository of shared data (Single database) Data is managed by a controlling agent Coordinated access through a DBMS - requires a Database Management System Stored in a standardized, convenient form Uses data models Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-19 DATA MODELS - are graphical systems used to capture the nature and relationships among data. - used at different levels of abstraction as a database is conceptualized and designed. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-20 DATABASE MANAGEMENT SYSTEM (DBMS) A Database Management Systems (DBMS) is a program or a set of programs designed to: manage data resources and control access to the database It is a computerized system whose overall purpose is to store and update information, and to allow users to access, enforce data integrity, manage concurrency control, and restore a database. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-21 DBMS is a software system that enables the use of a database approach It enables end users and application programmers to share data It enables data to be shared among multiple applications rather than propagated and stored in new files for every new application (Mullins, 2002). A DBMS also provides facilities for controlling data Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-22 DBMS Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-23 DATABASE MANAGEMENT SYSTEM Order Filing System Invoicing System DBMS Central database Contains employee, order, inventory, pricing, and customer data Payroll System DBMS manages data resources like an operating system manages hardware resources Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-24 ADVANTAGES OF THE DATABASE APPROACH Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-25 ADVANTAGES OF THE DATABASE APPROACH 1. Program-data independence The separation of data descriptions (metadata) from the application programs that use the data is called data independence. With the database approach, data descriptions are stored in a central location called the repository. This property of database systems allows an organization’s data to change and evolve (within limits) without changing the application programs that process the data. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-26 2. Planned data redundancy Good database design attempts to integrate previously separate (and redundant) data files into a single, logical structure. Ideally, each primary fact is recorded in only one place in the database.. The database approach does not eliminate redundancy entirely, but it enables the designer to control the type and amount of redundancy. we avoid the wasted storage space that result from redundant data storage. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-27 3. Improved Data Consistency By eliminating or controlling data redundancy, we greatly reduce the opportunities for inconsistency. 4. Improved Data Sharing 5. Enforcement of Standards These standards will include naming conventions, data quality standards, and uniform procedures for accessing, updating, and protecting data. The data repository provides database administrators with a powerful set of tools for developing and enforcing these standards. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-28 6. Improved Data Quality database approach provides a number of tools and processes to improve data quality like specifying integrity constraints and conducting clean up (or scrub) 7. Improved Data Accessibility and Responsiveness With a relational database, end users without programming experience can often retrieve and display data, even when they cross traditional departmental boundaries. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-29 8. Increased Application Development Productivity A major advantage of the database approach is that it greatly reduces the cost and time for developing new business applications. 9. Reduced Program Maintenance Within limits, either the data or the application programs that use the data can be changed without necessitating a change in the other factor. As a result, program maintenance can be significantly reduced in a modern database environment. 10. Improved Decision Support Some databases are designed expressly for decision support applications Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-30 COSTS AND RISKS OF THE DATABASE APPROACH New, specialized personnel Installation and management cost and complexity Conversion costs Need for explicit backup and recovery Organizational conflict Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-31 COMPONENTS OF THE DATABASE ENVIRONMENT Data modeling and design tools -- automated tools used to design databases and application programs Repository–centralized storehouse of metadata Database Management System (DBMS) –software for managing the database Database–storehouse of the data Application Programs–software using the data User Interface–text, graphical displays, menus, etc. for user Data/Database Administrators–personnel responsible for maintaining the database System Developers–personnel responsible for designing databases and software End Users–people who use the applications and databases Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-32 Figure 1-5 Components of the database environment The database operational environment shown below is an integrated system of hardware, software, and people, designed to facilitate the storage, retrieval, and control of the information resource and to improve the productivity of the organization. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-33 THE DATABASE DEVELOPMENT PROCESS Enterprise Data Modeling - The first step in database development, in which the scope and general contents of organizational databases are specified. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-34 SYSTEM DEVELOPMENT LIFE CYCLE The traditional methodology used to develop, maintain, and replace information systems. Are often used to guide the development of information systems and databases. It is a methodical, highly structured approach, which includes many checks and balances to ensure that each step produces accurate results and the new or replacement information system is consistent with existing systems with which it must communicate or for which there needs to be consistent data definitions. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-35 Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-36 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) Planning Analysis Logical Design Physical Design Implementation Maintenance Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-37 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) (CONT.) Purpose–preliminary understanding Deliverable–request for study Planning Planning Analysis Logical Design Physical Design Database activity– enterprise modeling and early conceptual data modeling Chapter 1 Implementation Copyright © 2016 Pearson Education, Inc. Maintenance 1-38 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) (CONT.) Purpose–thorough requirements analysis and structuring Deliverable–functional system specifications Planning Analysis Analysis Logical Design Physical Design Database activity–thorough and integrated conceptual data modeling Chapter 1 Implementation Copyright © 2016 Pearson Education, Inc. Maintenance 1-39 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) (CONT.) Purpose–information requirements elicitation and structure Deliverable–detailed design specifications Planning Analysis Logical Design Logical Design Physical Design Database activity– logical database design (transactions, forms, displays, views, data integrity and security) Chapter 1 Implementation Copyright © 2016 Pearson Education, Inc. Maintenance 1-40 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) (CONT.) Purpose–develop technology and organizational specifications Planning Deliverable–program/data structures, technology purchases, organization redesigns Analysis Logical Design Physical Design Physical Design Database activity– physical database design (define database to DBMS, physical data organization, database processing programs) Chapter 1 Implementation Copyright © 2016 Pearson Education, Inc. Maintenance 1-41 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) (CONT.) Purpose–programming, testing, training, installation, documenting Planning Analysis Deliverable–operational programs, documentation, training materials Logical Design Physical Design Database activity– database implementation, including coded programs, documentation, installation and conversion Chapter 1 Implementation Implementation Copyright © 2016 Pearson Education, Inc. Maintenance 1-42 SYSTEMS DEVELOPMENT LIFE CYCLE (SEE ALSO FIGURE 1-7) (CONT.) Purpose–monitor, repair, enhance Planning Deliverable–periodic audits Analysis Logical Design Physical Design Database activity– database maintenance, performance analysis and tuning, error corrections Chapter 1 Implementation Copyright © 2016 Pearson Education, Inc. Maintenance Maintenance 1-43 ALTERNATIVE INFORMATION SYSTEMS (IS) DEVELOPMENT APPROACH Rapid Application Development (RAD) - An approach used to guide the development of information systems and databases that follow an iterative process of rapidly repeating analysis, design, and implementation steps until they converge on the system the user wants. - These RAD methods work best when most of the necessary database structures already exist Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-44 PROTOTYPING An iterative process of systems development in which requirements are converted to a working system that is continually revised through close work between analysts and users. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-45 Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-46 AGILE SOFTWARE DEVELOPMENT An approach to database and software development that emphasizes individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and response to change over following a plan.” Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-47 PEOPLE INVOLVED IN DATABASE DEVELOPMENT Chapter 1 Business analysts Systems analysts Database analysts and data modelers Users Programmers Database architects Data administrators Project managers Other technical experts Copyright © 2016 Pearson Education, Inc. 1-48 THE RANGE OF DATABASE APPLICATIONS Personal databases Two-tier and N-tier Client/Server databases Enterprise applications Enterprise resource planning (ERP) systems Data warehousing implementations Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-49 PERSONAL DATABASES Designed to support one user. They have long resided on personal computers (PCs), including laptops, and now increasingly reside on smartphones, tablets, phablets, etc. The purpose of these databases is to provide the user with the ability to manage (store, update, delete, and retrieve) small amounts of data in an efficient manner. Are widely used because they can often improve personal productivity but entail a risk: The data cannot easily be shared with other users. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-50 MULTITIER CLIENT/SERVER DATABASES In most organizations, these applications are intended to support a department (such as marketing or accounting) or a division (such as a line of business), which is generally larger than a workgroup (typically between 25 and 100 persons). Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-51 Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-52 ENTERPRISE APPLICATIONS An enterprise application/database is one whose scope is the entire organization or enterprise (or, at least, many different departments). Such databases are intended to support organization-wide operations and decision making. Two Major Developments: 1. Enterprise resource planning (ERP) systems 2. Data warehousing implementations Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-53 ENTERPRISE APPLICATIONS Enterprise Resource Planning (ERP) Systems A business management system that integrates all functions of the enterprise, such as manufacturing, sales, finance, marketing, inventory, accounting, and human resources. ERP systems are software applications that provide the data necessary for the enterprise to examine and manage its activities. Data Warehouse An integrated decision support database whose content is derived from the various operational databases. Fin: activity Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-54 ACTIVITY #01 Read and study the sample case, Developing A Database Application for Pine Valley Furniture Company, found on pages 31-41 of book Modern Database Management, 12th Edition by Jeff Hoffer, Ramesh Venkataraman, and Heikki Topi Take note of the steps taken by the company to successfully achieve their goal. Chapter 1 Copyright © 2016 Pearson Education, Inc. 1-55