When

MW 9:30am - 11:00am

Where

Tech LR 5

Who

Chris Riesbeck

Resources

Being an Agile Client

Agile development is all about iteration. Ideas evolve. You start with a clear specific idea. Your development team builds a key piece. You test it. You revise and develop another slice. Repeat. You and your developers have five weeks to get from vision to a working prototype, together.

As a CS 394 client, you will be coached on how to

What Do I Need to Start?

Less than you think, but probably more than you have. You don't need detailed multipage storyboards and screen designs. You don't need months of contextual inquiry or market analysis. It's fine to have such things, but not required.

What you do need to have is a very clear specific example that demonstrates the payoff your envisoned app will provide.

The prerequisite for any project in CS 394 is a four-panel storyboard. The four-panel storyboard is a concise at-a-glance concrete example of your app providing a payoff to a user.

The heart of the storyboard is Panel 3. That is where you demonstrate a concrete example of your vision in action. With a clear Panel 3, the developers will know what to implement first. With a clear Panel 3, you will know what you need to user test first.

How Does the Project Work?

You and your developers have five weeks to get from 4-panel storyboard to working prototype. The heart of the process is the Build-Measure-Learn loop.

You meet twice a week with your developers:

These 5 weeks are the last half of the Northwestern quarter, i.e., the month of May plus the first week of June.

You test your app, as it evolves week by week, collecting and sharing insights with the developers as quickly as possible.

What Gets Built?

Starting in week one, and continuing for the next four weeks, the developer team will be delivering to you working prototypes. These are not a mockups of screens, but working product, albeit using the simplest technologies.

The goal is user-testable deliverables each week. No week should pass with just back-end infrastructure development.

To get this kind of rapid turnaround, your team will be building either a mobile-friendly web app or a React Native app. They will not be building pure native apps. Mobile web and React Native have several advantages for rapid testing of app ideas:

Requirements

You must be able to meet with your team face to face each week for the 5-week period. Remote meeting via Skype or Hangout is possible but far inferior to being in the same room, with tables and whiteboard.

The team must be able to describe and discuss the project with me and the rest of the class. By default, their code is kept in a public github repository, but you can set up a private repository at little cost, as long as I'm given access.

The app must be compatible with the limitations of mobile hybrid technology.

Interested? Questions? Contact me!

Readings

Being an successful agile client does not require knowing about programming or technology. It does some thought, a lot of attention, and avoiding some common pitfalls. Fortunately, a handful of core principles and simple practices have been found to be very effective. Here are some great easy to read resources.

If you're interested, here's what your developers are reading.