Prepared by: Benjamin Kumwenda
Module Name: Databases I (Theory, Design & Implementation)
Contact hours (to be used as a guide): Total (40 hours), Theory (75%), Practical (25%)
Suggested Study (20 hours)
SPECIFIC OUTCOMES ADDRESSED
On completion of this module, students should be able to
1. Demonstrate knowledge and understanding of database concepts.
2. Demonstrate the knowledge, understanding and methodology of database design through translating user requirements into a data model.
3. Evaluate and use model database management systems in building database systems.
BACKGROUND KNOWLEDGE REQUIRED
H3ABioNet bioinformatics modules as pre-requisites: Programming I
Additional: General IT competency and basic mathematics is needed, but no prior technical knowledge of databases is required for this course.
BOOKS AND OTHER SOURCES USED
1. Silberschatz, Korth and Sudarshan, Database Systems Concepts, 6th Ed.
2. Elmasri R and Navathe S B, Fundamentals of Database Systems. 6th Edition (2010)
3. Connery T M and Beg C E, Database systems 5Th edition (2010)
A) Theory lectures
1. Introduction to database systems and architectures.
2. Data models:
Entity Relationship Model, Relational model, Hierarchical data model, Network data model, Object oriented data model.
3. Database modelling:
Keys, functional dependencies, decomposition, normalisation, conceptual (ERD/EERD), logical and physical.
4. Relational database languages:
Relational algebra, SQL (structured query language).
5. Physical design:
File structures, indexing and hashing techniques.
6. Transaction management and concurrency control.
7. Database management:
Security and recovery techniques.
8. Distributed database systems:
Distribution architecture, client-database server architecture; data fragmentation, replication and allocation.
9. Advanced database applications:
Data warehousing, data mining, xml, no-sql databases.
B) Practical component
1. Practical of designing an entity relationship model for a given exercise.
2. Translate the given ER model to Relational model.
3. Formulate SQL statement, SQL queries and relational algebra queries.
4. Implement the example database using SQL queries.
ASSESSMENT ACTIVITIES AND THEIR WEIGHTS
1. Continuous assessment (50%) comprising:
Group practical assignment 40%
2. End of semester examination: 50%