CSCE 3193
Class Syllabus
Spring 2011

Web Page:


Name: Dr. Susan Gauch
Office: 504 JBHT
Hours: Mon Wed Fri 12:30-1:30
Phone: 575-6036
Email: sgauch(at)
Web Page:

Teaching Assistants:

Name: Anthony Shumate
Office: 434 JBHT
Hours: Tu Th 11:30-1:30
Email: ashumate(at)

Catalog Listing:

Programming in different paradigms with emphasis on object oriented programming, network programming and functional programming. Survey of programming languages, event driven programming, concurrency, software validation.

Class Objectives:

The students should be able to program in a variety of languages representative of different paradigms, e.g., object-oriented, functional, client-server, etc. The students should have a better understanding of how programming languages differ and how they are similar.

Computer Science and Engineering Program Outcomes

  • (a) An ability to apply knowledge of computing and mathematics appropriate to the discipline.
  • (b) An ability to to analyze a problem, and identify and define the computing requirements appropriate to its solution.
  • (c) An ability to design, implement and evaluate a computer-based system, process, component, or program to meet desired needs.
  • (h) Recognition of the need for, and an ability to engage in, continuing professional development.
  • (i) An ability to use current techniques, skills, and tools necessary for computing practices.
  • (j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.
  • (k) An ability to apply design and development principles in the construction of software systems of varying complexity.
  • Text Book:

    Cay S. Horstmann & Gary Cornell, Core Java, Volume 1, 8e, Prentice Hall, 2008.

    Optional text:

    Robert W. Sebesta, Concepts of Programming Languages, 9e, Addison-Wesley, 2009.


    Final grades in this class will be determined by a weighted average of programming project grades, quizzes, and exam scores. We will 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 AND the exam portion (midterms 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.

    The grade will be calculated as follows:

    Programming Projects: 50%
    Midterm: 20%
    Final Exam: 30%

    Programming Projects: There also will be approximately 6 programming projects. 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 after the due date lose 10% per day for up to 3 days late. Projects more than 3 days late will not be accepted. Weekends count as 1 day. 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.

    Students are allowed to discuss program design and other high level issues with each other. Students are also allowed to help each other understand specific compiler or run time error messages. However, unless otherwise specified, students are not allowed to work together on the homeworks.

    Exams: There will be two exams in this class. One midterm exam and a comprehensive final. All exams will be closed book, but each student will be allowed 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.

    Academic Misconduct:

    The department, school and university have very strict guidelines regarding academic misconduct. Obviously, copying is not allowed on exams. Students are expected to submit their own work on individual programming projects. Lending or borrowing all or part of a program from another student is not allowed. Students ARE allowed to borrow and modify any code on this class web site in their labs or programming projects.

    Copying all or part of another person's program is strictly prohibited and will result in a grade of zero for students involved. Supplying printed or electronic copies of your homework to other classmates will also result in a grade of zero. A second infraction will result in failing the course.

    ADA Statement:

    If any member of the class has a documented disability and needs special accommodations, the instructor will work with the stuent to provide reasonable accommodation to ensure the student a fair opportunity to perform in this class. Please advice 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.