[CS2203] Databases1
1. Syllabus
Course Schedule and Topics: This course will cover the following topics in eight learning sessions, with one Unit per week. The Final Exam will take place during Week/Unit 9 (UoPeople time).
Week 1: Unit 1 - Databases and the Relational Data Model
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Describe the characteristics of databases and database management systems (DBMS).
- Define the key information models.
- Explore the various job roles for database professionals.
- Develop relations within a relational data model and assess constraints based on real-world entities.
Week 2: Unit 2 - Entity-Relationship (E-R) Modelling
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Describe the concept of a conceptual data model.
- Develop logical and physical data models.
- Create ER diagrams defining entities, relationships, attributes, and keys.
Week 3: Unit 3 - Relational Database Design
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Explain issues related to data redundancy in databases.
- Identify functional dependencies.
- Analyze a relational schema to minimize redundancy.
- Apply normalization techniques to transform a relation into first, second, third and Boyce-Codd normal forms.
Week 4: Unit 4 - Structured Query Language (SQL)
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Define SQL data types.
- Examine the categories and basic constructs within the SQL language.
- Implement simple database constructs using the SQL language.
Week 5: Unit 5 - SQL Database Operations
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Apply SQL statements including creating tables, altering tables, dropping tables, inserting data, updating records and deleting entries.
- Create and manipulate database entities.
- Modify data within database tables.
Week 6: Unit 6 - Advanced Structured Query Language (SQL) Queries and Data Integrity
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Apply SQL Select statement for database queries.
- Apply SQL joins when conducting database queries ensuring the inclusion of integrity constraints encompassing both entity and referential integrity.
- Create complex SQL statements incorporating nested select, subqueries, unions and construct database views.
Week 7: Unit 7 - Database Interaction and Connectivity
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Identify SQL implementation methods in programming and define transactions in database contexts.
- Explain embedded SQL usage and use key interface technologies like JDBC and ODBC.
- Differentiate between static and dynamic SQL and the usage of database API’s for SQL implementation.
Week 8: Unit 8 - Database Development Process
Unit Learning Outcomes:
By the end of this Unit, you will be able to:
- Define the Waterfall model of Database Life Cycle for database development.
- Apply strategies for database alterations and maintenance.
Week 9: Unit 9 - Course Review and Final Exam
2. 점수 배분
일단 Discussion Forum과 Programming Assignment가 하나씩만 있는 week가 있어서 좋았다. 하나라도 덜어낼 수 있다면 happy.
3. 후기
Database는 CS1103에서 Java 배울 때 깔아놨던 MySQL로 과제도 하고 실습도 해봤다. 시간이 지나 명령어들이 잘 떠오르지는 않지만, 이렇게 쓰는거구나 하면서 재미있게 배웠던 것 같다. 다만 마지막에 갑자기 life cycle이니 waterfall 방식이니 이런 내용들이 나와서 많이 당황했다. 왜 갑자기 여기서 이게 나올까?? 아예 납득이 안가는건 아닌데, 전 주에 배웠던 내용에서 좀 디벨롭 되거나 옆으로 뻗어나가는 느낌을 잘 받다가 이상하게 week8이 저렇게 끝나서 아쉽다.
간신히 Database가 어떤건지 맛만 본 느낌. Database2도 있던데 갑자기 내용이 확 어려워 지는 것은 아닐지 두렵다.
전체적으로 그렇게까지 빡센 코스는 아니였던 것 같다.