There are many tools and techniques for gathering business, functional and technical requirements. How they're gathered is an artform that varies from professional to professional. The majority of the time your participants influence the tools and approaches you use. The art of gathering requirements is commonly known as discovery.
The goals of discovery include:
This article is written from the viewpoint of the consulting partner performing discovery in a D365 engagement. But it is intended for all D365 professionals, clients, discovery participants, subject matter experts, and everyone else involved in the discovery process. By understanding the process of discovery, you can be better prepared for the start of a new project.
I'll discuss how best to accomplish discovery by learning how to:
Preliminary planning with a client can go a long way. Not only does it give you an opportunity to ask specific questions; it also shows the client you're interested in learning about them by doing your research ahead of time. Be sure to ask the client if they have any existing documentation you can look at.
One important rule: do not assume you know their business based solely from your research. Incorrect assumptions can be costly in the long run. While research will get you into the right "head-space," asking clarifying questions completes the picture.
More times than not, companies in the same industry have similar business processes but execute them very differently. These differences are important to catch, especially if you are conducting discovery for similar clients.
Another way to get a running start before beginning discovery is to build rapport with your contact. This person is usually the employee who will be coordinating the discovery sessions with you. Discuss with them the approach you would like to take during the sessions and topic areas you wish to cover. Ask them to provide additional topics you may not be aware of, as well as send invitations to session participants. Based on your discussions, it should be clear to the client which attendees are required according to their job title and subject matter expertise.
Next, decide how long meetings will be and the topics that will be covered in each of them. Typically, one to one-and-a-half hours is a good length to cover a topic area without exhausting both you and the client. It's hard work for you to understand new business processes, but it's also hard work for the client to explain their day-to-day job to someone who has no experience doing it. Find a balance in the schedule, with lunch and coffee breaks. Create an agenda based on the number of topics, the complexity of the business, the scope, and the budget of the project.
The meetings have been scheduled and you're ready to begin discovery. Great!
Enjoy the process and be natural while maintaining professionalism at all times. The more discoveries you conduct, the more comfortable you will feel. Build a relationship with your participants during coffee breaks and through discovery breakthroughs. As much as you are learning about their processes, they are learning new things about their work and colleagues as well. The more productive the sessions feel, the easier it is to build relationships.
The following is an approach to discovery that has been well practiced and will help you with your next discovery.
First...
...and then:
In his book The IT Consultant: A Commonsense Framework for Managing the Client Relations, Rick Freedman recommends thinking about the client's business systems in..."...their component layers. The bottom-up assembly of elements..." As shown in the figure, from the bottom up they are:
You might be thinking: how is this relevant for a Dynamics 365 project? At first it may not seem like it. But when you look closely at the elements described for discovery, you'll see the relevance when it is time to build a D365 solution for your client. The bottom-up approach can be used in two ways:
Here are examples of how the elements in the bottom-up discovery approach can apply to a D365 project:
As Freedman says, "It is part of the art of consulting to make a judgment about how much investigation and discovery your role calls for. Always keep the client's wallet in mind, and make sure you don't put yourself in a position in which you have to justify investigations into areas that were outside your scope."
Now that you have gathered valuable information from your discovery sessions, you can turn to specific requirements.
Whether you are working solo or in a team, a good approach is to illustrate visually or descriptively the client's current processes. Identify any unknowns or points of confusion, and make sure to ask the client for clarification on them at this stage. It's much more difficult to do it later.
Once the current process is understood and illustrated based on your discoveries, it's time to translate the current process to the future process (i.e., to-be state). A good approach is to first define a set of requirements, agreed to by all participants in the project, that will be used as the foundation for designing and building a good solution.
Peter Zielczynski, in his book Requirements Management Using IBM® Rational® RequisitePro®, describes the characteristics of good requirements as:
Besides these criteria for individual requirements, as a set the requirements should be:
Remember: the goal is not to take all the client's current processes and replicate them in D365. The mission is to translate the current processes by identifying the client's requirements and completing them in D365 to create the future processes. You do that through out-of-the-box components, workflows, business rules, plug-ins, integration with other applications, etc. It could also be through changes to the client's business processes.
It is highly recommended to explore these possibilities with clients early. That way, they're more open to making changes to their business — and not look to solve their problems by requesting more software features.
As the professional working with a client, you can provide tremendous value helping them see areas of the business they can modify or improve based on your experiences with other clients and D365 solutions. Your knowledge of D365 will help you identify solutions to meet the requirements defined. Maintaining your D365 skills is a must to continue providing clients with the most efficient, reliable and cost-effective solutions.
For many professionals, discovery may be thought of as an easy process of "go in, sit and listen." I mean we've practiced that enough, right? But clearly, it's not that simple. The discovery stage is usually at the beginning of a project and it will be one of the first interactions you will have with your project stakeholders. So, it's always a good idea to put your best foot forward to create a great start.
Fortunately, by applying methods and approaches you find in your research, you will learn the best ways to conduct productive, invaluable, and positive discoveries for everyone involved. And just like any artist, the more attention to detail, the more passion, and the more practice you put into your work, the better your artistry becomes.
Feel free to share your thoughts, experiences, or approaches in the comments below.
Wishing you happy discoveries and excellent gatherings!