Course Catalog URL:
COM S 363
Offered during Fall and Spring Semesters each year.
- Credits and contact hours: 3 credits, 3 contact hours
- Instructor’s or course coordinator’s name: Wallapak Tavanapong
- Text book, title, author, and year: None required
- Other supplemental materials: Database Management Systems, 3rd edition, R. Ramakrishnan and J. Gehrke; Fundamental of Database Systems, 5th edition, R. Elmasri and S.B. Navathe
Specific course information
- 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.
- Prerequisites or co-requisites: Minimum of C- in COM S 228 and MATH 165; ENGL 250
- Required, elective, or selected elective? Selected Elective
Specific goals for the course
- 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
- 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