0% found this document useful (0 votes)
48 views17 pages

ASM1 1ST Database

The document outlines the design of a relational database system for a content management system (CMS) used by an educational institution. It analyzes the functional and role-based requirements of the system and defines rules for data integrity and user access. Entity relationship diagrams are presented showing tables for users, students, instructors, classes, roles, courses, grades, and assignments along with the relationships between them. The well-designed database aims to effectively manage resources and provide functionality for administrators, instructors and students.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views17 pages

ASM1 1ST Database

The document outlines the design of a relational database system for a content management system (CMS) used by an educational institution. It analyzes the functional and role-based requirements of the system and defines rules for data integrity and user access. Entity relationship diagrams are presented showing tables for users, students, instructors, classes, roles, courses, grades, and assignments along with the relationships between them. The well-designed database aims to effectively manage resources and provide functionality for administrators, instructors and students.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

ASSIGNMENT 1 FRONT SHEET

Qualification TEC Level 5 HND Diploma in Computing

Unit number and title Unit 04: Database Design & Development

Submission date 22-10-2023 Date Received 1st submission

Re-submission Date Date Received 2nd submission

Student Name Nguyen Chi Thanh Student ID BH00887

Class SE06205 Assessor name Nguyen Thanh Trieu

Student declaration

I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.

Student’s signature Thanh

Grading grid

P1 M1 D1

1|Page
2|Page
❒ Summative Feedback: ❒ Resubmission Feedback:

Grade: Assessor Signature: Date:

3|Page
Signature & Date:

Contents

I. INTRODUCTION....................................................................................................................................................................................4
II. DESIGN THE RALATIONAL DATABASE SYSTEM.....................................................................................................................................4
1. Analyse the requirements and rules of the system..........................................................................................................................4
2. Design entity relationship model......................................................................................................................................................6
III. Conclusion.......................................................................................................................................................................................15
References..................................................................................................................................................................................................16

Hình 1:diagrams...........................................................................................................................................................................................6
Hình 2:Users................................................................................................................................................................................................8
Hình 3:Roles................................................................................................................................................................................................9
Hình 4:Instructors......................................................................................................................................................................................10
Hình 5:Students.........................................................................................................................................................................................11
Hình 6:Courses..........................................................................................................................................................................................12
Hình 7:Classes...........................................................................................................................................................................................13
Hình 8:Grades............................................................................................................................................................................................14
Hình 9:Assignments...................................................................................................................................................................................15

4|Page
I. INTRODUCTION
As a database developer working with large educational institutions like FPT schools, I'm currently engaged in the design and
development of a Content Management System (CMS). Given the continuous growth in the student population at FPT schools, the
need for a nimble and efficient system to manage and deliver services has become paramount in this expansive educational setting.

The primary objective of this project is to establish a comprehensive CMS tailored for students, teachers, and administrators. This
CMS aims to provide a user-friendly experience, enabling students to effortlessly discover and access the educational materials and
resources they require, while teachers can manage their resources and assignments efficiently. Additionally, it will facilitate the
registration and management of digital book borrowing, streamlining the process by utilizing online coupons.

In this endeavor, we will strategically employ a selection of tools, software, and programming languages to fulfill the outlined
requirements. The CMS will cater to three main user groups: administrators, teachers, and students. Our key challenge is to develop
an integrated database system that seamlessly connects these user segments while maintaining an optimal user experience. The end
goal is to deliver a fully operational system that adheres to industry standards and operational criteria, all while effectively managing
the wealth of digital resources and educational documents required in this dynamic educational environment.. (sql, 2021)
(relationship, 2023) (ahihi, 2023)

II. DESIGN THE RALATIONAL DATABASE SYSTEM

1. Analyse the requirements and rules of the system


a) Functional requirements:
 Create and manage user accounts, including lecturers, students and administrators (admin).
 Authenticate user identities and manage access rights
 Create and manage courses and classes
 Upload and manage teaching content, study materials and assignments
