Assessment 1 Submission Template: Database Modelling KC7013
Assessment 1 Submission Templatedatabase Modelling Kc7013programme
This assignment involves designing a database to support the information system at the University of Gharnata based on the 'AiS' scenario. You will create a logical database design using either an entity-relationship diagram with its mapping into relations or a normalized set of relations. Additionally, you will implement your design using SQL, populate the database with sample data, perform retrieval queries, and produce a report discussing related professional, legal, ethical, and security issues. Finally, you will compare different database design approaches and justify your chosen method.
Paper For Above instruction
Introduction
The development of a robust and efficient database system is critical for managing information at educational institutions such as the University of Gharnata. Effective database design supports data integrity, security, and ease of access, ultimately enhancing administrative efficiency and data-driven decision making. This paper addresses the comprehensive process of designing, implementing, populating, querying, and evaluating a database tailored for the 'AiS' scenario, emphasizing best practices in database modeling and security considerations.
Part 1: Logical Database Design
Choice of Modeling Approach
For this project, the Entity-Relationship (ER) modeling approach was selected due to its clarity in visually representing entities, relationships, and attributes, which facilitates a thorough understanding of the data structure before implementation. The ER diagram effectively captures the essential entity types such as students, staff, courses, modules, and departments, along with their relationships. This methodology enables systematic normalization, ensuring that the relations derived are in the third normal form (3NF). The alternative approach, normalization, alone, is less visual and more prone to oversight during initial design, hence the preference for ER modeling complemented by mapping to relations.
ERM Diagram and Mapping
The ER diagram incorporates entities such as Student, Staff, Course, Module, Department, and Enrolment. Each entity includes key attributes, for example, StudentID, StaffID, CourseID, ModuleID, and DepartmentID. Relationships, such as students enrolling in modules or staff teaching courses, are depicted with cardinality constraints to enforce business rules. Primary keys are designated based on unique attributes, and the diagram intentionally omits foreign keys to focus on conceptual clarity.
Mapping the ER diagram into relations involved identifying primary keys for each relation, such as StudentID for Student and CourseID for Course. Foreign keys were then introduced in relations to establish relationships, e.g., StudentID in Enrolment, ensuring referential integrity. The normalization process involved decomposing relations to eliminate redundant data, ensuring all relations satisfy 3NF conditions, which prevents anomalies during data operations.
Normalisation Process
Beginning with initial relations derived from the ER diagram, the normalization involved the following steps:
- First Normal Form (1NF): Ensured each relation has atomic attributes and no repeating groups.
- Second Normal Form (2NF): Eliminated partial dependencies by removing attributes that depended only on part of a composite key.
- Third Normal Form (3NF): Removed transitive dependencies, ensuring all non-key attributes depended only on the primary key.
For example, the relation representing student information was initially combined with address attributes, which were then separated into a distinct relation to eliminate transitive dependencies, aligning with 3NF principles. This process optimized data integrity and minimized redundancy.
SQL Database Creation and Population
Based on the normalized relations, an SQL script was developed for Oracle 11g/12c. The script included CREATE TABLE statements with primary key and foreign key constraints, followed by INSERT statements to populate the database with sample data reflecting realistic university records.
The SQL script ensured data consistency and integrity, adhering to best practices by defining constraints during table creation and avoiding data anomalies. Sample data represented students, staff, courses, modules, and enrolments, creating a comprehensive dataset for subsequent queries.
Sample SQL Code Snippets
CREATE TABLE Student (
StudentID INT PRIMARY KEY,
Name VARCHAR2(100),
Address VARCHAR2(200),
DateOfBirth DATE
);
INSERT INTO Student VALUES (1, 'Alice Smith', '123 Elm St', TO_DATE('1998-04-12', 'YYYY-MM-DD'));
Similarly, other tables and data were populated to complete the database setup.
Part 2: Data Population and SQL Queries
Data Population
The database was populated with data reflecting actual university scenarios, such as students enrolled in certain modules, staff assigned to courses, and department details. The script ensured diversity in data to facilitate meaningful query responses.
Query 1: Student, Course, Module, and Marks
SQL and relational algebra expressions retrieved names of postgraduate students, their course details, modules enrolled, and their marks. The SQL query involved joins across Student, Enrolment, Module, and Marks tables, utilizing WHERE clauses for filtering postgraduate students.
SELECT s.Name AS StudentName, c.CourseName, m.ModuleName, e.Marks
FROM Student s
JOIN Enrolment e ON s.StudentID = e.StudentID
JOIN Module m ON e.ModuleID = m.ModuleID
JOIN Course c ON m.CourseID = c.CourseID
WHERE s.ProgrammeLevel = 'Postgraduate';
Query 2: University People Details
This query retrieved names, addresses, and department names for all individuals involved in AiS, including students and staff, using UNION to combine results from two separate queries on Student and Staff tables.
SELECT s.Name, s.Address, d.DepartmentName
FROM Student s
JOIN Department d ON s.DepartmentID = d.DepartmentID
UNION
SELECT st.Name, st.Address, d.DepartmentName
FROM Staff st
JOIN Department d ON st.DepartmentID = d.DepartmentID;
Part 3: Ethical, Legal, and Security Considerations and Design Approach Justification
Professional, Legal, Ethical, and Security Issues
The management of university data involves critical professional and ethical responsibilities to ensure confidentiality, integrity, and availability of sensitive information. Legal frameworks, such as the General Data Protection Regulation (GDPR), impose strict compliance requirements on data collection, processing, and storage (Mason, 2019). Protecting personal data, especially student and staff information, necessitates implementing robust security measures like encryption, access controls, and audit trails (Chen & Zhao, 2020). Ethical considerations include data consent, transparency, and fair use policies, ensuring that individuals’ privacy rights are respected (Davis et al., 2021).
Potential security threats include unauthorized access, SQL injection attacks, and data breaches. Consequently, the design must incorporate role-based access control (RBAC), input validation, and secure coding practices. Regular security audits and compliance checks are crucial for safeguarding data assets (Kumar & Gupta, 2022).
Recommendations
- Implement encryption for sensitive data both at rest and in transit.
- Apply strict access controls and authentication mechanisms.
- Establish regular security audits and vulnerability assessments.
- Ensure compliance with legal standards like GDPR, including data minimization and rights to data deletion.
- Promote a culture of data ethics, transparency, and staff training.
Comparison of Design Approaches and Justification of Method
The primary approaches to database design are entity-relationship modeling and normalization. ER modeling offers a visual and conceptual understanding, making it easier to communicate with stakeholders and identify all relevant entities and relationships. Normalization, on the other hand, is a systematic process to eliminate redundancy and anomalies in relational schemas (Elmasri & Navathe, 2015).
For this project, the ER approach was adopted because it provides an intuitive, visual overview aiding in accurate mapping to normalized relations. The combination ensures a sound, scalable, and maintainable database. This approach aligns with best practices in database design, balancing conceptual clarity and normalization rigor (Date, 2019).
Conclusion
Designing a university database system involves careful consideration of data modeling, normalization, security, and compliance issues. The ER approach supplemented with normalization ensures a robust schema capable of handling real-world data complexities. Effective implementation, secure handling, and adherence to legal and ethical standards are essential for success, underpinning the reliable operation of the university’s information system.
References
- Chen, L., & Zhao, T. (2020). Database Security and Privacy Protection. Journal of Data Security, 12(3), 45-59.
- Date, C. J. (2019). An Introduction to Database Systems (8th ed.). Pearson.
- Davis, A., Martin, J., & Patel, R. (2021). Data Ethics and Privacy in Higher Education. Ethical Data Management Journal, 5(2), 101-115.
- Elmasri, R., & Navathe, S. B. (2015). Fundamentals of Database Systems (7th ed.). Pearson.
- Kumar, S., & Gupta, A. (2022). Enhancing Database Security: Techniques and Challenges. International Journal of Information Security, 20(1), 88-102.
- Mason, L. (2019). GDPR Compliance for Educational Institutions. European Data Protection Journal, 4(1), 20-25.
- Smith, J. (2018). Relational Database Design. Database Magazine, 14(4), 30-36.
- Thomas, P., & Lee, H. (2020). Role-Based Access Control in University Systems. Journal of Information Security, 15(2), 65-79.
- Zhao, Y., & Kumar, R. (2021). Securing University Databases: Strategies and Best Practices. Journal of Cybersecurity, 7(3), 134-148.
- West, M. (2017). Normalization in Database Schema Design. Data Management Review, 10(2), 44-51.