Course co-ordinator(s): Dr Santy Chumbe (Edinburgh).
Aims:
To familiarise students with the principles of database management systems, to enable them to design and implement databases for specific applications and to integrate databases with application programs.
Detailed Information
Pre-requisites: none.
Linked course(s): F27WX Web Design and Databases (GA) .
Location: Edinburgh.
Semester: AY.
Syllabus:
Database Design: data requirements, entity relationship diagrams, relational data model, integrity constraints, key constraints, types, integrity maintenance
Relational Queries: SQL, Boolean combinations of queries, aggregation, duplicate elimination, nested queries, negation, views, insertions, deletions, updates, command level interfaces, integration with programming application
Query execution and optimisation: data storage principles, file organisation, indexing, indexes in commercial DBMSs, relational algebra, query execution plans, cost estimation of plans, interpretation of plans, physical database design
Concurrency: transactions, schedules, serialisability, concurrency control protocols, locking, two-phase-locking, time stamp based concurrency control.
Emerging Database Trends: data warehousing, distributed databases, and alternative database models such as XML, document, object, and graph stores
Industrial project identification (evaluation, critical assessment, scheduling, planning, requirements engineering, specification, risk assessment, agile project delivery)
Learning Outcomes: Subject Mastery
- Broad knowledge and understanding of the concepts and formalisms of database design
- Detailed knowledge of the building blocks and meaning of relational database queries
- Critical understanding of the principles of query evaluation and concurrency control underlying database applications
- Practice in the collection of data requirements and the design of conceptual database schemas
- Evaluation of emerging database trends and ability to understand their benefits
Learning Outcomes: Personal Abilities
- Practice in defining the subject and scope of a development project (PDP)
- Deconstructing a problem and synthesizing a solution (PDP)
- Time management (PDP).
- To be aware of distinctive features of industrial practice
- To be able to relate learned knowledge to work based computing projects
- Practice in working on a development project in small groups (PDP)
- To be able to communicate effectively with work colleagues on learned issues
Assessment Methods:
Coursework: 100%
Re-assessment: Coursework: 100%
SCQF Level: 8.
Credits: 15.
