Credits: 1 unit (4 credit hours)
Contact Hours: 3 lecture & 3 lab
Instructor: Professor Joann Ordille
Last Taught: Fall 2012
Text Book: Database Systems: the Complete Book, 2nd ed.
By Garcia-Molina, Ullman and Widom. (Prentice Hall, 2008.)
Description: This course examines the organization, design, and implementation of database management systems. Lecture/laboratory.
Prerequisites: CS205 (Software Engineering)
Corequisites: CS202 (Analysis of Algorithms)

Specific Course Goals:

After successfully completing this course, the student will be able to:

  • Develop an understanding of important database design principles with a focus on efficiency and extensibility.
  • Develop a functional understanding of Structured Query Language (SQL) for the creation and manipulation of databases.
  • Develop a database management system starting from a set of requirements.
  • Develop a substantial database design, constructed as a group working over the majority of the semester.

Student Outcomes:

ABET/CAC Outcome 1 Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
ABET/CAC Outcome 2 Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
ABET/CAC Outcome 5 Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
ABET/CAC Outcome 6 Apply computer science theory and software development fundamentals to produce computing-based solutions.

Topics covered:

  • Entity Relationship Model
  • Functional Dependencies
  • Relational Design
  • Relational Algebra and Normalization
  • Structured Query Language (SQL)
  • Constraints and Triggers
  • XML
  • Indexing and B-trees
  • Transaction, Concurrency, and Recovery
  • Data Warehousing and Data-Mining