Database Fundamentals Knowledge expected for students entering MIS 4663 Information Systems Data Process Information System Infrastructure Organization The SDLC R e v i s i o n & I t e r a t i o n Problem Identification & Planning Understanding the Current Situation Selection of the Best Alternative Business or Logical Requirements Physical Design, Coding & Testing Implementation Maintenance System An inter-related set of components, with identifiable boundaries, working together for some purpose. Analysis The process of identifying problems, opportunities, requirements, constraints, and resources. Design The business of finding a way to meet the functional requirements within the specified constraints using the available technology. Zachman Framework Data Ballpark (Business Scope) Owner (Business Model) Designer (IS Model) Builder (Technology Model) Detailed (Technology Specification) Functional System Lists of entities important to the business E-R Diagrams (Entity Level) E-R Diagrams (Attribute Level) Database Design Schema and Sub-schema Definition Physical Tables Processes Lists of functions that the business performs. (BPM) Functional Hierarchy Diagram Dataflow Diagrams Process Specifications Program Code Working Application Network or Technology Overview of technology architecture. Enterprise communication diagram Distribution Diagram Configuration Design Configuration Definition Installed Infrastructure Systems Development Life Cycle (SDLC) Often called Waterfall Model Iterative Process Control cost and time Budgets Project timelines and deadlines Works best with well understood systems Employed on most large development projects. Systems Development Life Cycle (SDLC) Problem Identification &Planning Understanding Current Situation Selection of Best Approach Business or Logical Requirements Physical Design, Coding and Testing Implementation Maintenance Hoffer, George & Valacich SDLC Criticisms • Process Overhead • Significant time and resource costs. • Project Milestones • Discourages iterative changes to higher level models in light of lower level developments. • Not suited for poorly understood systems. • Difficult to apply if system requirements are not well defined. • Testing Methodology • Bottom up testing may result in components that work separately but not together. Database Fundamentals E/R Modeling Decompose a narrative description into a data model that includes entities, relationships and constraints Use the E/R paradigm to develop enterprise (high level) models, conceptual models, and relational models as needed Identify attributes and domain constraints for them Database Fundamentals Normalization Decompose a database into 3NF relations from an attribute set. Use normalization to recognize design errors in existing databases Database Fundamentals SQL Create data access retrievals (SELECT statements) from existing databases. Single table queries with conditions (SELECT … WHERE …) Joins (SELECT … WHERE … KEY1 = KEY2) Subset and group conditions (SELECT … WHERE … GROUP BY … HAVING …) Database Fundamentals Access programming Create a multi table database including 1:m and m:n relationships Create a program that includes forms, reports, macros and navigation using controls Database Fundamentals For general use DBMS operation Understand how database management systems provide concurrency control, Understand backup and recovery using commits and rollbacks and checkpoints Understand integrity and how it is managed Explain other DBMS functions