Additional Instructions & Testing
The Prompt
Map the End Users Job-to-be-Done
Below I’m going to itemize the points I use in the prompt and explain them. Then I’ll give you a copy and paste version since I don’t generally write them in separate lines. That will be the last lesson of this module.
BEGIN!
Final Instructions
It is EXTREMELY important that you follow these instructions closely:
- Output as a single, ordered list in markdown format
- Do not repeat the list
- Do not generate an opening statement summarizing what your are about to output
- Do not output anything after the single list
- Do not use the phase name in the step name
- Do not output a test-fit structure example
Instructions: This is another example of textual instructions. Some of them, like the ordered list, can be described in an example output. Others, like do not repeat the list, cannot. In fact, it took me months to get ChatGPT to stop repeating things, getting chatty with me, and outputting a summary. All I want is a list.
Reinforce Execution
There must ALWAYS be a step for the EXECUTE phase and it should reflect the core objective of {{job}} {{context}}.
- There could more than one step involved with execution.
EXAMPLE: if the Job is “driving to a destination in a car” then there should be a step like “Drive to the destination”
Instruction & Example: I can’t believe I had to do this, but I was getting outputs that had no execution step at all. The bullet becomes must relevant in a high fidelity output where I want it to generate more detail in the Execute phase.
Test Fit
Finally, you need to run this through a test-fit structure to ensure that the statement makes sense. This is a quality check that you will do internally. You will not output this. Here is the structure: As a(an) {{end user}} + who is + {{job}} {{context}} you need to <generated output> Does the success statement make grammatical sense? If so, output it. If not, rework it and test it again.
Secret Sauce: I recall the days at Strategyn where we spent hours and days fiddling around with the position and wording of desired outcome statements. At times it seemed excruciating. This was a result of a single person having it all in their head. 👆🏻 This test-fit solves that problem once and for all. I shared this in a blog post, but I wonder how many of you knew that I used it as a unit test for each customer success statement 🤫 See the instruction above where I tell it not to output the test-fit structure? Well, it took me awhile to stop ChatGPT from doing that.
Variables
I am a heavy user of variables. This allows me to reuse the prompt with different inputs. I wrap the variable within the prompt in double curly brackets. The variables being used in this prompt are basic:
- {{end user}} - by providing this instruction, we are giving the AI context as to who is performing the job. This is especially important when we ask it to Act like an {{end user}} because that instruction almost always makes for a more accurate output
- {{context}} - this is actually a contextual clarifier in ODI-Speak. Using the Bosch circular saw example, the job might be
- Cutting a piece of wood and the context might be in a straight line. I
- In the real world (if we’re talking about the Bosch case study) we’d probably need to frame it as Cutting a piece of wood in a straight line with a circular saw.
- {{job}}: this is the job that you have decided to study. Make sure it begins with a gerund verb so it will pass the test-fit structure, e.g., a tradesman cutting a piece of wood in a straight line
- {{start point}} - As I demonstrated earlier, sometimes early phases in a job map are so far beyond the capabilities of a client that it makes no sense to start there. However, I would also point out that in this case, you’ve probably framed the job improperly. Any way, you could reframe Removing an anatomical structure surgically as:
- start point: make the initial incision or when the surgeon begins accessing the anatomical structure.
- {{end point}} - ditto the end point. If you wish to end this after the execution phase, you can.
- {{fidelity}} - This simply tells the AI how many steps you want between the start point and the end point
You might need to play around with this to get the output you’re looking for. It’s easy for humans to state a Job one way and then create a job map that does really fit.
Job: what the end user is trying to accomplish context: a narrowing of the scope of the job end user: the role that is performing the job from end-to-end start point: optional place to begin the job. This would override the universal phasing end point: option place to end the job. This would override the universal phasing fidelity: optional way to define how general, or how specific you want the map to be. Use low | med | high as your input (or leave it blank)