University of Oxford Logo University of OxfordSoftware Engineering - Home
On Facebook
Follow us on twitter
Linked in
Linked in
Google plus
Google plus
Stumble Upon
Stumble Upon

Database Design

Relational database technology is the dominant approach to information storage, with products that offer an unmatched combination of abstraction and performance. To use these products effectively, however, requires an understanding of the underlying principles and concepts.

Course dates

8th May 2017Oxford University Department of Computer Science06 places remaining.
4th December 2017Oxford University Department of Computer Science07 places remaining.
30th April 2018Oxford University Department of Computer Science09 places remaining.


At the end of the course, students will

  • have had a thorough introduction to the underlying principles of modern relational databases; and
  • be able to use these insights in designing data models.


evolution of database systems; database system architecture; database management systems.
The entity-relationship model
semantic modelling; entity-relationship diagram elements; entity-relationship diagrams; design principles; modelling constraints; limitations of the entity-relationship model.
The relational data model
objectives; aspects; terminology; relational integrity; views; relational algebra; relational calculus; limitations of the relational data model.
queries; subqueries; full relation operations; modifying databases; defining relation schemas; defining views; constraints and triggers.
functional dependencies and normalisation; denormalisation.
Query optimisation
query processing; query decomposition; a heuristical approach to query optimisation.
Transaction management
recovery; concurrency.
Distributed databases
principles; client/server systems; DBMS independence; data warehousing.


Some familiarity with discrete mathematics would be useful; Software Engineering Mathematics would be an ideal preparation.