COMP3013代做、代写Python设计编程

- 首页 >> CS
COMP3013 Database Management System
Course Project Requirements 2024 Spring

Introduction
In this project, you are supposed to model, design and implement a real-world web application that is related to database management. For example, a simple music management system, a university course arrangement system, a library book management system, an e-business inventory management system, a train ticket booking system, etc. (you are encouraged to propose your own application, innovative ideas will be given bonus points). You should do the implementation using Python Django framework and MySQL DBMS. Your web application should provide users reasonable operations based on your application and problem.
This is a group-based project. Each group has 3-4 students and you should choose your group via the grouping link on iSpace. You can come up with your proposals.

Workflow
The project workflow goes through several stages described below.
1.Problem definition. Each group will need to select a topic and formulate the problem, e.g., music management, e-business inventory management or ticket booking, etc.
2.Data collection. Each group will need to collect the data using the web scraping techniques or downloading existing datasets. You can also generate synthetic datasets if necessary.
3.Wrangle, prepare, cleanse the data. The collected data may contain missing and noisy entries or in consistency schemas. Therefore, you need to perform data preprocessing and data cleaning.
4.Database design. Design the database using the ER Model by creating an ER diagram and later on converting it into relations in MySQL DBMS.
5.Web development. Design and implement the website that provides a user interface to manage the database, including but not limited to query the database, insert/update/delete some records in database relations.

Requirements
Front End Requirements
Your website needs at least 5 pages, each page needs to include navigation bars, logo, footers, etc.
Your website should allow user registration and login. At least two user types should be offered. For example, suppose you are building a bookstore website, your user types could be administrator, registered user and anonymous visitor.
Your website needs to include at least four features. The more features you have, the higher score you will earn. Feature is a workflow that can allow the user to perform a complete task. Take the example of bookstore, the features could be:
oA user searches book.
oAn admin adds new books.
oAn admin views purchasing history and statistical/analysis results.
o…

Back End Requirements
Your ER diagram should have at least 6 entities and a few relationships.
On average, each table must have no less than 5,000 records. There are at least two tables consisting of more than 50,000 records. (Note: Not all the records have to be real but they should be realistic. You may generate records using some program.)
Your system takes less than 1 second to insert a record to any table.
Your system takes less than 2 seconds to delete or search a record.
You may have to create an index to accelerate delete or search.
The logical design of the database must follow the normal forms.

Presentation Requirements
10 minutes (pre) + 2 minutes (QA) for each group.
Make some good slides.

Report Requirements
Project description. Briefly introduce the purpose of this project. You should define which real-life problem you are solving, address the difficulty of the problem, give the abstraction of the problem, and major goal of the project.
Introduce the dataset, data collection and data preprocessing approaches in your project.
To design the database, you may need to make some assumptions for modeling because real-life problems sometimes do not provide enough information. But, all your assumptions have to be realistic.
Your report must include your final ER diagram and a brief description of each entity and relationship set.
You need to give all functional dependencies and schemas.
If your schemas are in the 3rd normal forms. If not, you need to decompose them and show the steps in detail.
You need to describe the primary keys.
List all front-end and back-end functions that you have implemented.
List the SQL codes and explanations of main functions in your project.
Workload and contribution of each team member.

Bonus (Maximum 10%)
Use foreign keys. For example, the table student has students’ information and the table registration has courses registered by each student. If one tuple is removed from student, the corresponding tuple(s) will also be removed from registration.
Use triggers to implement constraints other than not null, primary key, unique, or referential. For example, the table student has an attribute credit showing the total credits earned by each student. Then, if a student finishes a course of 3 credits, his/her credit will be increased by 3 automatically.
Other outstanding or innovative features in addition to the implementation of correct and complete fundamental functions.
Presentation & Report Tips
The presentation should follow the top-down procedure. Please start your presentation from the problem definition and assume that audiences know nothing about your project.
Describe your database design on a high level, ER diagram for example.
Highlight the critical points, constraints and triggers for example.
Prepare some good slides.
Do NOT make your presentation as function demonstration.
Time is limited. You cannot show all details in a short presentation. Attract people’s attention by some shining gold.

Grading
Report 20%
Presentation 10%
Website Implementation 20%
Database Design and Implementation 50%
Bonus 10% (maximum)
Submission
We established the following milestones to ensure that no one begins working on the project at the eleventh hour.
1.April 8 – April 12nd: Choose your group via the grouping link on iSpace. You need to find your teammates. Each group consists of 3 students. For the students who cannot find groups, contact TA for help.
2.April 12nd - April 26th: Project proposal submission, which contains:
A problem description. You should define the problem that you are solving, why you are interested in this problem, the information that you want to model in your system, and the features that your system will include.
The first draft of the ER diagram.
Assumptions and expected outcomes of your project.
3.April 26th - May 18st: Web Application Development.
4.May 20th - May 25th: Project presentation and final submission. The submission includes:
oThe report of the whole project.
oAll code for your application, including the web scraping code, data preprocessing and analysis code, database code (.sql) and web development code.
oAny auxiliary files needed by your program to create the database and application.

One group only submits one copy to iSpace by the team leader. For proposal submission, rename your files as “COMP3013_ProposalGroup###.docx”, where ### is your group number. And also rename your final submission package as “COMP3013_Group###.zip”.

站长地图