# Database System Concepts

## CSCI 3287: Database System Concepts

**Department of Computer Science and Engineering - College of Engineering, Design and Computing - University of Colorado Denver**

**Term: **Spring 2019

### Course Overview:

**University Course Catalog Description:** Introduces database design, database management systems, and the SQL standard database language. Includes data modeling techniques, conceptual database design, theory of object- relational and relational databases, relational algebra, relational calculus, normalization and database integrity.

**Expected Knowledge at the Start of the Course: **Students are expected to have mathematical, computer science and programming skills.

- The expected mathematical skills include those taught in the CSCI2511 (Discrete Structures) course, as well as CSCI2421 (Data Structures and Program Design)
- Set operations and trees.
- Boolean logic
- Combinatorics and probability.

- Expected programming skills include the following:
- Basic problem-solving techniques such as divide and conquer, top-down, bottom-up and object-oriented.

- Basic computer science knowledge including the following:
- Data structures and algorithms: sorting, searching, hashing, running times and memory usage.
- How to choose and use basic data structures, including linked-lists, vectors, heaps and search trees.
- Operating systems basic knowledge: bits, bytes, blocks/pages, disk operations, latency, seek, time to transfer, memory basics, storage allocation and indexing

**Expected Knowledge Gained at the end of the Course: **Students are expected to have attained the following knowledge/skills upon leaving the course:

- Database Systems Design Concepts.
- Relational Database Design
- Relational Algebra Expressions for specifying and querying data
- SQL Language for querying and manipulating data.
- Indexing methods
- Ability to demonstrate use of formal models and languages used in Database Systems Design,
- Implementation and Documentation

### Topics:

- Database Fundamentals
- Entity-Relationship Model, Relational Model, Normal Forms
- Relational Algebra, SQL Standard
- Physical Design and Indexes
- Variations in Database Design

**Course Prerequisites: **CSCI 2441 - Data Structures and Program Design

### Textbook:

**Fundamentals of Database Systems, 7th Edition. R. Elmasri and S. Navathe.**Pearson**.**ISBN-13: 978-0133970777.**Required.**

### Course Schedule

*Course Overview and Introduction**DBMS Concepts and Architecture**Conceptual Modeling: Entity-Relationship Model**Relational Model**Relational Algebra**Tuple Relational Calculus**SQL and Advanced SQL**Functional Dependencies and Normalization**File Structures**Index Structures**Distributed Databases*

### Readings

*Chapters 1 through 9, 14 through 17 and 23.**MySQL Reference Manual.*