0% found this document useful (0 votes)
21 views10 pages

Cps7003b-Assessment 2-Brief

The CPS7003B assessment requires students to develop an Airline Reservation and Management System using SQLite and Python, focusing on database design, implementation, and multi-tier architecture. The assessment includes creating a software artifact and a 3000-word report detailing the database model, data access layer, and security considerations. Students must submit their work online by May 16, 2025, adhering to academic regulations and guidelines.

Uploaded by

l227837
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views10 pages

Cps7003b-Assessment 2-Brief

The CPS7003B assessment requires students to develop an Airline Reservation and Management System using SQLite and Python, focusing on database design, implementation, and multi-tier architecture. The assessment includes creating a software artifact and a 3000-word report detailing the database model, data access layer, and security considerations. Students must submit their work online by May 16, 2025, adhering to academic regulations and guidelines.

Uploaded by

l227837
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

CPS7003B – Database Systems – Assessment Brief

Module Code: CPS7003B


Module Title: Database Systems
Module Convenor: Elisabetta Canetta
Module Level: 7

Assessment Number: 2
Assessment Title: Airline Reservation and Management System
Assessment Weight: 60%
Assessment Individual/Group: Individual
Assessment Type: Software Artefact with Report
Assessment Time/Word Count 1 software artefact
Restrictions: 3000 words report
Assessment Time/Word Count It is essential that assignments keep within
Limit Consequences: the time/word count limit stated above.
Any work beyond the maximum time/word
length permitted will be disregarded and
not accounted for in the final grade.

Issue Date: 06th March 2025


Hand in Date: 16th May 2025
Planned Feedback Date: Within 3 working weeks
Mode of Submission: Online via Moodle
Number of copies to be 1 copy of each of the following:
submitted: • a report in pdf format
• a zip file containing your software
artefact

Author: Prins Butt


Internal Moderator: Elisabetta Canetta
Moderation Date: 23rd February 2025

Page 1 / 10
CPS7003B – Database Systems – Assessment Brief

Table of Contents
Introduction ................................................................................................................................ 3
Problem Scenario ....................................................................................................................... 3
Tasks........................................................................................................................................... 3
Environment and Tools .............................................................................................................. 6
Submission ................................................................................................................................. 7
Assessment Criteria .................................................................................................................... 8
Learning Outcomes ................................................................................................................... 9
Regulations, Policies, and Guidelines ...................................................................................... 11

Page 2 / 10
CPS7003B – Database Systems – Assessment Brief

Introduction

This assessment challenges students to apply their knowledge of database systems


and demonstrate a comprehensive understanding of creating a database-driven
application using SQLite, Python, and relevant libraries such as SQLAlchemy. The
focus is on designing and implementing a normalised database, progressing this to
the development of a multi-tier architecture application that includes various
considerations such as security, optimisation, data integrity and privacy.

Problem Scenario

In the realm of airline reservation and management system, the need for efficient
management of flight schedules, bookings, passenger information, and crew
assignments is paramount. Airlines are faced with the challenge of handling vast
amounts of sensitive data while ensuring quick access for passengers, travel
agencies and airport authorities. Your task is to develop a comprehensive database
system for SkyLink Airways, a leading airline company. As a database architect,
you are tasked with designing and implementing a robust solution capable of
securely storing and managing flight scheduling and management, passengers
reservations and ticketing, crew management, customer service and support and
operational analytics and reporting.

Tasks

Software Artefact Criteria:

1. Database Design and Implementation:

• Design an appropriate and normalised database model for the problem


scenario and implement the data model using SQLite.
• Develop a basic application using the database and Python. Your application
should demonstrate the result of performing CRUD operations on the
database.
• The application should demonstrate a range of queries which include joins,
order, and grouping.
• Use Git version-control in the development of the solution

Page 3 / 10
CPS7003B – Database Systems – Assessment Brief

2. Data Access Layer:

• Implement a data access layer using Python and/or SQLAlchemy to interact


with your SQLite database.
• Demonstrate the application of advanced queries.
• Develop an executable application demonstrating the functionality of the
data access layer.

3. Multi-Tiered Architecture and Advanced Considerations:

• Extend the implementation to include a business layer and a presentation


