We are in the middle of a Dynamics 365 project implementation. I am struggling to get a shared understanding of requirements for a Time Entry functionality that my client has asked us to build. What was supposed to be a simple Time Entry entity with description, date and owner is now evolving to be way more complex with many other rules. Ex: Time Entry categories need to drive if fields are displayed, mandatory or read-only on the form. Other categories must have related subcategories, etc.
Until now we used a combination of whiteboarding and Dynamics 365 Forms prototyping to validate requirements. But in this case I needed to come up with something new.
It was important we landed on a solution soon and not be late on tight project deadlines.
This is where I switched to Draw.io to prototype Forms and logic. I then shared thos prototypes with my client stakeholders during a workshop. The session was a total success and participants thanked me for the preparation work. They finaly felt like we have come to a shared understanding of the User Interface requirement.
Why prototyping
Prototyping during your Dynamics 365 or Power Platform engagement is extremely valuable as it will give you the ability to test your thinking and design ideas with real users.
Prototypes can help you to:
- Gain insights from real users on how they will use a functionality.
- Limit design assumptions. If you can’t decide where to put a certain section or sub-grid, test a few versions of the form and see which works best.
- Identify design flaws before it’s too late. Prototypes enable you to fail early and cheaply; they’ll expose a weak or unsuitable approach before you’ve invested too much time or money.
No matter how much time you spend analysing and write specs, many people find it difficult to truly conceptualize something until they have seen it. Prototypes allow you to iterate, refine, rework and make improvements until you have it ready to implement.
When to Prototype in Dynamics 365 or the Power Platform
- Prototype to validate Requirements and Solutions: Those will help you make sure stakeholders have a shared understanding of requirements before the start of the project. It will spark ideas and force stakeholders to agree on a shared vision that meet requirements. Ultimately leading to a better solution.
- Prototype to validate Requirement details and Designs: You may need to use prototypes again during your “Analysis & Design” to validate detailed requirements. Prototypes are great to help you nail acceptance criteria for your User Stories.
Tools to prototype:
The model-driven form and view designers
- It empowers stakeholders to feel like they can design forms with you.
- They see how easy it is to rename, move or add new fields, sections or tabs. Which brings confidence that future changes are possible and easy to make.
Draw.io
- Yellow are the new fields
- Red are changes to mandatory fields
- Blue are changes to read-only fields
The creating a time entry from the main navigation and without related records:
|
Creating a time entry starting from a contact record:
|
Creating a time entry from a Case:
|
Creating a time entry from an Apppoinment:
|
So in this exemple we created the same Form with 4 differently Form logic. Workhoping those prototypes made it easier for stakeholder to agree on the final rules.
Bonus
As a bonus, I have included the “Draw.io” shapes that I use when prototyping Forms and Business Process Flows. To use those shapes, download them from the following locations.
- Form Shapes: https://drive.google.com/open?id=1NazbWUmAzwIpBSk7Z8rSCbzBf9RwyX-R
- Business Process Flow Shapes: https://drive.google.com/open?id=16-j9nc5Cr7Iv1ANUzkQ1JsWbTNBmeKlH
How to add the shapes to your “Draw.io”:
- Open Draw.io
- Click on File –> Open Library from Device… –> Select the XML files and import them.
- Et voila… you should be able to see the 2 library available for you to use: