Introduction to Database Management Systems

Course
Identifier: 
COM S 363

Offered during Fall and Spring Semesters each year. 

  1. Credits and contact hours: 3 credits, 3 contact hours
  2. Instructor’s or course coordinator’s name: Wallapak Tavanapong
  3. Text book, title, author, and year: None required
  4. Other supplemental materialsDatabase Management Systems, 3rd edition, R. Ramakrishnan and J. Gehrke; Fundamental of Database Systems, 5th edition, R. Elmasri and S.B. Navathe

Specific course information

  1. Brief description of the content of the course: Relational, object-oriented, semistructured and query languages. SQL, XML, and NO-SQL. Database design using entity-relationship model, data dependencies, and relational database design. Application development in SQL-like languages and general-purpose host languages with application program interfaces and a commonly used Object Relational Mapping framework. Web application development. Programming Projects.
  2. Prerequisites or co-requisites: Minimum of C- in COM S 228 and MATH 165; ENGL 250
  3. Required, elective, or selected elective? Selected Elective

Specific goals for the course

  1. Specific outcomes of instruction:
  • Design a good database using appropriate data models (i.e., concepts for describing data) given user database requirements and data on hand.
  • Organize and retrieve data efficiently using commonly used database management system software (DBMS)
  • Develop applications that access data stored in DBMS using current database tools and technology (6)
  • Have understanding of how DBMS works with respect to query processing

Brief list of topics to be covered

  • Introduction:
    • The largeness of information and its implications on the organization of disk in terms of pages in kilobyte range rather than words consisting of a few bytes. Layered architecture of databases and varieties of users.
  • Query languages in different paradigms and hybrid languages
    • Foundational language relational algebra and how it gives rise to user-oriented language SQL. How SQL is reincarnated as OQL and XQuery in object-oriented and XML data models.
  • Hybrid languages
    • JDBC (Java Database Connectivity) as a hybrid of algebraic and general-purpose languages.
  • Storage and efficient retrieval of data
    • Storing information in pages on a disk, indexes, algebraic optimization and Query processing.
  • Schema design
    • Schema design using (a) Entity-relationship model and (b) data dependencies
  • Relational, object-oriented, and semi-structured (XML) data models
  • Information integration: Data warehousing