layer.
• Demonstrate the four-tier architecture in action, showcasing the interaction
between layers to deliver a functional database-driven application.
• Ensure data integrity through the implementation of relevant constraints.
• Address security considerations, implementing appropriate measures.
• Optimise the application for performance.
• Extend to a hybrid solution that appropriately utilises a NoSQL (MongoDB)
database.
• Add additional relevant advanced features.

Report Criteria

• Provide a detailed explanation of the data model and justify your design and
normalisation choices. You should state any assumptions you have made in
the design of your database.
• Your report must include a suitable diagram showing your final database
model as well as evidence of version control (e.g. you can add a copy of
your Git commit history to the appendices of your report).
• Provide a detailed explanation on how the data access layer facilitates
interactions with the database.
• Include appropriate supporting evidence.
• Provide a detailed explanation of your tiered/layered approach.
• Provide a detailed evaluation of your design decisions and final solution
including suggestions for future work.
• Contrast the approach with alternative database approaches (e.g. NoSQL
and/or Hybrid).
• Support with citations to relevant literature.

Page 4 / 10
CPS7003B – Database Systems – Assessment Brief

Environment and Tools

You are required to use the following tools:

• PyCharm: as your integrated development environment.


• Python 3.12: as the standard python library.
• SQLite: to implement your database.
• Draw.io (or equivalent tool): To create diagrams.
• Microsoft Word (or equivalent tool): To author your report and export as a
PDF.
• Adobe PDF Reader: To view your final report which is saved as a PDF file.
• Git Tools and GitHub: for version control.
Additionally, the following libraries/modules may be imported and utilised:

• csv: to process CSV files: to process CSV files.


• enum: to add enumerations.
• os: to retrieve or check file paths.
• pytest: to test your implementation.
• random: to generate random numbers.
• sqlalchemy: to implement a data access layer.
• math: for mathematical functions.
• matplotlib: for visualisations.
• mongodb: to create work with MongoDB.
• plotly: for visualisations.
• unittest: to construct and run tests.

No other python libraries or modules should be used

Page 5 / 10
CPS7003B – Database Systems – Assessment Brief

Submission

The assessment must be completed individually. You must not share, in part or
whole, your assessment with another party other than the module convenor
and for the purpose of submission to the university. You must ensure that the
University’s academic misconduct guidelines are followed in their entirety.

You should use the assessment submission link on the module’s Moodle page to
submit the following files:

• A PDF file for your report. This should not be included in the zip file but
instead submitted as a separate file. Failure to do so may result in zero
being awarded.
• A Zip file of your software artefact. This should contain your software
solution and any relevant files to open and execute your solution.

You should ensure that you make a timely submission by the deadline stated at the
start of this assessment brief.

Page 6 / 10
CPS7003B – Database Systems – Assessment Brief

Assessment Criteria

Your assessment will be graded according to the following criteria:

Grading criteria Technical Proficiency Problem Solving Communication Skills Real-World


Considerations
Mark band
80-100 Displays exceptional Exceptional problem- Exceptional Exceptional
Distinction skills with solving demonstrated in communication skills understanding of real-
comprehensive advanced data-base demonstrated through world issues including
database-driven driven and multi-tier a comprehensive and advanced architecture,
solution with in-depth solution that is articulate project optimisation, security
security, optimisation, optimised, secure, and report. measures, and
legal, and ethical addresses legal and profound legal and
considerations. ethical issues. ethical discussions.

70-79 Exhibits advanced skills Advanced problem- Advanced Advanced


Distinction with comprehensive solving skills apparent communication in understanding of real-
tier architecture in advanced data- explaining complex world issues
database-driven driven and multi-tier design and demonstrated through
development, and architecture. implementation that advanced security
detailed ethical, incorporates multi- architecture design,
security, optimisation, tiered architecture andoptimisation, security
and legal modern database measures, and
considerations. technologies. profound legal and
ethical discussions.
60-69 Good, consistent Strong problem-solving Strong communication Strong understanding of
Merit knowledge and skills apparent in multi- in explaining complex real-world issues with
understanding of the tiered database-driven multi-tiered and demonstrable
material, main application tasks. database-driven application of
concepts and key solution. optimisation, security,
theories at this level. legal, and ethical
Exhibits advanced skills considerations.
in database-driven
application
development.
50-59 Demonstrates basic Reasonable problem- Basic communication Basic understanding of
Pass skills in database solving evident in evident in detailing the real-world
(Threshold) implementation and database-driven implementation of a considerations with
database-driven application database-driven minimal optimisation,
application development tasks. application. security and ethical
development. adherence.
30-49 Displays limited Demonstrates weak Demonstrates deficient Displays a basic
Fail proficiency, with problem-solving communication skills, understanding of real-
significant deficiencies abilities, struggling struggling to articulate world considerations
in database with basic database database such as optimisation,
development. application implementation. security, legal and
development. ethical issues.
0-29 Demonstrates severely Lacks any evident Poor communication Limited understanding
Fail inadequate skills, problem-solving ability, skills, unable to provide of database design and
unable to implement unable to address basic clear explanation of no discussion relating
basic database. database database design. to real-world
implementation. considerations.

