Agile Project Management

Course:  AGLPM
Duration:  3 Days [note]
Level:  II
Course Summary

When software development project teams move to Agile methodologies, their project managers are often left feeling as if they've been cast aside. Traditionally trained project managers wonder what their new roles and responsibilities will become in an environment that no longer needs them to make stand-alone decisions.

Agile programming practices reduce development time while increasing collaboration. This ensures a final product that has been scrutinized at every stage to maintain reliability. In this course, you gain a solid foundation in Agile programming principles. Through an immersive case study, you acquire practical knowledge and skills to plan, code and implement an Agile software project using methodologies like XP and Scrum.

Self-organizing Agile teams still need guidance and assistance in achieving goals, however, and the Agile project manager now concentrates on these activities.

Special emphasis is placed on the shift to servant leadership, with its focus on facilitation and collaboration. Mapping of the Project Management Institute's (PMI) A Guide to the Project Management Body of Knowledge (PMBOK Guide) best practices to Agile practices is discussed at length. After attending this workshop, project managers should have a better understanding of what changes they need to make professionally, and how to make these changes in order to survive the transition to an Agile software development approach.

Agile Software Development methods differ significantly from traditional plan-based approaches, affecting how projects are planned and managed. In this course, you'll walk through a project using the Agile project management methodology from conception to completion. You will learn and apply Agile practices as you determine ways to make your own projects more Agile.

Your role as the project manager of an Agile project will look much different as you form and coach a self-directed team, facilitate continuous collaboration with your customer, embrace changing requirements, and deliver business value (production-ready software) to your customer early and regularly throughout the project.

In today's global economy, there's more pressure than ever for software developers to deliver the right products faster, without sacrificing technical quality. Rising to this challenge depends on a development team's frequent communication and the high-impact collaboration it enables. The answer is Scrum.

You are in charge of building a system, creating a new product release, or any other complex business project. Traditionally, you would hand this undertaking over to a trained project manager to run for you. You would then wait and hope for the best, since over 50% of all projects fail and those that succeed deliver products in which 65% of the functionality is rarely or never used.

Scrum provides a way for you to directly and effectively manage the project yourself. Intuitive and lightweight, the Scrum process delivers completed increments of the product at rapid, regular intervals, usually no longer than monthly.

Verhoef helps companies improve its development processes by helping teams navigate complex projects with Scrum.

Scrum utilizes an iterative and incremental approach to development that builds ROI and quality control into each sprint. Verhoef can help your organization leverage the Scrum framework's focus on empirical progress and ROI-based prioritization to reduce cycle time, boost employee satisfaction, and deliver products that exceed customers' expectations.

« Hide The Details
Topics Covered In This Course

Introduction to Agile Project Management

  • What is agile project management?
  • History of agile movement
  • Principles behind the Agile Manifesto
  • Common myths about agile project management
  • Characteristics of an agile project
  • When not to use agile development
  • Strengths and challenges of agile development
  • Variants of agile methods

Traditional Approach Versus Agile Approach

  • Traditional project management
  • Agile project management
  • Traditional vs. agile methods
  • Phases of an agile project
  • Agile project skills
  • PMBOK Guide knowledge areas
  • PMBOK Guide process groups

Developing the Agile Environment

  • Agile culture
  • Management challenges to agile adoption
  • Transition process for management
  • Team challenges to agile adoption ul>
  • Distributed team challenges
  • Stakeholder/customer challenges to agile adoption
  • Agile approach to hybrid environments
  • The agile project manager
  • Characteristics of an agile project manager
  • Skills required to lead an agile project

Planning an Agile Release

  • Establishing the Agile project
  • Recognizing the structure of an Agile team
  • Programmers
  • Managers
  • Customers
  • Differentiating XP and Scrum
  • Developing a foundation with user stories
  • Eliciting application requirements
  • Capturing user stories
  • Recognizing good user stories
  • Estimating and "The Planning Game"
  • Distinguishing between release and iteration
  • Prioritizing and selecting user stories with the customer
  • Defining an estimation unit
  • Projecting team velocity for releases and iterations
  • The Agile coding process
  • Prioritizing tasks for a cohesive design
  • Write test, write code, refactor
  • Allocating time for a spike
  • Crafting Adaptive Software Through Test-Driven Development
  • Driving the design process with automated testing
  • Writing a user acceptance test
  • Getting a test to compile
  • Running tests
  • Integrating unit testing
  • Distinguishing between user tests and unit tests
  • Developing effective test suites
  • Achieving "green lights" through continuous testing
  • Optimizing test-driven development
  • Drafting a unit test that is simple, isolated and fast
  • Isolating classes for effective testing
  • Creating mock objects for testing

Envisioning the Agile Project

  • Agile approach to the requirement process
  • The envisioning process
  • User story development
  • Release planning
  • Prioritizing feature for a release
  • Iterations in releases

