Agile and Artificial Intelligence (AI) are not exactly cousins or twins. At a fundamental level, there are differences. Agile is about iterative and incremental development, whereas AI is about data-driven learning. Agile is about fast delivery, whereas AI is about fast learning, particularly considering the large language models (LLMs).
In addition, Agile is about delivering value, whereas AI is extracting value from data. Agile revolves around user stories, whereas AI is mainly about data stories!
So, how does one compare and contrast Agile with AI?
In this article, we will explore more and we will learn through two building blocks of Agile and AI. For Agile, it’ll be the user stories or simply stories. For AI, on the other hand, it’ll be the prompts.
We will start with the basics and then proceed to the three Cs of user stories and prompts. Prompt engineering is an emerging field in AI and indeed, there are job postings related to it, worldwide. Though a new engineering field, there are commonalities with the “Cs” of a use story, which will make prompts more understandable.
So, let’s start with the basics.
What’s a Story in Agile?
A story replaces requirements in Agile development. I’ll define a story as follows:
"A story is a brief description of deliverable value to a stakeholder."
But you’d have definitely come across the concept of “User Story”. So, what’s that? A User Story is a story about a particular user. Yes, it’s that simple! For example, the user can be a:
- a customer,
- a system administrator,
- a sales person,
- an employee,
- or any other.
You can learn more about story and user story here.
What’s a Prompt in AI?
With prompts, an AI model generates a response. The better the prompt, the better the response. Again, I’ll define a prompt in simple terms as follows:
“A prompt is an input instruction to an AI model.”
That’s it! It’s basically an instruction given to an AI model, e.g., GenAI model.
Now, like stories, there can be varieties of prompts such as Natural Language Prompts for natural language processing (NLP), System Prompts with predefined instructions or templates, which can be loaded into an AI model to generate concise and clear responses.
Next, with these basics in mind, let’s dive deeper into the three Cs of stories and three Cs of prompt engineering.
3Cs in Agile Use Story (Scrum or Kanban)
The 3Cs are actually for user stories, but can be applied to other types of stories. You can use them both in Scrum or Scrum at Scale (see here), and Kanban or Kanban at Scale (see here). The 3Cs are:
Card: A card represents the user story’s intent. It can be on an index card, sticky note, or an electronic card. The most used one is a sticky note on a Scrum or Kanban board. This is the visible part of the 3Cs.
Conversation: A conversation represents a promise of interaction. This interaction is between the developers and customer, or a proxy of the customer, e.g. the Product Owner.
Confirmation: A confirmation is the verification part of the story. It provides the acceptance criteria and it ensures that the story is properly and correctly implemented.
A figurative representation of these 3Cs in a user story is shown below.
3Cs of an AI Prompt
Here, the 3Cs are actually for a Prompt, a key aspect in having right conversation with an AI tool, when generative AI is used. The 3Cs are:
Clarity: The clarity part is about clear instructions given in the prompt to the AI-bot. A clear instruction helps the AI tool to understand the intent of the user. The instruction should be unambiguous.
Context: The content part is about background information related to the instructions. It can be associated with a persona, a real-world figure or examples. This guides the AI prompt and actually, the model behind it.
Constraint: The constraint part refers to the limitations put in the prompt. Constraints set the boundaries or the boundary conditions. The constraints can be with respect to length, format, style, or others.
A figurative representation of these 3Cs in a prompt is shown below.
Can "command" be a "C" for a prompt? No. Because the prompt itself is a command! Isn't it? This is what I wrote in the definition of a prompt in the beginning.
Types of Stories in Agile
In this article of Stories about Stories in Agile for Product Managers, I’ve informed about a number of stories with examples. You can read the full article here. At a high level, the types of stories are:
- User Stories
- Spike Stories
- Architecturally Significant Stories
- Analysis Stories
- Infrastructure Stories
For each of the above types of examples are given, followed with exercise. You can try those.
Types of Prompts in AI
Just as there are types of stories, there are also different types of prompts. The three Cs of stories can be applied to the types of stories and three Cs of prompts can be applied to types of prompts.
For example, following can be the types of Prompts:
- Zero-shot prompts,
- Single-shot prompts,
- Multi-shot prompts,
- Chain of Thought (CoT) prompts, among many others.
However, in this article, our focus is on the three Cs. So, let’s take some examples to understand the three Cs and three Cs of User Stories and Prompts.
Examples – 3Cs in a (User) Story
For a user story, as we just saw in the article, the 3 Cs are – card, conversation and confirmation.
Card: Here is an example prompt written on a card.
- Incorrect way: “I want a search function.”
- Correct Way: “As a home user, I want to search by water purifier product, so that I can find the right purifier.”
Conversation: Conversation happens between the developers and the customer. Here, the Product Owner (PO) acts as the proxy of the customer. One example conversation might look like this:
- Developer: “Do we need to provide all water purifier product names or specific top selling products?”
- PO: “Initially let’s make it brand specific.”
- Developer: “Can you tell what are the brands we include?”
- PO: “We can start with Brand ABC.”
- Developer: “Should it be applicable to all interfaces – web, mobile and desktop?”
- PO: “Let’s start with the web first.”
- …
- …
The conversation gets more and more refined as the conversation progresses.
Confirmation: Confirmation is primarily about acceptance criteria.
Followings are some of the examples of acceptance criteria, assuming the story is really refined and can be done in one Release (as in Kanban) or Sprint (as in Scrum).
- The water purifier items to be listed as the search function is executed.
- At least three items from the same brand – Brand ABC – should be listed.
- The items are both from regular and advertise items.
- If no matching for the product item, then no a message of "no products found" should be displayed.
Examples – 3Cs in a Prompt
For a prompt used on large language models (LLMs) in GenAI, as we know earlier, the three Cs are – clarity, context, and constraint.
Let’s look at some examples showing both correct and incorrect prompts for each of the aforementioned Cs.
Clarity: Here is an example prompt with clarity.
- Incorrect Way: “Tell me about this article.”
- Correct Way: “Summarize the following article in a few sentences.”
Context: Below is an example prompt with context, i.e., background information.
- Incorrect Way: “Give a summary of hybrid-agile management.”
- Correct Way: “Considering CHAMP certification from ManagementYogi, summarize the hybrid-agile model and management used in bulleted points.”
Constraint: Here is an example prompt with constraint, i.e., setting the boundaries.
- Incorrect Way: “Explain CIPSA scaled agile.”
- Correct Way: “Write a summary of Practical Scaled Agile certification of CIPSA from ManagementYogi in 100 words or less.”
As you can see, in the first one, we set a clear tone. In the next prompt, we specified CHAMP certification from ManagementYogi, which provided the context. And in the final prompt, we set the boundary to 100 words for the information related to the CIPSA credential. Two hundred words indeed set a constraint.
Using Microsoft Copilot
Among multiple Generative AI (GenAI) models, I found MS Copilot to be the most honest one!
Others hallucinated and/or many times, provided entirely incorrect information. Microsoft Copilot, a GenAI model, gave the correct information. You can check here.
For MS Copilot, a snippet without the three Cs – clarity, context and constraint – is shown below. You can also write the prompt and test it in various AI models to validate their honesty and integrity. Again, other GenAI models may hallucinate and/or generate completely outlandish information.
Next, I wrote a prompt with clarity and provided the context. I also set a constraint of 100 words. The response from the AI model is shown below.
As shown above, the AI model understood. It not only kept it within 100 words, without any extra beautification and addition of its own, but also showed the actual sources. Simple, short, and effective. Other AI models deliberately omitted the source(s) or flip-flopped between showing or not showing the source(s).
Conclusion
Like we apply who, what and why concepts while writing user story on a card, for a prompt too, we can also use them for prompt creation. The table below provides some examples.
As shown above, we have the examples for both user story and prompts.
- For the user story: Who is you as a traveler, what is about choosing the travel date and why is for proper itinerary.
- For the prompt: Who is you as a project manager, what is about summarizing the meeting transcript and why is for action items.
Finally, as noted at the beginning of the article:
- Agile focuses on delivering value to customers early and frequently.
- Artificial Intelligence (AI) focuses on extracting value from data.
- In Agile, the interplay is between team members, whereas in AI, it’s between algorithms and data.
In order to get the right value from an AI model, not only your data, but your prompt also should be good and well-structured.
CIPSA Certification:
No comments:
Post a Comment
Sign- or Log-in and put your name while asking queries in comments. Any comment is welcome - comments, review or criticism. But off-topic, abusive, defamatory comments will be moderated or may be removed.