Metropolitan Community College

Course Syllabus – 2007-2008/Spring

COURSE IDENTIFICATION Title: - C++ Programming II Prefix/Section: - INFO 1532/5A (formerly CPT 125) Credit Hours: - 4.5 Begins/Ends/No-Class Days: - 6 Mar 2008/15 May 2008 Meeting Day/Time: - Th/6:00 p.m. to 10:00 p.m. Last Day to Withdraw - 30 Apr 2008 Delivery Type: Classroom Class Location: - FOC 8 202 Lab Location: - FOC 8 2nd floor classrooms not in class, FOC 10 2nd floor Course Web Address: See Faculty Web Site

CONTACT INFORMATION Instructor Name: - Alan R. Reinarz METRO OFFICES

HOURS* LOCATION PHONE FAX 738-4089 M, Th: 10:00a-11:00a SOC MAH 201F 738-4535 T, W: 2:30p-3:30p (voice-mail) M: 4:00p-5:00p SRP A144 537-3800 537-3834 Th: 4:00p-5:00p FOC 8 203 457-2624 457-2946 *Stated office hours may need to be changed due to special circumstances or events. If the student wishes to meet with the instructor at a time other than scheduled office hours, the student should make an appointment with the instructor.

Home phone: - (402) 556-3071 Email Address: - [email protected], [email protected] Faculty Web Site: - http://ctva.mccneb.edu/areinarz Academic Program Area: - Information Technology Dean’s Office Telephone: - 457-2660 (Tom Pensabene)

COURSE INFORMATION Course Description: This course presents students with the basic features of the C++ programming language which include programming concepts, fundamental concepts of object oriented programming, modular program- ming, modeling, and object oriented problem solutions.

Course Prerequisites: INFO 1522 (formerly CPT 123), C++ Programming I

Course Objectives: Upon successful completion of this course, the student will be able to: 1. Describe the methods of developing programs in C++ to solve problems. 2. Describe the basic programming concepts and terms used in C++. 3. Explain the fundamental concepts of object oriented programming and how they map to C++ language features. 4. Demonstrate the development of a computer program in C++.

Metropolitan Community College 1 Template Rev. 7/24/06 5. Demonstrate the use of basic C++ features for modular programming, flow control, and ma- nipulation of basic data types. 6. Demonstrate the object oriented approach to modeling problems. 7. Demonstrate the use of object oriented features of C++ to implement a solution based on an object model.

Required & Supplemental Materials: Title: C++ Programming: Program Design Including Data Structures Edition: 3rd (2007) Author: D.S. Malik Publisher: Course Technology ISBN: ISBN: 978-1-4188-3640-5 Materials: “Removable” storage media for submittal to instructor, as needed

Students enrolled in this course may obtain a licensed copy of Microsoft Visual C++ and Microsoft Visio at no charge, for use on their own computer. Visual C++ is a component of Visual Studio (VS). MCC is currently using VS .NET 2005. See the following link for details on using MSD- NAA: http://sharepoint.mccneb.edu/msdnaa. This software is yours to keep. You may also use any other ANSI/ISO-compliant C++ compiler.

Course Structure: In each lecture during this course, the instructor will cover material the student needs to learn and ac- complish. In addition, written handouts may be provided from time to time. These will be used to sup- plement the text material and expand the course.

Instruction will consist mainly of lecture material presented by the instructor. In some classes, group discussion and demonstration may be used. In all meetings, discussion opportunities will be provided and the student is encouraged to ask questions and clarify information as the instructor is lecturing and/or presenting material.

COURSE ASSESSMENT 1. Types of Assessment/Assignments a. Identify how students will be assessed (Quizzes/Exams/Papers/Projects/etc) Student progress is measured against the course objectives listed earlier by means of in- class participation, C++ computer programs, as well as periodic written and hands-on skills testing. Assignments will be C++ programs, for the student to work on either at home or in one of the computer labs. Programs are vital to achieving the course objectives. Students will write C++ programs based on material learned over the chapters in the text- book. Please retain copies of your submitted work. Typical program submittals must in- clude:  design/‌format/‌layout documentation for all program input and output,  a hierarchy diagram and/or UML (where appropriate),  flowcharts (or pseudo-code or IPO charts),  printed source code as successfully compiled and executed,  printed output from a successful test execution,  listings of all test input and output files, and,  on a 3.5” floppy diskette or other submittable storage medium: o source files for all printed documentation, o the program source code as successfully compiled and executed, and

