CSE 607 Database Systems (3 credits)

Catalog description:

Discrete math topics relevant to this course including set theory, propositional calculus, first order logic, functions, relations, and equivalence relations, overview of database management, database system architecture, and database modeling principles. Logical database design. The relational database model, relational integrity constraints, and relational algebra. Relational commercial database management systems and languages. Interactive database processing, view processing, and database application programming. Database integrity. Relational database design by normalization.

Prerequisite:

CSE 603 or concurrent registration. Graduate standing in the Certificate in Software Development program, or permission of instructor.

Objectives:

  • To understand discrete mathematics serving as a foundation for database management systems
  • To acquire an appreciation of the data resource and the issues in managing data.
  • To understand the significance and elements of hardware, software, and data structures in database systems.
  • To describe the basic concepts of a variety of data models, and use database languages to define and process large databases.
  • To acquire the skill for designing databases.

Required topics (approximate weeks allocated):

  • Discrete Mathematics Foundations (2.0)
    • sets and set operators and functions
    • mathematical relations and functions
    • propositional logic
    • First Order logic
  • Overview of database management (.5)
    • database system and its components (hardware, software, data, users)
    • databases, rationale for databases
    • data abstraction and program/data independence in databases
  • Database system architecture (1.0)
    • views of data (external, conceptual, and internal)
    • external/conceptual and conceptual/internal mappings
    • database management systems, and their components
    • client/server architecture, distributed processing
  • Overview of database modeling (.5)
    • semantic database models
    • record-based logical models (relational, hierarchical, network), object-oriented model, and other models
  • Logical database design and the entity-relationship data model (1)
    • entities, relationships, and related concepts (attributes and domains, keys, types, etc.)
    • degree of relationships, mapping constraints for relationships
    • entity-relationship modeling and diagrams
  • The relational data model (.5)
    • reinforce relations (Mathematical relations and how to compare to DB relations, equivalence relations)
    • theory of relations
    • the relational representation of databases
    • transforming E-R diagrams to relations
  • Relational database integrity (.5)
    • domain-type integrity constraints
    • null values and non null integrity constraints
    • foreign keys and referential integrity constraints
  • Relational algebra (1)
    • reinforce set theory topics since relational algebra uses sets and set operators
    • rationale for relational algebra
    • relational algebra operators for query formulations
    • database update operations
  • Relational commercial languages and the SQL language (2)
    • metadata and system catalog files
    • data definition and update operations
    • interactive SQL query language
    • set operators and predicate calculus in SQL
    • query formulations in SQL
    • equivalence of SQL to relational algebra (completeness)
  • View processing in SQL (.5)
    • views in relational systems and view definition in SQL
    • using view for deductive relational databases, reinforce logic topics
    • updatable views
  • Database integrity and integrity constraints (1)
    • prevention and detection methods for database integrity
    • integrity constraints (state vs transition, implicit vs explicit, structural, behavioral, etc.)
    • integrity subsystem and integrity constraint specification languages
    • database languages used as integrity constraint specification languages
  • Relational database design (theory of normalization) (1.5)
    • more on database semantics: Functional dependencies
    • full, partial, transitive, and multivalued dependencies
    • relational normal forms (first, second, third, Boyce/Codd, and fourth normal forms)
    • designing relational databases using the theory of normalization
    • designing relational databases from entity-relationship diagrams
  • Sample Elective topics (2 weeks total)
    • Database application programming and embedded SQL
    • Introduction to Data Mining
    • Introduction to Multimedia Systems
    • Introduction to Digital Libraries
    • Introduction to Ontologies
    • Others depending on the instructor's interests
  • Examinations (1)