Chapter 10. Database System Development Lifecycle

Similar documents
Database Analysis and Design

Database Environment. Pearson Education 2009

Chapter 8. Database Design. Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 9 Database Design

FIT1004 Database Topic 2: Database Design Life Cycle

SOLUTIONS TO REVIEW QUESTIONS AND EXERCISES FOR PART 3 - DATABASE ANALYSIS AND DESIGN (CHAPTERS 10 15)

Database system development lifecycles

Systems Development Life Cycle SDLC Planning Analysis Detailed systems design Implementation Maintenance 7 8 SDLC - Planning SDLC - Analysis Planning

Database Design Process

Practical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems

TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE

Introduction to Databases

OBJECTIVES DEFINITIONS CHAPTER 1: THE DATABASE ENVIRONMENT AND DEVELOPMENT PROCESS. Figure 1-1a Data in context

Archives in a Networked Information Society: The Problem of Sustainability in the Digital Information Environment

2. An implementation-ready data model needn't necessarily contain enforceable rules to guarantee the integrity of the data.

Introduction to Database Concepts. Department of Computer Science Northern Illinois University January 2018

Database Management Systems MIT Lesson 01 - Introduction By S. Sabraz Nawaz

Lecture2: Database Environment

CHAPTER 2: DATA MODELS

QM Chapter 1 Database Fundamentals Version 10 th Ed. Prepared by Dr Kamel Rouibah / Dept QM & IS

normalization are being violated o Apply the rule of Third Normal Form to resolve a violation in the model

CHAPTER 2: DATA MODELS

Modeling Databases Using UML

SOFTWARE ENGINEERING : A MCQ BOOK CODE : RBMCQ0602. Second Edition

Chapter 2: The Database Development Process

Database Management Systems MIT Introduction By S. Sabraz Nawaz

MIT Database Management Systems Lesson 01: Introduction

Information Technology Engineers Examination. Database Specialist Examination. (Level 4) Syllabus. Details of Knowledge and Skills Required for

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1

8) A top-to-bottom relationship among the items in a database is established by a

Lecture 02. Fall 2017 Borough of Manhattan Community College

Chapter 1: The Database Environment

Database Management System. Fundamental Database Concepts

DBMS and its Architecture

DATABASE SYSTEMS CHAPTER 2 DATA MODELS 1 DESIGN IMPLEMENTATION AND MANAGEMENT INTERNATIONAL EDITION ROB CORONEL CROCKETT

Fundamentals of Information Systems, Seventh Edition

HCI in the software process

HCI in the software. chapter 6. HCI in the software process. The waterfall model. the software lifecycle

Top 88 Question Asked in Part I of MIS 150 EXAM #1 (Chapter 1-4, Appendix C) Exams questions gathered from old tests dating back to Fall 2000

Data about data is database Select correct option: True False Partially True None of the Above

Human Computer Interaction Lecture 14. HCI in Software Process. HCI in the software process

4/28/2014. File-based Systems. Arose because: Result

The LUCID Design Framework (Logical User Centered Interaction Design)

1. Data Model, Categories, Schemas and Instances. Outline

Database Systems Overview. Truong Tuan Anh CSE-HCMUT

Human Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process

DATABASE MANAGEMENT SYSTEM ARCHITECTURE

Review for Exam 1 CS474 (Norton)

UNIT I. Introduction

DB Basic Concepts. Rab Nawaz Jadoon DCS. Assistant Professor. Department of Computer Science. COMSATS IIT, Abbottabad Pakistan

LESSONS LEARNED FROM THE INDIANA UNIVERSITY ELECTRONIC RECORDS PROJECT. How to Implement an Electronic Records Strategy

Database Design. IIO30100 Tietokantojen suunnittelu. Michal Zabovsky. Presentation overview

Fundamentals of STEP Implementation

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten

DATABASE MANAGEMENT SYSTEMS

Overview. What is system analysis and design? Tools and models Methodologies

Level 4 Diploma in Computing

Fundamentals of Design, Implementation, and Management Tenth Edition

Quality Software Requirements By J. Chris Gibson


Unit 1 Research Project. Eddie S. Jackson. Kaplan University. IT525: Database Design and Data Modeling

*ANSWERS * **********************************

System Development Life Cycle Methods/Approaches/Models

Ch 1: The Architecture Business Cycle

Architectural Blueprint

Database Systems: Learning Outcomes. Examples of Database Application. Introduction

CS317 File and Database Systems

Chapter. Chapter Objectives

CHAPTER 6 DATABASE MANAGEMENT SYSTEMS

Layers. External Level Conceptual Level Internal Level

Chapter 1 Chapter-1

CSE 3241: Database Systems I Databases Introduction (Ch. 1-2) Jeremy Morris

