Session 02 Flashcards
DBLC?
Database Develpment Life Cycle
* Database design and Implementation
DBLC Phases?
- Database initial study
- Database design
- Implementation and loading
- Testing and Evaluation
- Operation
- Maintenance and evolution
Phase 1: Database initial study?
Examine the current system’s operation within the company and determine how and why the current system fails.
* Analyze company situation
* Define problems and constraints
* Define system Objectives
* Define System Scope and Boundries
Key areas discovered during the analysis?
- Company Objectives : What the company aims to achieve.
- Company Operations : How the company functions and delivers services.
- Company Structure : The organization’s setup and how its components interact.
Types of sources that Database designer has, for collecting information.
-
Formal Sources
Information from existing systems. :
* How the system works
* Required inputs
* System output & their usage
* Documents generated -
Informal Sources
Company stakeholders, especially end-users :
* Provide unstructured feedback and problem definitions.
* Challenges in accurately identifying issues due to large scope and lack of direct involvement in daily tasks.
Phase 02: Database Design
- Most critical phase of DBLC
- Focuses on designing the database model
- Ensures data is structured efficiently for operation & the final product meets user and system requirements.
What are the 2 views of Data in the System?
-
Business View (Manager’s View) - Focuses on What
- Identifies problems and solution
- Defines information and data requirements
-
Designer’s View - Focuses on How
- Structures the data for efficient access
- Transforms data into meaningful information
Conceptual database modeling?
The process of creating a high-level, abstract representation of the data requirements and relationships in a database system.
4 steps of conceptual design?
- Data analysis and requirement
- Entity relationship modeling and normalization
- Data model verification
- Distributed database design
what are the Conseptual design information sources?
- Business rules and data constraints
- Data flow diagrams (DFD)
- Process functional descriptions (FD) (User views)
Conceptual design tools?
- ER diagram
- Normalization
- Data directory
Most common factors that to be considered when purchasing DBMS?
- Cost
- Features and Tools
- Underlying model
- Feasibilty
- DBMS hardware requirements
Logical design components?
- Tables
- Indexes
- Views
- Transactions
- Access authorities
- Others
Phase 3 : Implementation and Loading
What are the design specifications that implement in this phase?
- Install the DBMS
- Create the database
- Load and covert the data
Phase 4 : Testing and Evaluation
- Database is tested and fine-tuned for performance, integrity, concurrent access and security constraints.
- Done in parrallel with application programming
- Programmers use database tools to prototype the application during the coding.
Security testing?
Protect data from unauthorized access, tests include:
1. Physical security
2. Password security
3. Access rights
4. Audit trails
5. Data Encryption
6. Diskless Workstations
Phase 5 : Operation
After evaluation stage, the database considered to be operational.
The database,
its management,
its users, and
its application programs constitue a complete information system.
Phase 6 : Maintenance and Evaluation
Do changes to the system (from opeations, bugs, business changes)
and Enhancements.
Required periodic maintenace activities?
- Preventive maintenance (backup)
- Corrective maintenace (recovery)
- Adaptive maintenance (enhancing performance, adding entities and attributes, and so on)
What are the database design strategies?
- Top-down vs Bottom-up
- Centralized vs Decentralized
Top-down vs Bottom-up?
**Top-down : **
* Start with a general overview, moving to specific details.
* Identifies broad system requriement first, then breaks them into entities and attributes.
* Suitable for large, complex systems with many entities, relations, and transactions.
**Bottom-up : **
* Start with specific details, building up to a general overview
* Identifies data elements first, then group them into entities
* Best for small systems with few entities, attributes, relations, and transactions.
Centralized vs Decentralized?
**Centralized : **
* Best for small, simple databases
* Suited for databases that can be viewed as a whole
* Typically designed by a single person or a small team
**Decentralized : **
* Ideal for large, complex databases with multiple entities and relations
* Divides design task into multiple modules, each handled by a seperate team
* Coordinated by a lead designer who aggregates efforts.