Course Description
The theory and practice of database management. Topics to be covered include efficient file access techniques, the relational data model as well as other data models, query languages, database design using entity-relationship diagrams and normalization theory, query optimization, and transaction processing.
Additional Requirements for Graduate Students:
Graduate students will do extra homework and projects.
Athena Title
Database Management
Prerequisite
CSCI 2720 or CSCI 2725
Semester Course Offered
Offered fall and spring
Grading System
A - F (Traditional)
Course Objectives
This course presents a survey of topics in database management most relevant to students studying computer science or related fields. At the end of the semester, all students will be able to do the following: 1. Design a database by utilizing Entity Relationship (ER) or Unified Modeling Language (UML) diagrams. 2. Use database normalization. 3. Develop a relational database. 4. Describe and use a formal query language (Relational Algebra). 5. Produce database queries in a practical query language (SQL). 6. Implement and use indexing techniques. 7. Describe inner workings of a database system. 8. Develop database applications. 9. As a team, deliver a presentation of a functioning software system (that utilizes a database) that is designed, implemented, and tested by the team.
Topical Outline
Overview of Databases and Transactions (3-hours) The Big Picture (2-hours) Relational Model (3-hours) Relational Algebra (4-hours) Physical Data Organization (3-hours) Indexing (4-hours) The Basics of Query Processing (3-hours) An Overview of Query Optimization (2-hours) SQL: Data Definition Language (DDL) (2-hours) SQL: Query Language (QL) (4-hours) JDBC (1-hour) Conceptual Modeling (ER and UML) (1.5-hours) Relational Normalization Theory (3-hours) Transaction Processing (2-hours)
Syllabus