Course Description
This UML online training course explains what the Unified Modeling Language (UML) is and what this language can do for you. Everything You Need to Know about UML provides a brief history of UML, its purpose, and how it can be used in a variety of ways. Each of the 13 diagrams defined in the UML standard will be discussed. The focus of this UML online course is on most useful features of the UML found in practical applications.
In This Course You Will Learn:
- Read and interpret UML diagrams
- Create UML diagrams
- Identify the most relevant features of UML for your environment
- Use UML to communicate software design effectively
Prerequisites
Familiarity with object oriented software development including an understanding of objects and classes.
Outline
Module 00: Everything You Need to Know about UML Online Training - Course Introduction
Module 01: Overview of the Unified Modeling Language
- What is the UML really?
- How can I use the UML?
- Where did the UML come from?
- What do UML diagrams look like?
- More About the UML
Module 02: How Does the UML Fit into the Development Process?
- Why does the UML not specify what development process to use?
- How can I use the UML in software development?
- What kind of development process works well with the UML?
- Who will use the UML?
- How will they use the UML?
- Where to find out more
Module 03: So what is This System Supposed to Do?
- How to capture requirements with use cases.
- What elements go on a use case diagram?
- Exercise: finding actors
- Exercise: finding use cases
Module 04: Using Use Cases Effectively
- What makes up a use case besides the diagram?
- Exercise: writing an informal use case
- How to effectively work with use cases.
- Exercise: creating a use case diagram
Module 05: Class Diagrams
- Object fundamentals
- Exercise: represent attributes on a class diagram
- How to model the PIE principle on class diagrams
- Exercise: Model encapsulation on a class diagram
- Exercise: model inheritance on a class diagram
- How to represent class scope data and behavior
Module 06: Modeling the Problem Domain
- How to represent association, aggregation, and composition on class diagrams
- Exercise: representing associations on a class diagram
- How to model the problem domain with class diagrams
- Exercise: modeling a problem domain with a class diagram
Module 07: Detailing the Problem Domain Model
- How to model interfaces and abstract classes
- Exercise: Modeling with an abstract class
- Exercise: Using interfaces
- When to model a complex association with an association class
- More features of class diagrams
- Exercise: modeling with interfaces and abstract classes
Module 08: Describing System Behavior Part 1
- How to model object interactions
- How to depict behavior
- Exercise: Create a simple sequence diagram
Module 09: Describing System Behavior Part 2
- How to depict loops and conditionals
- Exercise: creating a sequence diagram with loops and conditionals
- How to use communication diagrams
- Exercise: create a simple communication diagram
- Compare and contrast sequence and communication diagrams
Module 10: Modeling the Behavior of One Kind of Object
- How to model the behavior of one type of object
- Exercise: Creating a simple state machine diagram
- Interaction diagrams vs. state machine diagrams
Module 11: More About State Machine Diagrams
- How to use superstates in state machine diagrams
- Exercise: creating a state machine with sequential substates
- How to model concurrent states in state machine diagrams
- Exercise: creating a state machine with concurrent substates
- How to model interrupts with history states
- Exercise: Create a State Machine Diagram with a History State
- When to use state machine diagrams
- Where to find out more
Module 12: Organizing Large (And Not-So-Large) Project Models
- How to organize a large UML model with packages
- How to indicate dependencies between packages
- Exercise: creating a package diagram
- How to improve a UML model by refactoring
- Exercise: organizing a model with packages
- When to use package diagrams
- Where to find out more
Module 13: The All Purpose Diagram
- Overview of activity diagrams
- How to create and use activity diagrams
- Exercise: Creating a simple activity diagram
- Exercise: creating an activity diagram with partitions
Module 14: Using Activity Diagrams Effectively
- Several ways that an activity diagram can be used effectively in a UML model
- Exercise: Create an activity diagram to describe a workflow
- How to relate an activity diagram to objects in the UML model
- When to use activity diagrams
Module 15: Describing Software Components
- What is a software component?
- Exercise: Creating a Component Diagram to Model a Component and Its Classes
- How the relationship between components can be depicted
- Exercise: creating a component diagram to model component dependencies
- How to represent the interface that a component provides
- How can I model a software component on a component diagram?
- Exercise: creating a component diagram to model a component and its classes
Module 16: Modeling System Architecture
- How to model the physical architecture of a software system
- Exercise: creating a simple deployment diagram
- How to relate software components to the physical architecture
- Exercise: creating a deployment diagram showing software components
- Common uses of deployment diagrams
- Exercise: modeling a distributed system with a deployment diagram
- When to use deployment diagrams
- Hints and tips
Module 17: Just a Few More Diagrams
- Composite structure diagrams
- Exercise: creating a composite structure diagram
- Timing diagrams
- Exercise: creating a timing diagram
- Interaction Overview diagrams
- Exercise: creating an interaction overview diagram
- Object diagrams
- Exercise: Creating an object diagram
Module 18: UML Extensions and Pretty Good Practices
- Several techniques for extending the UML
- Exercise: using UML extensions
- How to create a UML Profile
- Tips for using the UML effectively
Module 19: Everything You Need to Know about UML Online Training - Course Summary