Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The...
Transcript of Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The...
![Page 1: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/1.jpg)
Chapter 5The Database Life Cycle
Class 04: Topic 3.1: The Database Life Cycle 1
![Page 2: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/2.jpg)
Database Design Life Cycle
• Database Life Cycle: all the events from the time the database is first proposed to the time it is retired from service
• Work is typically divided into project with each having a finite set of deliverables
Class 04: Topic 3.1: The Database Life Cycle 2
![Page 3: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/3.jpg)
Development Methods
• Traditional• Prototyping• Rapid Application Development (RAD)• Agile Methods (more detail later)• And of course, there are hybrids
Class 04: Topic 3.1: The Database Life Cycle 3
![Page 4: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/4.jpg)
Traditional Method• Follows process called Systems Development Life Cycle (SDLC)• There are many variations (as many as there are authors and software vendors)
• Most methodologies contain the same basic components:• Tasks – the smallest unit of work, which typically has a completion time of a few hours to a few days, and which is assigned to one person or a group consisting of a few people.
•Work Breakdown Structure (WBS): A hierarchy used to organize tasks into manageable groups
Class 04: Topic 3.1: The Database Life Cycle 4
![Page 5: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/5.jpg)
Class 04: Topic 3.1: The Database Life Cycle 5
![Page 6: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/6.jpg)
Planning Phase
• Understand where enterprise is and where it wants to be• Often done over longer time span than any one individual project• May include feasibility studies• May or may not have a database specialist involved (depending on the organization)
Class 04: Topic 3.1: The Database Life Cycle 6
![Page 7: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/7.jpg)
Requirements Gathering
• Gather and document high‐level, yet precise, description of what project is to accomplish
• Focus on what, not how• Consider all existing business processes, business rules, and entities• Data requirements focus on user views
Class 04: Topic 3.1: The Database Life Cycle 7
![Page 8: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/8.jpg)
Requirements Gathering Methods
• Conduct Interviews• Conduct a Survey• Observation• Document Review
Class 04: Topic 3.1: The Database Life Cycle 8
![Page 9: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/9.jpg)
Conduct Interviews
• Advantages• Receive answers to unasked questions• Includes non‐verbal responses (body language)
• Disadvantages• Takes more time than other methods• Interviewer may “telegraph” desired answers
Class 04: Topic 3.1: The Database Life Cycle 9
![Page 10: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/10.jpg)
Conduct a Survey
• Advantages• Covers a lot of ground in a short time• Questions presented uniformly to all
• Disadvantages• Typically has very poor response rates• Unbiased questions very difficult to compose• Does not include non‐verbal clues
Class 04: Topic 3.1: The Database Life Cycle 10
![Page 11: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/11.jpg)
Observation
•Advantages• See normal processes in everyday use• May observe events that would not otherwise be mentioned
•Disadvantages• Hawthorne Effect: observation changes behavior• May never see the exceptions• Travel costs can be high
Class 04: Topic 3.1: The Database Life Cycle 11
![Page 12: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/12.jpg)
Document Review
• Advantages• Typically the least time consuming method• Documents often provide better overviews• Pictures and diagrams worth 1,000 words
• Disadvantages• Documents may not reflect actual practices• Documentation is often out of date
Class 04: Topic 3.1: The Database Life Cycle 12
![Page 13: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/13.jpg)
Class 04: Topic 3.1: The Database Life Cycle 13
![Page 14: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/14.jpg)
Conceptual Design
•Design the externals of the application(s) and database(s)•Sometimes called External Design•Finalizes the layout of reports, screens, forms, web pages and other data entry and presentation vehicles•Flow of application captured using flow charts, storyboards, and/or screen flows•DBA or Data Modeler updates Enterprise Data Model (usually in ERD form)
Class 04: Topic 3.1: The Database Life Cycle 14
![Page 15: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/15.jpg)
Logical Design
• Technical design of the application(s) and database(s)• Sometimes called Internal Design• Applications specified as modules• Database design using normalization
Class 04: Topic 3.1: The Database Life Cycle 15
![Page 16: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/16.jpg)
Physical Design
• Logical design is mapped (converted) to the actual platform(s) (hardware and systems software) on which it will run
• Includes capacity estimates for processors, disk devices, and network bandwidth
• Database DDL is created or generated for each DBMS to be used
Class 04: Topic 3.1: The Database Life Cycle 16
![Page 17: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/17.jpg)
Construction
• Developers code and test the application modules• Tested modules are promoted through various environments, eventually being installed into production
• Database components move in concert with application modules (sometimes in advance)
Class 04: Topic 3.1: The Database Life Cycle 17
![Page 18: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/18.jpg)
Hardware/Software Environments
Class 04: Topic 3.1: The Database Life Cycle 18
![Page 19: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/19.jpg)
Implementation and Rollout
• Implementation: the process of installing the new application system’s components into the live production system
• Rollout: the process of placing groups of business users on the new application system
Class 04: Topic 3.1: The Database Life Cycle 19
![Page 20: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/20.jpg)
Ongoing Support
• Turnover to production support team• Respond to any issues that occur:
• Performance problems• Abnormal or unexpected results• Complete failures• Requests for enhancements• Isolation of bugs vs. enhancements
Class 04: Topic 3.1: The Database Life Cycle 20
![Page 21: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/21.jpg)
Ongoing Support
• Routine tasks:• Application of patches• Performance monitoring and tuning• Space monitoring and management• Bug fixes, including corresponding database changes
Class 04: Topic 3.1: The Database Life Cycle 21
![Page 22: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/22.jpg)
Database Environments
• Development environment• Test environment• QA environment• Staging environment• Production environment
Class 04: Topic 3.1: The Database Life Cycle 22
![Page 23: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/23.jpg)
Six Phases of a Project
• Enthusiasm• Disillusionment• Panic• Search for the Guilty• Punishment of the Innocent• Praise and Honors for the Non‐Participants
Class 04: Topic 3.1: The Database Life Cycle 23
![Page 24: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/24.jpg)
Nontraditional Methods: Prototyping
•Rapid development of the application using iterative sets of design, development, and implementation steps as a method for determining requirements•Some methods carry prototype all the way to production with each version adding more detailed functions (perpetual prototyping)• Joint Application Design (JAD) is a popular requirements gathering method
Class 04: Topic 3.1: The Database Life Cycle 24
![Page 25: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/25.jpg)
Nontraditional Methods: Rapid Application Development (RAD)•Allows functioning application systems to be built in as little as 60‐90 days•Compromises often made using 80/20 rule•System ultimately built out to meet 100% of requirements•Not useful in controlling project schedules or budgets•Requires a highly skilled project manager•Most applicable when rapid deployment more important than product quality
Class 04: Topic 3.1: The Database Life Cycle 25
![Page 26: Class 04 Topic 3 1 The Database Life Cycleandyoppel.com/X4091/lectures/Class_04_Topic_3_1_The Database_L… · Database Design Life Cycle •Database Life Cycle: all the events from](https://reader036.fdocuments.us/reader036/viewer/2022071215/6044e156e8701a188c43a88a/html5/thumbnails/26.jpg)
Agile Methods
•Based on Iterative and Incremental methods•Requirements and solutions evolve•Teams are cross‐functional•Development cycles are time‐boxed•Examples include Agile Unified Process (AUP), Rational Unified Process (RUP), Scrum and Dynamic Systems Development Method (DSDM)•Collectively called Agile since publication of the Agile Manifesto in 2001
Class 04: Topic 3.1: The Database Life Cycle 26