Data Warehousing. Seminar report. Submitted in partial fulfillment of the requirement for the award of degree Of Computer Science

5/23/2014. Limitations of File-based Approach. Limitations of File-based Approach CS235/CS334 DATABASE TECHNOLOGY CA 40%

Joint Application Design & Function Point Analysis the Perfect Match By Sherry Ferrell & Roger Heller

1997 Minna Laws Chap. February 1, The Honorable Jesse Ventura Governor 130 State Capitol Building

COWLEY COLLEGE & Area Vocational Technical School

DATABASE MANAGEMENT SYSTEM COURSE CONTENT

DATABASE MANAGEMENT SYSTEMS. UNIT I Introduction to Database Systems

Systems Analysis and Design in a Changing World, Fourth Edition

SQL. History. From Wikipedia, the free encyclopedia.

Systems Analysis & Design

Data Models: The Center of the Business Information Systems Universe

Web CRM Project. Logical Data Model

1 Overview of Database Management

Databases and Database Systems

Data. Entities. Accounting Information Systems. Chapter 4: Data Management

Lecture 01. Fall 2018 Borough of Manhattan Community College

Data Modeling using ER Model

Quick Facts about the course. CS 2550 / Spring 2006 Principles of Database Systems. Administrative. What is a Database Management System?

Organizing Database Project Work. (Chapter 4)

Organizing Database Project Work

Business Analysis for Practitioners - Requirements Elicitation and Analysis (Domain 3)

SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION

Data Modeling - Conceive, Collaborate, Create. Introduction: The early conceptual beginnings of data modeling trace back to the origins

Software Development Methodologies

Creo Elements/Pro Advanced XE

OBJECTIVES. How to derive a set of relations from a conceptual data model. How to validate these relations using the technique of normalization.

What is a prototype?

COMP3311 Database Systems

Transcription:

Chapter 10 Database System Development Lifecycle

Chapter 10 - Objectives Main components of an information system. Main stages of database system development lifecycle. Main phases of database design: conceptual, logical, and physical design. Benefits of CASE tools. 2

Chapter 10- Objectives How to evaluate and select a DBMS. Distinction between data administration and database administration. Purpose and tasks associated with data administration and database administration. 3 2

Software Depression Last few decades have seen proliferation of software applications, many requiring constant maintenance involving: correcting faults, implementing new user requirements, modifying software to run on new or upgraded platforms. Effort spent on maintenance began to absorb resources at an alarming rate. 4

Software Depression As a result, many major software projects were late, over budget, unreliable, difficult to maintain, performed poorly. In late 1960s, led to software crisis, now refer to as the software depression. 5

Software Depression Major reasons for failure of software projects includes: - lack of a complete requirements specification; - lack of appropriate development methodology; - poor decomposition of design into manageable components. Structured approach to development was proposed called Information Systems Lifecycle (ISLC) / Software Development Lifecycle (SDLC) Develop database system Database System Lifecycle (DBLC) 6

Information Systems Lifecycle: Information System Resources that enable collection, management, control, and dissemination of information throughout an organization. Computer-based information system includes Database, database software, application software, computer hardware and people/personnel. Database is fundamental component of IS, and its development/usage should be viewed from perspective of the wider requirements of the organization. Lifecycle of an organization s IS lifecycle of the database system 7

Database System Development Lifecycle Database planning System definition Requirements collection and analysis Database design DBMS selection (optional) 8

Database System Development Lifecycle Application design Prototyping (optional) Implementation Data conversion and loading Testing Operational maintenance 9

Stages of the Database System Development Lifecycle 10

Database Planning Management activities that allow stages of database system development lifecycle to be realized as efficiently and effectively as possible. Must be integrated with overall IS strategy of the organization. 11

Database Planning THREE main issues involved in formulating an IS strategy: Identification of enterprise plans and goals & determine IS needs Evaluation of current IS IT opportunities that might yield competitive advantage. Steps: Define the Mission Statement Identifying the Mission Objectives 12

Database Planning Mission Statement Mission statement for the database project defines major aims of database application. Those driving database project normally define the mission statement. Mission statement helps clarify purpose of the database project and provides clearer path towards the efficient and effective creation of required database system. 13

Database Planning Mission Objectives Once mission statement is defined, mission objectives are defined. Each objective should identify a particular task that the database must support. May be accompanied by some additional information that specifies the work to be done, the resources with which to do it, and the money to pay for it all. 14

Database Planning Mission Statement & Objectives EXAMPLE: ShowInfo Mission Statement The purpose of ShowInfo is to maintain show information, allow users to indicate their presence at a show and view those attending, and to facitilitate sharing of concert experiences after the show. ShowInfo Mission Objectives ShowInfo must maintain data pertinent to attending concerts. ShowInfo must allow users to indicate shows that they will/might attend, as well as shows that they have attended in the past. ShowInfo must allow users to maintain setl ist and concert photo data. ShowInfo must create reports of future shows. ShowInfo must archive data about previous shows. 15

