This course aims to explore in-depth the practice of developing database applications and the theory behind relational database management systems (RDBMSs). This course focuses on Database Design. It will also give an overview of the technologies used in implementing database management systems and the past, present, and future of database systems and database research.
Large data resources are critical to the functioning of just about every significant modern computer application, and so knowledge of how to manage them is clearly important in the industry. In the context of further study, understanding how to use databases effectively is essential for courses such as COMP9321 Web Applications Engineering and COMP9322 Service-Oriented Architectures. COMP9311 also provides a foundation for further study in advanced database topics, such as COMP9315 Database Systems Implementation and COMP9318 Data Mining. Database concepts are also relevant in courses such as COMP9319 Web Data Compression and Search and COMP6714 Information Retrieval and Web Search.
By the end of the course, you should be able to:
Glossary:
The following table summarises the planned weekly activities for the course. These are tentative. Please refer to the relevant sections of the course homepage for the most up-to-date information about the weekly schedule throughout the course delivery period.
# | Lecture (Monday) | Lecture (Thursday) | Labs |
Assessments
|
1 |
Subject Introduction,
|
Conceptual DB Design (ER) |
No Lab |
|
2 |
Relational Data Model
|
Relational Algebra |
Lab01 – setting up a database server |
Assignment 1:
Data Modelling and Relational Algebra |
3 | No Lecture |
SQL |
Lab02 – schema definition and data constraints |
|
4 |
SQL (continue), PLpgSQL |
PLpgSQL (continue) |
Lab03 – SQL practice |
Assignment 1 Due
|
5 |
Functional Dependencies |
Normal Forms |
Lab04 – SQL queries with view definitions | Project 1: SQL (Monday Release) |
6 | QUIET WEEK | QUIET WEEK | QUIET WEEK | QUIET WEEK |
7 |
Relational DB Design |
Disks, Files, Index
|
Lab05 - SQL functions and PLpgSQL functions
|
Project 1 Due
|
8 |
Transaction Management
|
Transaction Management (continue) |
Lab06 - database triggers |
Assignment 2:
DB Design Theory, Database Storage Structures and Transaction |
9 |
NoSQL
|
NoSQL (cont) |
Lab07 - relational design theory | |
10 |
Advanced Topics (Guest Lecture)
|
Revision |
Lab08 - a practice on SQLite (an alternative DB)
|
Assignment 2 Due
|
Lecture Times
Mon 10:00 - 12:00 (week 1-2,4-5,7-10)
Thu 15:00 - 17:00 (week 1-5,7-10)
Consultation Times
Thu 10:00 - 12:00 (week 1-10)
Number | Name | Full Mark |
1 * | Assignment 1: Data Modelling + Relational Algebra | 25 |
2 * | Assignment 2: DB design Theory + Transaction | 25 |
3 * | Project 1 | 50 |
4 | Final Exam | 100 |
Later Submission Penalties:
*: 5% reduction of max mark for each date, maximum 5 days |
||
The final mark is calculated by the geometric mean:
Final Mark = sqrt ( (ass1 + ass2 + proj1) * Final Exam) |
Marking will be against specific criteria in a marking guide and formal feedback on your assessment task will be provided
You are invited to meet us during consultation time slots and during the lab periods if you have any questions. You may also use the Q&A forums. You are also welcome to contact the lecturer (zyang@cse.unsw.edu.au) if and only if the course forum is not appropriate for your questions. Otherwise, direct your queries to the WebCMS2 forum.
No textbook are required. The following is a list of recommended reading.
Author(s) | Title | Edition | Publisher/Year |
Elmasri & Navathe | Fundamentals of Database Systems | 7th | Addison-Wesley, 2015 |
Jeffery D. Ullman, Jennifer Widom | A First Course in Database Systems | Recent Edition | Prentice Hall |
R. Ramakrishan | Database Management Systems | 3rd | McGraw-Hill, 2003 |
D. Maier | The Theory of Relational Databases | 1st | Computer Science Press, 1983 |
The Student Code of Conduct ( Information , Policy ) sets out what the University expects from students as members of the UNSW community. As well as the learning, teaching and research environment, the University aims to provide an environment that enables students to achieve their full potential and to provide an experience consistent with the University's values and guiding principles. A condition of enrolment is that students inform themselves of the University's rules and policies affecting them, and conduct themselves accordingly.
In particular, students have the responsibility to observe standards of equity and respect in dealing with every member of the University community. This applies to all activities on UNSW premises and all external activities related to study and research. This includes behaviour in person as well as behaviour on social media, for example Facebook groups set up for the purpose of discussing UNSW courses or course work. Behaviour that is considered in breach of the Student Code Policy as discriminatory, sexually inappropriate, bullying, harassing, invading another's privacy or causing any person to fear for their personal safety is serious misconduct and can lead to severe penalties, including suspension or exclusion from UNSW.
If you have any concerns, you may raise them with your lecturer, or approach the School Ethics Officer , Grievance Officer , or one of the student representatives.
Plagiarism is defined as using the words or ideas of others and presenting them as your own. UNSW and CSE treat plagiarism as academic misconduct, which means that it carries penalties as severe as being excluded from further study at UNSW. There are several on-line sources to help you understand what plagiarism is and how it is dealt with at UNSW:
Make sure that you read and understand these. Ignorance is not accepted as an excuse for plagiarism. In particular, you are also responsible that your assignment files are not accessible by anyone but you by setting the correct permissions in your CSE directory and code repository, if using. Note also that plagiarism includes paying or asking another person to do a piece of work for you and then submitting it as your own work.
UNSW has an ongoing commitment to fostering a culture of learning informed by academic integrity. All UNSW staff and students have a responsibility to adhere to this principle of academic integrity. Plagiarism undermines academic integrity and is not tolerated at UNSW. Plagiarism at UNSW is defined as using the words or ideas of others and passing them off as your own.
If you haven't done so yet, please take the time to read the full text of
The pages below describe the policies and procedures in more detail:
You should also read the following page which describes your rights and responsibilities in the CSE context:
Special consideration is the process for assessing the impact of short-term events beyond your control (exceptional circumstances), on your performance in a specific assessment task. All special consideration requests you may have on a specific assessment tasks (e.g., for giving an extension) will be managed through the standard UNSW special consideration policy and procedures. For details, please visit UNSW special consideration Web site .
This course is evaluated each session using the myExperience system.
In the previous offering of this course, some students found that the theoretical part of this course was not easy to follow. Based on their comments, we will tune the explanation of database theory and include my examples in the lecture notes. We also noticed that many students would prefer in-person lab sessions. So we will be hosting both in-person and online lab sessions in this term.
Resource created Tuesday 16 May 2023, 10:38:21 PM, last modified Tuesday 20 June 2023, 05:41:26 PM.