UoPeople Online Syllabus Repository (OSR)

Computer Science

CS 2203 Databases 1

CS 2203: Databases 1

Pre Requisite: None

Course Description: 

This course provides a foundational introduction to the essential principles required for the design, use, and implementation of database systems. Emphasizing core aspects such as database modelling, design, relational theory, and the application of Structured Query Language (SQL), students will gain a comprehensive understanding of key concepts in the domain of database management. 

Required Textbook and Materials: UoPeople courses use open educational resources (OER) and other materials specifically donated to the University with free permissions for educational use. Therefore, students are not required to purchase any textbooks or sign up for any websites that have a cost associated with them. The main required textbooks for this course are listed below and can be readily accessed using the provided links. There may be additional required/recommended readings, supplemental materials, or other resources and websites necessary for lessons; these will be provided for you in the course's General Information and Forums area, and throughout the term via the weekly course Unit areas and the Learning Guides.

  • Vidhya, V., Jeyaram, G., & Ishwarya, K. (2016). Database management systems. Alpha Science International. (Instructions on how to access the textbook are provided in the reading assignments of the units)

Software Requirements/Installation:

See the description at the bottom part of this document. 

Learning Objectives and Outcomes:

By the end of this course students will be able to:

  1. Explain databases and the Relational Data Model for efficient data management. 

  2. Describe a Conceptual Data Model defining entities and relationships for information system representation. 

  3. Explain Relational Database Design principles to create normalized and robust database schemas. 

  4. Apply SQL Commands for Data Manipulation and Querying.  

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:

  1. Describe the characteristics of databases and database management systems (DBMS).
    1. Define the key information models.
      1. Explore the various job roles for database professionals.
        1. 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:

          1. Describe the concept of a conceptual data model.
          2. Develop logical and physical data models.
          3. 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:

            1. Explain issues related to data redundancy in databases.
            2. Identify functional dependencies.
            3. Analyze a relational schema to minimize redundancy.
            4. 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:

                1. Define SQL data types.
                2. Examine the categories and basic constructs within the SQL language.
                3. 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:

                  1. Apply SQL statements including creating tables, altering tables, dropping tables, inserting data, updating records and deleting entries. 
                  2. Create and manipulate database entities.
                  3. 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:

                  1. Apply SQL Select statement for database queries.
                  2. Apply SQL joins when conducting database queries ensuring the inclusion of integrity constraints encompassing both entity and referential integrity.
                  3. 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:

                  1. Identify SQL implementation methods in programming and define transactions in database contexts.
                  2. Explain embedded SQL usage and use key interface technologies like JDBC and ODBC.
                  3. 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:

                  1. Define the Waterfall model of Database Life Cycle for database development.
                  2. Apply strategies for database alterations and maintenance.

                  Week 9: Unit 9 - Course Review and Final Exam

                  Course Requirements:

                  Discussion Assignments & Response Posts/Ratings
                  Some units in this course require that you complete a Discussion Assignment. You are required to develop and post a substantive response to the Discussion Assignment in the Discussion Forum. A substantive response is one that fully answers the question that has been posted by the instructor. In addition, you must extend the discussion by responding to at least two (2) of your peers’ postings in the Discussion Forum. Your discussion posts will be assessed by your instructor.  Discussion Forums are only active for each current and relevant learning week, so it is not possible to contribute to the forum once the learning week has come to an end. 

                  Programming Assignments
                  The programming assignments are graded by your instructor. The grading rubric is listed under the assignment instructions. The grading rubric is a document that outlines the criteria that your instructor will use to grade your work.

                  This course will contain three types of quizzes – the Self-Quiz, the Graded Quiz, and the Review Quiz. These quizzes may contain multiple choice, true/false, or short answer questions. The results of the Self-Quiz will not count towards your final grade. However, it is highly recommended that you complete the Self-Quiz to ensure that you have adequately understood the course materials. Along with the Reading Assignments, the results of the Self-Quiz should be used as part of an iterative learning process, to thoroughly cover and test your understanding of course material. You should use the results of your Self-Quiz as a guide to go back and review relevant sections of the Reading Assignments. Likewise, the Review Quiz will not count towards your final grade, but should also be used to assist you in a comprehensive review and full understanding of all course material, in preparation for your Final Exam. Lastly, the results of the Graded Quiz will count towards your final grade. Specific instructions on the format and content of the Graded Quiz will be provided by your instructor.

                  Final Exam
                  The Final Exam will take place during the Thursday and Sunday of Week/Unit 9, following the completion of eight units of work. The format of the Final Exam is similar to that of the quizzes, and may contain a combination of different question types. You will have one attempt to take the exam, and it will be graded electronically. Specific instructions on how to prepare for and take the exam will be provided during Week/Unit 8.

                  Course Forum
                  The Course Forum is the place to raise issues and questions relating to the course. It is regularly monitored by the instructors and is a good place to meet fellow students taking the same course. While it is not required to participate in the Course Forum, it is highly recommended.

                  Class Introductions
                  This section is your opportunity to introduce yourself to your classmates and create a vibrant learning community. By sharing your background, interests, and goals, you can create meaningful connections and discover commonalities with your peers. 

                  Course Policies:

                  Grading Components and Weights
                  Each graded component of the course will contribute some percentage to the final grading scale, as indicated here:

                  Items Number of assignments Weight
                  Discussion Forum 6 30%
                  Programming Assignments 5 40%
                  Graded Quiz (Unit 3 and Unit 6) 2 10%
                  Final Exam 1 20%

                  Grading Scale
                  This course will follow the standard 100-point grading scale defined by the University of the People, as indicated here:

                  Letter Grade
                  Grade Scale Grade Points
                  A+ 98-100 4.00
                  A 93-97 4.00
                  A- 90-92 3.67
                  B+ 88-89 3.33
                  B 83-87 3.00
                  B- 80-82 2.67
                  C+ 78-79 2.33
                  C 73-77 2.00
                  C- 70-72 1.67
                  D+ 68-69 1.33
                  D 63-67 1.00
                  D- 60-62 0.67
                  F Under 60 0.00

                  Grade Appeal
                  If you believe that the final grade you received for a course is erroneous, unjust, or unfair, please contact your course instructor. This must be done within seven days of the posted final grade. For more information on this topic, please review the Grade Appeal Procedure in the University Catalog.

                  Non-participation is characterized by lack of any assignment submissions, inadequate contributions to the Discussion Forums, and/or lack of peer feedback to Discussion/Written Assignments. Also, please note the following important points about course participation:

                  • Assignments must be submitted on or before the specified deadline. A course timeline is provided in the course schedule, and the instructor will specify deadlines for each assignment.
                  • Any student showing non-participation for two weeks (consecutive or non-consecutive) is likely to automatically fail the course.
                  • Occasionally there may be a legitimate reason for submitting an assignment late. Most of the time, late assignments will not be accepted and there will be no make-up assignments.
                  • All students are obligated to inform their instructor in advance of any known absences which may result in their non-participation.

                  Academic Honesty and Integrity
                  When you submit any work that requires research and writing, it is essential to cite and reference all source material. Failure to properly acknowledge your sources is known as “plagiarism” – which is effectively passing off an individual’s words or ideas as your own. University of the People adheres to a strict policy of academic honesty and integrity. Failure to comply with these guidelines may result in sanctions by the University, including dismissal from the University or course failure. For more information on this topic, please review the Academic Integrity Policy in the University Catalog.

                  Any materials cited in this course should be referenced using the style guidelines established by the American Psychological Association (APA). The APA format is widely used in colleges and universities across the world and is one of several styles and citation formats required for publication in professional and academic journals. Refer to the UoPeople APA Tutorials in the LRC for help with APA citations. For help with using library, kindly refer to UoPeople Library.

                  Code of Conduct

                  University of the People expects that students conduct themselves in a respectful, collaborative, and honest manner at all times. Harassment, threatening behavior, or deliberate embarrassment of others will not be permitted. Any conduct that interferes with the quality of the educational experience is not allowed and may result in disciplinary action, such as course failure, probation, suspension, or dismissal. For more information on this topic, please review the Code of Conduct Policy in the University Catalog.

                  Software Requirements/Installation:

                  Instruction for SQL tool: You may install a Relational DBMS of your choice. You can also download the software using the following link: https://dev.mysql.com/downloads/installer/ and carry out the given assignment. If required, you may use online SQL Editor like https://www.mycompiler.io/online-sql-editorhttps://www.programiz.com/sql/online-compiler/

                  This course also requires a graphics tool to create entity relationship (ER) diagrams. You can create Entity-Relationship (ER) diagram using any online ER Diagramming tool. Refer to the list of ER diagramming tools provided below:

                  • Lucidchart: Online diagram software for creating ER diagrams.
                  • EdrawMax: Online tool for ER diagram design.
                  • dbdiagram.io: Tool for visualizing database relationships.
                  • Flowchart Maker: Online software with ER diagram capabilities.

                  Submitting Assignments:

                  Please note that accepted formats for assignments are Microsoft compatible format, PDF, or any other file format that is clearly specified in the course and activity instructions.