CMIS 102
Introduction to Problem Solving and Algorithm Design

Spring Session 1:    15 Jan 2013 - 7 Mar 2013
TTh 1645-1930

Instructor: David Wills

Class web site:




A study of techniques for finding solutions to problems through structured programming and step-wise refinement. The objective is to design programs using pseudocode and participate in hands-on debugging, testing, and documenting activities. Topics include principles of programming, the logic of constructing a computer program, and the practical aspects of integrating program modules into a cohesive application. Algorithms are used to demonstrate programming as an approach to problem solving. Students may receive credit for only one of the following courses: CMIS 102, CMIS 102A, or CMSC 101.


After completing this course, you will be able to:


CMIS 102 is an introduction to the entire field of computer and information science. In it, we will briefly discuss the history of computing and introduce the subject of computing ethics. The course focuses on an abstract (i.e., language-independent) framework for understanding fundamental programming concepts and constructs. You will have the opportunity to design, implement, test, debug, and document simple computer programs using pseudocode and appropriate tools.

Don't let all the above bore or scare you. This course is mostly fun.


Venit, S., & Drake, E. (2011). Extended prelude to programming: concepts and design (5th ed.). Boston: Pearson Education.

Some free software will be provided to you. Bringing a laptop to class is encouraged.

Grading Information:

EVALUATION: Your grade will be based on examinations and some exercises and homework (programs) in the following proportions:
   Midterm Exam:   15%
   Final Exam:     30%
   Assignments:    40%
   Exercises:      15%

The grade of 'A' means "outstanding", i.e. "mastery of the material". The grade of 'B' means "good". The grade of 'C' means "satisfactory".
Grades are curved and related to the class average. "Significantly above" the class average are the A's, "above" (or sometimes even at) the class average are the B's, at or below the class average are the C's. Significantly below the class average are the D's and F's.
Usually, in the 90's is an A, 80's is a B, 70's is a C. Actually, this method is to your advantage, as often the curve for grades is lower than the traditional 90-100 A, 80-90 B etc, in other words it might be 85-100 is an A etc.
The grade of “Fn” may only be assigned if a student stops attending class during the first 60% of the class.

PENALTIES: There are penalties for late work. All work must be submitted as specified.

INCOMPLETES: The grade of I is exceptional and given only to students whose completed course work has been qualitatively satisfactory but who have been unable to complete all course requirements because of illness or other extenuating circumstances beyond their control. The grade of I may be considered only for students who have completed at least fifty (50) percent of the total course work requirements and who have received a passing grade on all the course work which they have completed. the instructor retains the right to make the final decision on granting a student's request for an I, even though the student may meet the eligibility requirements for this grade.

POLICIES, PROCEDURES AND GRADES: IAW with the University of Maryland, University Catalog, Asian Division, and the Student Handbook (current editions). These cover essential information such as attendance, grading, make-up work and plagiarism.

Office hours are available at the request of students.