CSCI 332 – Fall 2017 Syllabus


Aspen Olmsted
Course website:
Tel: 843.953.6600
Email: Please use with CSCI332 in the subject line of the email
Office: Harbor Walk East CS 315
Office hours: Tuesday & Thursday 8am-9:45am, 2pm – 2:45pm (Please book at

Class place and time

Harbor Walk East
Section I – HWE 334, TR 9:55-11:10am
Section II – HWE 301, TR 11:20-12:35pm

Catalog description

CSCI 332 Database Concepts
A course that introduces the student to the basic concepts, organization, and implementation models of databases, with an emphasis on the relational model. Among the topics covered are data models, query languages, relational database design using normal forms, database programming, and information assurance and security. Problems will be assigned using a relational DBMS and SQL. Prerequisites: CSCI 221 and MATH 207.

Course Outcomes

  1. Identify major DBMS functions and describe their role in a database system.
  2. Define the fundamental terminology used in the relational data model.
  3. Demonstrate use of the relational algebra operations from mathematical set theory (including union, intersection, difference, and Cartesian product) and the relational algebra operations developed specifically for relational databases (select, product, join, and division).
  4. Demonstrate queries in relational algebra.
  5. Demonstrate queries in SQL to elicit information from a database.
  6. Demonstrate queries in XPath to elicit information from a semi-structured database.
  7. Explain and demonstrate the concepts of entity integrity constraint and referential integrity constraint (including definition of the concept of a foreign key).
  8. Identify the normal form (1NF, 2NF, 3NF or BCNF) of a relation.
  9. Normalize a 1NF relation into a set of BCNF relations and denormalize a relational schema.
  10. Explain the impact of normalization on the efficiency of database operations.
  11. Determine the functional dependency between two or more attributes that are a subset of a relation.
  12. Explain multi-valued dependency and identify examples in relational schemas.
  13. Create conceptual data models (including ER) to describe a database structure.
  14. Prepare a relational schema from a conceptual model developed using the ER model.
  15. Use SQL to create a relational database schema based on conceptual and relational models
  16. Create stored procedures, functions, and triggers using a commercial relational DBMS.
  17. Explain concurrency control.

Professor Assumptions

I am assuming because you are in this class you want to learn about database
programming.  Therefore, it is my job to use the 40 hour long classes and 80 hours of outside
work to get you there.

Required text

A First Course in Database Systems (3rd Edition), ISBN 978-0136006374 or    Database Systems Complete Book, 2nd Edition, ISBN-9780131873254 , Prices Range from $95 (Used) to $172.20 New Hard Cover)

Grading scale

100-92 (A); 91-89 (A-); 88-86 (B+); 85-82 (B); 81-79 (B-); 78-76 (C+); 75-72 (C); 71-69 (C-); 68-62 (D); else (F)

Evaluation schedule

20% Final
40% Quizzes/Labs
40% Programming Project

Programming Project

Each student will give a 15 minute presentation at the end of the semester presenting a database solution they have built using the tools they have learned over the semester.  The project should include a design for a system similar to appendix A in the book along with implementation in MySQL with a PHP front end.  The topic for the project should be chosen from the list in the class discussion forum.  Since this is a database course you will not be graded on user interface design, simple HTML forms that submit data and queries to the database will suffice.


Please use token (1E97F27D to enroll in  Each week there will be several quizzes in the system.  You can take the quizzes anywhere you have internet access. You are allowed to retake each quiz up to 3 times, but you must wait 60 minutes between each take.  The questions change with each take.  I will count the last one you took per quiz.  Each quiz has a due date and after the due date full explanations will be available for every question. Once the due date has reached the quiz will not be available for retake.


We will have one comprehensive final that will be taken on in the same style as the quizzes.


Any student who feels he or she may need an accommodation based on the impact of a disability should contact me individually to discuss your specific needs. Also, please contact the College of Charleston, Center for disability Services for additional help.

Student Honor Code
I expect you to abide by the Honor Code and the Student Handbook: A Guide to Civil and Honorable Conduct. If you have a question about how to interpret the Honor Code, ask before acting! I encourage collaboration, but you must document it. Thus, each student will submit their own homework and, when collaborating, provide a reference to those people and documents consulted.

Attendance at regular classes is not mandatory, but is a great way to engage the course material and to ask questions. Attendance for tests and the exam is expected (rescheduling for sickness is accommodated). Please do not attend class if you are sick or believe you are becoming ill. It is best to document your absence through an absence report in Undergraduate Academic Services. ATTENDANCE WILL BE TAKEN AT ALL CLASS SESSIONS.

Electronic Devices
The use of electronic devices, both stand-alone and network capable, will play an increasingly important roll in teaching and learning at the College of Charleston, including their use in our classrooms. Just be respectful about unnecessary distractions to you and to others seated around you.

How to report an absence

Students should…

Come to 67 George Street (white house next to Stern Center) to discuss absences and fill out the appropriate forms. Or get forms online at: Forms can be faxed to the College at 953-2290.

Students will need documentation for health, personal or emergency situations.  Athletic Teams and school-sponsored trips will have documented lists of students participating on our letterhead as early in the semester as we get the information from the organization. We would like all information on scheduled outings to reach us at least two full weeks in advance. We will then turn the information back to the coach or advisor.

Academic Integrity
Lying, cheating, attempted cheating, and plagiarism are violations of our Honor Code that, when identified, are investigated. Each incident will be examined to determine the degree of deception involved.

Incidents where the instructor determines the student’s actions are related more to a misunderstanding will be handled by the instructor. A written intervention designed to help prevent the student from repeating the error will be given to the student. The intervention, submitted by form and signed both by the instructor and the student, will be forwarded to the Dean of Students and placed in the student’s file.

Cases of suspected academic dishonesty will be reported directly by the instructor and/or others having knowledge of the incident to the Dean of Students. A student found responsible by the Honor Board for academic dishonesty will receive a XF in the course, indicating failure of the course due to academic dishonesty. This grade will appear on the student’s transcript for two years after which the student may petition for the X to
be expunged. The student may also be placed on disciplinary probation, suspended (temporary removal) or expelled (permanent removal) from the College by the Honor Board.

Students should be aware that unauthorized collaboration–working together without permission– is a form of cheating. Unless the instructor specifies that students can work together on an assignment, quiz and/or test, no collaboration during the completion of the assignment is permitted. Other forms of cheating include possessing or using an unauthorized study aid (which could include accessing information via a cell phone or computer), copying from others’ exams, fabricating data, and giving unauthorized assistance.

Research conducted and/or papers written for other classes cannot be used in whole or in part for any assignment in this class without obtaining prior permission from the instructor. Students can find the complete Honor Code and all related processes in the Student  Handbook at