Database Planning Database planning should also include development of standards that govern: how data will be collected, how the format should be specified, what necessary documentation will be needed, how design and implementation should proceed. 16

System Definition Describes scope and boundaries of database system and the major user views. Included within the scope and boundary of the database system are the major user views that are to be supported by the database 17

System Definition: User Views Defines what is required of a database system from perspective of: a particular job role (such as Manager or Supervisor) or enterprise application area (such as marketing, personnel, or stock control). 18

System Definition: User Views Database application may have one or more user views. Identifying user views helps ensure that no major users of the database are forgotten when developing requirements for new system. User views also help in development of complex database system allowing requirements to be broken down into manageable pieces. 19

System Definition: User Views Defines what is required of a database system Data to be held Transactions to be performed on the data Requirements of a user view Distinct to that view Overlap with other views 20

Representation of a Database System with Multiple User Views 21

Requirements Collection and Analysis Process of collecting and analyzing information about the part of organization to be supported by the database system, and using this information to identify users requirements of new system. Involves the collection and analysis of information part of enterprise to be served by the database 22

Requirements Collection and Analysis Information is gathered for each major user view including: a description of data used or generated; details of how data is to be used/generated; any additional requirements for new database system. Information is analyzed to identify requirements to be included in new database system. Described in the requirements specification. (documents) Preliminary stage to database design 23

Requirements Collection and Analysis Amount of data gathered: Nature of the problem Policies of the enterprise Information collected convert to more structured statement of requirements Use: Requirements Specification Techniques Structured Analysis and Design (SAD) Data Flow Diagram (DFD) Hierarchical Input Process Output (HIPO) 24

Requirements Collection and Analysis Another important activity is deciding how to manage the requirements for a database system with multiple user views. Three main approaches: centralized approach; view integration approach; combination of both approaches. 25

Requirements Collection and Analysis: Multiple User Views Centralized/One-Shot approach Requirements for each user view are merged into a single set of requirements. A data model is created representing all user views during the database design stage. Preferred when there is significant overlap in requirements for each user view 26

Centralized Approach to Managing Multiple User Views 27

Requirements Collection and Analysis: Multiple User Views View integration approach Requirements for each user view remain as separate lists. Data models representing each user view are created and then merged later during the database design stage. 28

Requirements Collection and Analysis: Multiple User Views Data model representing single user view (or a subset of all user views) is called a local data model. Each model includes diagrams and documentation describing requirements for one or more but not all user views of database. 29

Requirements Collection and Analysis: Multiple User Views Local data models are then merged at a later stage during database design to produce a global data model, which represents all user views for the database. Preferred: significant differences between user views 30

View Integration Approach to Managing Multiple User Views 31

Requirements Collection and Analysis: Multiple User Views Combination: Use both centralized & view integration approaches Example:» Requirements for two or more user views: merged using centralized approach local logical data model» The local logical data model merged with other model using view integration approach global logical data model 32

Database Design Process of creating a design for a database that will support the enterprise s mission statement and mission objectives for the required database system. 33

Database Design: Approaches Main approaches include: Top-down Bottom-up Inside-out Mixed 34

Database Design Top-down Suitable for complex databases Starts with development of data models ER model Identify entities relationship attributes 35

Database Design Bottom-up Begins at the fundamental level of attributes Associations between attributes are grouped into relations that represent types of entities and relationship between entities Appropriate for simple databases with small number of attributes 36

Database Design Inside-out Related to bottom-up Identify major entities consider other entities, r/ships & attributes Mixed Uses both bottom-up & top-down approach for various parts of the model Final combine all parts 37

Database Design: Data Modeling Main purposes of data modeling include: to assist in understanding the meaning (semantics) of the data; to facilitate communication about the information requirements. Building data model requires answering questions about entities, relationships, and attributes. 38

Database Design A data model ensures we understand: each user s perspective of the data; nature of the data itself, independent of its physical representations use of data across user views. Can be used to convey the designer s understanding of the information requirements of the enterprise Support communication between users and designers ER model 39

Criteria to Produce an Optimal Data Model 40

Database Design Three phases of database design: Conceptual database design Logical database design Physical database design. 41

Conceptual Database Design Process of constructing a model of the data used in an enterprise, independent of all physical considerations. Data model is built using the information in users requirements specification. Throughout the process: model is tested and validated against the user s requirements. Conceptual data model is source of information for logical design phase. 42

Logical Database Design Process of constructing a model of the data used in an enterprise based on a specific data model (e.g. relational), but independent of a particular DBMS and other physical considerations. Conceptual data model is refined and mapped on to a logical data model. Logical data model: based on the target data model for the database (relational data model, object oriented, etc) 43

