CS 360

From CS Wiki
Jump to: navigation, search

CS 360: Database Systems

Catalog Description: Study of database design and implementation; comparison of basic models (entity- relationship, hierarchical, network, relational); study of query languages; discussion of issues of integrity, security, dependencies, and normal forms.

Type: Technical elective for all Computer Science majors, Required for Computer Science with Information Assurance emphasis majors.

Total Credits: 3

Contact Hours: 3 lecture hours per week.

Course Coordinator: Hasan Jamil

URL: None

Prereq: Have passed CS 240: Operating Systems and Cs 270: System Software with C or better.

Textbook: Avi Silberschatz, Henry Korth and S. Sudarshan, Database System Concepts (Sixth Edition or later), McGraw-Hill

Textbook URL: http://catalogs.mhhe.com/mhhe/viewProductDetails.do?isbn=0073523321


  1. Michael Kifer, Arthur Bernstein and Philip Lewis, Database Systems – An Application Oriented Approach, 2nd Edition. Addison Wesley, 2005.
  2. Raghu Ramakrishnan and Johannes Gehrke, Database Management Systems, 2nd Edition. McGraw Hill; 2000 (or later).
  3. J.D. Ullman, Principles of Database and Knowledge-Base Systems, Computer Science Press, MD, 1988.
  4. D. Maier, The Theory of Relational Databases, Computer Science Press, MD, 1983.
  5. R. Elmasri and S. B. Navathe, Fundamentals of Database Systems (Second Edition or later), Addison-Wesley Publishing Company, Menlo Park, CA; 1994.

Major Topics Covered

  1. Databases: Database Management Systems -- goals and advantages, and database system architecture.
  2. Databases: The Entity-Relationship Model of Data.
  3. Databases: Relational Model
  4. Databases: Relational Algebra and Calculus, SQL, Views.
  5. Databases: Conceptual Database Design -- Data Dependencies and Normalization.
  6. Files: File Structures -- Sequential and Indexed Sequential Organizations.
  7. Files: Hashing -- Static and Dynamic Hashing.
  8. Files: B+-trees.
  9. Files: External Merge Sorting.
  10. Advanced Concepts: New Database Models
  11. Advanced Concepts: Deductive Databases, Object-Oriented Databases, etc. (subject to availability of time).

Course Outcomes

  1. Design databases conceptually using design tools such as ER diagrams or UML.
  2. Transform the conceptual design in relational schemes.
  3. Bring the relational schemes into Boyce-Codd normal form using design theory and functional dependencies.
  4. Query the database using relational query languages such as SQL, relational algebra, and relational calculus.
  5. Describe modern file management systems and indexing schemes and understand the storage structure that supports the relational query engine.