
Iterative Development and User Feedback
Write and test code for the community app, incorporating feedback from potential users. Reflect on how user-centered design improves the social utility of technology.
TL;DR:Iterative development is the heart of modern software engineering. In this topic, students write their code, test it, and, most importantly, use feedback to improve it. This cycle of 'build-measure-learn' aligns with NCCA Learning Outcomes 3.3 and 3.4, focusing on testing and reflection.
About This Topic
Iterative development is the heart of modern software engineering. In this topic, students write their code, test it, and, most importantly, use feedback to improve it. This cycle of 'build-measure-learn' aligns with NCCA Learning Outcomes 3.3 and 3.4, focusing on testing and reflection.
For 3rd Year students, this is often the most challenging phase because it requires them to be comfortable with 'failure' as a path to improvement. By treating feedback as a gift rather than a criticism, students develop a growth mindset. This topic is best supported by structured peer-testing sessions where students observe others using their software and take notes on where they get stuck.
Key Questions
- Why is user feedback critical in software development?
- How do we iterate on a design to better serve the community?
- What are the common ethical pitfalls in app development?
Watch Out for These Misconceptions
Common MisconceptionChanging my code based on feedback means my first version was a failure.
What to Teach Instead
Reframe iteration as the professional standard. Show examples of how famous apps (like Instagram or YouTube) looked in their first versions to show that great software is grown, not born.
Common MisconceptionI can just ask my friends for feedback and they will tell me the truth.
What to Teach Instead
Explain 'confirmation bias.' Use structured feedback forms that ask specific, objective questions to help students get more honest and useful data from their testers.
Active Learning Ideas
See all activities→Simulation Game
The Silent User Test
One student acts as the 'user' and tries to complete a task in their partner's app. The 'developer' must watch in total silence, taking notes on every mistake or moment of confusion the user experiences.
Think-Pair-Share
Station Rotations: The Debugging Clinic
Set up stations for different types of testing: one for UI/UX, one for logic errors, and one for accessibility. Students move their projects through the stations to get specialized feedback from 'expert' peers.
Think-Pair-Share
The Pivot
After receiving feedback, students discuss with a partner one thing they will change in their code and one thing they will keep. They must justify why the change will improve the app's social utility.
Frequently Asked Questions
Why is user feedback so important in coding?
What does 'iterative development' mean?
How can active learning help students with iterative development?
How do I handle negative feedback on my project?
More in Developing Software for Societal Impact
Prototyping an App for the Community
Begin the development of a software project designed to address a specific social need. Focus on user interface design, historical context of the problem, and accessibility for diverse populations.
8 methodologies
Finalise Your CBA
Review and finalise your Classroom-Based Assessment (CBA) portfolio before the final submission deadline.
8 methodologies