Projects and products are increasing in complexity. That’s life at the moment, ask our many financial institutions. Change embracing methodologies, legacy systems interfacing with new development mean that most systems of documentation struggle to keep up, coupled with the belief that being ‘agile’ means that even basic documentation is frowned on.
We, as testing focussed individuals are perfectly placed to bridge that gap. An organic set of acceptance, exploratory and automated tests which flex with changing business needs and technical design modifications, document the flow of the project and patterns emerge for key decision points. Coverage areas, non-coverage areas, tests which prove legacy behaviour, new tests added, and old tests retired as functionality has changed all add context to the project or product story.
This is also a slight riposte to the ‘automate everything’ theory, clicking ‘go’ is not a facilitator for analysis or learning. Learning is gained from a stepped approach, I have fielded arguments that it’s a little heavy, but I think in terms of story telling a little effort goes a long way.
- Mind Map – for each item of work (user story for example), create a mind map, nice and simple. This is your one stop shop for recording business needs, test ideas, caveats, technical details and anything else you wish to record. This tells the project story at a high level without too much detail and acts as a prompt for conversation. Print off and make it visible every so often.
- Test Management Tool – this usually raises a few eyebrows, given the current mood in a lot of organisations. I see tests being created all over the place in text files, spreadsheets and a plethora of other tools. If your organisation has a Test Management Tool, don’t fight it and use it to store acceptance tests. You get free version control and safer storage in the main. Creating your business driven, scenario based tests and storing means you have one place to begin collaborating from.
- Automation – You might have many automated tools, for creating data, setting environments to the right state and tests themselves. Regardless of tool choices, your tests should tell the story from a business facing point of view. Better to say ‘Create an Online Customer with a Balance of £50’ rather than the ‘Insert Cust into Offshore DB’. And comment your code; the amount of non commented test automation code I see is frightening.
So, tell the story of your project or product and use the above thoughts to radiate that information. The team will thank you for it as future decision making is much better when history and context are simple to find.