Working Software Over Comprehensive Documentation
What does that mean in the Real World?
People ask me all the time when I train, “how does this work in the real world?”
I have learned that it is not them challenging my experience; it is merely a system saying error, error! I have no data to validate that statement. If we are honest, we have all been there when we have read something and gone looking for the physical evidence to back up what was stated in writing; to find nothing.
To coin the phrase, participants say to me all the time; In our “real-world” comprehensive documentation is anything that we use to communicate, highlight, or explain an experience or service of a product.
Now let’s dive into the other part of the agile value statement – Comprehensive Documentation.
In a document, we could explain how it is going to help you and make your life better, provide clarity or even be engaging and fun. Then you get the product, and it is nothing like the description. We often experience this with movies. There can be so much hype, and then you go and watch the movie and are overwhelmed with disappointment.
Can you think of things that you have written or read about that have not worked as described? Think about when you have brought appliances, and you go to use them and instead of them working as stated they don’t respond as you were led to believe they should. A classic reference point is apps on our phones. When they don’t work as expected, we simply delete them. Rarely do we bother to read the developer notes to see analytical data of what has gone wrong.
“Is there value in documentation in and of itself?”
Yes, there can be. Sadly there is a myth going around that if you are agile, you never have any form of documentation. How bizarre that thought is.
Dictionary dot com classifies documentation in two forms
- material that provides official information or evidence or that serves as a record.” you will have to complete the relevant documentation.”
- the written specification and instructions are accompanying a computer program or hardware.
- the process of classifying and annotating texts, photographs, etc.” she arranged the collection and documentation of pictures.”
Documentation can come in many different forms; the value driver is the information that it provides. Therein lies the challenge to vet value. Literature cannot just be done out of habit until it becomes a tradition, and we know from experience that people’s traditions can present as law.
Here are two questions to validate valueIs this Value Add- meaning this document keeps providing value to anyone who interacts with it?
Is this necessary -without the document could you be out of compliance without the report, the people who typically have it will be lost and have no other way to move forward
Now let’s dive into the first part of the agile value statement – Working Software
Let’s look at working software and how you can apply this part of the value. The working Software could be a service, an experience, a process. It is the thing you trade with your customers for money, it is your product. That is the working software the Agile Manifesto references. Place your organization, your department, or the application your team is building, your relationship, the house your selling. Any of these could be input in the place of working software. The expectation is the same we expect it just to work.
We are all customers of something, and this is why Scrum Masters must remind our teams when they are building products to make them high-quality, usable working products. Build the quality you expect to buy. If every team built with that thought in mind, there would be happy customers everywhere.
Can you agree with me that you will from this point on aim to build, serve, exchange your services or product with the same intention you would want others to do to you? Let me remind you we are all individuals seeking valuable interactions with others.
For this Agile value to be in full effect, both the documentation and the working software must deliver value. I am not proposing this is always easy to do. It is a challenge which is why we come together as an agile community to support each other in living our commitment to uncover a better way of doing things we do. It will always involve sharing with others our failure points as it helps them avoid our pitfalls. Then we take our shared learnings and experience and put it to work to improve our world of work. Being Agile is my chosen way of life. Is it yours?