Skip to content

Project 1: Requirements Engineering

Learning Goals

  • Learn how to do effective user discovery interviews to learn about the problems your users have, how they are willing to have you solve them, and what value they ascribe your solution
  • Learn how to get an LLM to create sound user stories that accurately reflect your planning goals

Project Context

You and your team will be spending the rest of the semester building all of the features that are present in the main product of the startup you have chosen. This assignment is intended to help you design a viable imitation of this product.

Deliverables

1. Initial value proposition/product description

Please answer the following questions:

  1. What is the big idea of the startup you have chosen? What problem is it solving? What is its solution? What makes their solution special and distinguishes it from the competition? Do not use an LLM for this part. (1-2 paragraphs)
  2. What is/are the value proposition(s) for your product? Do not use an LLM for this part. (1-2 sentences)
  3. Ask an LLM to describe the value proposition(s) for your product (1-2 sentences).
  4. What is the difference between the human and LLM-generated value propositions? Which one is more compelling? (3-4 sentences)

Turn-in instructions

  1. Answers to question 1. (1-2 paragraphs)
  2. The value proposition(s) for your product, written by humans. (1-2 sentences)
  3. The value proposition(s) for your product, written by the LLM. (1-2 sentences)
  4. Describe the difference in the value propositions written by humans and LLMs. Explain which one is more compelling and why. (3-4 sentences)
  5. Turn in your chat log with the LLM.

2. Viability analysis: why do people want it?

In these exercises, you'll collect some initial viability data, and make a plan for collecting more as you build out your project.

2a. Figure out why people want the product

Create a list of 10 questions that will you learn about the problems that people have that could be addressed by the main product of the startup you chose. Heed these lessons from The Mom Test:

  1. Talk about their life instead of your idea.
  2. Ask about specifics in the past, instead of generic questions or opinions about the future.

2b. Measure/demonstrate that people want the product

Have four or more conversations with real people (not LLMs) who are somewhat engaged in your product's area of focus. For example, if you’re interested in solving pain points around coding apps, all four people should at least know how to code. Use your questions from the prior section as a starter script. However, ask followup questions to discover what problems your interviewees are having. You may record these if you like so you have transcripts to refer back to, but this is not required.

You must interview real humans for this assignment. Interviews with LLMs will not be accepted.

Recall the lessons you learned in our user discovery class about adapting your question style for the specific personality type in front of you.

  1. Describe where you found these four people and how you talked to them (e.g., formally over zoom, informally in the gym, etc.).

  2. Describe one mistake you made during your discovery conversations, and one exchange that went well (and why).

2c. Summarize what you learned

What problems did people have? How were they solving them? What wasn’t a problem? Summarize what you learned from your discovery conversations. What might this mean for the product/focus area/problem of choice?

Optional: If you recorded and transcribed your interviews, you may turn in two summaries.

  1. Summarize the interviews using only human brain power.
  2. Put away your original summary, and then ask the LLM to summarize the lessons you learned from the transcripts.

Turn-in instructions

Please turn in:

  1. The 10 interview questions you created.
  2. Your raw notes and transcripts, demonstrating that every group member participated in at least two interviews.
  3. Where you found your four interviewees and how you interviewed them.
  4. One thing that went well and one thing that went poorly in any interview.
  5. The five most useful questions you asked. (1 paragraph)
  6. The five most useful pieces of concrete data you collected. (1 paragraph)
  7. The summary, written by humans, of what you learned about the people you interviewed. (2 paragraphs)
  8. Optional: The summary, written by an LLM, of what you learned about the people you interviewed. Also turn in the LLM chat log. (2 paragraphs)

3. User Stories

In this section, you will create user stories that correspond to the primary use cases of the product. However, you may not write the user stories themselves. You have to use an LLM to do this for you.

The user stories should be customized by your understanding of the primary use cases of your startup's main product as well as the lessons you learned from the user discovery exercise above. These may not turn out identical to the product already in production, but that's ok. With everything we learn here, we can make it better!

  1. Get an LLM to create 10 user stories for your product. Make sure it uses the proper template:
    • As a <user>, I want <action> so that <benefit>.
    • Have the LLM add an explanation of what each user story is really about.
    • Have the LLM estimate each user story's size as a t-shirt (Small, Medium, Large, Xtra-Large)
    • Be sure to tell the LLM that each user story must fit integrally into a 2-week sprint.
  2. Ask the LLM to evaluate the user stories according to the INVEST framework we learned in class.
    • Throw out the 5 lowest ranked user stories.
  3. Have the LLM to prioritize the remaining 5 user stories into a product backlog. Ask it to assign the user stories to be accomplished to one of the next 5 2-week-long sprints (10 weeks of work).

Turn-in instructions

Please turn in:

  1. The original list of 10 user stories.
  2. The five user stories that were eliminated and what reason the LLM gave (and you agreed with) for dropping them. (1 paragraph each)
  3. List the top five user stories that you kept, in the order that they were assigned to sprints, and for each one, answer why it this the right story to work on and why do it in the sprint it was assigned to? (1 paragraph each)
  4. The chat log from all LLM interactions you had in doing this work.