School of Information Sciences and Technology
IST 311 Object-Oriented Design and Software Applications

School of Business Administration
INFSY 307 Algorithmic Concepts

Spring 2006 - 3 Credit Hours

Class Meeting Times: Thursday, 6:15 p.m. - 9:00 p.m.
Olmsted, Room E-330
Instructor Contact Information: Jane S. Kochanov
  Office: Olmsted E-335-A, (717) 948-6342
  Hours: W. 3:30 - 5:00; Th. 1:00 - 5:00; and by appointment

Course Description

The objective of the course is to present students with the principles of object oriented design and programming using a state-of-the-art programming language such as C++ or Java. Concepts include algorithm development, programming structure, documentation, UML modeling, file management, and elementary data structures such as arrays. This course requires the students to demonstrate their mastery of object oriented design and programming through a series of individual programming assignments. In addition, students are assigned a team project to foster problem solving, communication, and team skills required in the Information Technology work force. Individual assessment is also evaluated through exams.

Course Prerequisites IST Majors: COMPSC 101 or CMPBD 204; and IST 240.

Course Prerequisites INFSY Majors: COMPSC 101 or CMPBD 204 or CSE 103.

Required Text:   JAVA, JAVA, JAVA: Object-Oriented Problem Solving, 3rd edition, by Ralph Morelli, Prentice Hall, 2006.

Software Used In Class:

Sun Java and Eclipse 3.1 IDE for Java (installed in student labs). Students may download this open source IDE at Sun Java is available at
Microsoft Visio (installed in student labs)
LeJOS a Java based replacement firmware for the LEGO Mindstorms RCX microcontroller at

Course Objectives:  Upon completion of this course, each student should be able to:

Curriculum Included in the Content:

Collaborative Skills

  • A project is developed and presented to the class as a team.

  • Communication Skills
  • Every student is required to submit written technical documentation with each project.
  • Every student participates in the oral presentation of the team project.

  • Ethical, Legal, and Global Issues.
  • NA

  • Professional Responsibility Development
  • Students learn analysis, modeling techniques and algorithmic design in an effort to recognize professional requirements for software design and development.
  • Students are reminded in this course that as technologies shift, there will always be the need for continuing professional development.
  • Grading Policy
    Evaluation of knowledge and understanding of materials will be by examination, hands-on exercises, project, and class participation. The following grade distribution will be used to determine course grades:

    Assignments Percentage of Grade Letter Grades
    Exam I 25% 95 and above = A
    Exam II 25% 90 - 94.99 = A-
    Final Exam 30% 87.70 - 89.99 = B+
    Programming Assignments 15% 83.33 - 87.69 = B
    Labs, Homework, Participation 5% 80 - 83.32 = B-
        75 - 79.99 = C+
        70 - 74.99 = C
        60 - 69.99 = D
        Below 60 = F

    Team development, a component of selected project(s), is becoming more and more critical in "real world" applications. It is expected that students participate in this important exercise. For these assignments, both peer evaluations and my evaluation will be integrated into project grades.

    Project grades will be based upon:

    All projects must be completed (and working) in order to pass this course. I compile and test each assignment. Programs which do not work will not be accepted for grading. Failure to complete all project assignments will result in an "F" for the semester.

    All programming assignments are due at the beginning of class on the assigned date. NO ASSIGNMENT WILL BE ACCEPTED ONCE OTHERS ARE GRADED AND RETURNED. Points will be deducted from projects and labs that are not turned in on time.

    Discussion of grades: I will discuss your work and grades with you at any time. However, the evaluation of peers will remain confidential.

    Course Requirements:

    Project Format:

    1. Every project must begin with comments:
      • Identify the file (i.e. the disk file name and extension) where the module is stored.
      • Identify the Programmer
      • Identify the Course
      • Identify the Project
      • Describe the purpose of the project

    2. Indentation must follow general guidelines presented in class. The development environment will indent automatically as you work making your logic easy to read and understand.

    3. Object oriented languages are built to support efficient design. Programs will be evaluated according to the design.

    4. User understanding is critical to program acceptance. Input Screens and Output must be well designed, contain titles, and labeling.

    5. For all classes, a UML class model is an expected part of the assignment.

    6. Each student should retain a copy of all materials turned into the instructor throughout the semester.

    Learning a new programming language is very challenging. The best way to accomplish this is through practice. This course has been designed to provide each student with the opportunity to actively learn the language through lab assignments and programming projects.

    Project management and collaboration are critical skills you each need to develop. A component of selected project(s) will focus on these skills. For these assignments, both confidential peer evaluations and my evaluation will be integrated into project grades.

    I expect all assignments to be presented in a neat and professional manner, meaning a cover to hold all pages and diskettes. Do not turn in a lose diskette and a handful of papers! Projects should be complete, bound together, and professional in appearance. Included must be:

    Attendance Policy
    I do not normally take attendance past the first three weeks of class. However, the nature of this course requires your presence in class. Students who miss classes should expect an impact on their grades.

    If a student misses class, it is the student's responsibility to find out what work was missed, make up work and also to be responsible for any course announcements.

    Examination Policy:
    Unless there are extenuating circumstances, such as an illness, no make-up exams will be given. However, if you must miss an exam, notification should be received prior to the exam. In the case of illness, I require a letter from a physician.

    Classroom Etiquette
    Please be considerate of your classmates during our class. Cell phones and pagers should not be used during class. It might be tempting to use your computer to finish an assignment, surf the net, check e-mail, or even play a game. This is not appropriate behavior during class!

    Academic Integrity Policy
    Projects, with the exception of collaborative assignments, must be the individual work of a student. It is, however, perfectly acceptable to discuss assignments but, no one may share program code. Copying code from others hinders the learning process and therefore, serves no purpose. Violations of this policy will be considered cheating and are subject to Penn State University procedure. In cases of cheating, both parties will be held equally responsible, i.e., both the student who shares code and the student who copied the code.

    Academic integrity is the pursuit of scholarly activity free from fraud and deception and is an education objective of this institution. Academic dishonesty includes, but is not limited to: cheating, plagiarizing, fabricating of information or citation, facilitating acts of dishonest by others, having unauthorized possession of examinations, submitting work of another person or work from another class without informing the instructor, or tampering with the academic work of other students. See Penn State's Academic Integrity Policy at Engaging in any of these activities will result in a final grade of "F" for the assignment or exam, the course and possibly dismissal from the Program.

    Disability Access Statement
    It is Penn State's policy not to discriminate against qualified students with documented disabilities in its educational programs. If you have a disability-related need for modifications in this course, contact the Disability Service Coordinator in the Student Assistance Center (W-117) at 948-6025.

    Class Cancellation
    In case of class cancellation due to weather or other conditions, the class will be notified by ANGEL at least two hours before the start of class.

    The Learning Center
    The Learning Center provides tutoring services and academic resources, primarily in writing and math. The writing tutors can help you with all areas of your writing for any course. To see the range of other courses that we support, visit our Web site, , e-mail Mimi at , call 948-6475, or drop in to Olmsted C-216. Learning Center handouts and recommended resources are available at the Learning Center and posted in the ANGEL group, Harrisburg Learning Center Resources. A technology room for your study group or for preparing small group presentations can be reserved. Contact Janice Smith, coordinator,, with any questions.

    Penn State Policies: