Professional Documents
Culture Documents
ASM1 1st DatabaseDesignAndDevelopment PhungAnhTuan BH01110-1
ASM1 1st DatabaseDesignAndDevelopment PhungAnhTuan BH01110-1
ASM1 1st DatabaseDesignAndDevelopment PhungAnhTuan BH01110-1
Unit number and title Unit 04: Database Design & Development
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.
P1 M1 D1
❒ Summative Feedback: ❒ Resubmission Feedback:
II. CONTENT................................................................................................................................................................................................6
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. ....................................................................................................................................6
3. User roles...................................................................................................................................................................................... 10
6. Physical Design.............................................................................................................................................................................. 15
Furthermore, I extend my heartfelt gratitude to my friends, whose collaboration and assistance have significantly contributed to
enhancing my understanding and mastery of the subject matter. Their insights, discussions, and shared experiences have enriched
my learning journey, fostering a collaborative and supportive academic environment.
Additionally, I wish to acknowledge the school administration for providing me with all the necessary resources and facilities
necessary for conducting my research and completing my academic tasks. The supportive learning environment and well-equipped
facilities have played a pivotal role in facilitating my work and enabling me to accomplish my goals effectively.
Moving forward, I am eager to put the results of my research to the test and operationalize the system, marking the culmination of
the Database Design & Development process. This assignment presents an exciting opportunity to apply the theoretical knowledge
and practical skills acquired throughout the course of my studies. I am eager to embark on this journey and explore the intricacies of
building a comprehensive database system.
II. CONTENT
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.
2. System requirements
• Developing the FPT relationship database and organizing it into detailed and precise categorizations has the potential to
address all the challenges outlined previously.
- Student: Refers to individuals who are currently enrolled in academic programs or courses within the educational
institution. Attributes: StudentID (Primary Key), Name, Email
- Faculty: Denotes educators or instructors who are responsible for teaching various courses offered by the institution.
Attributes: FacultyID (Primary Key), Name, Email
- Department: Signifies the organizational units or academic divisions within the college, typically aligned with specific
fields of study or disciplines. Attributes: DepartmentID (Primary Key), Name
- Course: Represents the individual educational offerings provided by the college, encompassing lectures, seminars, and
workshops. Attributes: CourseID (Primary Key), Title, Description, DepartmentID (Foreign Key), FacultyID (Foreign
Key), ClassroomID (Foreign Key),
- Classroom: Designates the physical spaces within the institution where instructional activities, such as lectures or
discussions, take place. Attributes: ClassroomID (Primary Key), Location, Capacity
- Semester: Denotes the academic periods or terms during which courses are offered, delineated by specific timeframes
such as Fall 2024 or Spring 2025. Attributes: SemesterID (Primary Key), Name, StartDate, EndDate
- Schedule: Refers to the structured timetable of classes, detailing the dates, times, and locations for each course offered
during a given semester. Attributes: ScheduleID (Primary Key), CourseID (Foreign Key), ClassroomID (Foreign Key),
SemesterID (Foreign Key), StartDateTime, EndDateTime
- Enrollment: Indicates the process or status of students officially registering for and participating in specific courses
offered by the institution.
• Functional requirements delineate the precise functions or capabilities essential for a system to effectively fulfill the
requirements and expectations of its users. In the context of a college Schedule System, functional requirements encompass
a range of features and functionalities essential for facilitating efficient scheduling processes. Functional requirements may
encompass:
- User Authentication and Authorization: The system should possess robust mechanisms for user authentication, ensuring
that individuals logging in, such as students or faculty members, are verified and granted appropriate access levels in
accordance with their designated roles within the system, which could include distinctions like student, instructor, or
administrator.
- Course Management: Administrators should be afforded the capability to undertake a spectrum of tasks related to
course administration, encompassing the creation, modification, and deletion of course details. These details may
encompass essential elements such as course titles, descriptions, faculty assignments, departmental affiliations, and
prerequisites.
- Schedule Management: Administrative personnel should be empowered with functionalities to orchestrate schedules
for each academic semester. This includes the ability to allocate specific courses to designated time slots and physical
classrooms, as well as mechanisms to resolve scheduling conflicts as they arise.
- Enrollment Management: The system should facilitate a seamless enrollment process for students, providing them with
the ability to explore available courses, access comprehensive details about each course, and enroll as needed.
Meanwhile, administrators should be equipped with tools to oversee course enrollments, including the capacity to add
or remove students from courses as required.
- Faculty Management: Administrators should be provided with functionalities to manage faculty-related information
comprehensively. This encompasses tasks such as assigning instructors to specific courses, updating faculty profiles with
relevant information, and tracking teaching assignments to ensure efficient utilization of faculty resources.
- Classroom Management: Administrative personnel should be furnished with utilities to efficiently manage classroom
resources within the institution. This entails tasks such as allocating appropriate classrooms to courses, monitoring
classroom availability, and facilitating the reservation of classrooms for academic activities.
- Notification and Reminders: The system should incorporate robust features for disseminating timely notifications and
reminders to users concerning a variety of pertinent matters, including upcoming classes, alterations to schedules,
registration deadlines, and other critical events that may impact the academic community.
- Reporting and Analytics: The system should offer sophisticated reporting capabilities, enabling the generation of
comprehensive reports on various aspects of academic operations. These reports may encompass metrics such as course
enrollments, classroom utilization rates, faculty workload distribution, and other pertinent data to inform decision-
making and strategic planning initiatives.
- Integration: Seamless integration with existing systems within the college ecosystem, such as student information
systems, learning management platforms, and faculty databases, should be prioritized to ensure data coherence and
facilitate streamlined workflows across different administrative functions within the institution.
- Accessibility and Usability: The system should be designed with accessibility in mind, ensuring that it is user-friendly and
accessible to individuals with disabilities. Features such as keyboard navigation, compatibility with screen readers, and
the provision of adjustable font sizes should be incorporated to enhance usability and accommodate diverse user needs.
3. User roles
• Within a Schedule System tailored for a college or university environment, diverse users are allocated varying roles and
permissions commensurate with their individual responsibilities and requisites within the system. These roles are structured
to accommodate the diverse operational requirements and duties encountered within the academic setting. Some of the
user roles that could potentially exist within such a system include:
- College managers: This role have full control over the Schedule System. They manage user accounts, configure system
settings, create and manage courses, generate schedules, and oversee the overall functionality of the system. They
might have broader responsibilities compared to managers, including system maintenance, security management, and
integration with other systems.
- Faculty/Instructor: Faculty members or instructors are endowed with access privileges tailored to their roles within the
Schedule System. They are equipped with functionalities pertinent to course management and scheduling, enabling
them to oversee their teaching assignments, manage course particulars, input grades, engage in communication with
students, and access a plethora of course-related information vital to their instructional duties.
- Student: Students are afforded access to functionalities geared towards facilitating their academic journey within the
Schedule System. This includes features centered around course enrollment, schedule perusal, and academic planning,
empowering them to search for courses, peruse detailed course information, enroll in desired courses, review their class
schedules, and receive timely notifications pertaining to schedule modifications or significant deadlines.
- Department Chair: Department chairs assume administrative responsibilities specific to their designated academic
departments within the Schedule System. They exercise oversight over various facets of departmental operations,
encompassing course offerings, approval of course schedules, assignment of faculty members to courses, and monitoring
of departmental resources and activities germane to scheduling endeavors.
- Registrar: The registrar or registration staff are entrusted with duties integral to enrollment management and
maintenance of academic records within the Schedule System. Their responsibilities entail the management of course
enrollments, facilitation of registration processes, resolution of scheduling conflicts, and generation of academic reports
and transcripts essential for maintaining the integrity of academic records.
- System Support Staff: System support staff serve as the primary technical support resource for users engaging with the
Schedule System. Their role entails troubleshooting technical issues, delivering training sessions and comprehensive
documentation, executing routine system maintenance and updates, and ensuring the seamless functionality and
optimal performance of the system to meet the diverse needs of its user base.
6. Physical Design
• The realization of a database within an operational system embodies a physics-grounded concept. While the logical design
phase can proceed independently of the ultimate database platform, numerous physical database attributes hinge upon the
intricacies and semantic nuances of the targeted Database Management System (DBMS).
- The transition from logical design to concrete table definitions involves a series of preparatory steps encompassing pre-
deployment blueprints, table definitions, standardization procedures, establishment of primary and foreign key
relationships, and fundamental indexing strategies.
- Following deployment, the refinement of the physical database design is often entrusted to a database manager, who
oversees the post-deployment phase, ensuring that the database aligns with the operational requirements and optimizes
performance in accordance with the organizational objectives.
• Using the INT data type for ID columns is a prevalent practice in database design, attributed to various advantages:
- Efficiency: Integer data types (INT) use less storage space compared to larger data types like BIGINT. This efficiency
becomes significant when dealing with large tables or when the ID column is frequently used in indexes or joins.
- Performance: Integer comparisons and arithmetic operations are generally faster than those involving larger data types.
This can lead to improved query performance, especially in complex queries or when dealing with large datasets.
- Range: The INT data type can accommodate a wide range of values, with a range of approximately -2 billion to 2 billion
for signed integers (INT). This range is typically sufficient for most applications, including college scheduling systems.
- Compatibility: Integer IDs are widely supported across database systems and programming languages. Using a standard
data type enhances interoperability and simplifies integration with other systems.
- Clarity: Using a numeric data type like INT for ID columns makes it clear that the column is intended for storing unique
identifiers. This enhances the readability and maintainability of the database schema.
• The NVARCHAR(100) data type is frequently employed in SQL Server for specifying string columns capable of storing Unicode
characters, and there are several reasons behind its usage:
- Unicode Support: NVARCHAR is designed to store Unicode data, which means it can handle characters from multiple
languages and character sets, including special characters, symbols, and emojis. This is important in a college
environment where names, titles, descriptions, and emails may contain characters from various languages.
- Length Specification: The length specified within parentheses (e.g., (100)) indicates the maximum number of characters
that the column can store. In this case, NVARCHAR(100) allows for up to 100 characters in the column. Specifying a
length helps enforce data integrity and prevent storage of excessively long values.
- Flexibility: Choosing a reasonable length (e.g., 100) provides flexibility to accommodate most typical values without
wasting storage space. It's a balance between allowing sufficient space for data and avoiding excessive storage
consumption.
- Compatibility: Using NVARCHAR ensures compatibility with different languages and character sets, making the database
more versatile and accessible.
III. CONCLUSION
Upon finalizing this report, I have gained a c omprehensive understanding of the fundamental principles, analysis techniques, and
specifications involved in developing a Database Design & Development system, along with their operational dynamics. Additionally,
through hands-on experience with Microsoft SQL Management System software, I have acquired the skills necessary to proficiently
design and code a comprehensive database, paving the way for the development of websites or applications. As a result, I am now
equipped with the confidence to discern and select the appropriate tools and establish workflows tailored to my specific needs in
development and database management.
IV. REFERENCES
Studocu. (2022). Scheduling System Chapter 1 4. [online]
Available at: https://www.studocu.com/ph/document/marinduque-state-college/bachelor-of-science-in-information-
systems/scheduling-system-chapter-1-4/70836932 [Accessed 21 Feb. 2024].
support.microsoft.com. (n.d.). Database design basics. [online]
Available at: https://support.microsoft.com/en-gb/office/database-design-basics-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5.
[Accessed 22 Feb. 2024].
docs.devart.com. (n.d.). Create a Database Diagram in SQL Server. [online]
Available at: https://docs.devart.com/studio-for-sql-server/designing-databases-with-database-designer/creating-database-
diagram.html [Accessed 23 Feb. 2024].