Why Agile?
In today’s rapidly changing business environment, traditional methods of product development cannot always match the business needs. Businesses often experience delivery issues such as long delivery times and failure to adapt to the changing customer demands. We start by making the case for shifting to an Agile approach to solve problems and to gain an overall understanding of the principles and benefits of Agile approaches.
- Business Turbulence
- Agile compared to Traditional Delivery
- Benefits of adopting Agile
Team Exercises: We will discuss the various challenges that drives business turbulence and how agility helps companies to adapt to changing circumstances. These challenges are tied back to the attendees’ own experiences in a changing environment.
Becoming Agile
To learn more about Agile we review the Agile Manifesto, Principles, and the Agile Mindset. We start with Lean, which is a foundational component and influences all Agile methodologies. We will visit different agile approaches for both iterative development and continuous flow work and identify different types of work in their own context.
- Agile Mental Models
- Agile Manifesto and Principles
- Types of Work
- Agile Methods
Team Exercises: Teams will engage in a fun exercise that will improve understanding, and reinforce the importance of, the agile principles. We will also discuss the various types of work that they encounter in their own context.
Agile Teams
Agile focuses on creating a team that can deliver outstanding results on a consistent basis. In this section we will discuss what makes a high-performing team and how to build that team. The section will also cover the team roles associated with an Agile approach.
- Attributes of Successful Teams
- Agile Team Roles
- Team as a System
- Collaborative Team Environments
Team Exercises: As a class, we will discuss the attributes of a great team based on the attendees’ own experiences. The class will also identify components needed for collaborative environments – physical and virtual.
Agile Product Planning
A common myth is that Agile does not involve planning. In actually, there are five levels of planning on an Agile project including the Product Vision, Roadmap, Release Planning, Sprint Planning and the Daily Standup. Utilizing team projects, we will take a hands-on look at the different levels of planning and how it applies to the team’s work.
- 5 Levels of Planning
- Product Visions
- Product Roadmaps
- User Roles and Personas
Team Exercises: Teams will identify a team project and use that project for many upcoming exercises. They will practice creating a Product Vision, identifying Roadmap components, and turn User Roles into full-fleshed personas.
Product Backlog
The Product Backlog contents represent all the work of the Agile Team. We will investigate the different types of items represented in the Product Backlog including how those items are refined over time.
- Product Backlog Items
- Writing User Stories
- Acceptance Criteria
- Story Reviews
Team Exercises: The class will discuss Product Backlog components and how to break Epics into smaller User Stories. Teams will conduct a User Story Writing Workshop to create initial User Stories for their team project. Each team will present examples of their user stories and the Instructor will lead a discussion about where teams hit the mark and areas for improvement (Instructor will not have all of the ideas, this is a great opportunity for team dynamics).
Prioritization and Estimation
The Product Backlog contains the work but the way the Backlog is prioritized and estimated is key to building a successful product. We will look at agile practices for prioritization and team estimation. In addition, we will better understand how we deliver product increments through Releases.
- Prioritization
- Estimating
- Story Points
- Release Planning
Team Exercises: We will review a retailer case study and their approach to prioritization key system features. Team will practice Story Point estimation. Project teams will identify needs for their first product release.
Sprint Planning and Execution
In iterative development, the team works in a series of time-boxed events to deliver incremental value. These timeboxes are called “Sprints”. We will look inside the Sprint to understand the way the team works to produce value.
- Sprint Planning
- Product Increment
- The Daily Standup
- Agile Metrics
Team Exercises: Teams for define a Definition of Done for their team project. Teams will also identify key learnings and critical points about sprint execution.
Inspect and Adapt
The power of Agile comes from the fact that continuous improvement is built into the Agile system. In this section, we will review how People, Product and Process improve through a frequent inspect and adapt process. We will discuss the main Agile ceremonies that help us accomplish this: Sprint Review, Demo and the Retrospective.
- Sprint Review
- Demo
- Retrospective
Team Exercises: The class will engage in an exercise to summarize the key events and artifacts within the Scrum framework. Teams will discuss how they could apply what they have learned to their current work and what they can start doing now so they do not lose what they have learned.
Kanban Systems
Not all work fits well into a Scrum framework. Kanban is an Agile method that helps us to improve a delivery process with a focus on continuous improvement. We will cover the foundation of Kanban concepts, properties, and terminology. We will also understand the philosophy behind the Kanban framework and how it originated. The best way to understand Kanban is to go through the process of implementing it. This section goes through the various techniques and ceremonies associated with Kanban.
- Kanban’s Core Practices
- Kanban concepts, principles, and terminology
- Visualization of Work
- Managing Work-in-Progress
Team Exercises: We will use new team projects based on continuous flow types of work. Teams will engage in several exercises to build their own Kanban board that clearly communicates their commitments, encourages collaboration, and enables continuous improvement. We will also engage in discussions on key Kanban concepts and how Kanban may apply to their types of work.
Adoption and Scaling
Agile Adoption can be accomplished with different approaches and at different speeds. We will review the best practices of Organizational Change Management as it applies to an Agile adoption and consider some of the primary reasons for adoption failure.
- Organizational Change Models
- Scaling Methods
- Delivery Self-Assessment
Team Exercises: We will wrap-up the course and attendees will identify concepts they can apply to improve their own product delivery.