DAT501AC - Database Design and Implementation
Assignment 2: Practical and Written Assessment (Individual).
In this assignment, you will have the opportunity to design and implement a relational database using
SQLite. Your task will be to create SQL queries, design report objects, and consider integrity, security,
and concurrency requirements. Additionally, you will write a comprehensive report detailing your
outcomes and describing the development processes used in creating the solution.
Here's what you need to do:
1. Database Design:
Analyze the provided use case model below.
Develop an ER diagram illustrating the database structure, relationships, and attributes.
o You will need to consider which attributes will be required in each table.
Normalize the database schema to eliminate redundancy and ensure data integrity.
o There is no need to document your normalization steps. The final normalized product
will suffice in your report.
2. Database Implementation:
Create the database using SQLite.
Implement integrity constraints (primary keys, foreign keys) to maintain data consistency.
Populate the database with sample data to test functionality.
3. SQL Queries:
Develop SQL queries (minimum of 6) to perform common data manipulation tasks. such as
INSERT (2 queries – 1 mark each), UPDATE (2 queries – 1 mark each), and SELECT (2
queries – 2 marks each) operations.
o For each SQL query specify what it is you are trying to do with it in your report.
E.g. “A teacher has joined the school.”
E.g. “A teacher has been assigned classes to teach.”
The 2 SELECT statements require at least 1 join in them and one WHERE clause. Feel free to
make them complicated.
o Once again, specify what you are trying to extract from the database in your report.
4. Report Object Design:
Design report objects (for this assignment, views will suffice) to generate customized
tables/reports from the database.
Implement the views (minimum of 2 – 5 marks each) in SQLite to generate sample
tables/reports.
o Specify in your report what the views are showing
o Marks will be deducted for views that could be considered redundant (because views
are created to optimize or make retrieving data easier for the user).
5. Security, and Concurrency:
Note that implementing security measures (e.g., user authentication, access control) and
concurrency control may not be fully achievable in SQLite. However, research and discuss
this in your report. There is no need to implement anything in this step.
6. Report Writing:
Document each step above in a comprehensive report.
Include ER diagrams, SQL code snippets, and sample reports generated from the database.
o Code snippets do not contribute to the word count.
Reflect on challenges faced and solutions implemented during the development process.
Use case model:
Criteria Points Explanation
Task 1: Database Evaluation of the clarity, depth, and coherence in analyzing the provided model solution,
Design developing the ER diagram, and applying normalization techniques. This includes
ensuring a logical flow of information, accurate representation of entities, relationships,
30 and attributes, and effective elimination of redundancy and dependencies.
Task 2: Database
Implementation Assessment of the accuracy, completeness, and effectiveness in creating the database,
implementing the schema, and populating it with sample data. This includes ensuring all
20 tables, relationships, and key constraints are accurately established, and sample data
Criteria Points Explanation
reflects real-world scenarios, allowing for effective testing of functionality and data
quality.
Task 3: SQL Queries Evaluation of the proficiency in developing SQL queries. This encompasses the
accuracy of query syntax, and sophistication in addressing complex retrieval
10 requirements.
Task 4: Report Object Assessment of the effectiveness in designing and implementing report objects (i.e.
Design views) to generate customized reports. This involves ensuring clarity, accuracy, and
usability in design, and accurate implementation in SQLite to produce sample reports
10 reflecting the database contents and objectives
Task 5: Security, and Evaluation in the report of the consideration of security measures (e.g. access control)
Concurrency and concurrency control. A discussion of potential limitations and challenges in the
10 SQLite environment is required as well.
Task 6: Clarity and
Coherence of the Evaluation of the clarity and coherence of the report's content. Logical flow of
Report 15 information, including clear discussions and explanations of each task.
Overall Presentation Evaluation of the professionalism, organization, and attention to detail in the submission.
and Quality 5 Proper formatting, grammar, and spelling.
Total Points: 100
Note:
• Each criterion is allocated a specific number of points for assessment.
• Points may be deducted for plagiarism, unauthorized collaboration, or failure to meet
guidelines.