up previous next contents
Next: Day 2: The Java Up: OO Summary Previous: OO Concepts   Contents

UML

The UML defines nine standard diagrams:

  1. Use Case
  2. Class
  3. Interaction
    1. Sequence
    2. Collaboration
  4. Package
  5. State
  6. Activity
  7. Deployment

Rational Unified Process

  • Inception - a discover phase, where an initial problem statement and functional requirements are created.
  • Elaboration - the product vision and architecture are defined, construction cycles are planned.
  • Construction - the software is taken from an architectural baseline to the point where it is ready to make the transition to the user community.
  • Transition - The software is turned into the hands of the user's community.

Agile Methods

  • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
  • Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
  • Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  • Business people and developers must work together daily throughout the project.
  • Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  • The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
  • Working software is the primary measure of progress.
  • Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  • Continuous attention to technical excellence and good design enhances agility.
  • Simplicity-the art of maximizing the amount of work not done-is essential.
  • The best architectures, requirements, and designs emerge from self-organizing teams.
  • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Design Patterns

  • Repeating patterns - ``Her garden is like mine, except that in mine I use astilbe.''
  • Recurring solutions to design problems you see over and over.
  • A set of rules describing how to accomplish certain tasks in the realm of software development.
  • Made famous by the text ``Design Patterns'', by Gamma, Helm, et al.


up previous next contents
Next: Day 2: The Java Up: OO Summary Previous: OO Concepts   Contents