Living Software Documentation

20 May 2015
09:40 - 10:30
International Auditorium: London

Living Software Documentation

Communication is a big challenge and key in making a software project into a success. This is especially true if you have teams with different objectives.

A typical software development team in our company could have 25 to 30 people from 10 or more different places, with multiple vendors locally or on different continents. Additionally, good interaction with the business and operation teams is crucial to deliver top quality to production. Such multifaceted teams are not uncommon these days.

Effective, consistent and documented communication is a huge challenge in this situation, but we needed everyone “talking the same language” as the basis for successful communication. We needed a common language to allow successful communication between the business, analysts, development and test teams. We needed a means of documenting the behaviour of the applications.

Borrowing concepts from acceptance test driven development and adapting it to a non-agile context, we came up with the tool concept that we called probot. It is a way to automate multiple test objectives from functional to end to end testing.

This presentation is a story of how this concept was naturally evolved. We will explain how it was developed and how its efficiency was tracked and its efficacy proven. It was challenged by expensive proprietary tools but it was eventually accepted as one of the official standard tools for the whole company.

The tool itself was developed on free and open source software. We defined, developed and documented standards for how test automation could be implemented in such a way that it will be accessible to all. We achieved this by defining a set of keywords written in natural language that can easily be “spoken” and understood by all stakeholders.

Once all the teams understand the tests which document the behaviour, we have a common goal to get all the functionality implemented and tested. This ensures higher coverage leading to higher quality in delivered projects, within a smooth release methodology. Using the tool we met the ultimate goal of bringing everyone together.