Assignment Brief
Unit Number and Title Unit 4: Database Design & Development
Academic Year 2024-2025
Unit Tutor Mr. Abdurrahman Dawi
Assignment Title School Management System
Issue Date 06/03/2025
Submission Date 06/04/2025
Submission Format
Assignment Report
All your work must be supported with research and referenced correctly using the
Harvard referencing system. You also need to provide a bibliography using the
Harvard referencing system. Inaccurate use of referencing may lead to issues of
plagiarism if not applied correctly and will affect your final grade. Ensure that your
assignment follows the learning outcomes.
Format:
- Typed document (12-point font, double-spaced).
- Softcopy of the report in a MS word format and PDF.
Length:
3,000-4,000 words for the report.
Unit Learning Outcomes
LO1 Use an appropriate design tool to design a relational database system for a
substantial problem.
LO2: Develop a fully-functional relational database system, based on an existing
system design.
LO3: Test the system against user and system requirements.
LO4: Produce technical and user documentation.
Transferable Skills and competencies developed
- Assessing information and making informed decisions regarding database
design and functionality.
- Evaluating the effectiveness of different database models and solutions.
1
- Gaining hands-on experience with database management systems (DBMS)
and programming languages (e.g., SQL).
- Familiarity with data modelling tools and software.
- Planning, executing, and managing database projects from conception to
deployment.
- Coordinating tasks, timelines, and resources effectively.
- Clearly conveying technical information to non-technical stakeholders.
- Documenting processes, designs, and user requirements comprehensively.
- Identifying issues in database design and implementation and developing
viable solutions.
- Analysing user requirements and translating them into functional database
features.
- Proficiency in creating Entity-Relationship Diagrams (ERDs) and data flow
diagrams.
- Understanding normalization and denormalization techniques to optimize
database performance.
- Implementing data integrity and validation rules to ensure consistent and
accurate data.
- Knowledge of data security practices and compliance regulations.
- Conducting testing on database systems to ensure functionality and
performance.
- Evaluating database solutions against user needs and project requirements.
- Collaborating with peers and instructors for feedback and improvement.
- Staying current with emerging technologies and trends in database
management.
- Willingness to learn and apply new tools and methodologies as needed.
2
Vocational Scenario
Role
You are tasked with designing a database for a school management system. The
database will manage information related to students, courses, teachers, and
enrolments.
The system should efficiently handle (not only the following data): -
- Students: Student ID, Name, Date of Birth, Address, Phone Number, Email.
- Courses: Course ID, Course Name, Description, Credits, Teacher ID.
- Teachers: Teacher ID, Name, Subject Specialty, Phone Number, Email.
- Enrolments: Enrolment ID, Student ID, Course ID, Enrolment Date, Grade.
Assignment activity and guidance
LO1: Use an appropriate design tool to design a relational database system for a
substantial problem.
Guideline:
- Clearly define the substantial problem you are addressing.
- Collect both functional and non-functional requirements from stakeholders
or through research.
- Familiarize yourself with various database design tools (e.g. SQL Server
Management Studio).
- Choose a design tool based on the complexity of the project, collaboration
features, and personal familiarity.
- Identify entities (tables) relevant to the problem.
- Determine relationships between entities (one-to-one, one-to-many, many-
to-many).
- Define attributes for each entity.
- Convert the ERD into a relational schema that includes tables, keys (primary
and foreign), and constraints.
- Ensure the design adheres to normalization rules to eliminate redundancy.
- Consider how the data will be stored and accessed.
- Implement indexing strategies and consider partitioning if necessary.
- Utilize your chosen design tool to create the database structure.
- If applicable, generate SQL scripts for creating tables and relationships.
3
Criteria:
P1:
Design a relational database system using appropriate design tools and
techniques, containing at least four interrelated tables, with clear
statements of user and system requirements.
M1:
Produce a comprehensive design for a fully-functional system, which
includes interface and output designs, data validations and data
normalisation.
D1:
Evaluate the effectiveness of the design in relation to user and system
requirements.
Assignment activity and guidance
LO2: Develop a fully-functional relational database system, based on an existing
system design.
Guideline:
- Select an appropriate DBMS (e.g. Microsoft SQL Server).
- Ensure you have the required tools for database development, such as
database clients and any necessary libraries.
- Use SQL commands to create tables as defined in the relational schema.
- Define primary keys, foreign keys, and constraints.
- Implement relationships between tables using foreign keys to maintain
referential integrity.
- Use SQL INSERT statements to populate tables with sample data that
reflects realistic scenarios.
- Ensure that the data adheres to the constraints and formats defined in the
schema.
- Write SQL queries to perform basic CRUD operations (Create, Read,
Update, and Delete) on the database.
- If necessary, develop stored procedures and functions to encapsulate
complex business logic.
4
Criteria:
P2:
Develop the database system with evidence of user interface, output and
data validations, and querying across multiple tables.
P3:
Implement a query language into the relational database system.
M2:
Implement a fully functional database system, which includes system
security and database maintenance.
M3:
Assess whether meaningful data has been extracted through the use of
query tools to produce appropriate management information.
D2:
Evaluate the effectiveness of the database solution in relation to user and
system requirements and suggest improvements.
Assignment activity and guidance
LO3: Test the system against user and system requirements.
Guideline:
- Outline the goals of your testing process, including verifying functionality,
performance, and security.
- Decide on the types of testing to perform, such as:
• Unit Testing
• Integration Testing
• System Testing
• User Acceptance Testing (UAT)
- Develop a set of test scenarios that cover all user and system requirements.
Each scenario should include:
• A description of the test case
• Expected results
• Actual results
- Organize test cases based on criticality and system usage.
- Execute each test case systematically, documenting the outcomes. Focus
on:
• Functional Testing: Verify that all features work as intended.
• Performance Testing: Assess response times, query performance, and
load handling.
• Security Testing: Check for vulnerabilities, data integrity, and access
controls.
5
- Keep detailed records of test results, including pass/fail status and any
issues encountered.
• For any failures or issues found, document them clearly, including:
• Description of the issue
• Steps to reproduce
• Severity level (critical, major, minor)
Criteria:
P4:
Test the system against user and system requirements.
M4:
Assess the effectiveness of the testing, including an explanation of the
choice of test data used.
D2:
Evaluate the effectiveness of the database solution in relation to user and
system requirements and suggest improvements.
Assignment activity and guidance
LO4: Produce technical and user documentation.
Guideline:
- Recognize the two primary types of documentation needed:
- Technical Documentation: For developers and system administrators.
- User Documentation: For end-users interacting with the database system.
- Familiarize yourself with any specific documentation standards required by
your institution or industry.
- Collect all relevant design documents, including:
• Entity-Relationship Diagrams (ERDs)
• Relational schemas
• SQL scripts
- Document outcomes from testing phases, including user feedback.
Technical Documentation
System Overview:
Provide a high-level description of the database system, its purpose, and
key functionalities.
Architecture Diagram:
Include diagrams illustrating the overall architecture, including database
components and their interactions.
6
Database Schema:
Detail the database schema, including:
- Tables and their relationships
- Attributes for each table
- Data types and constraints
Installation Instructions:
Provide step-by-step instructions for installing and setting up the database
system.
Configuration Guidelines:
Include any necessary configuration settings for performance optimization
and security.
Maintenance Procedures:
Outline routine maintenance tasks to ensure system performance and data
integrity.
User Documentation
User Guide:
Develop a comprehensive user guide that includes:
- System introduction and purpose
- Instructions for accessing the database system
- Step-by-step procedures for performing common tasks (e.g., querying data,
updating records).
FAQs and Troubleshooting:
Include a section addressing common questions and issues users may
encounter, along with solutions.
Visual Aids:
Use screenshots or diagrams to enhance clarity, especially for complex
procedures.
Criteria:
P5:
Produce technical and user documentation.
M5:
Produce technical and user documentation for a fully-functional system,
including data flow diagrams and flowcharts, describing how the system
works.
7
D3:
Evaluate the database in terms of improvements needed to ensure the
continued effectiveness of the system.
Learning Outcomes
Pass Merit Distinction
LO1 Use an appropriate design tool to design a
relational database system for a substantial problem
M1 Produce a
comprehensive design for
P1 Design a relational a fully-functional system,
database system using D1 Evaluate the
which includes interface
appropriate design tools effectiveness of the
and output designs, data
and techniques, design in relation to user
validations and data
containing at least four and system requirements.
normalisation.
interrelated tables, with
clear statements of user
and system requirements.
LO2 Develop a fully-functional relational database
system, based on an existing system design
M2 Implement a fully LO2 and LO3
P2 Develop the
functional database D2 Evaluate the
database system
system, which includes effectiveness of the
with evidence of
system security and database solution in
user interface,
database maintenance.
output and data relation to user and system
validations, and requirements and suggest
M3 Assess whether
querying across improvements.
meaningful data has
multiple tables.
been extracted through
the use of query tools to
8
P3 Implement a produce appropriate
query language management information.
into the relational
database system.
LO3 Test the system against user and system
LO2 and LO3
requirements
D2 Evaluate the
M4 Assess the effectiveness of the
P4 Test the system against effectiveness of the database solution in
user and system testing, including an relation to user and system
requirements. explanation of the choice requirements and suggest
of test data used. improvements.
LO4 Produce technical and user documentation
M5 Produce technical D3 Evaluate the database
and user documentation in terms of improvements
for a fully-functional needed to ensure the
P5 Produce technical and
system, including data continued effectiveness of
user documentation. the system.
flow diagrams and
flowcharts, describing how
the system works.
Recommended Resources
Textbooks
Churcher, C. (2012) Beginning Database Design: From Novice to Professional. 2nd
edn. Apress.
Connolly, T. and Begg, C. (2014) Database Systems: A Practical Approach to
Design, Implementation and Management. 6th edn. Global Edition. Pearson.
Flejoles, R. P. (2018) Database Theory and Application. Arcler Press.
Karwin, B. (2017) SQL Antipatterns: Avoiding the Pitfalls of Database Programming
Pragmatic Programmers, LLC, The.
Kroemke, D. and Auer, D. (2012) Database Concepts: International Edition. 6th
edn. Pearson.
9
Journals
The Computer Journal – Oxford Academic
International Journal of Database Management (IJDMS)
Journal of Emerging Trends in Computing and Information Sciences
Journal of Systems Analysis and Software Engineering
Systems Journal of Database Management
Web
mva.microsoft.com → Microsoft Virtual Academy Database Development
(Training)
mva.microsoft.com/ebooks → Microsoft Virtual Academy, Microsoft Press (E-
books)
www.lynda.com → Database Training (Tutorials)
Links
This unit links to the following related units:
Unit 11: Strategic Information Systems
Unit 41: Database Management Systems.
Abdurrahman Dawi
Unit Instructor
10