10 ways to improve your requirement’s gathering
I want to share my experience, learned during more than 15 years of work in discovery processes, both for projects and commercial processes.
There are many techniques for gathering software requirements and countless articles and approaches to the subject that seek to help us address the points that must be addressed in this type of meeting. However, I would like to address this issue from a different angle: Connect with the audience, understand and work with them as a team to support the success of the project, or at least, of this stage of it.
Technique vs practice.
Techniques can always be learned, improved, updated, but it is in the field, in the execution of those techniques at the right time, where their effectiveness resides, something that in most articles on this subject, is taken for a fact and that ends up throwing people eager to do their work better into situations where you do not always have the expected results.
One can use techniques such as the MoSCoW matrix to make sure we cover all topics, classify them, prioritize them, but how do we get our future users to be honest with us? To understand the importance, impact that their answers will have on what they'll get at the end of development, sprint? The textbook, the manual will say that we must be open, honest, clear, but none of that will be achieved if we do not manage to integrate, integrate them, into a team.
If at the end of the meeting business users come out thinking "I don't know how much that was, but in the end, they’ll give me what I have in my head, or I will not sign", what will be the point of our beautiful list, stories, epics? What benefit will it bring for the business?
A good consultant or Discovery manages to be allowed into the "business circle", developing bonds of trust, based on mutual understanding, which will go beyond being limited to IT’s topics. This is where craft, practice, and creative techniques are fundamental to achieving that integration.
And since this is rarely deepened, that is why I want to share these points based on the craft of Discovery:
1.- Know your audience
The fundamental objective of the first minutes in a Discovery session is to find out who you are dealing with, what they do, but most importantly: how they do it and why they do it as they do it.
- Are they hostile or friendly?
- Are they willing to work, annoyed by stealing their time, or determined to fall asleep?
- Who takes the lead on their part?
- What is that leadership based on: experience, hierarchy, or is it just the most outgoing person in the room? Detecting these patterns is intuitive for a good Discovery, but a great Discovery begins to draw a situational mind map, to know who you will have to work harder with, with whom you will struggle, who can be an ally, how you have to talk to each one (during the sessions) to let them know that we are interested, that we want to help them and that we are the ablest to do it, right now and for a long time after the project is finished.
2.- Identify the final value of the project, for each user
Make sure you understand what is the true value that each team member hopes to obtain at the end of the project. It can be something as simple as less time dedicated to something that does not interest you in your daily work or the solution to your headaches since you came to that position.
Not all expectations of value can be met at the end of a Discovery or with the project in turn, but you must make sure to solve at least the most fundamental one, the one that impacts most of the team members.
3.- Be Professional
Be the first to arrive, make sure you have everything ready: presentation, connections, material, audio (if necessary). Be the last to leave.
Some things will not depend on you, such as having water, coffee, internet connection, but you must make sure that they give you what was agreed to do the sessions, or, to have an alternative always at hand.
4.- Differentiate yourself, bring dynamism and clarity
Focus on thinking about the best way to help each of the team members. People do not always know the value that one can bring to their daily work, focus not only on what you can contribute and the best way to help them but on how to communicate it in the most optimal way to break down their doubts about your capacity and the value of the work they are doing at that time.
They have listened to dozens of consultants, salespeople, project managers, and everyone has promised them benefits, what will make you different?
Be clear, to the point, use the tools at your fingertips: paint board, projector, video. Keep the session dynamic: if necessary, rely on design thinking techniques to thaw the environment, to awaken creativity. Many times you will find a VIP or manager in your workshops, who will not want to participate or think it is a waste of time: adapt quickly, they are used to delegating the work, so it is generally better to follow that line that’s the case.
5.- Forget about the Software, you're there to talk about business.
On the first day of sessions make sure you understand the problem from the point of view of the flow of the business process and the complications that they are currently having.
Approach the subject from their perspective, I would almost tell you to not mention the word "software". You have to make sure that it is clear, at the end of the first session, that they know you understand their current situation, that you understand the business process to the extent that you can diagram and condense it easily.
It is essential to talk about the issue from the business process flow.
6.- Transfer business processes to clear, concise and achievable requirements
You can use goal definition techniques such as SMART: Treat each requirement as an objective and see if it needs to be broken down into key results or initial advances. Write it down and get the team involved in its breakdown. This way everyone will be aware of the work needed to address it.
If things start to concentrate on one point, don't be afraid to go deeper, keep in mind that maybe bringing the whole team together again is not so easy, squeeze the time.
7.- Always closes with a conclusion with the advances, clear and simple (KISS)
Do you remember that we mentioned that we must be able to synthesize the problem to be solved in point 5? Present this diagram in support of the conclusions of the first session to the team; emphasize it as the result of a joint work session and not just your diagnosis.
Summarizing the progress at the end of each session, conclusions not only reaffirms that what was talked about was understood and highlights the agreements, but it also conveys confidence, a sense of achievement, and the assurance that progress can be made towards the next session. This is fundamental to generate a positive environment, that the team is really solving something, moving forward, and that the sessions are being productive.
8.- Always have an agenda for the session
Showing an agenda at the beginning of each session to the team shows professionalism. Avoid dealing with many topics per session, 1 or 2 are more than enough for 2-hour sessions.
I like to create agendas based on the Timeboxing technique rather than Time blocking. It gives me the flexibility to adapt to the session and makes it less heavy for the team, less stressful.
9.- Create great communication with all the team.
Maintain clear, daily communication with the people who manage the progress of the sessions: the project leader and the sponsor. Briefly explain the progress in an email at the end of the day. Be formal but without being boring.
If your support is needed to unlock something, comment on it and follow it up later during the Discovery period.
As a good practice, I usually send an email also to the team or teams I worked with during the day, thanking them for their time.
10.- You don't know everything
When I started, I had no idea of many processes: Net sale vs sale, the impact of credit notes on commissions, to mention a few topics.
Do not hesitate to rely on your acquaintances, friends at work. If no one knows about a topic, you can ask business users or with the one that you identified as an ally: "Hello Martha, I would like to delve into how the issuance of credit notes affects your commission process, could we schedule a meeting to help me understand it more broadly?" Most of the time you will always find someone on the team of business users willing to help you or direct you with the person who can do it. If this is not the case, contact the sponsor or project leader to support you in channeling your doubts. They know that the more and the better you know about their process, the better results they will have on the project.
Adapt, learn and continue 🧗♀️
At some point in my career, I have faced situations that require prioritizing human skills over the technical ability to carry out a project. The techniques and strategies I mentioned here have helped me carry out these projects and have contributed to my professional growth in each subsequent project.
I tried to keep this list in a generic format, a software development session will differ (it will be of different complexity) from one for an analytics project, but the basic principles to use will be the same.
Of course, delving into the technical aspects with the IT team is different and requires their own space. I will try to write about it later.
I hope this helps you on your way and adds value to your daily activities.
- MoSCoW matrix - https://www.browserlondon.com/blog/2019/11/04/power-of-moscow-method/
- S.M.A.R.T Objectives - https://www.questionpro.com/blog/smart-objectives-and-goals/
- Time locking vs Timeboxing - https://theproductiveengineer.net/timeboxing-and-time-blocking-with-google-calendar/
- K.I.S.S. - https://www.onlinetivity.com/keep-it-simple-stupid-explained/