COURSE ID: WS-AAU-E-TI DESCRIPTION: This introductory Agile Architecture + UML 2 workshop provides students with a solid foundation for applying Agile Architecture & Design and Model-Driven Development (MDD) principles and best practices with UML 2, the industry standard for modeling software-intensive applications. The workshop teaches students how to solve practical problems using all UML 2 diagram types. Learning modules are punctuated with frequent Q&A sessions and hands-on practice exercises.
This Agile Architecture + UML 2 workshop edition is tool-independent, and teaches the UML 2 modeling language using whiteboards for hands-on practice sessions, without using any tool-specific techniques. Students who seek integrated modeling tool training may also choose versions of this workshop that are customized for popular UML2-compliant modeling tools.
DURATION: 2-5 days (= 14-35 training hours; length depends upon optional learning modules selected)
AUDIENCE: Software Engineers, Software Developers, Business Analysts, Test Engineers, Software Architects, System Architects, Solution Architects, Project Managers, and others who want to learn how Agile Architecture & Design + UML 2 can improve how they architect, analyze, design, and manage complex systems will benefit from this workshop. PREREQUISITES: Software development, business analysis, or systems engineering experience in building large, complex software-intensive systems. No other experience or prior training is required.
COURSE AUTHOR & CHIEF INSTRUCTOR: Cris Kobryn is the Founder of PivotPoint Technology and is an internationally recognized expert in architecture modeling languages (UML, SysML, BPMN), enterprise architecture frameworks (DoDAF, UPDM, TOGAF), and Model-Based Engineering tools. Cris has been architecting and designing distributed computer systems for three decades, and is known for successfully leading the UML 1.x, UML 2.0, and SysML international standardization teams. Recently Cris designed the CyberML™ (Cyber Modeling Language™) to precisely specify Agile enterprise architectures that are scalable and cybersecure. You can learn more about Cris's qualifications as a Model-Based Engineering and Agile Architecture expert on his corporate bio page...
LEARNING OBJECTIVES • What is Agile Architecture & Design and how do UML 2 and Agile Development (Scrum) methods enable it? • AgileML = a small, pragmatic, extended subset of UML 2 that supports the full System Development Life Cycle (SDLC) — Requirements Analysis through Testing and Deployment • Requirements-driven traceability across the full SDLC • Lightweight Object-Oriented Analysis (OOA) and Object-Oriented Design (OOD) techniques that will identify wicked software problems earlier in your SDLC and facilitate creative solutions • How to Reverse Engineer models from software code to facilitate pair/peer code reviews and code refactoring • How to reuse OOD Sequence diagrams for Test Cases • How to specify distributed network architectures for Service Oriented Architectures (SOA) • Practical guidelines for specifying correct, complete, clear, concise, and consistent models • How to draw essential UML diagrams, simulate/execute UML diagrams, and generate reports using a selected UML tool: Optional / See Tool Training section for options • How to plan your transition to a Agile Modeling approach • How to learn more about Agile Modeling with UML 2
COURSE SYLLABUS: All Essential Agile Architecture + UML 2 Applied: Tool Independent edition workshops must include AGILE UML 2: BASIC and AGILE UML 2: INTERMEDIATE learning modules. Students can mix-and-match additional modules as needed, and modules can be tailored to address special team or project requirements. Contact us for details.
AGILE UML 2: BASIC [Module# AAU-101] Intro to Agile Architecture & Design and Model-Driven Development (MDD) UML 2 Quick Tour Requirements Analysis Techniques • Supplement User Stories and Wireframes:
Use Case diagrams and Performance Constraints Object-Oriented Analysis (OOA) Techniques • Realizing Requirements with an Object Domain Model • Define structural Object Domain Model with Class diagrams • Define behavioral Object Domain Model with high-level Activity or Sequence diagrams [BPMN 2 Business Process Diagrams may be substituted on request] • Ensure full traceability of OOA View back to Requirements
AGILE UML 2: INTERMEDIATE [Module# AAU-102] Object-Oriented Design (OOD) & Agile Design Techniques • Refactoring and refining the OOA Object Domain Model • Extending the Design View (User Interface Classes, Persistent Data Classes, SOA Interfaces, Legacy Wrapper Classes) • Specifying and applying Design Patterns • Ensure full traceability of OOD View back to Requirements Construction Techniques • Reverse engineering for pair/peer code reviews and code refactoring • Forward engineering for code generation [optional] • Ensure full traceability of Construction View back to Requirements
AGILE UML 2: ADVANCED [Module# AAU-103] Test Techniques • Reusing and refining OOD Sequence diagrams for Test Cases • Defining Unit, Integration, and System Test Cases • Ensure full traceability of Testing View back to Requirements Deployment Techniques • Defining executable software components/services (SOA/SaaS) • Defining network nodes and topologies • Allocating software components/services to network nodes • Specifying Security, Reliability, and Performance Constraints • Ensure full traceability of Deployment View back to Requirements Elective Topics [Optional: Select up to 1 or 2 elective topics to substitute for Test Techniques and Deployment Techniques] • Large-scale Model Management for Team Modeling • Recursive Design techniques • Analysis/Design/Architecture Patterns • Model simulation and execution (ModSim) • Data Modeling & Object-Relational Mapping (ORM): UML 2 <–> SQL • Customizing UML for domains, platforms, and processes
AGILE UML 2: BASIC MODELING TOOL – Optional† [Module# AAU-111] [Select among popular UML2-compliant modeling tools listed below†, or contact us for other options.] Topics • Projects and diagrams • Generating documentation • Importing/exporting models • Requirements traceability • Model validation and metrics • Model simulation/execution (includes Round-Trip Engineering) • Team modeling Diagram Techniques • Use Case • Class • Sequence • Activity • Composite Structure • State Machine • Other diagrams TBD
AGILE UML 2: PROJECT PRACTICUM [Module# AAU-121] The project practicum provides an opportunity to apply Agile Architecture + UML 2 modeling principles and best practices to solve project modeling problems in a creative and supervised workshop environment. The practicum can be used to facilitate: • Agile Architecture + UML 2 model peer reviews • Agile Architecture + UML 2 model revisions and extreme makeovers • UML 2 modeling tool customization and/or advanced tool topics [prerequisite: Agile UML 2: Basic Modeling Tool module] • Creative problem solving for project and team specific issues Students can identify project modeling problems in advance, or Instructor will work with students to identify them.
†: This learning module can be tailored for popular UML2-compliant modeling tools, including Sparx Enterprise Architect, MagicDraw, Visual Paradigm, UModel, and Astah. Other UML2-compliant modeling tools available on request. Contact us for details.
UML, BPMN, OMG SYSML and UPDM are trademarks of the Object Management Group.
TOGAF and ARCHIMATE are trademarks of The Open Group.
ENTERPRISE ARCHITECT is a trademark of Sparx Systems Pty Ltd. MAGICDRAW is a trademark of No Magic, Inc. UMODEL is a trademark of Altova. VISUAL PARADIGM is a trademark of Visual Paradigm International. ASTAH and ASTAH SYSML are trademarks of Change Vision, Inc.
All other trademarks are the property of their respective owners.