From time to time I find myself overwhelmed by technology. OK it may not actually be the technology itself but rather the constant flood of information and resources and the abundant number of ways of doing things in the ‘modern world’ that make it hard for me to even start doing anything with a piece of tech I found interesting.
Maybe I’m just getting old and grumpy.
But, what I find amazing is how people can find solutions outside of this technology maze to accomplish simple tasks and renew our faith in it. Process and tools were born not of technology but of optimised thinking in order to resolve a problem. And that’s where I want to take you.
A couple of months back, my team was discussing flows and decisions for a specific requirement we had to deliver. We didn’t have a Business Analyst (BA) and were mostly organising the work between ourselves – techies – trying to break it down into business stories. Take the following scenario:
One of our deliverables during this project was to implement multi-factor authentication into the customer’s application. We could not simply write a story card that said “Implement MFA” as this is too high level.
Within the dev team we started breaking the work between ourselves, mapping in our minds what had to be done and executing the items we remembered.
From time to time we would put a story card on the wall such as “As a User I want to login using my username and password and be prompted for my verification code”. But even this had its challenges as the login process would also involve handling locked or disabled users and password resets.
We were lacking something. One could feel in the air that things were not really clear. We knew what we needed to do technically and even – at that stage, mind you – how to approach the problem but given the complex nature of the deliverable, things were getting tangled in their own business rules.
That’s when I thought
What we need is something visual, no more discussion and “up in the air” crap. Let’s make people see what we need to deliver.
And if you think that this has a resemblance to UX, you are probably right. I’m a visual person and I usually explain things a lot better when I have a whiteboard or a piece of paper in front of me. Plus you can take pictures, put them on your company’s Wiki, call that documentation, wash your hands and move on! Ha! Almost got you there!
While a lot of devs I know have a fantastic memory, I don’t. And English being my second language means it’s double the effort for me to remember stuff, so writing things down on paper also means I don’t have to remember them anymore.
Before starting, find yourself the following items:
- Sharpies, limit yourself to three colours
- Flashcards, again limit yourself to three colours
- Whiteboard and pens
And then, with those items in your hand, try to distinguish the scenarios you want to clarify and write them on the flashcards (be consistent about the colour). I find that a high level scenario, using one to four words to describe it works best as it makes it easier for the group to identify, discuss and clarify the scenario.
Using flashcards again – this time, another colour – draw or write steps of the process that will make sense to be put together for each of the scenarios you are working on.
Sometimes you will find that different scenarios will require the same steps. Other times, just by looking at the process steps, you will find that some scenarios are not needed anymore and even some new ones will appear. Keep an open mind and keep writing/drawing.
Putting it all together, that’s the result of one scenario:
Mapping password reset
The fun part
This is where it gets interesting: invite relevant people to get together to discuss the problem and map stuff. You don’t want to make this too big or too small, knowing – and inviting – the key people is essential though, otherwise you will end up without the answers everyone seeks.
Using whiteboard markers, separate the board into three parts, like this:
Put your scenarios card on the left and your steps with drawings/texts on the right. Use the whitespace for mapping stuff.
So, what do you do? Simple!
- Pick a scenario card and put at the top center of the mapping area using blu-tack
- Pick the steps that make that scenario and line them below
- Using whiteboard markers, draw arrows to identify the direction of information or process between the steps, using different colours to remark different purposes
Invite everyone to contribute and that’s where the fun starts. People will stand up, move the cards around, ask questions and eventually the answers will just show up. The great thing is the use of a whiteboard: being able to draw around the cards and move them around is a great exercise as make people see where things are going.
Following the example above from password reset, here’s another example from the “Confirm details” scenario:
Mapping confirm user details
As you can see from above the whiteboard plays a big role in the discussion as you can take notes of important items while mapping the scenario. Another advantage of this approach is that you can link scenarios – note the yellow card “MFA Reg. Required” below “Confirm details”. This way it’s easy to see the constraints of different scenarios.
It was a great exercise on the day. We spent almost two hours mapping stuff and we had tech, UX and business resources discussing the solution which made a difference since everyone had questions for each other.
Some scenarios were boring but useful: they helped us confirm our assumptions and assured us that we were on the right track and contributing to the overall success of the deliverable.
This article Mapping stuff visually was originally published on my Blog here.