Prototyping is an essential part of the design process that involves building rough, rapid, and disposable versions of a product or service to validate ideas, generate new ideas, and gain a deeper understanding of user needs through feedback. Effective prototypes come in many forms, from physical models and storyboards to role playing and diagrams, and should be used to answer specific questions about desirability, usefulness, usability, viability or feasibility. Gathering feedback from a variety of stakeholders helps uncover blind spots and refine prototypes.