Java Quick Reference
  Application Design
  GUI Design
  Database Processing
  Networking
  Threads
  Errors and Exceptions
  Security
  Documentation

Sidebar - Skyscraper and Firefox

 

SCJD Study Notes - Application Design

Modeling Tools
Use Case A semi-formal description of what a user wants from a system and how they expect to interact with the system to bring about a specific result. Generally people; however, a user can also be another system or another piece of the same system. Sometimes referred to as scenarios.
CRC Class-Responsibility-Collaboration cards. Martin Fowler calls it "One of the most valuable techniques for learning OO" (UML Distilled p9)
Interaction Diagrams Two flavours: sequence and collaboration. Useful when trying to capture the behaviour of several objects within a single use case. Martin Fowler recommends using State diagrams to model the behaviour of one object across multiple use cases. (UML Distilled p78)
Class Diagrams Classes describe objects in the domain and the static relationships that exist between them. Detail the class data (attributes) and operations (behaviour).
Design Patterns Patterns are example models of processes that crop up repeatedly in software development. For example, developers are often faced with problems that require moving through a list or collection. The Iterator pattern describes a standard technique for handling iterations.

On-line Analysis and Design Tutorials/Lectures

Free Modeling Software

  • DOME free modeling software from Honeywell.
  • mUml from MountField Computers free for non-commercial use. Written entirely in Java using Swing GUI. Capabilities allow you to draw all 9 UML diagrams in colour. Diagrams can be saved as JPEGs or saved as HTML pages.
  • If you have Visio v4, v5 or Visio 2000 you can download a free Visio Stencil and Template for UML courtesy of Navision and Paul Hruby.
  • ArgoUML free case tool; part of the Tigris.org open-source platform.
  • If you're using Linux or Sun Solaris, you can download a free copy of JVision for non-commercial use. (Sorry, if you're using Windows it will cost you.)

Miscellaneous

  • UML Reference Card Allen Holub has put together a great page with annotated UML diagrams.
  • UML Dictionary put together by Kendall Scott, author of The Unified Modeling Language User Guide and four UML/OOP related books.
OOD OOP       Resources