Gary D. Brown
CIS 10: Introduction to Programming
Fall 2007
Section 0478
Monndays & Wednesdays 10:30 am to 12:00 pm
Room 2913
Section 2967
Tuesdays 5:00 pm to 8:00 pm
Room 2913
Syllabus
Goals and Objectives:
The purpose of the course is to introduce computer science, lay the foundation for further study and to develop the skills necessary to write correct and structured programs. It is the first course leading to a four-year degree in computer science. The objectives of the course are:
- use effective problem-solving techniques.
- apply structured, object-oriented design principles to program development.
- translate program designs into syntactically correct and well-documented C++ programs.
- work within an integrated development environment.
- understand the origins and architecture of computing machines.
- comprehend the nature and production of software including operating systems, algorithm development and verification, programming languages and software engineering.
Prerequisite:
Completion of Math 155 or higher.
Laboratory:
The instructor will be available in the laboratory for the hour immediately following class. Although attendance may not always be required, students are encouraged to work on their programming projects at that time.
Text
Savitch, Walter. 2007. Problem Solving with C++: The Object of Programming. 6th Edition. Pearson Education. Boston. ISBN 0-321-41269-9
Requirements:
- Expect to read about 40 pages from the text per week.
- End-of-section exercises from the text should be completed informally. They will serve to support and reiforce the reading.
- Programming projects are to be completed according to the schedule provided.
- Two examinations will be given, the second covering only the topics studied since the previous test (the second, or final, exam is not cumulative.)
Grading:
The semester grade will be a composite of the following items:
- 50% examinations (two exams)
- 50% programming projects (ten projects)
Please consult the grading algorithm for details. Both examinations must be completed to earn a D or better.
Attendance:
Students with two weeks of absences will be dropped from the course.
Examinations
are composed of multiple choice questions written by the authors of the text. It is expected that the average time to complete each will be about an hour.
Programming projects
must be transmitted via SRJC's CATE (Center for Advanced Technology in Education) system.
- Check in with CATE: Here, you will create your CATE system user name and CATE password, which you will use to reach the entry forms for the projects. Links to those forms appear in the schedule. Be sure to fill in the section 0478(MW) check-in form or the 2967 (Tu) checkin form before submitting assignments.
- Programs must compile and run correctly with any ANSI/ISO standard C++ compiler. They will be tested with the GNU C++ compiler, g++. For a Windows IDE, visit http://www.bloodshed.net/ to download Dev-C++ for free. Mac OS users can use the Unix command line or Xcode Tools, free from Apple at http://developer.apple.com/tools/macosxtools.html?ht.
- Submissions are not always compiled and tested as soon as they are received. Please allow a few days to a week for verification of credit.
- If it is found that a program fails to meet specifications or runs incorrectly, but compiles and runs without error, two opportunities for correction will be available. There will, however, be a penalty for each resubmission.
- Programs that produce run-time errors or fail to compile will not be eligible for resubmission.
- Trivial submissions will not be considered.
- Projects must be completed by the due dates shown in the schedule. No resubmissions will be accepted after the absolute deadlines, also shown in the schedule. Please do not ask for an extension.
- The MW gradebook or the Tu gradebook will allow you to track your progress through the course. Please use your CATE user name and CATE password to view it.
Academic Integrity:
The development of programming skill is essential for success in computer science. This requires self-reliance and independent effort. Collaboration, on the other hand, is often appropriate in an educational setting.
Permitted Collaboration
- Software testing
- Algorithm development
- Program structure design
- Exam preparation
- Lecture notes exchange
Prohibited Collaboration
- Joint or cooperative source code development
- Modification and/or use of another's source code
- Revealing and/or giving source code to another student
- Viewing and/or receiving source code from another student
Consequences of Prohibited Collaboration
- The first offence will result in a penalty (rather than credit) of ten points for the assignment in question.
- A second offence will cause the student to be dropped from the course.
Communication:
- The best venue for communication is in person. Office and laboratory times are available for the private discussion of grading, scoring, administrative issues, course content and feedback on project work. Other times can be arranged. Electronic correspondance, although not ideal, is sometimes necessary. If it becomes unavoidable, please use the following procedures.
- Use the Programming email list for questions about course content and programming projects. All students as well as the instructor will have the opportunity to view your concerns and respond.
- Register at http://lists.sonic.net/mailman/listinfo/srjc-programming
- Submit questions and responses at srjc-programming@lists.sonic.net
- Course content questions sent to the instructor's email address will not be answered.
- Questions addressed to the mail list should be used for minor issues only. It is not an appropriate venue for the discussion of code in detail.
- Remember that skill development in software engineering requires self-reliance and independent effort. Please don't expect extraordinary assistance from faculty or lab staff unless a project already has been submitted and returned for refinment.
- Use the instructor's
email address (srjc-gary@metamagic.info) for questions about grading, scoring, or administrative issues. Please format the subject line as follows:
- The Subject: field must consist of
- the section number (0478 or 2967)
- a period
- the last four digits of your student ID
- another period
- the letter Q
- For example, 0478.9809.Q or 2967.9809.Q No other text may appear in this field.
- Communications with ill-formed subject lines will not be answered.
Instructor:
Please see the schedule for office hours and laboratory times. The office is located in Maggini Hall, 3rd floor, room 2935. You may also access voice mail by dialing (707) 527-4370 at any time. Email address is srjc-gary@metamagic.info. The website is available at http://www.metamagic.info.
2007/08/27