Metropolitan Community College 2 Template Rev. 7/24/06 o all data files needed for testing program execution. Programming assignments will be evaluated on:  the adequacy of program planning;  correctness of coding generated;  usage of comments to describe and clarify program logic, variable usage, and input/output requirements;  adequacy of program testing procedures; and  adequacy of program documentation.  Of course, the program should also run correctly. Full points are awarded for the inclusion of the specified item(s), with points being deduct- ed for notable problems. A typical point assignment for these various aspects of program- ming for a 40 point program is as follows:

Planning & external Comments in source code: Coding & implementation: documentation: 2 general description of pro- 3 standard coding style & related is- 1 input layout(s) gram sues 1 output layout(s) 2 input/output requirements 3 correct procedural logic/method 1 hierarchy diagram/UML 2 purpose & use of each vari- 3 correct compile 4 flowcharts/pseudocode/ able (variable table) 16 correct run IPOs 2 program logic (for each func------tion/module) 40 total

The written exams may be a combination of fill-in the blanks, multiple choice, true/false, and essay questions. The exams will test material presented in the reading and other as- signments, and during class meetings. b. Identify other assignments (Required reading, homework, and etc) The student will have specific assignments to read and master. These assignments are indi- cated in the course schedule and/or outlined by the instructor. The student should have read the material prior to the class meeting date. c. State make-up and late assignment policies LATE ASSIGNMENTS: Assignments turned in late MAY lose 10% per week. Late assignments MAY not be accepted after two weeks overdue. Please contact instructor regarding the circum- stances of any late work. MAKE-UP TEST PROCEDURES: Students MUST be present on the day of an announced test. If the instructor is in- formed BEFORE the test concerning a valid absence, other arrangements MAY be made. There will be no retakes of tests. Test dates are not firm and are therefore subject to change. d. Attach schedule of assessments/assignments (See below.)

2. Grading Policy Grading Scale Course Requirements Letter Percent Range Activity Frequency Weight of Grade Grade A 90-100 B 80-89 Programs 9 360 points C 70-79 Exam 2 300 points D 60-69

Metropolitan Community College 3 Template Rev. 7/24/06 F Below 60

3. Maintenance of Student Records a. State how/when you will give student feedback on their progress b. State if papers/projects/tests/etc. will be returned and when The programming assignments and exams will be returned in class one week after they are turned in to the instructor. Grades will be reflected on the returned items. Students may ob- tain their current cumulative grade from the instructor before or after class. The exams will be reviewed in class but retained by the instructor. c. Grade books (grade spreadsheets) should be kept by the instructor for a minimum of one (1) year. d. Student tests, papers, projects, etc., that were graded by faculty for determining the final grade and were not returned to the student, should be kept for one (1) year.

STUDENT EXPECTATIONS Required Expectations 1. Attendance Policy The course will be covered partially by assigned portions of the text and may be presented in a sequence different from the text and some material will be covered that is not in the text. Therefore, attendance is necessary to understand the course material. Each student is expected to recognize the importance of class attendance and promptness. Chronic tardiness or lack of attendance will contribute to non-achievement of course objectives. CHRONIC TARDINESS AND ABSENCES MAY RESULT IN A REDUCTION IN THE FINAL GRADE BY 10%.

Excessive absences or unsatisfactory progress will subject the student to administrative (in- structor) withdrawal from the course. If a student should miss a class for any reason, he/she is expected to cover the material he/she missed on his/her own. All work must be made up to the satisfaction of the instructor.

2. Expected Classroom Behavior

Suggested Expectations 1. Class Participation (Yes!) 2. Disruptive Classroom Behavior (Not!) 3. Portable Electronic Devices Usage (Not!) 4. Internet Use During Class Students are not permitted to browse the Internet, read email, or otherwise use the computer during lecture time -unless the instructor directs you to access the computer. Using the com- puter during lecture is distracting to both the instructor and students who are actively listening. Ignoring this policy will result in lowering your attendance and participation grade. (CT)

