CPSC3175 - Object-Oriented Design

A course in design with objects as building blocks

Instructor | Description | Topics | Texts | Policies

INSTRUCTOR: Dr. Rodrigo A. Obando
OFFICE: Center for Commerce and Technology, Room 453
OFFICE HOURS: TR 5:00 PM – 6:00 PM; 9:10 PM - 10:00 PM and by appointment;
PHONE: (706) 568-5374
E-MAIL: Obando_Rodrigo@columbusstate.edu

CATALOG DESCRIPTION OF COURSE

Prerequisite: CPSC 2108 – Data Structures. An introduction to designing windows applications using object-oriented and component technologies. The emphasis of this course is in event-driven programming using controls and components to develop desktop windows applications. The stress of the course is on the full usage of the Object-Oriented Paradigm for problem-solving and software development using an object-oriented programming language and the Standard Object Modeling Language (UML). (3 credits).



Course Outline


TEXTBOOKS

Required Text

Required Book Image
Authors Eric Freeman & Elisabeth Freeman
Title Head First Design Patterns
Publisher O'Reilly
Year 2004
ISBN 978-0-596-00712-6

Supplementary Books and Materials


POLICIES

Student Responsibilities

As a student in this course, you are responsible to:

Grading Policy


Grades may be determined according to this scale:
A 90% - 100% B 80% - 89%
C 70% - 79% D 60% - 69%

General Policies

You are responsible for all class work missed, regardless of the reason for the absence(s). Late assignments will not be accepted. No makeup exams or quizzes will be given, so please make sure you are present for all exams/quizzes. Refer to the CSU Catalog (http://aa.columbusstate.edu/advising/a.htm#Absence Policy) for more information on class attendance and withdrawal.

Academic dishonesty


Academic dishonesty includes, but is not limited to, activities such as cheating and plagiarism (http://aa.columbusstate.edu/advising/a.htm#Academic Dishonesty/Academic Misconduct). It is a basis for disciplinary action. Any work turned in for individual credit must be entirely the work of the student submitting the work. All work must be your own. [For group projects, the work must be done only by members of the group.] You may share ideas but submitting identical assignments (for example) will be considered cheating. You may discuss the material in the course and help one another with debugging; however, any work you hand in for a grade must be your own.  A simple way to avoid inadvertent plagiarism is to talk about the assignments, but don't read each other's work or write solutions together unless otherwise directed by your instructor. For your own protection, keep scratch paper and old versions of assignments to establish ownership, until after the assignment has been graded and returned to you. If you have any questions about this, please see your instructor immediately. For assignments, access to notes, the course textbooks, books and other publications is allowed. All work that is not your own, MUST be properly cited. This includes any material found on the Internet. Stealing or giving or receiving any code, diagrams, drawings, text or designs from another person (CSU or non-CSU, including the Internet) is not allowed. Having access to another person’s work on the computer system or giving access to your work to another person is not allowed. It is your responsibility to prevent others from having unauthorized access to your work.

No cheating in any form will be tolerated. Penalties for academic dishonesty may include a zero grade on the assignment or exam/quiz, a failing grade for the course, suspension from the Computer Science program, and dismissal from the program. All instances of cheating will be documented in writing with a copy placed in the Department’s files. Students will be expected to discuss the academic misconduct with the faculty member and the chairperson. For more details see the Faculty Handbook: http://aa.columbusstate.edu/faculty/FacHandbook0203/sec100.htm#109.14 and the Student Handbook: http://sa.columbusstate.edu/handbook/handbook2003.pdf

You are expected to review the TSYS Department of Computer Science’s Academic Dishonesty Policy -  (http://csc.columbusstate.edu/policy/Academic-Dishonesty-Policy.html)

Getting help

You can always contact me during my posted office hours, by e-mail, or by appointment.

CSU ADA statement


If you have a documented disability as described by the Rehabilitation Act of 1973 (P.L. 933-112 Section 504) and Americans with Disabilities Act (ADA) and would like to request academic and/or physical accommodations please contact Joy Norman at the Office of Disability Services in the Center for Academic Support and Student Retention, Tucker Hall (706) 568-2330, as soon as possible. Course requirements will not be waived but reasonable accommodations may be provided as appropriate.


ABET Criteria:

A.    An ability to apply knowledge of computing and mathematics appropriate to the discipline;
B.    An ability 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;
D.    An ability to function effectively on teams to accomplish a common goal;
E.    An understanding of professional, ethical, legal, security, and social issues and responsibilities;
F.    An ability to communicate effectively with a range of audiences;
G.    An ability to analyze the local and global impact of computing on individuals, organizations and society;
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 practice.
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.

CS Program Objectives:


Our graduates will have achieved:
1)    a broad general education assuring an adequate foundation in science and mathematics relevant to computing.
2)    a solid understanding of concepts fundamental to the discipline of computer science.
3)    good analytic, design, and implementation skills required to formulate and solve computing problems.
4)    the ability to function and communicate effectively as ethically and social responsible computer science professionals.