Course CSE305
Title Principles of Database Systems
Credits 3
Course Coordinator

Himanshu Gupta


The design of database management systems to obtain consistency, integrity, and availability of data. Conceptual models and schemas of data: relational, hierarchical, and network. Students undertake a semester project that includes the design and implementation of a database system.

Bulletin Link

Prerequisite C or higher: CSE 216 or CSE 260; CSE major
Course Outcomes
  • An ability to design database management systems through E/R design and the theory of normalization.
  • An ability to use relational query languages
  • An ability to design and implement a database system, via a significant project.

Michael Kifer, Arthur Bernstein and Philip Lewis, Database Systems: An Application Oriented Approach, Introductory Version, 2/E, Addison-Wesley, 2005. ISBN 0-321-22838-3).

Major Topics Covered in Course
  • ER-modeling, functional dependencies, normal forms, relational algebra, SQL, constraints and triggers, datalog, data storage, indexes, query processing, simple query optimization.
  • Principles of Database Systems
  • The Relational Model & SQL DDL
  • Conceptual Design Using the ER Model
  • Relational Algebra & SQL
  • Using SQL in an Application
  • Schema Refinement and Normalization
  • Storing Data: Disk and Files
  • File Organization and Indexing
  • Implementation of Relational Operations
  • Relational Query Optimization
  • Semester Project: 4-5 parts, each taking 2-3 weeks.
Course Webpage