Notice: This syllabus is written as an expectation of class topics, learning activities, and expected learning outcomes. However, the instructor reserves the right to make changes in this schedule that may result in enhanced or more effective learning for students. These modifications will not substan- tially change the intent or objectives of this course and will be done within the policies and guidelines of Metropolitan Community College.

LEARNING SUPPORT Metro's Learning, Math, and Writing Centers can help you achieve educational success. The staff in these centers provide drop-in assistance with basic math, reading, writing and computer skills. We of-

Metropolitan Community College 4 Template Rev. 7/24/06 fer a friendly, supportive learning environment. Self-paced computer-assisted instructional support in reading, vocabulary, typing, English as a Second Language, and online course orientation is also available. Detailed information about these services are in the Student Handbook, College Catalog, and online. Links to these resources are located at http://www.mccneb.edu/learningcenter/.

COLLEGE POLICIES College policies, such as student rights and responsibilities, academic standards, plagiarism, and etc. are outlined in the College Catalog and Student Handbook. This information can be accessed via the online catalog at http://www.mccneb.edu/academics/catalog.asp.

STUDENT WITHDRAWAL: If you cannot attend and complete this course, you should officially withdraw by calling Central Registration, 457-5231. Failure to officially withdraw will result in ei- ther an instructor withdraw (IW) or failing (F) grade. The last date to withdraw is identified on the first page of this syllabus handout.

