Suitable for small teams or larger groups. Price: $5,000 for up to 12 students. Additional students: Contact us. Price includes all course materials. Instructor travel and lodging expenses are extra.
This course provides engineers, programmers, software developers and testers with basic, practical knowledge that will enable them to identify and prepare meaningful views of their system using the Unified Modeling Language (UML) diagrams and notation. In class we use the latest version, UML 2.0, which includes some powerful and expressive additions over earlier versions. This class is targeted specifically at that student who may begrudgingly use UML, but wants to be a more effective communicator.
After a brief introduction to a basic development process we'll walk through the most common UML diagrams and show how together they can represent a design model of a software system. We'll explore how UML can be effectively used for rough sketches as part of design discussions as well part of more permanent documentation or presentations. This course is focused on the practical application of UML to effectively communicate design ideas.
Students learn by doing. There is enough class-time to explore concepts and techniques and develop basic skills. Class is roughly 80% lecture and 20 % exercises followed by review. Each learning cycle lasts between one and two hours, and consists of:
an interactive lecture which illustrates and motivates each diagram and presents effective techniques for representing design ideas
a review of some finer points on how it is best used
quick exercises to reinforce new skills and/or short discussions
Although we will mention various open source, shareware and commercial UML modeling tools, this is a pencil-and-paper based class focused on effective diagramming techniques and appropriate expressions of designs.
At the end of the course, students should be able to:
Draw an activity diagram to represent processing steps and actions.
Draw a sequence diagram that represents an interaction among design elements.
Create and interpret class diagrams.
Represent abstract and concrete classes, and interfaces
Represent attributes and operations and access rights
Indicate relationships between classes, cardinality, and visibility between classes
Draw a component diagram representing major system elements and their relationships.
Create basic elements of a state diagram: initial and ending conditions, states, transitions and guards
Apply several cross-checks to verify that UML diagrams are in synch and convey what was intended
Each student will receive a set of UML guidelines developed by Wirfs-Brock Associates which contains basic recipes and summarizes UML diagramming techniques.
For additional information please contact us at email@example.com