ITEC 3335
Database Development
Fall 2018

by K. Yue

1. General Information

ITEC 3335.1 Class number: 23488 MW 1:00-2:200pm Delta 241.

1.1 Instructor

Dr. Kwok-Bun Yue, Professor of Computer Science and Computer Information Systems
Delta 163, 281-283-3864, yue at uhcl.edu; URL: http://dcm.uhcl.edu/yue/
Office hour: MW 2:20PM to 4:00PM, T 1:20-4:00PM, walk-in or appointment.

1.2 Teaching Assistant

Arif Lakhani

DSC_2643a.jpg

You may communicate with the TA ariflakhani7866 at gmail dot com or LakhaniA3522 at UHCL dot edu. Set up the UHCL spam filter server for your UHCL account to accept this email address as an approved sender. Otherwise, your email may be quarantined by the spam filter server. Spam server: https://myspam.uhcl.edu:28443/.

Homework are submitted through UHCL's blackboard.

Office hours at Delta PC Lab D201-D205 or D158:

Monday: 10-1
Tuesday: 10-2
Wednesday: 10-1
Thursday: 10-2

1.3 UHCL Quality Enhancement Plan (QEP) Motto: Applied Critical Thinking (ACT) for Lifelong Learning and Adaptability

QEP Logo

This course has been authorized by UHCL as an Applied Critical Thinking (ACT) Course which means that in addition to learning about the specified course content, students will be engaged with some or all of the Elements of Thought and Universal Intellectual Standards of critical thinking. The objective of an ACT course is to develop the student's ability to become skilled at analysis and evaluation by applying a set of intellectual tools that may be effectively used across all disciplines (as well as to the student's personal life). Based on the Foundation for Critical Thinking model (http://www.criticalthinking.org/), critical thinking involves thinking for a purpose, asking questions, using information, applying concepts, drawing inferences and conclusions, identifying assumptions, anticipating implications and consequences, and recognizing points of view. The Universal Intellectual Standards that are applied to these Elements of Thought of critical thinking in order to develop Intellectual Traits include clarity, accuracy, precision, relevance, depth, breadth, logic, significance, and fairness.

Critical Thinking In Information Technology in General and Database Development in Particular

Information Technology is concerned with the applications of computing and communications technology to solve practical problems. For example, in Wikipedia, it is defined as "the application of computers to store, study, retrieve, transmit, and manipulate data, or information, often in the context of a business or other enterprise." The Association of Computing Machine (ACM), the professional association for computing sciences in US, defines the problem space for IT in the following diagram. IT is highly applicative in nature, with its targeted areas spanning from the organization issues and information systems level to the systems infrastructure level. Consequently, a thorough and accurate understanding and precise specification of the problem domain through modeling, with a clear understanding of all assumptions and relevant information is a prerequisite for effectively using IT to construct an effective solution. In fact, all elements of thought of critical thinking are essential in every step of the elaboration and modeling of the problem, and the design, implementation, and maintenance of an IT solution.

IT Problem Space

In particular, information is usually stored permanently in database. In database development (the subject of this course), critical thinking is integrated in the process. Database developers use principles of data modeling, such as the Entity-Relationship Model (ERM), to clearly and accurately understand the purposes, assumptions and the different points of views of the various types of users, to precisely specify the problem. Concepts of relational theory and data manipulation are applied to infer and construct suitable logical solutions. The implications and consequences of the design are assessed through the cost effectiveness of the database solutions.

The central question in database development is how to store and retrieve permanent data effectively for specific problems.

Fundamental and Powerful Concepts (FPC) of the Course

In ACT vocabulary, fundamental and powerful concepts form the foundation that permeates and unites a course. In this course, these concepts are:

  1. Data modeling for clearly and precisely specifying problem purposes, requirements, assumptions, and constraints.
  2. Relational database design and development for constructing database solutions.
  3. Database processing for converting, updating, retrieving and transforming data.

Please see Section 5 below for more details.

1.4 Laboratory Administrations

You may address account and software problems of the DCM server to the systems administrator, Ms. Krishani Abeysekera. Copy your email to me.

1.5 Other Useful Information

1.6 Textbooks

Hoffer, Jeff, Ramesh Venkataraman, and Heikki Topi. Modern database management, 12th edition. Pearson Education, 2016: https://www.vitalsource.com/referral?term=9780133544770.

1.7 Course Description

From Catalog: Introduces database theory, design and implementation. Topics covered will include business data
modeling using the entity-relationship (ER) model, logical database design using the relational data
model and database querying using structured query language (SQL). Database management systems
are studied with database design issues in the context of solving business problems. Laboratory
instruction. Corequisite: ITEC 3312 Introduction to Scripting.

1.8 Student Learning Outcomes (SLO)

After completing the course, the students are expected to be able to

  1. Clearly describe the concepts of database development for problem solving.
  2. Broadly understand some relevant issues related to data (information) and databases.
  3. Construct valid and relevant data model using Entity-Relationship diagrams to analyze problems and design effective database solutions.
  4. Clearly understand the theory of the relational model and apply it to construct effective relational database solutions.
  5. Effectively construct Structured Query Language (SQL) solutions for relational databases.

For ACT assessment, SLOs #3, #4 and #5 will be used. Please see Section 5 for more details.

1.9 Prerequisites

Corequisite: ITEC 3312 Introduction to Scripting.

Languages: The course uses SQL and a high level programming language, such as Python. No prior SQL is assumed. Some background in Python assumed.

1.10 Course Format

Traditional lecture, demonstration, homework, and programming assignments.

2. Course Policies and Guidelines

2.1 General Policies
  1. Classroom conduct:
  2. Assignments:
  3. Course management:
  4. Examinations:
  5. Others:

Tips:

  1. Check the course Website frequently and read the class lectures beforehand.
  2. I check email frequently during the week days. Be sure to write a good subject heading for your email so my email filter won't consider it junk and I can relate to it quickly. Check notes on managing email.
  3. If you have problems with your accounts, you may want to contact the systems administrator directly by sending them an email and copying it to me. However, do not ask her questions about your homework. Instead, ask me.
  4. Software development is time consuming. Start early and plan well ahead. Ask a lot of questions.
  5. Procrastination usually results in poor grades.
  6. If you expect any potential problems, consult me as soon as possible so I may help you.
  7. Assignments and examinations will be thrown away one month after the final examination week. Be sure to claim them on time.

2.2 Attendance

Students are expected to attend class regularly and actively participate in classroom discussions.

2.3 Academic Honesty

Penalty on cheating will be extremely severe. Standard academic honesty procedure will be strictly followed. Use your best judgment. If you are not sure about certain activities, consult the instructor. See: http://prtl.uhcl.edu/portal/page/portal/PRV/FORMS_POLICY_PROCEDURES/STUDENT_POLICIES/Academic_Honesty_Policy

The UHCL Academic Honesty Policy will be strictly adhered to. The honesty code section state:

The Honesty Code is the university community's standard of honesty and is endorsed by all members of the University of Houston-Clear Lake academic community. It is an essential element of the University's academic credibility. It states:

I will be honest in all my academic activities and will not tolerate dishonesty.

Academic honesty is integral to university education. Students are advised to thoroughly understand UHCL academic honesty policy.

2.4 Academic Adjustment Policy

The University of Houston System complies with Section 504 of the Rehabilitation Act of 1973 and the Americans with Disabilities Act of 1990, pertaining to the provision of reasonable academic adjustments/auxiliary aids for students with a disability. In accordance with Section 504 and ADA guidelines, each University within the System strives to provide reasonable academic adjustments/auxiliary aids to students who request and require them. If you believe that you have a disability requiring an academic adjustments/auxiliary aid, please contact your University's student disability services center.

2.5 Assessment for Accreditation

The School of Science and Computer Engineering may use assessment tools in this course and other courses for curriculum evaluation. Educational assessment is defined as the systematic collection, interpretation, and use of information about student characteristics, educational environments, learning outcomes, and client satisfaction to improve program effectiveness, student performance, and professional success. This assessment will be related to the learning objectives for each course and individual student performance will be disaggregated relative to these objectives. This disaggregated analysis will not impact student grades, but will provide faculty with detailed information that will be used to improve courses, curriculum, and student performance.

3. Grading Policy

Grades will be assigned based solely on homework and examination scores. No other factors will be considered. In particular, students have requested me to reconsider their grades using the following reasons in the past:

These requests had all been declined politely but firmly in the past.

There will also be no 'special project' that you can work on to improve your grades after the final examination. Anything I offer to one student will be offered to the entire class.

Total score is computed using the following percentages:

Homework: 30%
Exam #1: 20%
Exam #2: 20%
Final Exam: 30%

Last Day to Drop/Withdraw: November 12, 2018

Grade Assignment Table

[92..100] A
[90..92) A-
[87..90)  B+
[83..87) B
[80..83) B-
[77..80) C+
[73..77) C
[70..73) C-
[67..70) D+
[63..67) D
[60..63) D-
[0..60) F

4. Course Syllabus and Schedule

The syllabus is tentative. Actual contents and order of coverage may change. There will be around 9 homework assignments, the actual number is subjected to changes.

Date
Contents
Comments
Week #1: 8/27, 29 Introduction to the course
Persistent Data
Introduction to Database Systems
Introduction to Microsoft Access
Read Hoffer Chapter 1 and the companion PPT
How to be successful in ITEC 3335
Introduction to ITEC 3335
Introduction to MS Access
HW #1 (world.accdb used in HW #1) due on 9/7 (Friday) 5:00pm
Week #2: 9/3, 9/5 9/3: Labor Day Holiday
Critical thinking in computer science and database
Database basics
Read Hoffer Chapter 1
Critical Thinking in IT and DB
DB Basics
Week #3: 9/10, 9/12 An introduction to the relational model and SQL.
Read Hoffer Chapter 4 pp 155-160.
Read Hoffer Chapter 6 Processing Single Table (pp. 261-274)
Introduction to the relational model and SQL
HW #2 (createtoyu.sql.txt used) due on 9/20 (Thursday) 5:00pm
Week #4: 9/17, 9/19

An introduction to Concept Map
The relational model
An introduction to data modeling
ER Modeling


A brief introduction to Concept Map
Syllabus in concept maps
The Relational Model
ER Modeling
Read Hoffer Chapter 2
A RDB Relational Example of Concept Map in the context of critical thinking.
HW #3 due on 10/2 (Tuesday) 5:00pm
Week #5: 9/24, 9/26 ER model
Read Hoffer Chapter 2.
ER Modeling
ER Modeling Example (from a more technical database course)
ER in Concept Map
Week #6: 10/1, 10/3
The Extended ER (EER) model
Conversion of EER model to the relational model
10/1: Examination #1
Read chapter 3, only the concept of subtyes and subclasses are necessary.
Read Hoffer Chapter 4, pp 155-181.
Extended ER Modeling
Conversion of ER Model to Relation Schema
HW #4 (h4sol_template.docx) due on 10/11 (Thursday) 5:00pm
Week #7:
10/8, 10/10
More SQL

An introduction to SQL and MySQL
Read Hoffer Chapter 7 pp 289-313.
HW #5 due on 10/26 (Friday) 5:00pm
Week #8:
10/15, 10/17
More SQL
Physical DB Design
Read Hoffer Chapter 4 pp.182-205
Physical DB Design
Read Hoffer Chapter 8, general 2-tier and 3-tier architecture only.
HW #6 due on 11/6 (Tuesday) 5:00pm
Week #9: 10/22, 10/24 Logical database design
Normalization Theory

Introduction to Database Design
Introduction to Normalization Theory
Read Hoffer Chapter 4 and 5

Week #10: 10/29, 10/31 Logical database design
Normalization Theory

HW #7 due 11/29 (Monday) 5:00pm
Read Hoffer Chapter 4 and 5
Week #11: 11/5, 11/7 Python Review
11/5: Examination #2
Introduction to Python
Week #12: 11/12, 11/14 Database Application Development in Python
MySQL programming in Python
HW #8 due
on 12/10 5:00pm
Week 13:
11/19, 11/21

Database Application Development in Python
Transaction Management

MySQL programming in Python
Transaction Management
Week #11/26, 11/28 11/22 Thanksgiving Holiday
Simple Database Administration
Simple DB Administration
HW #9 due on 12/10 (Monday) 5:00pm
Read Hoffer Chapter 12 if time permits
Week #15: 12/3, 12/5 Introduction to Data Visualization Analysis, Tableau
Additional Topics
Review and Questions
Data Visualization in Tableau
Week #16:
12/12
Wednesday 1:00 pm: Final Examination
You can bring a cheat sheet: A4, print or write both sides, must be prepared by yourself.

5. Applied Critical Thinking (ACT)

5.1 Vocabulary of Critical Thinking

We use the vocabulary of critical thinking described by Drs. Richard Paul and Linda Elder, including the eight elements of thought and nine universal intellectual standards:

Eight elements of Thought of Critical Thinking:

  1. Purpose
  2. Question at Issue/Problem
  3. Information
  4. Interpretation and Inference/Solution
  5. Concepts
  6. Assumptions
  7. Implications and Consequences
  8. Point of View

Nine Universal Intellectual Standards for Critical Thinking:

  1. Clarity
  2. Accuracy
  3. Precision
  4. Relevance
  5. Depth
  6. Breadth
  7. Logic
  8. Significance
  9. Fairness

For more details, see:

[1] Paul, R. and Linda Elder, L., The Miniature Guide to Critical Thinking-Concepts and Tools (Thinker's Guide), 7th edition, Foundation for Critical Thinking, 2014.

[2] Paul, R. and Linda Elder, L., Critical Thinking: Tools for Taking Charge of Your Learning and Your Life, 3rd Edition, Prentice Hall, 2011.

5.2 Critical Thinking Process (CTP)

According to the ACT vocabulary we used, there are four major aspects of the Applied Critical Thinking Process, termed as the 4 C's: curiosity, connection, creativity and communication. In this course, the C in the student learning objectives is connection:

5.3 Critical Thinking Activities and Assessment

Critical thinking activities are integrated in the course. Lectures and demonstrations will include examples to highlight CT elements and intellectual standards, and their applications. This includes the uses of the CT techniques such as SEE-I, Concept Maps, and visualization tools. The instructor will highlight the relevant elements of thought in classroom examples. Homework and programming assignments contain various ACT components. Both the mid-term and final examinations include ACT-oriented questions.

In particular, data of three assessment activities (AA) on ACT will be collected to assess how well critical thinking is incorporated into the course. These assessments will be used as input to the UHCL Critical Thinking database for internal assessment of Critical Thinking, and will not directly affect your grade of the course. (However, there seems to be a positive correlation between CT assessment results and grades.)

  1. Homework on ER Modeling (HW-ER): Students will construct a data model using ER diagrams to specify a problem. This homework requires the students to have a clear conceptual understanding of the theory of data modeling (ACT SLO #3) to construct a valid and relevant model of a problem. (SLO #3).
  2. Homework on Relational Schema (HW-REL): Student will convert an ER model to design and implement a relation model by providing the relational schema. A clear understanding of the relational theory is essential for the success in constructing a solution (SLO #4)
  3. Programming assignment on SQL (HW-SQL): Students will develop SQL solutions to accurately and effectively construct SQL solutions to implement a set of database queries (SLO #5).

The course assesses connections out of the four C's. The related Student Learning Outcomes (SLO) and Fundamental and Powerful Concepts (FPC):

ACT Assessment Activity
ACT SLO
FPC
HW-ER
3
1
HW-REL
4
2
HW-SQL
5
3

The assessment criteria for the AA:

ACT Assessment Activity
Assessment Outcome
Unacceptable
Acceptable
Excellent
HW-ER
[0%,80%)
[80%,92%)
[92%,100%]
HW-REL
[0%,80%)
[80%,92%)
[92%,100%]
HW-SQL
[0%,80%)
[80%,92%)
[92%,100%]

Overall, if 70% or above of students are evaluated to be acceptable or excellent in each activity, as well as the average of all activities, the outcomes will be deemed acceptable. To close the loop of assessment, the instructor will evaluate the ACT content, activities, and assessment of the course, and make necessary adjustment.