DATABASE DEVELOPMENT PROCESS • Information Systems Planning – Information Systems Architecture – Information Engineering Methodology – Information Systems Planning • Database Development Process – Prototyping for DB Development Process – An Example of Prototyping a DB Application – Database and IS Development Process • Three Schema Architecture for DB Development • Three-Tiered Client/Server DB Architecture Information Systems Architecture • Data (Enterprise Data Model – simplified ER Diagram) • Processes, which manipulate data (represented by data flow diagrams, object-models, . . ) • Data Network, which transports data around the organization and . . ) • People • Events and Points in Time , when processes are performed (shown by state-transition diagrams and . .) • Reasons, for events and rules that govern the processing of data . . Information Engineering • A data-oriented methodology to create and maintain information systems • Top-down planning approach • Four steps: – Planning - results in an Information Systems Architecture – Analysis - results in functional specifications…i.e. what we want – Design - results in design specifications…i.e. how we’ll do it – Implementation - results in final operational system Information Systems Planning Align IT with the business strategies • Identify strategic planning factors – Organization goals – Critical success factors – Problem areas • Identify corporate planning objects – Organizational units – Organizational locations – Business functions – Entity types – application systems • Develop enterprise model – Functional decomposition of business functions – Enterprise data model – Planning matrices Example Results in IE Planning Phase • Goals - what we hope to accomplish – – – – Maintain 10% per year growth rate Maintain 15% before-tax return on investment Avoid employee layouts Be a responsible corporate citizen • Critical success factors - what must work in order to survive – High-quality products – On-time deliveries of finished products – High productivity of employees • Problem areas - weaknesses we now have – Inaccurate sales forecasts – Increasing competition – Stockouts of finished products Example of Corporate Planning Objects • Organizational units • Organizational locations • Business functions – – – – Business planning Product development Materials management Marketing and sales • Order fulfillment • Order shipment – Production operations – Finance and accounting • Entity types – Customer, Product, Raw Material, Order, Invoice, Employee, Equipment, Work Center • Information systems – TPS: Order tracking, Order processing, Plant scheduling, Payroll – MIS: Sales management, Inventory control, Production scheduling Example of process decomposition of an order fulfillment function Decomposition -- breaking large tasks into smaller tasks in a hierarchical structure chart Enterprise Data Model • Sets the range and general contents of organizational databases. • Results in a total picture or explanation of organizational data, not in the design for a particular database. • Entity-relationship diagram • Descriptions of entity types • Relationships between entities • Business rules Figure 2-1 Segment from enterprise data model (Pine Valley Furniture Company) Enterprise data model describes the entities in an organization & the relationship between these entities Planning Matrices • • • • • Function to data entity Location to function Unit to function IS application to data entity Supporting function to data entity – which data are captured, used, updated, deleted within each function • IS application to business objective Data Entity Types Business Function Business Planning Product Development Materials Management Order Fulfillment Order Shipment Sales Summarization Production Operations Finance and Accounting Customer Product Raw Material Order Work Center Work Order Invoice Equipment Employee Example function-to-data entry matrix X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Systems Development Life Cycle Project Identification and Selection Project Initiation and Planning Analysis Logical Design Physical Design Implementation Maintenance Systems Development Life Cycle Project Identification and Selection Purpose --preliminary understanding Deliverable –request for project Project Initiation and Planning Analysis Logical Design Physical Design Database activity – enterprise modeling Implementation Maintenance Systems Development Life Cycle Project Identification and Selection Purpose – state business situation and solution Deliverable – request for analysis Project Initiation and Planning Analysis Logical Design Physical Design Database activity – conceptual data modeling Implementation Maintenance Systems Development Life Cycle Project Identification and Selection Purpose –thorough analysis Deliverable – functional system specifications Project Initiation and Planning Analysis Logical Design Physical Design Database activity – conceptual data modeling Implementation Maintenance Systems Development Life Cycle Project Identification and Selection Project Initiation and Planning Purpose –information requirements structure Deliverable – detailed design specifications Analysis Logical Design Physical Design Database activity – logical database design Implementation Maintenance Systems Development Life Cycle Purpose –develop technology specs Deliverable – program/data structures, technology purchases, organization redesigns Project Identification and Selection Project Initiation and Planning Analysis Logical Design Physical Design Database activity – physical database design Implementation Maintenance Systems Development Life Cycle Purpose –programming, testing, training, installation, documenting Deliverable – operational programs, documentation, training materials Project Identification and Selection Project Initiation and Planning Analysis Logical Design Physical Design Database activity – database implementation Implementation Maintenance Systems Development Life Cycle Project Identification and Selection Purpose –monitor, repair, enhance Deliverable – periodic audits Project Initiation and Planning Analysis Logical Design Physical Design Database activity – database maintenance Implementation Maintenance Database development activities during SDLC Enterprise modeling Project Identification and Selection Project Initiation and Planning Conceptual data modeling Analysis Logical db design Logical Design Physical Design Physical db design DB implementation DB maintenance Implementation Maintenance Database development activities: Enterprise Modeling • Analyze current data processing • Analyze the general business functions and their database needs • Justify need for new data and databases in support of business Database development activities: Conceptual Data Modeling • Identify scope of db requirements for proposed IS • Analyze overall data requirements for business functions supported by db • Develop preliminary conceptual data model, including entities and relationships • Compare preliminary conceptual data model with enterprise data model • Develop detailed conceptual data model, including all entities, relationships, attributes, and business rules • Make conceptual data model consistent with other models of IS • Populate repository with all conceptual db specifications Database development activities: Logical Database Design • Analyze in detail the transactions, form, displays, and inquiries (db views) required by the business functions supported by the db • Integrate db views into conceptual data model • Identify data integrity and security requirements, and populate repository Database development activities: Physical Database Design and Creation • Define db to DBMS (often generated from repository) • Decide on physical organization of data • Design db processing programs Database development activities: Database Implementation • Code and test db processing programs • Complete db documentation and training materials • Install db and convert data from prior systems Database development activities: Database Maintenance • Analyze db and db applications to ensure that evolving information requirements are met • Tune db for improved performance • Fix errors in db and db applications and recover db when it is contaminated Figure 2-6 The prototyping methodology and database development process Figure 2-6 The prototyping methodology and database development process Figure 2-6 The prototyping methodology and database development process Figure 2-6 The prototyping methodology and database development process Figure 2-6 The prototyping methodology and database development process The prototyping methodology and database development process Alternative Approaches to Database and IS Development • SDLC – – – – System Development Life cycle Detailed, well-planned development process Time-consuming, but comprehensive Long development cycle • Prototyping – – – – Rapid application development (RAD) Cursory attempt at conceptual data modeling. Define database during development of initial prototype. Repeat implementation and maintenance activities with new prototype versions. Three-schema database architecture Database Schema • Physical Schema – Physical structures – covered in chapters 5 and 6 • Conceptual Schema – ER models – covered in chapters 3 and 4 • External Schema – User Views – Subsets of Conceptual Schema – Can be determined from business-function/data entity matrices – DBA determines schema for different users – This is part of people-management in databases Figure 2-8 Three-schema database architecture External schema Different people have different views of the database…these are the external schema Internal schema Process of developing three-schema architecture for a database project Three Schema Architecture for DB Development • Conceptual Schema – Analysis project phase • External Schema – Analysis and Logical Design phases – (subset of conceptual schema) • Internal Schema – Physical Design phase Three-tiered client/server database architecture Gantt Chart Shows time estimates of tasks PERT chart Shows dependencies between tasks Database and IS Development Process • Sources – Information systems planning – User application requests - bottom-up • IS Development Approaches – Systems Development Life Cycle (SDLC) – Rapid Application Development (RAD) • Prototyping • CASE – Database drawing tools – Code generation (SQL) – Repository • People People in Database Development • • • • • • Systems analysts Database analysts Users Programmers Database and data administrators Systems programmers, network administrators, testers, technical writers Figure 2-11 Preliminary data model for product line marketing support system Figure 2-12 Definition of PRODUCT LINE table Figure 2-13 Definition of PRODUCT table Figure 2-14 Definition of ORDER table Figure 2-15 Definition of ORDERED PRODUCT table Figure 2-16 Database definition for Home Office product line marketing support system Figure 2-17 Home Office sales-to-goal comparison query Figure 2-18 Home Office product line sales comparison Pine Valley Furniture Preliminary data model (figure 2-11) Pine Valley Furniture MS Access data model prototype (figure 2-14)