Site Map | College of Engineering | UC Davis | MyUCDavis

ECS 165A DATABASE SYSTEMS (4) II

Lecture: 3 hours

Discussion: 1 hour

Prerequisite: Course ECS 60

Grading: Letter; projects (50%), midterm/final (50%)

Catalog Description:
Database design, entity-relationship and relational model, relational algebra, query language SQL, storage and file structures, query processing, system architectures.

Expanded Course Description:

  1. Overview of Database Systems
    1. Purpose of a database system
    2. Data models and database languages
    3. Architectures
  2. Entity-Relationship Model
    1. Design issues
    2. Entity-Relationship diagrams
    3. Mapping to tables
  3. Relational Model
    1. Structure of the model
    2. Relational algebra
  4. Structured Query Language (SQL)
    1. Basic concepts
    2. Simple and complex select statements, subqueries
    3. Aggregate and set functions
    4. Database Modifications
    5. Embedded SQL and PL/SQL
  5. Database Design
    1. Relational database design concepts
    2. Decomposition and normalization
    3. Integrity constraints, database triggers
  6. Storage and File Structures
    1. File organization
    2. Organization of records in a file
    3. Storage access
    4. Indexing, B+ tree index files
  7. Query Processing
    1. Query cost and cost estimation
    2. Selection, sorting and joins
  8. Transaction Management
    1. Transaction concepts
    2. Concurrent execution, serializability
    3. Recovery
  9. System Architectures
    1. System components
    2. Types of systems
    3. Commercial Systems

Textbook:
A. Silberschatz, H.F. Korth, S. Sudarshan (eds.): Database System Concepts (4th Edition) McGraw-Hill, 2002

Computer Usage:
Students work individually on projects in a UNIX workstation environment, using standard UNIX tools as well as major database software packages, in particular the Oracle RDBMS.

Programming Projects:
This course includes three design projects, intended to give students the opportunity to work with major commercial database software packages. The projects establish certain database design concepts and techniques to be used, then give open-ended database design assignments that include conceptual design and database application programming. Students are graded on creativity, design, programming methodology, documentation and satisfactory completion of stated tasks

Engineering Design Statement:
The course is heavily design oriented. Three programming projects, counting 40% of the course, are based on student-originated design and implementation of database applications and the use of one major commercial database package at a database designer/programmer level. Students are required to follow guidelines to create their own applications in SQL, PL/SQL, Embedded SQL, test them, document them and submit executable code for grading each project.

In addition, both the midterm and final emphasize design-related questions dealing with selection of appropriate hardware/software configurations and the optimal use of systems and other software to optimize performance of database systems according to the specified requirements.

ABET Category Content:
Engineering Science: 2 units
Engineering Design: 2 units

Goals:
Students will:

Student Outcomes:

Instructors: B. Ludaescher, T. Green

Prepared by: M. Gertz (October 2006)

Overlap Statement:

There is some very minor overlap with ECS 166 in that both courses have an introduction to relational databases.

Back to Course Descriptions