CIS28: Syllabus


Course: CIS28
Instructor: Grant Larkin
e-mail: glarkin.cis28@gmail.com
school network: http://puma.deanza.fhda.edu/distribute/larkin/cis28

Schedule

Lecture

Lab

6:00-7:25

7:25-8:25

 

OBJECTIVES:
Use Object Oriented Analysis (OOA) methodology to identify and build major abstractions within the problem space.  Use Object Oriented Design methodology to refine these abstractions into concrete classes, and determine the relationships between these classes and the operations they support.  Several key design patterns will be introduced as building blocks for this effort.  Understand and use various Unified Modeling Language (UML) diagrams including Class Lists, State Transition diagrams, Class Relationship diagrams, Sequence Flows, Class Responsibility and Collaboration cards, and Use Case diagrams.

PREQUISITES:
Prerequisite: Computer Information Systems 27 or 35A or equivalent experience.

REQUIRED TEXT:
Online (free download)
Applying UML and Patterns (3rd Edition) by Craig Larman
http://code.google.com/p/steamtwentythirteen/downloads/detail?name=Applying%20UML%20and%20Patterns%203rd%20Edition.pdf&can=2&q=

GRADE

Labs

Tests

Exercises

40%

30%

30%

EXERCISES
There will be at least one homework assignment per week, as the only way to really learn OOD is a hands-on approach.  The lowest homework grade will be dropped.  Email your homework assignments to the email listed above, clearly marked with your name and homework assignment in the subject line.

LABS
There will be some coding labs, using your object-oriented programming language of choice (C++, C# or Java) but the majority will be using UML techniques to design programs.  For UML diagrams I recommend using the Violet UML Editor (free download)
http://alexdp.free.fr/violetumleditor/page.php?id=en:download but you can use your editor of choice. Email your labs to the email listed above clearly marked with your name and lab assignment in the subject line.

TESTS
There will be two midterms, and one comprehensive final. Open book, open notes, and open computer.