Prototyping

Prototyping does not require any pattern or workflow. One or two programmers contribute changes to a single version and show the results whenever they feel like it.

The goal of prototyping is to figure out as quickly and cheaply as possible whether a technical approach will work, or a new product or function will be useful and interesting. Prototyping provides a spark of innovation to light up a structured process. You need prototyping to try out new things, so it is a very important skill to maintain in any development organization.

Prototyping teams should be small â€" one or two people. Small teams work faster and more productively. They are also cheaper. You will lower your cost of innovation if you know when to drop into prototyping mode to try something new.

You should ask the best person available to prototype. That person will have the widest range of skills and will require the least help from others. Using the best person makes the effort smaller and faster.

Don't try to "help" with project management. Prototyping will move faster if it is an individual exploration.

You should manage by timeboxing. Prototypers should have a time limit, show their work on demand, and present it to peers.

Don't be afraid to ask two people to do prototypes of the same thing. Engineers hate to think they are wasting effort, but this type of redundancy is a cheap way to bring out innovative ideas.

Shift to a more structured methodology as soon as three or more people are involved.