STUDENT CODE OF CONDUCT: The college has a standard code of conduct that involves conse- quences for specific academic and non-academic behavior that may result in a failing grade, proba- tion, or suspension from the college. More complete information about the code of conduct is located in the Student Services portion of the online catalog (http://www.mccneb.edu/catalog/studentinforma- tion.asp).

ACCOMMODATIONS FOR STUDENTS WITH DISABILITIES: If you have a disability that may substantially limit your ability to participate in this class, please contact a Vocational Special Needs Counselor, located in the Student Services Office on each campus. Metropolitan Community College will provide reasonable accommodations for persons with documented qualifying disabilities. How- ever, it is the student’s responsibility to request accommodations. For further information, please con- tact the Student Services Office at your campus.

Other pertinent college policies are posted on the CDS website www.mccneb.edu/cds.

ADDITIONAL COLLEGE POLICIES

1. ACADEMIC HONESTY STATEMENT Students are reminded that materials they may use as sources for this course may be subject to copyright protection. Additional information about copyright is provided on the library web- page at http://www.mccneb.edu/library, by your instructor, or by the College's Copyright Offi- cer.

In response to incidents of student dishonesty (cheating, plagiarism, etc.), the College imposes specific actions that may include receiving a failing grade on a test, failure in the course, sus- pension from the College, or dismissal from the College. The disciplinary procedures are available in the Counseling/Advising Centers and at http://www.mccneb.edu/procedures/V-4_Student_Conduct_and_Discipline.htm.

Instructor Policy: Please note: ANY sharing or transfer of assigned work or test contents or answers be- tween a student and any other person or party; in part or in whole; whether by disk ex- change, E-mail, manual transcription, co-development of an assignment, or any other means; unless authorized by the instructor in advance in accordance with the guidelines in the following paragraph; will be considered academic misconduct and be sanctioned

Metropolitan Community College 5 Template Rev. 7/24/06 with disciplinary action in accordance with the above paragraph. Both originating and receiving parties will be liable to such sanction.

Sharing of class notes and handouts is authorized. Obtaining assistance from others (including tutors or lab techs) for specific programming issues or debugging is authorized. However, no further collaboration is authorized for any standard assignment. Students wishing to collabo- rate further must contact the instructor for special assignments. Such special assignments must clearly identify in advance which portions are the responsibility of each individual student wishing to collaborate. The learning objectives, level of difficulty, and typical work involved for each portion must be comparable to that for a single student working alone on the corre- sponding standard assignment. Each portion will be graded individually. Each portion must clearly represent the competency of the individual responsible for it, and only that individual. The instructor reserves the right to refuse any request for special assignments.

Indications of unauthorized collaboration and/or intent to defraud include, but are not restrict- ed to, assignments, submitted by students (not necessarily from the same section) individually under each of their respective names; but which are essentially identical; are essentially identi- cal except for mechanical changes such as differing variable or module names; are essentially identical except for differing comments; or exhibit essentially identical idiosyncratic features such as errors in syntax, style, logic, output formatting, or spelling. The same criteria apply to submissions, by one or more students, where those submissions bear indications of copying from any other unauthorized source. Authorized sources are the student textbook for the class, lecture notes, class handouts, and compiler/interpreter documentation and help materials.

In summary, since the instructor must report an individual grade for each student, the work you submit must be your work and only your work.

2. USE OF STUDENT WORK The ownership of student works submitted in fulfillment of classroom requirements shall re- main with the student(s): By enrolling in classes offered by Metropolitan Community College, the student gives the College license to mark on, modify, and retain the work as may be re- quired by the process of instruction, as described in the course syllabus. The institution shall not have the right to use the work in any other manner without the written consent of the stu- dent(s).

Instructor Policy: Nothing in this section shall be construed as superseding the College and program area poli- cies and procedures described and referenced in the Academic Honesty Statement. (CT)

3. ASSESSMENT OF STUDENT LEARNING PROGRAM Metropolitan Community College is committed to continuous improvement of teaching and learning. You may be asked to help us to accomplish this objective. For example, you may be asked to respond to surveys or questionnaires. In other cases, tests or assignments you are re- quired to do for this course may be shared with faculty and used for assessment purposes. This will be done in accordance with FERPA guidelines.

4. TECHNOLOGY RESOURCES By using the information technology systems at MCC(including the computer systems and phones) you acknowledge and consent to the conditions of use as set forth in the Metropolitan Community College Procedures Memorandum on Acceptable Use of Information Technology

Metropolitan Community College 6 Template Rev. 7/24/06 and Resources. It is your responsibility as a student to be familiar with these procedures. The full text of the Procedures Memorandum may be found at the following website: http://www.mccneb.edu/procedures/x-15_Technology_Resources_Use.htm

Metropolitan Community College 7 Template Rev. 7/24/06 REQUIRED ATTACHMENTS

1. SCHEDULE OF ASSIGNMENTS

WEEK--Days DESCRIPTION ASSIGNMENT

1—3/6/2008 Introduction to the course Review Chapters 6, 7, 8, 9 Review of functions, arrays, strings, and pointers. Handout (or Ch. 13, pp. 734-42, 745-60 (2nd ed: 686-96, 700-13)) Program 1 – Assigned

2--3/13 Records (Structs) – Group related values that Read Chapter 10 are of different types Program 1 – Due Program 2 – Assigned

3--3/20 Classes and Data Abstraction: Group data and Read Chapter 11 functions, compare structs with Program 2 – Due classes, implement abstract data Program 3 – Assigned types

4--3/27 Inheritance and Composition – Create new class- Read Chapter 12 es from existing classes Program 3 – Due Program 4 – Assigned

5--4/3 Midterm Exam (Chapters 10-12) Program 4 – Due

6--4/10 Pointers, Classes, Lists, and Virtual Functions – Read Chapter 13 Declare and manipulate pointers, create dynamic arrays and virtual Program 5 – Assigned functions

7--4/17 Overloading – Overload operators, create friend Read Chapter 14 Pp 759–823 functions Program 5 – Due Program 6 – Assigned

8--4/24 Templates: Create function and class templates Read Chapter 14, Pp 823–836 Program 6 – Due Program 7 – Assigned

9--5/1 File input and output. Files as objects, sizeof op- Read Appendix E erator Program 8 – Assigned

10—5/8 Exception Handling and C++ pitfalls Read Chapter 15 Program 7 & 8 – Due Program 9 – Assigned

11--5/15 Final Exam (Comprehensive) Program 9 – Due The schedule of assignments is subject to change by the instructor. In the event the College closes classes for any reason, the dates of the scheduled activities will be followed as outlined above.

2. IMPORTANT DATES Note: You may want to include a link Metro’s Academic Calendar at http://www.mccneb.edu/academics/calendar.asp?Theme=2 )

Metropolitan Community College 8 Template Rev. 7/24/06