Database Development Strategies


Published on

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Database Development Strategies

  1. 1. CHAPTER 2: INTRODUCTION TO DATABASEDEVELOPMENT STRATEGIESChapter Objectives At the end of the chapter, you should be able to :  understand DBMS architecture and data independence;  describe the database development process.Essential Reading Fundamentals of Database Systems, Ramez Elmasri & Shamkant B. Narathe (1989), Benjamin/Cummings. [Chapter 2] Modem Database Management (4th Edition), Fred R. Mcfadden & Jeffrey A. Hoffer (1994), Benjamin/Cummings. [Chapter 3, page 73 - 97]Useful Websites to learn Database and Programming: Erwin M. Globio, MSIT 2-1
  2. 2. DB212 CHAPTER 2: INTRODUCTION TO DATABASE DEVELPOMENT STRATEGIES2.1 DBMS Architecture Three important characteristics of the database approach are :  program-data independence,  support of multiple user views, and  use of a catalogue to store the database description (schema). 2.1.1 The Three-Schema Architecture The goal of the three-schema architecture is to separate the user applications and the physical database. In this architecture, schemas can be defined at the following three levels:  The internal level has an internal schema, which describe the physical storage structure if the database. The internal schema uses a physical data model and describe the complete details of data storage and access paths for the database.  The conceptual level has a conceptual schema, which describe the structure of the whole database for a community of users. The conceptual schema is a global description of the database that hides the details of physical storage structures and concentrates on describing entities, data types, relationships and constraints.  The external or view level includes a number of external schemas or user views. Each external schema describes the database view of one group of database users. Each view typically describes the database view of one group of database users group is interested in and hides the rest of the database from that user group. Most DBMS do not separate the three levels completely. For example, many DBMS will include some physical level details in the conceptual schema. However, other DBMS fit in the general framework of the three-schema architecture. In most DBMSs that support user views, external schemas are specified in same data model at the conceptual level.2-2 Prof. Erwin M. Globio, MSIT
  3. 3. DB212 CHAPTER 2: INTRODUCTION TO DATABASE DEVELPOMENT STRATEGIES EXTERNAL END USERS LEVEL EXTERNAL/ CONCEPTUAL MAPPING EXTERNAL VIEW EXTERNAL VIEW CONCEPTUAL CONCEPTUAL SHEMA LEVEL EXTERNAL/CONCEPTUAL MAPPING INTERNAL LEVEL CONCEPTUAL SCHEMA STORED DATABASE Figure 2-1: The three-schema architecture Notice that the three schemas are only descriptions of data; the only data that actually exists is at the physical level. Each user group refers only to its own external schema. Therefore, the DBMS must transform specified on an external schema for processing on the stored database. If the request is a database retrieval, the database extracted from the stored database must be reformatted to match the users external view before it is presented to the user. The process of transforming requests and results between levels are called mapping. 2.1.2 Data Independence The three-schema architecture can be used to explain the concept of data independence, which can be defined as the capacity to change the schema at one level of a database system without having to change the schema at the next higher level. There are two types of data independence :  Logical data independence is the capacity to change the conceptual schema without having to change external schemas or application programs. For example, we may change the conceptual schema to expand the database by removing a record type or data item. In this case, the external schemas that refer only to the remaining data should not be affected. Only the view definitions and the mapping need to be changed in a DBMS that supports logical data independence.Prof. Erwin M. Globio, MSIT 2-3
  4. 4. DB212 CHAPTER 2: INTRODUCTION TO DATABASE DEVELPOMENT STRATEGIES Physical data independence is the capacity to change the internal schema without having to change the conceptual (or external) schemas. Changes to the internal schema may be needed because some physical files are reorganized, for example, when create additional access structures to improve the performance of retrieval or update. In this case, if the same data as before remains in the database, we should not have to change the conceptual schema. The table, as shown below, lists typical changes that can be made for each type of independence without altering application programs. Although database management systems differ in the amount and level of data independence they provide, only the relational data model provides most of the types of data independence shown in the table. Level of data independence Examples of changes Logical Data item format Data item, type, length, or representation Data item usage How a data item is derived, used, edited, or Logical record structure protected Logical data structure How data items are group into logical records Overall logical structure or conceptual model Physical Physical data organization How the data are organized into stored records Access method What search techniques and access strategies are used Physical data location Where data are located on storage devices Storage device Characteristics of the physical storage devices used The mapping information is stored in the repository. The DBMS refers to this mapping information to accomplish mapping between inter-levels. Data independence is accomplished because when we changed the schema at some level, we can leave the schema at the next higher level unchanged and change only the mapping between the two levels. Application programs referring to the higher-level schema need not to be changed.2-4 Prof. Erwin M. Globio, MSIT
  5. 5. DB212 CHAPTER 2: INTRODUCTION TO DATABASE DEVELPOMENT STRATEGIES2.2 Database Development Process PLANNING ENTERPRISE DATA MODEL ANALYSIS CONCEPTUAL DATA MODEL LOGICAL DATABASE DESIGN LOGICAL DATA MODEL PHYSICAL DATABASE DESIGN PHYSICAL DATA MODEL IMPLEMENTATION DATABASE REPOSITORIES Figure 2.2: Summary of the database development process 2.2.1 Planning The goal of the planning phase is to align information technology with the business strategies of an organisation. Organisations can achieve a competitive advantage when they are able to develop sound information systems plans. Also, critical success factors and problems areas have to be identified too. At the end of planning phase, an enterprise model is developed. This enterprise model consists of the following :  breaking the functions of an organization down into progressively lower levels of details;  identifying the entity types and the relationship between them (a draft overall E-R diagram).Prof. Erwin M. Globio, MSIT 2-5
  6. 6. DB212 CHAPTER 2: INTRODUCTION TO DATABASE DEVELPOMENT STRATEGIES 2.2.2 Analysis The purpose of this phase is to develop detailed specifications for the information systems required to support the organisation. Analysis covers the following :  study of the current business situation;  determination of the new system requirements. At the end of this phase, a conceptual data model (a detailed E-R data model) will be built. This conceptual data model includes the relevant entities, relationships and attributes as well as the business rules and constraints that define how the data are used. 2.2.3 Design The purpose of this stage is to transform the conceptual data model to an implementation model that a particular DBMS can process with performance that is acceptable to all users throughout the organisation. This database design includes logical database design and physical database design. Logical database design is the process of mapping conceptual data model to structures that are specific to the target DBMS. For example, if the target environment is a relational DBMS, then the conceptual data models (E-R data model) are mapped to normalised relations. (This will be discussed in the later chapters.) Physical database design is the process of mapping the database structures from logical design into physical storage structures such as files and tables. Indexes, access methods are also specified. The objectives of this physical design are to provide adequate performances for user applications in terms of response times, throughout rates etc. 2.2.4 Implementation Implementation involves a series of steps leading to operational information systems that includes creating database definitions, creating program code, testing the systems, developing operational procedures and documentation, training and loading the databases.2-6 Prof. Erwin M. Globio, MSIT
  7. 7. DB212 CHAPTER 2: INTRODUCTION TO DATABASE DEVELPOMENT STRATEGIES2.3 Review Questions 1. Give the definitions for the following terms: a.external b. conceptual schema c.internal schema d. external-conceptual mapping 2. Explain what is data dependency. 3. What is the difference between logical data independence and physical data independence? Which is easier to accomplish? (Justify your answers.) 4. Discuss briefly what are the output of each database development phase.Prof. Erwin M. Globio, MSIT 2-7