Agile Coaching

Coaching can take many forms, but we must remember the primary goal is to improve the performance of the team towards delivery of a high-value, high-quality product. Our approach differs from many others, as we firmly believe in the “Shu – Ha – Ri” approach, as described below by Martin Fowler:

The idea is that a person passes through three stages of gaining knowledge:

Shu: In this beginning stage the student follows the teachings of one master precisely. He concentrates on how to do the task, without worrying too much about the underlying theory. If there are multiple variations on how to do the task, he concentrates on just the one way his master teaches him.

Ha: At this point the student begins to branch out. With the basic practices working he now starts to learn the underlying principles and theory behind the technique. He also starts learning from other masters and integrates that learning into his practice.

Ri: Now the student isn’t learning from other people, but from his own practice. He creates his own approaches and adapts what he’s learned to his own particular circumstances.

It is our duty to help you deliver the product, but it is also our duty to help your people learn how to deliver products on their own, using their innate skills and experience. While we aim to be a long-term partner, we do not aim to be the key resource on a single project – your own people should play that role.

We take a holistic view of coaching, not just introducing new project management techniques, or sticking to engineering approaches, Instead, we introduce appropriate skills and techniques where we see a gap in team performance, while strengthening the positive things the team is doing. Below are some of the things we look for, and some of the changes we might introduce:

Business Agility Review (BAR)

This is a starting-point for those organizations that have been using an agile approach for a while, but somehow are “stuck”, not seeing any continuing benefits. This review of your agile approach, practices, and effectiveness take 5 days, and results in a report of things to improve, and actions to take to implement these improvements You can read more about this here.

Team coaching

When we coach teams in their delivery efforts, we focus on a number of issues. The following are a selection of the most important of these issues, but there are many, more subtle, people- and organization-focused issues to be addressed (for example, team communication, leadership style, etc.)

Product Focus

A fast “project launch” to review the objectives of the project under development, and determine the best value-focused delivery strategy. Note that this is a very brief review – typically 1 to 2 days depending upon the complexity of the project – to ensure the team knows what it is delivering, and has the appropriate focus on value, quality, and planning approach.

Team practices

Introduce or strengthen the practices being used by the development team, to ensure effective collaboration and delivery of new products. Ensure a whole-team approach is taken, not sub-optimizing within each functional team (analysts / developers / testers)

Leadership coaching

Ensure the organizations’ leaders are focused on “the right things”, measuring value delivery (not “bums in seats”). Introduce adaptive leadership techniques into the organization

Business / technology coaching

Is the technical team delivering the right thing? Is the business deeply involved in these development efforts? How can we strengthen these relationships?

Technical practices

TDD, Unit Testing, test coverage, pairing, automated testing, Continuous Delivery, continuous integration and more
Our approach to coaching varies, to meet the needs of the project and your organization. However, it is normal for us to reduce our involvement over time – a major part of this effort is to move the team from Shu – learning the practices form others – to Ha – being confident in their own skills – as quickly as possible.
Typically, we find a coach should be embedded in the team for 1 or 2 iterations, to ensure the team is off to a positive start. We then reduce our involvement, encouraging team members to assume various responsibilities and leadership roles, until after several iterations, we may only be involved on an “as needed” basis.