A successful Agile culture is a learning culture.
That's the most compelling idea I took away from a recent conversation with Lisa Crispin and Janet Gregory about their book More Agile Testing: Learning Journeys for the Whole Team, published in October 2014. Crisping and Gregory are both Agile coaches.
The learning culture theme runs throughout More Agile Testing. To keep up with new technologies -- and address longstanding development challenges -- Agile practitioners must continually acquire new skills, test their assumptions and experiment with new ways of working. "If [one approach] doesn't work, you try something different," Crispin said. "That is hard for organizations that don't have a learning culture."
The book, a testament to the importance of a culture where continual learning takes place, addresses technologies and ways of working that weren't on the radar in 2009, when Crispin and Gregory wrote their earlier book, Agile Testing: A Practical Guide for Testers and Agile Teams. "Five years ago, no one worried about embedded testing, mobile testing and globally distributed teams," Crispin said. But today, depending on the business context in which an organization operates, all of these things are crucial areas of expertise for software professionals.
Another thing they didn't give much thought to when they wrote their 2009 book was what testers need to know about other disciplines within the software development life cycle. "No one, was talking about doing business analysis," Crispin said as an example. But today, testers understand it's not enough to accept business requirements at face value. More Agile Testing addresses all of these issues.
What is a learning culture?
A learning culture is one in which Agile team members strive to acquire new knowledge and skills relevant to a software development project. For instance, in a learning culture, team members don't approach a software project as specialists with programming, testing or business analysis expertise. Instead, they come to the table with a mindset that's conducive to problem solving.
Sometimes that means learning from others on the team. Members with strong programming skills can help their peers who come from a testing background write scripts for test automation. The idea, said Gregory, is not that testers acquire enough coding expertise to become full-fledged programmers -- it's that they gain a "technical awareness of programming."
Lisa CrispinAgile testing coach
A learning culture empowers team members to pursue areas of interest to them, and share that new knowledge with the team. As the authors explain in the introduction to their book, one member might pursue facilitation skills training, seeking more efficient wants to elicit requirements from business stakeholders. Another might identify a new solution to automated regression testing. Team members should be empowered to try out a new tool or technique and share that information with the team, the authors said.
Fail fast and move on
At the heart of a learning culture is the Agile retrospective, an exercise conducted at the end of every iteration. With a focus on continuous improvement, the team determines what worked and what didn't, and figures out its next steps. To achieve success in the long run, the team must be willing to experiment with approaches that may ultimately fail. As Crispin and Gregory write in the introduction to their book, the goal is to fail fast enough that failure isn't too costly. In other words, to figure out what works, sometimes you need firsthand experience of what doesn't. "You try out ideas for an iteration or two, and experiment with something else if they don't work," Crispin said.
Ideas can originate anywhere. The authors themselves learned a lot from their readers, and More Agile Testing is full of reader-generated ideas. "The book includes [tips] from about 40 contributors who tell their own stories," Crispin said. "We had a failure, and then we tried this, and it worked."
Nurture a more innovative workplace
Explore what happens after Agile