Friday, January 28, 2005

Prototyping Methodology

Prototyping is one modern method of development. The first Apple computer was developed in the manner in 1976/77 by Steve Wozniak in Steve Job's garage with off the self parts in a wooden case.

Compared to SDLC:
This method is less structured, planned organized than the SDLC (Software Development Life Cycle). It is often off the hip last min assembly, testing or development. It is more or less for a smaller project often done as a proof of concept to test ideas, processes and systems before committing vast about of resources to a larger project.

A recent advancement in a fairly med size project in prototyping and testing unproven methods and ideas would be SpaceShipOne http://www.xprize.com/ with it's historical flight into space. It tested light weight materials, new engine designs, new methods of a control re-entry without heat shielding, new wind breaking systems, new computer systems and how it performs when the computers systems fails. Lastly it proved that space flight is not limited to government dollars and budgets. It's flight is in comparison to the first Apple computer as prototyping and leading to new production systems changing the world in the process.

Advantages:
It allows for more creativity and possibly new world changing solutions could be developed, where they might be hindered on the SDLC's control process.

Disadvantages:
In prototyping scope creep, cost over runs, miss management, and lack of focus are more likely to occur in this type of project. SpaceShipOne is a good example. It required Paul Allan and Virgin Records additional funding to complete the project. The total cost of the mission was 20 million dollars and the X-Prize was only 10 million dollars. While they did go over budget, I should point out it was one of the cheapest space flights in history, using less than 10% of the budget of a simple satellite launch that is not a manned flight.

While I am sure that SpaceShipOne had some type of development plan, prototyping can include a whole host of unknown variables that can not be determined until testing has been completed.

Prototyping is not a best practice method for getting your project completed, but it does have a place in developing something new.

No comments: