Database Management Principles & Applications

Hands-on course covering fundamentals of database design and development

Taught in 2006, 2007

This course covers principles and practices of database management and database design. I use lectures, discussion, and hands-on practice to help students learn about the database application lifecycle, data dictionaries, relational database design, SQL queries, reports and other interfaces to database data, and documentation. I also devote substantial time to other related topics, such as the advantages and disadvantages of database management systems, the roles various people play in developing and managing these systems, the requirements of implementing web databases, the challenges of multimedia databases, and ethical and privacy issues.

Students most effectively learn about database systems through significant hands-on practice. I thus use the sequence of seven assignments listed below to move students from a state where they often have little or no understanding of the subject to a point where they can implement a substantial, fully-functioning database system with reports and documentation:

  • Identify and describe a collection of resources
  • Create a basic database using step-by-step instructions
  • Practice conceptual database design (ERDs)
  • Practice conceptual and logical database design (ERD and associated relational schema)
  • Write a range of SQL queries
  • Practice logical and physical database design
  • Complete a full database design and functional implementation

Course Sections Taught

Fall, 2007 Syllabus and website
Fall, 2006 Syllabus and website
Spring, 2006 Syllabus and website