Training » All Courses » UML » UML

Course Summary

Through the UML Fundamentals course, participants learn to apply the Unified Modeling Language (UML) to correctly specify, design, visualize, analyze, develop, and deploy object-oriented (OO) software systems.

Duration

2 days.

Objectives

Through completion of this course, participants will be able to:

  • Use UML diagrams to improve clarity of communication between different stakeholders
  • Employ best practices of object-oriented analysis and design by specifying software requirements and design in UML
  • Classify UML diagrams as static, dynamic, and implementation specific
  • Identify and model key architectural and design concepts in UML
  • Recognize the stage of development or problem scenario for which specific UML diagrams should be used
  • Create and maintain a complete set of UML diagrams including: use-case, package, class, object, state, activity, sequence, collaboration, component, and deployment

Audience

The course is intended for software developers, software architects, software development managers, business managers, and other stakeholders who wish to update and further their skills in development of object-oriented software systems.

Instructors

Photo
Adam Breindel brings over 10 years of successes working with cutting-edge technology for small startups as well as major players in the travel, media/entertainment, financial, productivity, and consulting industries.

In addition to web sites, GUI applications, and mobile device software, Adam has also built high-volume middleware for one of the world's largest banks, and produced a new, modern integration to a 1960s-vintage mainframe app for one of the world's largest airlines.

Adam focuses on designing and coding systems in a way that yields predictable results, leverages best practices and high-productivity tools, minimizes excess code, and is fun to do. He has also spoken at tech conferencs, written articles and skill assessments, and produced an open source tool for software development. Adam has enjoyed teaching large and small groups, covering topics from nuts-and-bolts Java programming to merging ideal process with real-world constraints in an organization. More about Adam Breindel...

Additional Notes

The benefits of using UML include:

  • Improving communication between different stakeholders through the use of a clear and precise language
  • Raising the level of abstraction to models from source code by making modeling the first-class development activity
  • Decreasing total development costs by assuring compliance with functional and non-functional requirements early in the development lifecycle where the cost of corrections is significantly lower.

Outline


Introduction and Fundamentals

  • Why UML?
  • Model-Driven Development (MDD) Context
  • Introducing the Unified Modeling Language (UML)
  • Notation and Metamodels

Object-Oriented Notation and Concepts in UML

  • Classes, Objects, and Interfaces
  • Attributes and Operations
  • State and Behavior
  • Encapsulation, Polymorphism, and Inheritance

Object-Oriented Analysis (OOA) with UML

  • Software Requirements
  • Scenarios and Use Cases
  • Business and System Use-Cases
  • Use Case Diagrams and Relationships
  • Class Diagrams Conceptual Perspective

Object-Oriented Design (OOD) with UML

  • Structural Design
  • Class and Package Diagrams
  • Dynamic Design Models
  • Object Diagrams
  • State Diagrams
  • Activity Diagrams
  • Sequence Diagrams
  • Collaboration Diagrams
  • Implementation Design Models
  • Component Diagrams
  • Deployment Diagrams

Architectural Views of UML Diagrams

  • Logical View
  • Process View
  • Component View
  • Deployment View
  • Use Case View
  • Addressing View Consistency

Course Testimonials

Efficient, knowledgeable and applicable...

- AeroVironment Inc