Course Details
Course Aims
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
Student Learning Outcomes
By the end of the course, you should be able to:
Glossary:
Teaching Strategies
Teaching Rationale
The learning focus in this course is primarily on lectures (theoretical knowledge) and projects (practical knowledge). The course will have an emphasis on problem-solving for real applications.
Course Weekly Schedule
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) (advance reading see: chap7 ) |
No Lab |
|
2 |
Relational Data Model
|
Relational Algebra
(advance reading see:
chap6
)
|
Lab01 – setting up a database server |
Assignment 1:
Data Modelling and Relational Algebra |
3 |
SQL
(advance reading see: chap4,5 ) |
SQL(continue) |
Lab02 – schema definition and data constraints |
|
4 |
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 |
|
Lab05 - SQL functions and PLpgSQL functions
|
Project 1 Due
|
8 |
Transaction Management |
Transaction Management (cont) |
Lab06 - database triggers |
Assignment 2:
DB Design Theory, Database Storage Structures and Transaction |
9 |
|
Disks |
Lab07 - relational design theory | |
10 | Public Holiday | Advanced Topics + Revision |
Lab08 - a practice on SQLite (an alternative DB)
|
Assignment 2 Due
|
Assessments
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:
*: 20% reduction of your marks for each day |
||
The final mark is calculated by the geometric mean:
Final Mark = sqrt ( (ass1 + ass2 + proj1) * Final Exam) |
Course Email
Note: 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 us via course email or contact the lecturer (mryu@cse.unsw.edu.au) if the course forum is not appropriate. Otherwise, direct your queries to (1) the webcms3 forum, then (2) the course email.
Lecture Times
Mon 18:00 - 20:00 (week 1-5,7-9)
Thu 16:00 - 18:00 (week 1-5,7-10)
Course Resources : Textbooks
Author(s) | Title | Edition | Publisher/Year |
Elmasri & Navathe | Fundamentals of Database Systems | 6th | Addison-Wesley, 2010 |
Course Resources : References
Author(s) | Title | Edition | Publisher/Year |
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 |
Academic Honesty and Plagiarism
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 online sources to help you understand what plagiarism is and how it is dealt with at UNSW:
Course Evaluation and Development
You can evaluate this course at the end of each session using the myExperience (replacing the CATEI system).
In this session, we will use more concrete examples to demonstrate difficult concepts.
More Information
For further information on this course, and to keep up to date with any changes, please consult the course website (frequently).
Resource created Wednesday 02 February 2022, 03:44:20 PM, last modified Monday 11 April 2022, 05:11:57 PM.