The Unified Modelling Language
The Unified Modelling Language, UML, is the first choice modelling system for object oriented software develoment. It is a diagrammatic language that allows developers to represent views of the software product that can model an otherwise unmanageable application. It is especially useful for large scale applications that are developed by a team or by a single person over a long time period. It allows different aspects of a software product to be designed and later integrated into a whole.
Here are some interactive tutorials that have been used in an online course on software development. They are designed to be problem solving tutorials, or learning objects, focussed on single topics of the course. You should read the story, try to answer the questions then have a look at the answers.
From Bill's Tutorials at btutor.com