CSCE 2014
Class Syllabus
Spring 2012

Instructor:

Name: John Gauch
Office: 518 JBHT
Class Time: Tue Thur 12:30-2:00pm
Office Hours: Tue Thur 8:30-11:30am
Phone: (479) 575-4024
Email: jgauch(at)uark.edu
Web Page: http://csce.uark.edu/~jgauch

Teaching Assistants:

Name: Patrick Anderson
Office: 434 JBHT
Lab Times: Tues Wed Fri 3:30-5:30pm
Office Hours: Mon Wed Fri 9:30-11:30am
Email: jpanders(at)uark.edu

Catalog Listing:

This course continues developing problem solving techniques by focusing on fundamental data structures and associated algorithms. Topics include: abstract data types, introduction to object-oriented programming, linked lists, stacks, queues, hash tables, binary trees, graphs, recursion, and searching and sorting algorithms. Using C++ in a UNIX environment. Prerequisite: CSCE 2004.

Text Book:

Data Abstraction & Problem Solving with C++ (5th Edition), Carrano, 2006. Published by Addison Wesley.

Optional references:

Online C++ Notes from CSCE 2004.
C++: How to Program, Seventh Edition, 2009, by Deitel & Deitel. Published by Prentice Hall.
Learning the Unix Operating System, Fifth Edition, 2002, by Peek, Todino-Gongquet, and Strang. Published by O'Reilly Press.

Grading:

Final grades in this class will be determined by a weighted average of lab scores, programming project scores, classwork, and exam scores as follows:

Labs: 10%
Programming Projects: 30%
Classwork: 10%
Midterm Exam: 25%
Final Exam: 25%
We use the following scale to assign final grades: A: over 90%
B: 80% - 89%
C: 70% - 79%
D: 60% - 69%
F: below 60%

Students must pass BOTH the homework portion of the class (labs, projects, classwork) AND the exam portion (midterm and final) with a grade of D or better in order to pass this course. Hence, an overall average greater than 60% may still result in a failure in some cases.

Labs: There will be 13 weekly laboratory assignments. Grades for the labs will be based on completeness, correctness, and effort. Although lab materials are available on the web and can be submitted electronically, students are required to attend labs. Lab attendance will be taken in the first 15 minutes of the lab, and students who are not present will receive a grade of ZERO for that lab. Labs which are not completed in the lab time can be electronically submitted within 24 hours of lab time with no late penalty. Labs submitted after this time will NOT be accepted.

Programming Projects: There also will be 6-7 relatively large programming projects that will integrate material taught in the course. The project requirements and due dates will be posted on the class website. The programming projects will be graded according to the following scale:

50% program correctness
20% software design
10% programming style
10% testing
10% documentation

Programming projects must be submitted electronically by midnight of the due date specified in the project description. Projects which are submitted within 24 hours of the due date will lose 50% of their grade. Projects will NOT be accepted beyond this 24 hour period. Partial credit will be given for programs which compile but which are not complete. Starting early on programming projects is strongly encouraged.

Classwork: In EVERY class there will be 10 minute programming or analysis activity to related to the lecture material. This will give students a chance to get more practice reading code, writing code, or drawing data structures. We will be using Turning Technologies clickers in class to record student responses, so please bring your clickers to class EVERY day. Grades on classwork will be based on attendance and effort.

Exams: There will be two exams in this class. One midterm exam and a comprehensive final exam. All exams will be closed book, but each student will be allowed to bring in a single 8.5 by 11 sheet of notes. Calculators will not be needed or allowed. Make up exams will only be allowed under exceptional circumstances (e.g., a note from your doctor).

Academic Misconduct:

The department, college, and university have very strict guidelines regarding academic misconduct. The following policies will apply to this class.

Exams:

  • Students are NOT allowed to copy anything from another student.
  • Students are NOT allowed to get any outside assistance during the exam.
  • Students ARE allowed to bring an 8.5 x 11 sheet of paper with any notes they want into the exam. Otherwise, exams are closed book and closed notes.

    Programming Projects:

  • Students are expected to submit their own work on individual programming projects.
  • Students are NOT allowed to work together in teams or groups to implement programs.
  • Students are NOT allowed to lend or borrow code from each other.
  • Students are NOT allowed to copy code from other individuals or websites.
  • Students ARE allowed to ask the instructor and/or GTAs for assistance.
  • Students ARE allowed to borrow and adapt code from this class website.

    Instances of cheating will result in a ZERO on the copied assignment/exam and will be reported to the department head. The policy specified in the University of Arkansas Undergraduate Studies Catalog, Academic Regulations, Academic Dishonesty will be followed.

    ADA Statement:

    If any member of the class has a documented disability and needs special accommodations, the instructor will work with the student to provide reasonable accommodation to ensure the student a fair opportunity to perform in this class. Please advise the instructor of the disability and the desired accommodations within the first week of the semester.

    Inclement Weather:

    If the university is officially closed, class will not be held. When the university is open, you are expected to make a reasonable effort to attend class, but not if you do not feel that you can get to campus safely. Assignment due dates will be postponed in case of inclement weather.