This course focuses on how to design better object-oriented programs through the application of patterns. We will cover the 23 design patterns cataloged in the text, how to implement them in Java, and express them using the UML (Unified Modeling Language). In addition, we may explore collateral topics as dictated by class interests.
By the end of the term, the successful student will be able to:
For each design pattern covered, the student is expected to be able to:
This course is geared for motivated, highly capable students who enjoy software development and abstract thinking. Those merely seeking an easy tech elective will be deeply unhappy; those willing to put forth the time and effort will likely find this to be one of the most useful classes of their undergraduate career (based upon comments made in the course evaluations of semesters past).
| Name | Office | Office Hours | Phone | |
|---|---|---|---|---|
| Dave Small | dts@cise.ufl.edu | CSE E422 | MWF 5th period (11:45-12:35pm) | 450-34-23 |
| Cem Boyaci | cboyaci@cise.ufl.edu | CSE E309 | -tba- | |
http://www.cise.ufl.edu/~dts/dp/
COP 3530
Access to and on-going use of a computer on which you can install software. A laptop is strongly recommended (so you can bring it to class and office hours). Mac, Linux, PC... it's all good.
On Monday and Tuesday of the last week of classes, expect to spend 5-6 hours each evening/night attending/giving term project presentations. The actual amount of time will depend on the number of teams presenting.
Wednesday, 12/8
Read the Course Policies page!
The term project (typically, “design—not
implement—a ____”) will be assigned 3-4 weeks before
it is due. The reason for assigning it so “late” is
so that we will have covered as many patterns as possible
before you begin—that way you aren't constantly
revising your work; the downside, of course, is that all your
other classes will have something big due too. :(
To help you get a sense of the scope of the
project, here are last year's
project
description and
deliverables
pages.
Presentations shall be made during the last week of classes. From past experience, each presentation takes roughly 1 hour. You are expected to not only be physically present for all presentations, but attentive and engaged—that means posing good questions, offering respectfully critiques, etc.
The term project is a major component of this course. You will be required to objectively evaluate the performance of all team members, including yourself. Peer evaluations will be factored into the grading.
I do not give grades: students earn their grades. It is your responsibility to earn the grade you desire. Graded items will be scored using a "checkmark" system: a checkmark indicates "satisfactory" while an X denotes "unacceptable." Checkmarks may be annotated with modifiers (++ = excellent, + = very good, - = weak, -- = poor) when appropriate. Because this is a small class I will have a very good "feel" for how well each of you is doing. Final grades will be based on a combination of subjective and objective appraisals of overall performance:
| Grade | Track record |
|---|---|
| A | outstanding |
| A- | excellent |
| B+ | darn-good |
| B | very-good |
| B- | pretty-good |
| C+ | weak — but consistently trying |
| C | poor or worse — but consistently trying |
| E | weak or worse |
Past experience with this course indicates that students are pretty consistent in their performance and that it is easy to assign grades. I will be looking for a record of sustained effort and demonstrated comprehension of the subject matter. Objective grading categories will be weighted 66% exams and 34% homework and term project.
Completion of the ungraded biosketch and postmortem assignments is required to pass the course. Be sure to save all the work you do through out the semester as you'll need it for one of the postmortem deliverables.
ACADEMIC DISHONESTY WILL NOT BE TOLERATED. Unless otherwise explicitly stated, assignments are individual projects. You are expected to do your own work; individuals who misrepresent work as being their own, submit fabricated data, or otherwise engage in anti-intellectual behavior will be dealt with severely and reported to the Office for Student Judicial Affairs. You may freely use any code presented in the textbook, provided by your instructor, or authored by yourself. You are prohibited from using code from any other source without written permission from the instructor. Remember, sharing your work with another student is a violation of the honor code. For more information, consult the Dean of Students Academic Honesty - Student Guide.
My goal is simple: to help you learn — both inside and outside the classroom. If you have questions, there is no excuse for not getting help. I hold office hours just for the purpose of helping you, either one-on-one or in small groups. No matter how busy I may look, during office hours, you have priority over everything else. If you have a problem or question, come by and we'll talk about it — don't put it off.
This document is subject to revision as needed. All modifications will be noted in this section.
19. This statement must be included in every grade scale on syllabi: “A C- will not be a qualifying grade for critical tracking courses. In order to graduate, students must have an overall GPA and an upper-division GPA of 2.0 or better (C or better). Note: a C- average is equivalent to a GPA of 1.67, and therefore, it does not satisfy this graduation requirement. For more information on grades and grading policies, please visit: http://www.registrar.ufl.edu/catalog/policies/regulationgrades.html” 20. Honesty Policy – All students admitted to the University of Florida have signed a statement of academic honesty committing themselves to be honest in all academic work and understanding that failure to comply with this commitment will result in disciplinary action. This statement is a reminder to uphold your obligation as a UF student and to be honest in all work submitted and exams taken in this course and all others. 21. Accommodation for Students with Disabilities – Students Requesting classroom accommodation must first register with the Dean of Students Office. That office will provide the student with documentation that he/she must provide to the course instructor when requesting accommodation. 22. UF Counseling Services – Resources are available on-campus for students having personal problems or lacking clear career and academic goals. The resources include: - University Counseling Center, 301 Peabody Hall, 392-1575, Personal and Career Counseling. - SHCC mental Health, Student Health Care Center, 392-1171, Personal and Counseling. - Center for Sexual Assault/Abuse Recovery and Education (CARE), Student Health Care Center, 392-1161, sexual assault counseling. - Career Resource Center, Reitz Union, 392-1601, career development assistance and counseling. 23. Software Use – All faculty, staff and student of the University are required and expected to obey the laws and legal agreements governing software use. Failure to do so can lead to monetary damages and/or criminal penalties for the individual violator. Because such violations are also against University policies and rules, disciplinary action will be taken as appropriate. We, the members of the University of Florida community, pledge to uphold ourselves and our peers to the highest standards of honesty and integrity. Note: Statements in items 19-23, should be included as is.