How do I scaffold students toward building meaningful projects? Teaching 8th graders using App Inventor through Project Lead the Way's ICS 1 curriculum. 

I am interested in moving the students towards a deeper understanding of the power of CS to improve people lives. We are a high poverty school and I think it would be good for our program for students to make things that were useful to their classmates and community. PLTW has a basic framework for this that involves asking friends and family about needs and then designing based on these user stories. This past year, however, I ended up with 6 different apps that fart when you tap a picture (not completely accurate, but basically). 

Any suggestions for developing a sense of responsibility and more interesting, powerful student designed projects?
For context, I teach high school students as part of a 4-year high school computer science major.  My students do, during their 4th year, a full-year project for a client who has a need.  (The clients do not pay for this, they provide a client experience for our budding developers.)  At the end, we have a big event with presentations, outside judges, and a lucheon. I've been playing with the formula for this class for a number of years (and I am still tinkering!), but here are a few takeaways I can share with you that would apply to younger kids and shorter projects:


Pose a challenge to the 8th graders to address a particular world problem.  (You should choose the problem).  It could be global hunger, or too much partisanship, or not enough kids with access to education.  Tell them that their application should address this problem.  Give them three research resources that they can use to explore the issue further.
Make other projects possible only if they write a few paragraphs about why the problem they wish to address is important, and how they intend to address the problem.  They must include a reference to 3 sources about the problem that they want to address.
Get outsiders to come in for a culminating event and "judge" the final projects.  (The outsiders can be other teachers from your building, your administrators, or true outsiders.)  Let the kids prepare a short presentation about their project, science-fair style, and let the judges walk around with a rubric and talk to the students.  Having people from the outside world come in is a powerful motivator (and will prevent a lot of the fart-joke responses).  Similarly, contact your local newspaper and see if they can send someone in for a small write-up.
Give a certificate to the winner, or even a small trophy.  
As they work, have each student (or group) create small milestones that they must meet.  These are the core of the evaluation process.  New milestones are created on the same day as the old ones are graded.  They must be very specific, and you must agree to them.


In the following year, you can choose a new problem to address, and you will have a few example projects from the first year.  By choosing only one or two very strong projects (and saving the newspaper writeup), you can really set the tone the second year.  This project will now be a big deal, and kids will take it very seriously!