Exam practice
Every question from the end of every unit, with hints and answers to open. After you check an answer, mark how you did, and come back to the ones you didn’t get.
12 questions
Unit 11 · A Project for Your Community
What is the difference between a need and a solution? Give an example of each for a school canteen.
Answer
A need is something a user has to do and finds hard now; a solution is something made to help with it.
Need: students in the lunch break wait so long to order that some go back to class hungry. Solution: a price list and pre-order sheet each class fills in during the morning, or a web page of the day’s menu. Starting from the need keeps the team open to the best solution, which may not even need a computer.
Write four questions you would ask a shopkeeper near your school about how she keeps track of what she sells. Say why each is a good question.
Answer
For example:
- “How do you know what you sold today?” It asks about what she does now.
- “Tell me about the last time you ran out of something. What happened?” A real time, in her own words.
- “What takes you the longest at the end of the day?” It lets her name the problem.
- “Can you show me your notebook?” Watching shows what she really does, not only what she says.
None of them mentions an app or asks her to guess whether she would use one.
Name the four roles in this unit’s project team, and say what each is responsible for. Why should roles be swapped halfway through?
Answer
- User lead: talking to the users; setting up interviews and tests.
- Builder: building the page or the program in small steps.
- Tester: the success checks and the test table; checking each version before users see it.
- Record keeper: the project log, versions, credits and AI-use note.
Swapping lets every member learn more than one kind of work: everyone builds and everyone tests. It also means the project doesn’t depend on one person.
List five practices that help every member of a team take part. For each, say who it helps.
Answer
Any five, such as:
- Pair programming with the driver and navigator swapping often: both learn to type and to check.
- Each member says their idea once before deciding, the quietest first: quieter members are heard.
- The member with no computer at home gets the keyboard first in the lab: they get to practice.
- Meeting where everyone can come: nobody is left out of decisions.
- Speaking whichever language helps: members who explain better in Nepali (or another language) can take part fully.
- Trying competing ideas with a user: decisions are made on evidence, not by the loudest voice.
- Recording who did each part: everyone’s work is seen and credited.
Why should a team build a small first version and test it early, rather than finish everything and test at the end?
Answer
Users nearly always find problems the team didn’t expect, and some change what the product should be. Testing early leaves time to fix them; testing at the end leaves none. A small version is quick to change, and showing users something real tells the team much more than describing an idea.
Name four kinds of diverse users who might test a web page about bus times, and the problem each might find that the team would miss.
Answer
For example:
- An older person: small or pale text they can’t read.
- A blind person with a screen reader: missing headings, pictures with no alt text, links that say only “click here”.
- Someone who reads Nepali more easily than English: a page only in English.
- Someone with an old phone or a weak signal: a page that is too wide, or slow because of big pictures.
- A child or someone who has never used such a page: words they don’t understand, or the main thing hard to find.
A program prints the results of a class test, every student’s name with their marks, in order from the lowest mark to the highest, and the teacher pins it on the notice board. What harm could it do? Change the algorithm, in words or in Python, to do the job without it.
Hint
Who needs to see each student’s marks? What does everyone else need?
Answer
It shows every student’s marks to the whole school, and puts the lowest at the top, where everyone reads first: it shames the students who did worst, who most need encouragement.
A better algorithm: for the notice board, print only what everyone needs, such as the class average and how many passed. Each student sees only their own marks, from the teacher or by their roll number, as in the late-books program:
names = ["Aarati", "Bikash", "Dawa", "Gita", "Hari"]marks = [72, 45, 88, 61, 31]total = 0passed = 0for m in marks: total = total + m if m >= 35: passed = passed + 1print("Class average:", total / len(marks))print(passed, "of", len(marks), "passed.")roll = int(input("Roll number: "))print(names[roll - 1] + ", your mark is", marks[roll - 1])A program chooses which class gets the computer lab each Friday by going through the classes in order of their names, starting from the top each term: Class A, then B, then C… Some terms have only a few Fridays. Is it fair? Suggest a fairer algorithm.
Answer
It isn’t fair: in a short term, Class A always gets the lab and the classes at the end of the list may never get it, term after term. The order of the names, not need, decides.
Fairer: carry on from where the last term stopped, so every class gets its turn in rotation; or start each term with the class that has waited longest; or let the teachers agree an order based on need. Any of these makes the order of the alphabet stop deciding.
What should a project’s credits include? Write the credits for a web page about a festival that uses one photo from Wikimedia Commons, made by a team of three, one of whom asked a chatbot to suggest a color scheme.
Answer
Credits include every source (photos, music, text, data, code) with its author, where it is from and its license; who in the team did what; thanks to the users who helped; and an AI-use note if AI was used. For example:
- Photo: its title, by its author (as its Wikimedia Commons page names them), CC BY-SA 4.0 (or whatever license that page gives), from Wikimedia Commons, with a link to the page.
- Team: Sita wrote the text and interviewed the users; Ram built the HTML and CSS; Pemba tested the page with users and kept the log.
- Thanks to the three people who tested the page.
- AI-use note: Ram used a chatbot (its name, and the date) to ask to suggest four colors that go well together. We used two of them, and checked their contrast with the page’s checks.
Give four ways to protect the privacy of the people who help with your project.
Answer
Any four, such as:
- Ask before interviewing or watching; say what the project is and what you will do with their answers; let them stop at any time.
- Record voice or take photos only with their permission (for a child, the parents’ and school’s too).
- Leave names out of notes and presentations unless they agree: “User 2, a grandmother”.
- Never use real people’s data in tests: use made-up names and numbers.
- Delete recordings and notes when the project ends.
Your team tested its pump reminder with a family, and they said: “We never heard it from upstairs.” List three ways to change the device so the family is told, and the limit of each.
Answer
For example:
- A lower, louder note, repeating until someone presses B. Limit: the board’s small speaker is quiet; a real one may need a louder buzzer.
- Put the board where people are, such as the kitchen, with long wires to a real tank sensor. Limit: wires through the house; they must stay dry and away from mains wiring.
- A flashing display as well as sound. Limit: it is seen only by someone looking at it.
Testing each change again with the same family shows which really works.
Your team’s presentation has five parts. Name them, and say why “what testing changed” is often the most interesting part.
Answer
- The need, in the users’ words. 2. The product working, on a real task. 3. What testing changed, version 1 beside the final one. 4. Its limits, and what next. 5. Credits: sources, AI-use note, who did what.
“What testing changed” shows that the team listened to real users and learned from them. The surprises (what users did that the team never expected) are what an audience remembers, and they show the process worked.
