Learning Team-Agility with Scrum & Story Writing with Test Specifications

Table of Contents

The objective of training in Scrum is not to just learn what Scrum is but how to use it effectively to improve your teams’ abilities and agility. Net Objectives’ almost two decades of experience in training and coaching in Scrum has enabled us to create a new type of training for Scrum teams that provides more breadth of content, more retention and more support after the training. All while reducing cost because of the innovative delivery format allows for larger class sizes while increasing collaborative learning.

We accomplish this by substituting generic story decomposition methods with using Behavior Driven Development to accomplish this essential work. This helps teams eliminate the common challenges of unclear requirements and sets the stage for better testing.  Although Scrum is a generic framework, we find that by taking advantage of what is known about Scrum in the software world, specific recommendations can greatly increase the effectiveness and efficiency of adoption.

Most importantly, the course is offered by senior consultants who ensure it fits the culture and context of your organization.  It also includes one-on-one coaching of teams to so each team gets a half day of personalized coaching.

There Is A Difference Between Team Training and Scrum Master Training

Most Scrum training is a blend of Scrum and Scrum Master training.  These are two different things. There is definitely value in Scrum Masters being present to the Scrum training of their teams. This facilitates collaboration. But the training should not cover what the Scrum Master needs to do since the developers don’t need to know that and it wastes their time.

We suggest having Product Owners be in team Scrum training as well. This helps teach these two roles how to work better together. Much of the work done in the Scrum involves developers and product owners working together. Product Owners define the “what” with the team deciding on the “how.” Since teams also validate what’s built the product owner and development team represent the customer, development and testing – the Triad of Acceptance Test-Driven Development (another name for Behavior Driven Development – BDD).

No need to reinvent the wheel

Scrum is a framework that is intended to have people self-organize within it. We believe that Scrum should be taught with enough key practices, tailored for the teams involved in the workshop, so that they can get started in an effective manner.  Our deep knowledge of patterns of success and challenge enable us to provide guidance on how to adopt certain practices for the teams in the workshop. This enables teams to learn specific practices they should while avoiding having to have teams re-invent the wheel. By also providing templates to be used after the training teams can continue to evolve their Scrum practices or even transcend Scrum if warranted.

What you need to learn to be effective with Scrum

Before adopting Scrum, you must ensure it is the correct framework to use.  Included in this workshop is a half-day consulting with management to ensure it is the right framework for you and if and how it needs to be tailored. If a flow model works better for you, this workshop can be tailored to that.

Most of the work development teams do are understanding requirements, developing code, and validating that the code meets the requirements. Behavior Driven Development (the defining of test specifications before developing software) has been integrated into teaching Scrum because although Scrum itself is simple, teams need to learn how to create stories.  We integrate story writing with tests into our Scrum training to take advantage of this. This is done with the teams’ own stories, so they get a start on applying it to their own work. After the training teams can then take BDD as far as they want, but their mindset will have definitely shifted towards the better. See How to Start with ATDD/BDD for more.

Starting With Scrum – Common Challenges to Expect at the Start

After deciding that Scrum is applicable, the team can now start implementing it as close to its definition as possible. This lets them get a better understanding of both what Scrum is as well as the challenges they have in their organization. It also provides for a clear, well-defined start, something teams need.

Even when cross-functional teams are readily achievable and planning is possible most Scrum teams have two common challenges:

Breaking down stories into small chunks. Scrum intentionally provides no guidance here – it is a framework. Unfortunately, standard decomposition methods don’t take advantage of what’s been learned in the last decade with Behavior Driven Development (BDD).  BDD provides a structure for decomposition that enables virtually any problem domain (including very complex ones such as operating systems and compilers) to be decomposed into small stories.

Having Something Demonstrable At the End of the Sprint. This challenge is related to the first. When teams can’t figure out how to get small stories, they tend to flow over into the next sprint.  The value of having sprints degrades and teams often fall into abandoning them entirely – describing what they are doing as Kanban.  This is, of course, neither Kanban nor Scrum – just bad Agile.

Because of these challenges, the best way to start with Scrum is to integrate Behavior Driven Development into the Scrum training.

Teaching for retention and understanding

While there are times information must be presented, the best way to learn is by doing. Teaching through well designed set of exercises is essential. In addition, Scrum training needs to help people break down their own work into stories that are small enough. This generally requires Behavior Driven Development. In addition to learning by doing, we provide templates to help people both remember what they’ve learned and to use after the workshop.

Net Objectives teaches principles via interactive exercises, specific information through interactive discussions and how to apply it via actually working with 1-2 teams at a time on their own backlogs.

Providing a support system for continued learning

Learning a new way to do work requires an understanding of how people learn and the limitations this presents to us. in particular, people:

  1. Can only absorb so much at any one time
  2. Learn better by doing
  3. Need something very specific at the start
  4. Need to continue learning over time
  5. Learn new ideas best by example

Scrum’s roles, practices and artifacts are presented so that teams can get started.  A support system of templates and webinars are provided when teams are ready to go deeper.

Templates provided

These templates can be used to guide the team in deeper learning over time.

  • Team-Agility Scorecard
  • Outcome-based Thinking
  • Definition of Ready and Definition of Done (with video)
  • The MBI Mindset
  • Components of a good Scrum/Kanban Board
  • Types of work
  • Agreements to make with other teams and management
  • Ensuring what’s being built can be delivered
  • How to do a Retrospection
  • How we agree to new practices
  • Going  beyond “Scrum-but” (how to change practices that commonly get dropped by those new to Scrum)

Support videos

These are short videos that help with improving common Scrum practices

Outline of course

  • Day 1: Learning Scrum via exercises, games and interactive learning
  • Day 2
    • AM: The basis and need for test-first
    • PM: 1 on 1 coaching with teams on story writing with test specifications/BDD (1 hour with each team)
  • Day 3
    • AM: Behavior Driven Development
    • PM: 1 on 1 coaching with teams on story writing with test specifications/BDD (1 hour with each team)
  • Day 4
    • AM: Behavior based analysis
    • PM: 1 on 1 coaching with teams on story writing with test specifications/BDD (1 hour with each team)

Resources to help you understand these issues

Course pricing and value

Courses based on exercises and simulations can have more attendees without causing a degradation of quality because it is easy to run these for several teams simultaneously. The larger size also has the advantage of being able to teach entire groups or Agile Release Trains if doing SAFe.  This enhances collaboration, let’s people better see how others are working and provides for greater cross-training by seeing how different teams in group are working.

Because the class sizes are larger when possible yet individual team coaching also being done, the quality of the course goes up while the cost goes down.  Our scope of training is twice as much as normal training while providing it at a little more than half the price.

How We’re Able to Do This

We are essentially offering twice the training to twice the number of people at the same cost at about the same amount of time.  How we do this is straightforward:

We save time by:

  • not discussing what Scrum Masters need that the team doesn’t
  • only briefly covering the generic Scrum decomposition methods which must be transcended before long
  • teaching some of the Scrum practices while teaching BDD

We improve the quality of the workshop by:

  • having product owners and developers work together which facilitates learning
  • using exercises  and games to enable larger class sizes while keeping it interesting
  • doing one-on-one team coaching to ground the practices in the teams’ actual work
  • having all of our workshop leaders are skilled practitioners and consultants with an average of 15+ years in Agile methods

If you are interested in learning more, please contact Mike Shalloway at mike.shalloway@netobjectives.com.