Chat with us, powered by LiveChat

Database Systems

This subject is available under ICMS undergraduate degrees, please click the button below to find an undergraduate course for you.

Subject Code:

DAT101A

Subject Type:

Core 

Credit Points:

3 credit points

Pre-requisite/Co-requisite: 

None 

Subject Level:

100

Subject Rationale:

Data is a critical component of any contemporary computer application. Hence, it is a critical computing skill to understand how databases function and how to effectively manage them. This subject equips students with the relevant skills to develop database applications and the logic behind relational and non-relational database management systems.   

 Students will learn the foundations of the industry-standard database query language – SQL. They will also be introduced to further relevant technologies and concepts used to implement and manage databases including, query data models, data dictionaries implementation techniques including indexing, query evaluation, and normalisation. The challenges of administering relational database management systems, maintaining database security and integrity, ethical considerations, backup and recovery procedures will be addressed. 

Learning Outcomes:

a) Explain the core components and functions of databases and their application within the business context.

b) Apply key database modelling principles to construct data models.

c) Evaluate business requirements and translate them into effective and ethical database designs.

d) Construct Structured Query Language (SQL) commands to define, retrieve, and manipulate data.

e) Apply normalisation rules to evaluate and optimise table structures.

Student Assessment:

Broad Topics to be Covered:

Topic: 
W1: Introduction to database systems 

  • Data versus information  
  • Relevance, evolution, and types of databases 
  • Database systems and database system environment 
  • Role and advantages of the DBMS 
  • Why database design is important 
  • Manual file systems vs. computerized file systems  
  • Structural and data dependence 
  • Data redundancy and anomalies 
  • DBMS functions 
W2: Data models and components 

  • The relevance and evolution of data models (hierarchical and network models, relational models, entity relationship model, object-oriented model, big data and NoSQL) 
  • Data model basic building blocks 
  • Translating business rules into data model components  
  • Data abstraction (external, conceptual, internal, physical model) 
W3: Relational databases fundamentals  

  • Tables and characteristics 
  • Keys and dependencies  
  • Relationships (1:M, M:N, 1:1) 
  • Integrity rules 
  • Data dictionary and system catalogue 
W4: Entity relationship modelling  

  • Entities, attributes, keys 
  • Relationships and cardinality  
  • Existence dependence 
  • Relationship strength (strong vs. weak) 
  • Types of relationship degrees 
  • Recursive Relationships 
  • Associative entities 
W5: Advanced Data Modelling 

  • The extended entity relationship model  
  • Entity clustering 
  • Entity integrity 
  • Flexible database design  
W6: Database normalisation  

  • Relevance of normalisation 
  • Normalisation process (conversion to normal form, conversion to second normal form, conversion to third normal form) 
  • Enhancing operational database characteristics  
  • Higher-level normal forms (conversion to fourth normal form) 
  • Denormalization 
W7: Basics of Structured Query Language (SQL) Part 1 

  • Introduction to SQL  
  • SQL commands (data definition vs. data manipulation commands)  
  • Basic select queries 
  • Select statement options 
  • From clause options 
  • Order by clause options  
  • Where clause options 
W8: Basics of Structured Query Language (SQL) Part 2 

  • Aggregate processing 
  • Subqueries 
  • Relations set operators 
  • Crafting select queries 
  • Specific SQL functions (data and time functions, numeric functions, string functions, conversion functions) 
W9: Creating a database structure using Structured Query Language (SQL) 

  • Data definition commands 
  • Creating table structures 
  • Altering table structures 
  • Data manipulation commands  
  • Sequences 
  • Procedural SQL 
W10: Database design principles  

  • Database lifecycle  
  • Conceptual design (data analysis and requirements) 
  • Logical design (map conceptual to physical model) 
  • Physical design (security measures, integrity measures) 
  • Database design strategies (top-down, bottom-up, centralised vs. Decentralised design) 
  • The principles of ethical database design 
  • Database management software  
W11: Introduction to NoSQL databases and subject review  

  • Relevance of non-relational databases 
  • Key-Value Databases 
  • Document Databases 
  • Column-Oriented Databases 
  • Graph Databases 
  • Aggregate Awareness 
  • Subject review 

Please note that these topics are often refined and subject to change so for up to date weekly topics and suggested reading resources, please refer to the Moodle subject page.