Agile Development Training- Analysis & Design using
UML
Including estimating and sprint planning
Detailed Description |
3-4 days |
The Agile Development Training is a class to teach how to
perform sprint planning and sprint analysis and design using UML. The training focus is on how to:
- Write
agile use cases, user stories and build design models using the Unified
Modeling Language
- Collaboratively
design solutions using agile best practices from agile project management
and UML
The objectives of the training are to:
- Provide
an understanding of the agile modeling techniques needed by the project
team to successfully implement an agile project
- Provide
tips and techniques for design that support an agile development approach
- Provide
practical agile project team group exercises for building the agile models
for collaborative solutions
- Define
the Agile and Iterative Development practices, describe agile vs.
waterfall method and success factors
- Provide
a case study simulation of project initiation, sprint planning, sprint
analysis and design using UML and sprint retrospective
Training Content
Day 1
Agile Concepts and Fundamentals
- What
is Agile Development?
- How
does Agile differ from Waterfall methodology?
- Agile
Manifesto and principles
- Strengths
and weaknesses of Waterfall vs. Agile methodologies
- What is Scrum and what are the key practices?
- Principles
and practices for Agile project management
- Roles
for Agile Development with Scrum
- Factors to consider when deciding on the methodology
and practices to use for your projects
- Exercise-
Conduct a Scrum Meeting
Collaborative Techniques for Agile Projects
- Workshop
Approaches
- Storyboarding
- Kit
Reviews
- Prototyping
Overview of the Agile Modeling
Techniques using UML for Analysis and Design
UML Diagramming for High Level and
Detailed Requirements
- Agile
principles for project initiation phase
- Constructing
the Use Case Diagram to define the epics and themes
- Creating
the use case inventory for estimating and capacity planning
- Case Study Exercise - Building the high level
use case diagram and use case inventory for planning
- Constructing
the Activity and Swimlane Workflow Diagram
- UML
notations
- Uses
of Activity Diagrams for requirements and design
- Case
Study Exercise- Building the Activity Diagram with Swimlanes
- High
Level Use Cases
- Using
High Level Use Cases to define the Sprints and User Stories
- Guidelines
for writing the high level use cases
- Case Study Exercises – Creating the high
level use case
- How to slice up the use case outline to plan
the iterations
- How to write the requirements using the user
stories technique
- Story writing workshop
- Identify and write the test cases for the user
stories
- How to capture user stories for a use case
- Case Study Exercise- Creating the User Story
for a Use Case
Day 2
Release
& Sprint Planning
- Release Planning and Estimating the Sprints
and Stories
- Defining the priorities for the product releases
and iterations
- Estimating the size and complexity of the
slices- using popular estimating techniques
- Tracking project success criteria to requirements
and use cases for requirements traceability
- Methods
for Tracing and Tracking Releases and Sprints
- Status
Tracking on a Product Backlog
- Scrum
Product Backlog
- Use
Case Tracking
- Case
Study Exercise - Building a Product Backlog for defining the product
release, prioritizing and estimating the sprints and stories
Analysis & Design using UML
- Creating
the Detailed Use Case Diagram
- Dependencies
between use cases
- <<Includes>> and
<<extends>>
- Case Study Exercise- Creating the Detailed Use Case
Diagram for high level technical design
- Writing
Detailed Use Cases for Development and Acceptance Testing
- Guidelines for writing detailed use
cases
- Storyboarding paper prototypes
- Case Study Exercise - Writing detailed use
cases and building prototypes for technical design and quality assurance
handoff (as needed)
- Constructing the Domain Object Model and CRCs
- Case
Study Exercise- Building the
Domain Object Model and the CRCs
- Use Case realization – transforming the
"what" to the "how"
- Use case realization package
- Interaction Diagrams
- View of Participating Classes
- Traceability diagram for all use cases
- Constructing the Collaboration Diagram
- Case
Study Exercise- Creating the Collaboration Diagram
- Design
using the Sequence Diagram
- Case Study Exercise - Building
the Sequence Diagram
Day
3 am
Analysis & Design using UML (continued)
- Design using the Sequence
Diagram
- Creating
the Global Class Diagram
- Identify
the classes, methods, associations, multiplicities, inheritance and
constraints.
- Reconcile
the realizations- redundancies, missing classes and inconsistencies
- Case Study Exercise- Building the Global Class Diagram
- Constructing the State Chart
Diagram
- Case Study Exercise- Building the State Chart Diagram
Day
3 pm – Day 4
Real Life Case Study or Simulation for Agile Development
The Agile simulation
demonstrates how the entire life cycle of a project fits together and how the
artifacts taught in class build on each other. Each student leads the group in a stage
of the life cycle using the analysis and design artifacts. The artifacts created in the simulation
are the high level use case diagram, sprint planning, user stories, activity
diagram with swimlanes, detailed use case diagram, detailed use case (as
needed), domain object model, sequence diagram, class diagram and state
diagram. In-house UML tools are
used during the simulation. If no
tools are available, UML version of Visio can be utilized.
Who Should Attend?
Those who will find this of value are: Technical Leads, Developers, Systems
Analysts, Architects, Designers, and Software Engineers.
|
| Brief Description |
|
The focus of the training is on the agile modeling techniques and skills needed by the entire agile project team to conduct successful collaborative projects. The workshop teaches the Unified Modeling Language (UML) and an understanding of the Unified Process and how to incorporate them into agile and iterative development for the project team. The workshop teaches and provides exercises in agile modeling techniques used for scoping, requirements gathering and design for collaborative solutions.
|
| Who Should Attend? |
|
Those who will find this of value are: Product Owners, SMEs, Technical Leads, Developers, Business Analysts, Systems Analysts, Architects, Designers, and Project Managers.
|
|