Developers who use prototyping still go through the system development life cycle discussed in Chapter 18, but prototyping allows them to condense and speed up parts of the analysis and the design phases. For example, prototyping does a good job of capturing user needs and helps developers and users make many of the conceptual and physical design decisions. As a result, current practice leans heavily toward prototyping so that projects can be completed as quickly as possible before planned system become obsolete.