“I have found a deadlock in the database” – I said few years ago to a product owner on the customer’s side.
“What!? Really?” – She said anxiously as we were close to the release date.
“Yes, when the processes are at certain stage, the deadlock appears. As a result one of the processes fails” – I followed.
“Oh” – She started to look pale.
Next, I threw in some technical details that were interesting from my point of view. When I finished, I heard a very important question: “How the end user will see/perceive/experience this issue?”
“The user will just see the process marked as failed in the processes list.” – I answered.
“Ahh.. That’s kind of good” – She said and I could tell from her impression that she was really relieved.

This is how I realized a very important thing. You should always provide information about how the users are impacted by a performance issue or error, especially when speaking/reporting to business people.


A “kind reminder” note


This post is also a note to myself, as I have to admit, I sometimes keep focusing on the technical stuff too much, leaving the crucial end-user context aside.

So please remember that, If there were some errors / issues, in the tests you’ve executed – add information how the users are experiencing this!


People that are viewing the report or reading your observations are quite often non-technical and sometimes they might get an impression that in case of errors a monitor might blow up in user’s face or a fatal blue screen will appear. Seriously.






So when facing issues like the ones above, provide a summary of the problem, add the important end-user context, so business people can assess the situation and risks properly to decide how to proceed.