5|Page
 Allows instructors to evaluate and grade assignments, tests, and projects
 Allows students to view their scores and academic results
b) Role requirements:
 Role of administrator (Admin):
o The CMS can be accessed through the login page.
o Manage user accounts, including creating, editing, and deleting accounts for instructors, training staff, and
students.
o Assign or change a username and password for a user.
o Manage courses, including searching, adding, updating, and deleting courses with names and descriptions.
o Manage topics in courses, add topic names and descriptions.
 Role of the instructor:
o Log in using the username and password specified by the administrator.
o View and search student list.
o Update and delete student accounts in classes
o Manage course categories, including searching, adding, updating, and deleting categories.
o Create instructional content including assignments, references, and assessments.
o Evaluate assignments and test plans for students.
o Provide scores to students and review their learning progress.
 Student role:
o Log in using your administrator credentials.
o View courses and assigned classes.
o Complete assignments and projects assigned by instructors.
o View scores and study results.
c) System rules:
 Only authorized users with valid accounts can access the CMS.
 Access rights are based on roles, and users should only access data and features relevant to their role.
 Data input should follow specific formats and validation rules to ensure data integrity.
 Mandatory fields must be completed when adding or editing content.
6|Page
 All content revisions and updates should be documented.
 Regular automated backups of the CMS and its data should be performed to prevent data loss.
 A recovery plan should be in place to restore the system in case of data corruption or failure.
 New users should receive training on CMS usage and best practices.
 Data should be retained for a specified period based on legal or institutional requirements.
 A process for secure data deletion should be in place when data is no longer needed.

2. Design entity relationship model


a) Database Diagrams

7|Page
Hình 1:diagrams

 This relationship diagram plays an extremely important role in designing CMS management system, with tables such as
Users, Students, Instructors, Classes, Roles,Courses,Grades,Assignments. This design table helps us analyze and build
relationships between attributes and between tables to manage user information.
 Student - User (One-to-one relationship table): Each student has a separate user account in the system.
 Instructor - User (One-to-one relationship table): Each instructor has a separate user account in the system.

8|Page
 Instructor - Assignments (Many-to-Many): Instructors can assign many assignments, and each assignment can be assigned by
many instructors. This relationship supports multiple instructors collaborating on the same assignment or an instructor
assigning multiple assignments.
 Instructor - Courses (Many-to-Many): Instructors can teach many courses, and each course can be taught by many
instructors. This relationship enables multiple instructors to teach the same course or an instructor teaching multiple
courses.
 Students - Assignments (Many-to-Many): Students can be assigned many assignments, and each assignment can be assigned
to many students. This relationship accommodates assignments that are relevant to multiple students and students working
on multiple assignments.
 Students - Classes (Many-to-Many): Students can participate in many classes, and each class can have many students. This
relationship reflects the enrollment of students in various classes and classes with multiple students.
 Students - Grades (Many-to-Many): Students can receive many grades, and each grade can be related to many students. This
relationship handles the grading of students across different courses and assignments.

b) Table
1) Users

Hình 2:Users

9|Page
Column Data Type Description
UserID Bigint is the primary key that uniquely identifies
each record in the users table.
Username Varchar(50) This field stores the username logged into
the system CMS. This is information to
identify users and interact with the
system.
Password Varchar(50) This field stores the user's password
encrypted. Passwords are used to ensure
security and user authentication.
RoleID Bigint This field is a foreign key to the Roles
table, used to distinguish user roles.
Created_at Datetime This field stores the date and time of
creation of the user record in the system.
This information provides information
about the time the user was created.
Updated_at Datetime This field stores the last updated date and
time of the user record in the system.
This information provides information
about the last update to the user record
Deleted_at Datetime This field can be used to mark a deleted
user in the system.
 Users table to store information about users and maintain a list of user accounts in the system. The main function is to
identify users and manage their roles.
2) Roles

10 | P a g e
Hình 3:Roles

Column Data Type Description


