The crew sets up three folding chairs in the greenhouse. Lena keeps the plants, Tomas studies them, and Priya works at mission control.
Comet opens with her idea. "Beacon will water everything automatically!"
Lena shakes her head kindly. "I like watering by hand. I just need to know which row is dry."
Tomas adds, "I want a photo of the beans every morning so I can track their growth."
Priya speaks over the relay. "And I only want messages when something needs attention."
Wren writes fast on his clipboard. "What do you notice? Nobody asked for the same thing."
Nova hovers over the notes. "Interesting. Those answers are the start of your requirements."
Developers investigate to find out what users need. Talking with users is an important part of developing a computing innovation.
Investigation can use surveys, user testing, interviews and direct observation.
An interview asks questions out loud. A survey asks many people the same written questions.
Direct observation means watching people do the task. User testing means watching people try a version of the program.
| What the crew did | Way of investigating |
|---|---|
| Asked Lena, Tomas and Priya questions face to face | Interview |
| Gave all twelve outpost workers the same three written questions | Survey |
| Watched Lena check every row by hand for an hour | Direct observation |
| Will hand Lena a paper sketch of Beacon and watch her use it | User testing |
Program requirements describe how a program functions. They may include the user interactions the program must provide.
A program's specification defines its requirements. It is the written plan the whole team agrees to.
Each requirement comes from what users said, did or needed during the investigation.
| Requirement | Where it came from |
|---|---|
| R1: Beacon shows the water level of every row. | Lena wants to know which row is dry. |
| R2: Beacon never waters plants by itself. | Lena likes watering by hand. |
| R3: Beacon sends one photo of the beans each morning. | Tomas tracks their growth. |
| R4: Beacon messages mission control only when a plant needs attention. | Priya wants fewer messages. |
Program inputs are data sent to a computer for processing by a program. Inputs can be tactile, audio, visual or text.
Program outputs are any data a program sends to a device.
An event, such as a key press, a click or a program starting, can change what a program does next.
| Statement | True or false? |
|---|---|
| Developers should talk with users before building. | ? |
| Every user in the story wanted exactly the same thing. | ? |
| R2 came from what Lena said in her interview. | ? |
| A message on a screen is an input. | ? |
Great listening. Tomorrow in Beacon Lab you storyboard Beacon's three screens.