I wrote this to try and describe some work I did without having to explain the details of the concept (because it is a super deep rabbit hole of questionable enjoyment). I’ve been told by people who know the concept it is funny but it might not be if you don’t.
Participants: 1 UX Designer (me), 2 Agile Cells / Dev Teams, 3 Product Owners
Requirements: We need a number. It’ll do a thing, super important.
Fun Version: The number can already exist or it needs to be created. If it is created, it needs to be checked against an existing list of numbers.
The list of numbers is outside the control of this team, project, application, and ecosystem.
The creation of a number is not directly related to the use of the number.
The time between creation and use can be many days. It is possible that in that time, the number is used by a party that is not part of our team, project, and application and this would cause issues.
Please protect us from this issue.
It is possible that you thought you needed a number from List A when you actually needed the number from List B.
It is also possible that you were correct all along and needed a number from List A and need to see a previously stored number but you don’t want to see List B’s numbers.
As the user, you are unaware of where the numbers come from, only that you need it for your work. Depending on how you use the number later on in your process, you might need a number for your number (2nd).
This (2nd) number takes a very long boat ride to your project and people need to know where it is at all times.
All of these paths are to external places and it is possible these places are closed for the night or just don’t respond to your requests for numbers and this should be communicated at all times.
It has been known to happen that one number isn’t even enough, you might need two or three and they aren’t all the same type.
Existing and Created.
Some of these numbers might even have a 2nd as well.
So I built a module that allowed the user to start the process of getting a number and choose the type. They could then enter the number if they already had it or the system would make it for them. I provided error mitigation, human error messages when external systems were down (3 hours every night), and a status of their work for when they returned to this process. If they made a mistake, there was a method to remove their work on an individual level. I also provided a way for a 2nd number to be added and all the status’ that went with it.
Finally when they have completed their entire process, the app allowed them to apply the number on a specific directed basis towards the rest of the project.
I’ve mentioned that the users have provided feedback that this process is easy to use. I consider this a success.