Course Promises / Learning Objectives
By the end of the course, you will understand:
- the components of a database management system, and the design choices for managing system resources to support efficient and correct storage, access, and data constraints.
- the importance of abstraction in database systems
- how to represent data conceptually using entity-relationship models
- how relational databases maintain data integrity
- the importance of considering system resources when designing and choosing data structures
- how to utilize SQL and modern databases to represent large, real-world
datasets
Student Responsibilities
I have outlined the skills and objects this course promises to provide you.
For this promises to be upheld, you will need to commit towards the policies
outlined below. To succeed you should:
-
Attend class.
The primary introduction to course material is through class lecture.
Additionally, we often do learning exercises during class, which
give you immediate experience with the material we are covering.
While I am more than happy to help with any material in office hours, priority
will be given to students who attend and participate in lecture. Office hours
are not to make up for missed lecture.
- Attend lab prepared.
Lab will introduce new
content and be an opportunity to work in teams on paired assignments.
Lab attendance is mandatory.
- Participate actively in learning process.
Showing up is necessary, but not sufficient to success in the course.
To fully develop your analytical skills, you are expected to participate
in class discussion. This includes asking questions during lecture portions
and engaging your peers during short class exercises. Studies
show active involvement is the number one determinant of student success.
- Prepare for lecture
We will use clickers in this course combined with pre-reading assignments
for each lecture. You are expected to have done pre-reading before each
lecture, as well as reviewing your lecture notes from prior meetings. If you
have done so, you will not be prepared to answer clicker questions and
participate in group discussions. Follow these Tips for Reading CS Textbooks to maximize your preparation.
-
Start the lab assignments early.
I realize this one is not always easy to do, but if you can get in the
habit of doing this, you will be much better off. As the labs get
longer and more difficult, starting early will give you plenty of time
to mull over the lab problems even when you aren't actively writing
your solution.
Academic integrity
Academic honesty is required in all your work.
Under no circumstances may you hand in work done with (or by) someone
else under your own name. Your code should never be shared with anyone;
you may not examine or use code belonging to someone else, nor may you
let anyone else look at or make a copy of your code. This includes, but
is not limited to, obtaining solutions from students who previously took
the course or code that can be found online. You may not share
solutions after the due date of the assignment.
Discussing ideas and approaches to problems with others on a general
level is fine (in fact, we encourage you to discuss general strategies
with each other), but you should never read anyone else's code or
let anyone else read your code. All code you submit must be your own
with the following permissible exceptions: code distributed in class,
code found in the course text book, and code worked on with an assigned
partner. In these cases, you should always include detailed comments
that indicates on which parts of the assignment you received help, and
what your sources were.
Failure to abide by these
rules constitutes academic dishonesty and will lead to a hearing of the
College Judiciary Committee. According to the Faculty Handbook:
"Because plagiarism is considered to be so serious a transgression, it is
the opinion of the faculty that for the first offense, failure in the
course and, as appropriate, suspension for a semester or deprivation of
the degree in that year is suitable; for a second offense, the penalty
should normally be expulsion."
The spirit of this policy applies to all course work, including
code, homework solutions (e.g., proofs, analysis, written reports),
and exams.
Please contact me if you have any questions about what is
permissible in this course.