Succeeding with Agile and Scrum

Course Description

While agile has provided the solutions for many software development problems, it is not a silver bullet and has still to overcome issues that more traditional project development lifecycles handle. The role of the traditional project manager typically changes from managing a team with a sequential lifecycle to facilitating an empowered team working in an iterative and incremental manner. Traditional planning and estimating processes need to be adapted to handle this new environment. Different practices, tools, testing strategies, roles, etc. need to be defined/agreed to maximise the chances of success for agile projects. Agile methods such as Scrum typically need augmentation to work in specific contexts and roles such as ScrumMaster and Product Owner need interpretation to your environment. This course will provide those looking to work on Scrum teams with the competencies and skills required to effectively combine the processes, people and technologies for a successful Agile/Scrum delivery. Exercises are used to get hands on experience with the practices presented. It focuses on the Scrum method but references practices from other agile methods such as eXtreme Programming (XP) and also from Lean Software Development and Kanban. It also introduces ways to apply Agile practices successfully and ensure a sustainable transition, so that Agile becomes the standard approach for projects.
2 days
Contact us for pricing


This course is intended for Project Managers, Team Leaders as well as cross-functional team members such as Developers, Testers, DBAs, Business Analysts, etc. and project support personnel who will benefit from an understanding of Agile/Scrum.

Learning Objectives

Upon completion of this course you will be able to:

Define the key agile values and principles
Describe SCRUM and how variations or hybrid approaches (utilising elements of agile with more traditional approaches) are sometimes implemented in practice
Map appropriate roles for Scrum teams from your current teams
Define and use user stories
Perform planning and estimation in an agile environment
Perform key Scrum ceremonies such as standups, retrospectives, etc.
Define appropriate testing strategies for agile projects, keeping control of quality in an Agile lifecycle and avoiding the common pitfalls
Undertake steps needed to get started with Scrum on your project
Use Scrum with distributed teams
Avoid the common pitfalls with Agile/Scrum

Overview of Agile Principles

Agile values, principles and practices
Explain the essence of agile methods in terms of the significant mindset change required
Exercise: discussion of participant's issues/challenges with agile from pre-course questionnaires

Key elements of Scrum

Typical agile lifecycle - incremental and iterative development
Overview of Scrum ceremonies and artifacts
Roles and responsibilities in Scrum teams
Product owner
Scrum Team
Distributed team roles
People and cultural issues in agile
Exercise: mapping your current roles to Scrum roles

Requirements in Scrum

Customer/user involvement and managing requirements in agile
User stories
defining value-centric requirements
templates and criteria for effective user stories
Exercise: defining and prioritising user stories

Planning and estimation with Scrum

Project and Release planning
Iteration/Sprint planning - timeboxing and prioritisation
Principles of team board design
Exercise: design the team task board
The need for estimation with incremental development
Estimation for user stories: story points
Exercise: planning poker for story points
Additional estimation options
ideal days
task estimation
Project velocity and sustainable development
Minimising technical debt
Risks in Scrum projects
Managing project risks in Scrum

Working as a Scrum team

Daily scrums
The implications of self-direction
Monitoring and reporting
Project reviews and retrospectives
Exercise: agree reporting formats needed

Agile Testing

Agile test strategies
Different Test Levels/phases applicable to agile and how they need to be adapted
Where the different types of testing fit into an agile development lifecycle
Exploratory testing and its role in agile
Agreeing the definition of 'done'
Test automation approaches - the automation pyramid
Test Driven Development (TDD), Automated Unit Testing, API testing, GUI testing
Acceptance testing, testing and the customer/user
Exercise: define acceptance tests for user stories

Pitfalls and Lessons Learnt

This module will discuss some of the risks and common pitfalls experienced in practice by Scrum teams and how these can be avoided.

Summary and next steps

Action planning

AgileScrumAgile PMAgile Project ManagementeXtreme programmingagile testingtest driven developmentTDDDSDMDynamic Systems Develpopment methodSoftware testingSoftware test