-
Problem Description:
- Detailed explanation of the case study and its challenges.
-
Requirement Collection:
- Background Reading: Summary of domain research with references.
- Interviews: Key insights from discussions with domain experts.
- Questionnaires/Surveys: Common issues identified and summarized responses.
- Observation: Real-world observations of processes in the domain.
-
Fact-Finding Chart:
- Comprehensive table summarizing findings from all requirement collection methods.
-
Requirements List:
- Consolidated list of system requirements.
-
User Privileges:
- Defined user roles and associated privileges within the system.
-
Noun Analysis:
- Identification of entities and relationships for ER Diagram design.
-
Schema and ER Diagram Design:
- Initial ER Diagram and explanation of the schema.
-
ER Diagram Improvement:
- Refinements made to entities, relationships, and the ER Diagram based on detailed analysis.
-
Mapping ER Model to Relational Model:
- Conversion of the ER Diagram into a relational schema, with primary keys identified.
-
Create DDL Scripts:
- Scripts implementing domain, key, referential integrity, and other constraints.
-
Normalization and Schema Refinement:
- Dependency analysis and identification of primary/foreign keys.
- Documentation of initial schemas and their refinement.
-
Redundancy and Anomalies Documentation:
- Identified redundancies and anomalies in the initial design.
-
Normalization Process:
- Enforced 1NF, eliminated partial dependencies for 2NF, and removed transitive dependencies to achieve 3NF/BCNF.
-
Revised DDL Scripts:
- Updated scripts reflecting the normalized database design.
-
Database Population:
- Tables populated with 80–100 tuples each using INSERT statements.
-
SQL Queries:
- Approximately 40 SQL queries ranging from simple to complex, including joins and sub-queries.
-
Setup JDBC and Basic GUI:
- Documentation of JDBC setup and a basic graphical user interface for database interaction.
-
CRUD Operations in GUI:
- Implementation of Create, Read, Update, and Delete functionalities via the GUI.
-
Technical Issues:
- Comprehensive list of challenges faced during development, with their impact.
-
Solution:
- Step-by-step documentation of approaches and tools used to resolve technical issues.