Understanding the business problem
In the above figure, the first two steps are spent exploring the problem space, namely ‘Understanding the business problem’ and ‘Understanding the context’.
In terms of ‘Understanding the business problem’: here the objective is to try to understand the problem as much as possible, and to keep going until you feel as though you understand it inside and out.
It is likely that this starts at a fairly high level with senior business stakeholders (i.e. most likely those who are controlling the budget and are proposing the project). Then expect to move towards a more granular understanding of the problem when talking to the eventual users of whatever you are expecting to build as well as any relevant skilled practitioners. This process should help you to know the pain points of the various people in the business.
This view is then validated with a broader range of stakeholders and ideas of a fantasy ‘to-be’ state collected. An interesting question to ask stakeholders is “what they would like the solution to be if they could wave a magic wand”.
A key aspect here is to always validate what you are told; a great way of validation is to learn from ethnographic researchers and observe what actually happens in these business contexts. After taking on board the different perspectives, this now helps to get past any potential biases that there might be.
Understanding the business problem from a range of business perspectives is only one aspect. The practical data and engineering constraints also need to be understood too, and can be done in parallel. At its most simple level, this is about establishing what data is available and understanding the existing system(s) that the anticipated solution would need to fit into.
While collecting and assimilating this information, it is also a good idea to begin to map these learnings to a prototype solution design. Some of the questions that might be useful to consider at this stage might be:
- How can elements be built using existing or commonly understood (generative) AI models or approaches?
- What processing or logic would need to be applied to these algorithm outputs to make them usable?
- How can different data sources or model outputs be combined to improve the solution?
At this point, with a better understanding of the context, it can also be useful to go back to some of the business stakeholders with practical questions about how they perform their tasks, which would help with the solution, such as:
- What assumptions do skilled practitioners make in their roles performing such tasks?
- Are there any rules of thumb that skilled practitioners use to do their job?
The development of the solution will no doubt be an iterative process, with updates added as new information becomes available. However, it is a good idea to present something to the key stakeholders at as early a stage as is sensible to identify any misunderstandings and to ensure that feedback – constructive or otherwise – is gathered. It is at the point of having some sort of concrete design to share with stakeholders that some of the real and practical feedback (and obvious ‘gotchas’) can be surfaced.
With further iterations, and once a more mature version of the solution has been created, then there is a formal checkpoint step to get feedback on the current proposed solution (‘Validate the value of the solution’), with a key element being to validate the value that this solution offers.