RoleID Bigint Primary keys, representing different roles
in the system (e.g. lecturer, student).
RoleName Varchar(50) Name of the role
 Roles table to define roles in the system (e.g. lecturer, student). The main function is to manage the list of available roles.
3) Instructors

Hình 4:Instructors

Column Data Type Description


11 | P a g e
InstructorID Bigint Primary key, unique for each instructor.
UserID Bigint Link to the Users table to identify the
instructor's user account.
InstructorName Varchar(50) Name of instructor
Email Varchar(50) Instructor's email address.
 Instructors table stores information about instructors, including information related to name, email, and user accounts. The
main function is to monitor and manage lecturers' information.
4) Students

Hình 5:Students

Column Data Type Description


StudentID Bigint Primary key, unique for each student.
UserID Bigint Link to the Users table to identify student
user accounts.
StudentName Varchar(50) Name of student
Email Varchar(50) Student email address.
 Student table stores information about students, including names, emails, and user accounts. The main function is to track
and manage student information.
5) Courses

12 | P a g e
Hình 6:Courses

Column Data Type Description


CourseID Bigint Primary key, unique for each course.
InstructorID Bigint Link to the Instructors table to identify
the instructor responsible for teaching
the course.
CourseName Varchar(50) Name of Courses
 Courses table store information about courses. The main function is to track and manage information about specific courses.
6) Classes

13 | P a g e
Hình 7:Classes

Column Data Type Description


ClassID Bigint Primary key, unique for each class.
InstructorID Bigint Link to the Instructors table to identify
classroom management instructors.
CoursesID Bigint Link to the Courses table to identify the
course to which the class belongs.
ClassName Varchar(50) Name of Classes
 Classes table store information about classes in courses. The main function is to manage information about classes and link
them to courses and instructors.
7) Grades

14 | P a g e
Hình 8:Grades

Column Data Type Description


GradeID Bigint Primary key, unique for each result
record.
StudentID Bigint Link to the Students table to identify the
students associated with the results.
ClassID Bigint Link to the Classes table to identify the
class associated with the result.
Grade Float Student scores or results in a particular
class.
 Grades table store information about student results in classes. The main function is to track and manage information about
student results.
8) Assignments

15 | P a g e
Hình 9:Assignments

Column Data Type Description


AssignmentID Bigint Primary key, unique for each exercise.
ClassID Bigint Link to the Classes table to identify the
class associated with the assignment.
AssignmentName Varchar(50) Name of the exercise.
Description Text Detailed description of the exercise.
Duedate Date Assignment due date.
 Assignment table store information about assignments assigned to students in class. The main function is to track and
manage information about assignments and due dates.

III. Conclusion
During the process of designing the database for the CMS system, we took a series of important steps to ensure that the system was
built with consistency, reliability and efficiency. Here are some important points about the database design set:

Research and Analysis: Before starting design, we conducted a careful research and analysis process to understand the system
requirements and how the data would be used.

16 | P a g e
Relationship Management: We have designed the tables and relationships between them to ensure that information is logically
organized and easily accessible.

Efficiency and Security: Ensure that the database is designed for operational efficiency while protecting important and trusted data.

Maintain and Update: Recognize that a CMS system is never complete and will have to be maintained and updated regularly to meet
new requirements and fix bugs.

Flexibility: The database design needs to be flexible so that it can be expanded and adapted to the specific needs of the system and
users.

In short, the process of designing a database for a CMS system is an important part of building a powerful content management
system. Applying the principles of data normalization, relationship management, and ensuring database security and efficiency plays
an important role in creating a reliable and flexible CMS system.

References
ahihi, 2023. [Online]
Available at: https://quantrimang.com/13-cau-lenh-sql-quan-trong-programmer-nao-cung-can-biet-136595

relationship, 2023. [Online]


Available at: https://blog.devart.com/types-of-relationships-in-sql-server-database.html

sql, 2021. [Online]


Available at: https://topdev.vn/blog/sql-server-la-gi/

17 | P a g e

You might also like