Building an Iteration

  • Iteration planning
    • Allocating work
    • How far in advance do you plan?
  • Estimating for an Iteration
    • Rough order of magnitude
    • Velocity
    • Story points
    • Time box
    • Delivery schedule
    • Planning poker
  • Managing Risks
  • Tracking iteration Progress
    • Daily standup meeting
    • Iteration delta tables
    • Burndown charts
    • Reading a Burndown chart
      • Release Burndown chart
      • Iteration Burndown chart
  • Progress reports
  • Running test procedures
  • Agile EVM

Managing Iteration Changes

  • Introducing change to an iterative process
  • Integrating change into the product
  • Balancing change
  • Closing out an agile project
  • Early termination of an agile project
  • Project closeout retrospective

Fundamentals of Scrum for Dealing with Uncertainty and Risk

  • Identifying the roles and their responsibilities
  • Prioritizing requirements through the Product Owner
  • Differentiating the Scrum Master from a traditional project manager
  • Shaping the self-managed development team
  • Relating to external stakeholders
  • Managing releases
  • Iterating development through 30-day cycles
  • Developing a project vision with Sprints
  • Time-boxing with Sprints and daily stand-up meetings
  • Tools for tracking and monitoring a project
  • Capturing requirements as User Stories
  • Developing a Product Backlog based on business value
  • Creating a Sprint Backlog from a list of requirements
  • Plotting the remaining work with a Burn-down Chart

PMBOK Guide knowledge areas:

  • Project Scope Management
  • Project Quality Management
  • Project Time Management
  • Project Cost Management
  • Project Risk Management
  • Project Human Res. Management
  • Project Procurement Mgmt
  • Project Communications Mgmt
What You Can Expect

At the end of this course, participants will be able to understand:

  • The Agile lifecycle and how it differs from traditional lifecycle models
  • The unique Agile values, principles, and practices
  • Envisioning (referred to as "Initiation" in The PMBOK Guide)
  • Incremental speculation (The PMBOK Guide's "Planning" and "Re-Planning")
  • Iterative exploring ("Execution" in The PMBOK Guide)
  • Adapting to what is learned (The PMBOK Guide's "Monitoring and Controlling")
  • Iterative closure ("Closing" in The PMBOK Guide)
  • rticipants will be able to:
  • Select which projects are suitable for an agile environment
  • Determine the readiness of an organization, team, customer and project manager
  • Define user stories and how to elaborate and define test cases to assure the customer's requirement
  • Plan releases, estimate iterations by providing story point estimates for each feature and determine the team's velocity
  • Plan for risks
  • Provide status reports to management through burndown charts, iteration tables, agile earned value management and so on
  • Adapt changes based on the customer's request and effectively enhance the process to manage those changes
  • Determine when a project should be terminated
  • Deliver adaptable software iterations based on Agile methodologies such as XP and Scrum
  • Minimize bugs and maximize productivity with Test-Driven Development and unit testing
  • Refactor existing code for easier maintenance and improved design
  • Achieve quality design by adopting established coding principles
  • Simplify complex coding problems with design patterns
  • Adopt best practices to successfully manage Agile projects

The Agile Project Management workshop will answer the following questions:

  • What is "Agile" and how is it different from other methodologies?
  • How can I relate what I know about PMI's best practices to Agile practices?
  • What are the Agile equivalents to the work I'm currently doing?
  • How do I "sell" Agile in my company?
  • How do I get an Agile team started?
  • How will my role as a project manager change?
  • Can Agile succeed in a waterfall enterprise?
  • What are the next steps my team needs to take in their adoption of Agile practices?
  • What are the next steps I personally need to take?
Who Should Take This Course

As a Project Manager or Systems Developer, understand how to apply Lean thinking, Agile principles and Scrum techniques to a project management framework.

This workshop is suitable for project managers, software developers and business analysts who wish to combine their existing skills with techniques and tools for agile development. Any previous experience with UML, patterns and agile development is an advantage but not a requirement.

Recommended Prerequisites

Some knowledge of traditional Project Management.

Training Style

Instructor-led, group-paced, classroom-delivery learning model with structured hands-on activities and case studies.

The seminar can be tailored to your specific needs. Actual organization examples may be used throughout the presentation or the instructor will use generic examples.

« Hide The Details
Related Courses
Code Course Title Duration Level
AGILP
Agile Principles
2 Days
I
Details
AGLBC
Agile Bootcamp
3 Days
I
Details
BAAGL
Business Analysis in an Agile Environment
3 Days
I
Details
MSPMPC
Project Management Professional (PMP) Certification Exam Prep Boot Camp
5 Days
II
Details

Every student attending a Verhoef Training class will receive a certificate good for $100 toward their next public class taken within a year.

You can also buy "Verhoef Vouchers" to get a discounted rate for a single student in any of our public or web-based classes. Contact your account manager or our sales office for details.

Schedule For This Course
There are currently no public sessions scheduled for this course. We can schedule a private class for your organization just a couple of weeks from now. Or we can let you know the next time we do schedule a public session.
Notify me the next time this course is confirmed!
Can't find the course you want?
Call us at 800.533.3893, or
email us at info@verhoef.com