Project 3: Elicit¶
Learning Goals¶
- Plan and conduct requirements elicitation interviews with real users
- Write interview questions that draw out precise, checkable expectations rather than general opinions
- Turn interview evidence into clear requirements, and trace each requirement back to its source
- Recognize how different kinds of stakeholders surface different requirements
- Reflect on what makes an interview question effective
Project Context¶
In Project 2, your team designed and shipped new features for opencode. Before your manager invests more in those features, they want to know whether they actually match what users expect, and what "working correctly" means to the people who use them.
The trouble is that "users like it" is not something an engineer can act on. Your manager wants requirements that are precise enough that someone could look at the feature's behavior and say, unambiguously, whether a requirement holds. That means asking users the right questions: not "what do you like about it?", but "what should never happen?", "what should stay the same if you change this?", and "how would you know it gave you the wrong answer?"
In this project, you will each pick one opencode feature, write an interview script, interview three different kinds of users, and turn what you hear into a set of new or already-implemented requirements, each with acceptance criteria.
Deliverables and Deadlines¶
This is an individual assignment, though you will keep working inside your Project 2 team's repository and may collaborate with classmates who choose the same feature (see Shared features).
There is one (1) deadline for this project. This project is worth a total of 55 points.
Interviews & Requirements – 55 points – due Thursday, October 29, 2026, 11:59PM
- Target Declaration & Interview Script (15 pts)
- Interviews & Notes (20 pts)
- Requirements & Reflection (20 pts)
Start scheduling interviews now
You need three interviews, including one with a member of course staff and one with someone outside the course. Those take time to schedule, so line them up on the first day, even before your script is finished.