Page 7 / 10
CPS7003B – Database Systems – Assessment Brief

Learning Outcomes

This assessment will enable students to demonstrate the following learning


outcomes as stated in the module outline:

[Module Learning Outcome 1]

• Demonstrate a comprehensive understanding of the fundamental concepts


and principles of database systems and the advantages of the relational
model.

How is this learning outcome addressed?

The assessment requires students to design and implement a database-driven


application using SQLite, Python, and SQLAlchemy. This involves understanding the
fundamental concepts of database systems, including the relational model. The
use of SQLite, a relational database management system, reinforces the relational
model principles.

[Module Learning Outcome 3]

• Demonstrate a comprehensive understanding of the fundamental concepts


and principles of database systems and the advantages of the relational
model.

How is this learning outcome addressed?

The assessment tasks explicitly ask students to design an appropriate and


normalised database model. Students are required to justify their design and
normalisation choices in the report. This directly aligns with the outcome of
applying entity-relationship modelling and normalisation techniques to optimise
databases and ensure data integrity.

[Module Learning Outcome 6]

• Design and implement a fully functional database system for real-world


applications, utilising both SQL and No-SQL database technologies, and
demonstrating an understanding of data modelling, CRUD operations, and
the integration of hybrid solutions.

Page 8 / 10
CPS7003B – Database Systems – Assessment Brief

How is this learning outcome addressed?

The assessment requires students to design and implement a database-driven


application using SQLite (SQL). While the focus is a relational database with
SQLite, the use of Python and SQLAlchemy adds a layer of abstraction,
demonstrating an understanding of integrating technologies to build a functional
system. NoSQL (MongoDB) is also utilised as part of the advanced requirements to
create a hybrid solution. The learning outcome is satisfied through the focus on
SQL and the broader understanding of database systems.

[Module Learning Outcome 7]

• Efficiently execute database projects with strong problem-solving,


information management, numeracy, and a dedication to professional
growth. Stay current on research trends, industry advancements, and
ethical aspects in database management.

How is this learning outcome addressed?

The assessment encourages students to use Git version control, which is a standard
practice in software development. Additionally, it emphasises the importance of
providing a detailed evaluation of design decisions and suggesting future work in
the report, promoting problem-solving and a dedication to professional growth.
The use of relevant tools and libraries, along with a requirement for citations to
relevant literature, encourages staying current on research trends and industry
advancements.

Page 9 / 10
CPS7003B – Database Systems – Assessment Brief

Regulations, Policies, and Guidelines

Guidance for online submissions


https://www.stmarys.ac.uk/policies/online-submissions.aspx

Academic Misconduct
Any submission must be students’ own work and, where facts or ideas have been
used from other sources, these sources must be appropriately referenced. Please
find a link to the academic misconduct policy below:
https://www.stmarys.ac.uk/policies/academic-regulations.aspx

Ethics Policy
The work being carried out by students must be in compliance with the Ethics
Policy. Where there is an ethical issue, as specified within the Ethics Policy, then
students will need ethical approval prior to the start of the project. Please find a
link to the ethics policy below:
https://www.stmarys.ac.uk/research/students/ethical-review-process.aspx

Extenuating Circumstances
The University's Extenuating Circumstances procedure helps students facing
challenges in assessment submission. To request an extension or deferment,
submit an EC application with evidence. Approved cases will not incur academic
penalties. For longer-term issues, contact Student Services. Please find a link to
the EC policy below:
https://www.stmarys.ac.uk/policies/extenuating-circumstances.aspx

Page 10 / 10

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy