Database Development Process Notes
Enterprise Data Model
- First step in database development.
- Specifies scope and general content.
- Provides an overall picture of organizational data at a high level of abstraction.
- Utilizes an entity-relationship diagram.
- Includes descriptions of entity types.
- Details relationships between entities.
- Defines business rules.
- Example: A retail company's EDM would include entities like customers, products, and orders, and relationships such as "customer places order."
Information Systems Architecture (ISA)
- Conceptual blueprint for an organization’s desired information systems structure.
- Components:
- Data (e.g., Enterprise Data Model – simplified ER Diagram).
- Processes (data flow diagrams, process decomposition).
- Data Network (topology diagram).
- People (people management using project management tools like Gantt charts).
- Events and points in time (when processes are performed).
- Reasons for events and rules (e.g., decision tables).
- Healthcare Organization Example:
- Business Architecture: Defines org structure, goals & processes.
- Data Architecture: Describes data structure, storage & access.
- Entities: Patient, Doctor, Appointment, etc.
- Relationships: Patient has Appointment with Doctor.
- Application Architecture: Software applications for business processes & data.
- Technology Architecture: Infrastructure to support applications.
Information Engineering
- A data-oriented methodology to create and maintain information systems.
- Top-down planning: A generic IS planning methodology for broad understanding of IS needs.
- Four Steps:
- Planning
- Analysis
- Design
- Implementation
- Bank example: Improving online banking with real-time fraud detection:
- Data Collection.
- Data Analysis.
- System Design.
- Integration.
- Optimization.
Information Systems Planning
- Purpose: Align information technology with organization’s business strategies.
- Three Steps:
- Identify strategic planning factors.
- Identify corporate planning objects.
- Develop enterprise model.
- Retail Company Example: Enhancing customer experience and supply chain management.
- Strategic Alignment Assessment.
- Gap Analysis.
- Objectives: Centralized database for inventory, unified e-commerce and in-store tracking.
- Implementation Plan.
- Budgeting.
- Monitoring.
Identify Strategic Planning Factors
- Organization goals – what we hope to accomplish.
- Critical success factors – what MUST work in order for us to survive.
- Problem areas – weaknesses we now have.
- Retail Company Example (Omnichannel Retail):
- Critical Success Factors.
- Business Goals.
- External Influences.
- Internal Capabilities.
- Risk Factors.
Identify Corporate Planning Objects
- Process of determining key entities and resources critical to achieving strategic goals.
- Focuses on understanding what needs to be managed, monitored, and improved.
- Retail Company Example (Enhance Omnichannel Experience):
- Business Entities.
- Business Processes.
- Data Objects.
- Organizational Units.
- Strategic Assets.
Develop Enterprise Model
*Functional decomposition: Breaking down a complex system into smaller, manageable components.
*Planning Matrices: Tools to visualize and organize project elements for task allocation and resource management.
- Example Business Function-to-Data Entity Matrix:
| Business Function | Customer | Product | Raw Material | Order | Work Center | Work Order | Invoice | Equipment | Employee |
|---|---|---|---|---|---|---|---|---|---|
| Business Planning | X | X | |||||||
| Product Development | X | X | X | ||||||
| Materials Management | X | X | X | X | X | ||||
| Order Fulfillment | X | X | X | X | X | X | X | X | |
| Order Shipment | X | X | X | X | X | ||||
| Sales Summarization | X | X | X | X | |||||
| Production Operations | X | X | X | X | X | X | X | ||
| Finance and Accounting | X | X | X | X | X | X | X | X |
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.
Systems Development Life Cycle (SDLC) Steps
- Project Identification and Selection, Purpose: preliminary understanding, Deliverable: request for project , Database activity: enterprise modeling
- Project Initiation and Planning, Purpose: state business situation and solution, Deliverable: request for analysis, Database activity: conceptual data modeling
- Analysis, Purpose: thorough analysis, Deliverable: functional system specifications, Database activity: conceptual data modeling
- Logical Design, Purpose: information requirements structure, Deliverable: detailed design specifications, Database activity: logical database design
- Physical Design, Purpose: develop technology specs, Deliverable: program/data structures, technology purchases, organization redesigns, Database activity: physical database design
- Implementation, Purpose: programming, testing, training, installation, documenting, Deliverable: operational programs, documentation, training materials, Database activity: database implementation
- Maintenance, Purpose: monitor, repair, enhance, Deliverable: periodic audits, Database activity: database maintenance
RAD (Rapid Application Development)
- A software development methodology prioritizing rapid prototyping and quick feedback over extensive planning.
- Focuses on iterative development and delivering applications quickly.
Prototyping Methodology and Database Development Process
- Identify problem.
- Develop initial prototype.
- Implement and use prototype.
- If prototype is inefficient, revise and enhance prototype based on new requirements.
- Convert to operational system.
- Conceptual data modeling: analyze requirements, develop preliminary data model
- Logical database design: analyze requirements in detail, integrate database views into conceptual data model
- Physical database design and definition: Define new database contents to DBMS, decide on physical organization for new data, design database processing programs
- Database implementation: code database processing, install new database contents, usually from existing data sources
- Database maintenance: analyze database to ensure it meets application needs, fix errors in database, tune database for improved performance
Project Management Charts
- Gantt Chart: Shows the amount of work done or production completed in certain periods of time in relation to the amount planned for those periods.
- PERT Chart: (Program Evaluation and Review Technique) Visually represents project tasks, dependencies, and timelines.