One of my hobbies is to learn japanese, one of the best funny ways to learn to me is by reading old folk tales. Last week I came out with the tale of Urashima Taro. The story goes as following:
“One day a young fisherman named Urashima Taro is fishing when he notices a group of children harming a small turtle. Taro saves it and lets it to go back to the sea. The next day, a huge turtle approaches him and tells him that the small turtle he had saved is the daughter of the Emperor of the Sea, who wants to see him to thank him. The turtle magically gives Taro gills and brings him to the bottom of the sea, to the Palace of the Dragon God. There he meets the Emperor and the small turtle, who was now a lovely princess. On each of the four sides of the palace it is a different season.
Taro stays there with the princess for three days, but soon wants to go back to his village and see his aging mother, so he requests permission to leave. The princess says she is sorry to see him go, but wishes him well and gives him a mysterious box which will protect him from harm but which she tells him never to open. Tarot grabs the box, jumps on the back of the same turtle that had brought him there, and soon is at the seashore.
When he goes home, everything has changed. His home is gone, his mother has vanished, and the people he knew are nowhere to be seen. He asks if anybody knows a man called Urashima Taro. They answer that they had heard someone of that name had vanished at sea long ago. He discovers that 300 years have passed since the day he left for the bottom of the sea. Struck by grief, he absent-mindedly opens the box the princess had given him, from which bursts forth a cloud of white smoke. He is suddenly aged, his beard long and white, and his back bent. From the sea comes the sad, sweet voice of the princess: “I told you not to open that box. In it was your old age …“
This take has five main actors The tortoise, Urashima Taro, The palace, The princess and The box. We could map them as following:
The tortoise would be your product, you see him sometimes being beaten up, it could be by competitors, customers, clients or any other factors that makes your product suffer. And you just want to help him.
Urashima Taro is your product owner , someone that cares for your product and will try to increase it’s value as much as possible.
The palace is the paradise, the delivery of that feature or the sign of that contract that will destroy your competitors, bring you new clients or raise the engagement of your customers.
The princess is the development team that provides you a tour to the paradise a shortcut to make your dreams come true. But with a catch, they also give you a box.
The box is the technical debt in exchange for the happiness that you had in the palace you’re given a box that contains a downside equal or greater than what you enjoyed in the paradise.
Teams are usually pushed by the pressures of the release dates (some people call them deadlines) and they tend to perform relaxed versions of their own agreements, for instance by having a softer definition of done where Unit test is not mandatory. This decisions are not free and they have a huge impact in the live of your product and your team.
There are a couple of ways that you can handle the technical debt in your teams:
- Reserve slack time for your teams to fix the technical debt: The downside to this option is that as soon as the team has finish all the items of the current sprint you might have the PO or other stakeholders trying to add more requests to the team that will not allow them .
- Add the technical debt into your backlog: Usually what will happen is that those items seems to have lower business value and will be pushed down in the backlog and you will still have an increasing technical debt.
- Perform sprints to decrease the technical debt: I don’t like this solution because it delays the continuous delivery of value for your product. But at some point is good to consider them when you feel that the technical debt is slowing you down.
- Protect your definition of done: This is probably the one I like the most. The definition of done can be modified by the PO in accordance with the team. But I believe that items that ensure your quality and reduce the technical debt must remain still.
Thanks for reading. Agile is about being able to adapt and learn, so if you think that this is wrong or you have any comments to improve I would love to hear more.