Welcome to COMP 2000 - Object-Oriented Design! This website is designed to keep you informed about the schedule, policies, labs, projects, and other elements of the course.
Meeting Time and Place
Time: |
MWF 11:30 - 12:25 a.m. (Lecture) TR 11:30 a.m. – 12:50 p.m. (Lab) |
Location: | The Point 113 |
Prerequisites: | COMP 1600 |
Instructor
Name: | Dr. Barry Wittman |
E-mail: | wittman1@otterbein.edu |
Office: | The Point 105 |
Phone: | (614) 823-2944 |
Office Hours: |
MWF 9:00 – 10:15 a.m. MWF 3:00 – 5:00 p.m. TR 9:00 – 9:55 a.m. TR 2:00 – 5:00 p.m. and by appointment |
Text Book
Barry Wittman, Aditya Mathur, and Tim Korb |
![]() |
Course Catalog Description
Bridging from analysis to implementation, how to decompose a proposed system so that it can be implemented in a reliable and cost effective manner. Object-oriented design of component-based software is emphasized, and utilizing tools to document the design. The relationship between component design and component implementation is explored. Design Patterns will also be emphasized.
For official course syllabus, please click here.
Student Learning Outcomes
By the end of the course, students will be able to:
- Apply knowledge of computing and mathematics, including common data structures and basic algorithms, to solve problems
- Design, implement, and evaluate a computer-based system, process, component or program to meet desired needs
- Describe fundamental principles of the cycle of designing, implementing, compiling, and testing code
- Learn to adhere to standards of style and documentation
- Use inductive or deductive reasoning to formulate solutions to problems
- Model real-world phenomena mathematically and computationally
- Employ interfaces and inheritance to design reusable software components
- Use exceptions to handle program errors
- Construct graphical user interfaces (GUIs)
- Apply and explain recursion
- Read and write binary and text files
- Use sockets for network communication
- Implement linked lists
- Apply library classes effectively
- Use UML as part of the code development process
- Design and run unit tests
- Use regular expressions for pattern matching
Program Learning Outcomes
The Computer Science major has a set of 10 Student Learning Outcomes (SLOs). Work in this course contributes to the following SLOs:
- Students can methodically solve algorithmic problems in at least one programming language.
- Students develop an understanding of the recurring themes of abstraction and computation.
- Students are proficient in a software development paradigm.
- Students can apply development practices and process to a variety of problems.
- Students can independently learn and apply new methods and tools.
- Students can effectively collaborate in team projects.