Logical Database Design Model tested and validated against the user s requirements Normalization: test the correctness of a logical data model Ensures the relations derived from data model do not display data redundancy Model should also be examined to ensure it supports the transactions specified by the users Logical data model: source of information for physical database design 44

Physical Database Design Process of producing a description of the database implementation on secondary storage. Describes base relations, file organizations, and indexes used to achieve efficient access to data. Also describes any associated integrity constraints and security measures. Tailored to a specific DBMS system: First identify the target DBMS 45

Physical Database Design In general: describe HOW we intend to implement the logical database design. For relational model: Create set of relational tables and constraints on these tables from the information presented in logical data model Identify specific storage structures and access methods for the data to achieve optimum performance for the database system Design security protection 46

Three-Level ANSI-SPARC Architecture and Phases of Database Design 47

DBMS Selection Selection of an appropriate DBMS to support the database system. Undertaken at any time prior to logical design provided sufficient information is available regarding system requirements. Select a system that meets the current and future requirements of the enterprise, balance against costs. 48

DBMS Selection Main steps to selecting a DBMS: define Terms of Reference of study» State the objectives and scope of the study and tasks need to be undertaken» Description of the criteria to be used to evaluate the DBMS» Preliminary list of possible products» Constraints & timescales for the study shortlist two or three products evaluate products recommend selection and produce report 49

DBMS Evaluation Features 50

DBMS Evaluation Features 51

Example - Evaluation of DBMS Product 52

Application Design Design of user interface and application programs that use and process the database. Database design and application design are parallel activities. Includes two important activities: transaction design; user interface design. 53

Application Design - Transactions An action, or series of actions, carried out by a single user or application program, which accesses or changes content of the database. Should define and document the high-level characteristics of the transactions required. 54

Application Design - Transactions Important characteristics of transactions: data to be used by the transaction; functional characteristics of the transaction; output of the transaction; importance to the users; expected rate of usage. Three main types of transactions: retrieval, update, and mixed. 55

Prototyping Building working model of a database system. Purpose to identify features of a system that work well, or are inadequate to suggest improvements or even new features to clarify the users requirements to evaluate feasibility of a particular system design. 56

Prototyping Requirements prototyping Use prototype to determine requirements Requirements complete prototype discarded Evolutionary prototyping Same purpose Prototype not discarded further development becomes working database system 57

Implementation Physical realization of the database and application designs. Use DDL to create database schemas and empty database files. Use DDL to create any specified user views. Use 3GL or 4GL to create the application programs. This will include the database transactions implemented using the DML, possibly embedded in a host programming language. 58

Data Conversion and Loading Transferring any existing data into new database and converting any existing applications to run on new database. Only required when new database system is replacing an old system. DBMS normally has utility that loads existing files into new database. May be possible to convert and use application programs from old system for use by new system. 59

Testing Process of running the database system with the intent of finding errors. Use carefully planned test strategies and realistic data. Testing cannot show absence of faults; it can show only that software faults are present. Demonstrates that database and application programs appear to be working according to requirements. 60

Testing Should also test usability of system. Evaluation conducted against a usability specification. Examples of criteria include: Learnability how long does it take a new user to become productive with the system? Performance How well does the system response match the user s work practice? Robustness How tolerant is the system of user error? 61

Testing Recoverability How good is the system at recovering from user errors? Adaptability How closely is the system tied to a single model of work? 62

Operational Maintenance Process of monitoring and maintaining database system following installation. Monitoring performance of system. if performance falls, may require tuning or reorganization of the database. Maintaining and upgrading database application (when required). Incorporating new requirements into database application. 63

CASE (Computer Aided Software Engineering) Tools Support provided by CASE tools include: - data dictionary to store information about database system s data; - design tools to support data analysis; - tools to permit development of corporate data model, and conceptual and logical data models; - tools to enable prototyping of applications. 64

CASE Tools Provide following benefits: Standards - enforce standards Integration store all information generated in repository; possible to store all data stages of DBLC Support for standard methods simplify the process of structured techniques documentation correct, more current Consistency all information in the data dictionary interrelated CASE tools can check its consistency Automation - automatically transform parts of a design spec into executable codes 65

CASE Tools and Database System Development Lifecycle 66

Data Administration and Database Administration The Data Administrator (DA) and Database Administrator (DBA) are responsible for managing and controlling the corporate data and corporate database, respectively. DA is more concerned with early stages of database system development lifecycle and DBA is more concerned with later stages. 67

Data Administration Management of data resource including: database planning, development and maintenance of standards, policies and procedures, and conceptual and logical database design. 68

Database Administration Management of physical realization of a database system including: physical database design and implementation, setting security and integrity controls, monitoring system performance, and reorganizing the database. 69