Prototypes explore different aspects of an intended design:
A Proof-of-Principle Prototype serves to verify some key functional aspects of the intended design, but usually does not have all the functionality of the final product.
A Working Prototype represents all or nearly all of the functionality of the final product.
A Visual Prototype represents the size and appearance, but not the functionality, of the intended design. A Form Study Prototype is a preliminary type of visual prototype in which the geometric features of a design are emphasized, with less concern for color, texture, or other aspects of the final appearance.
A User Experience Prototype represents enough of the appearance and function of the product that it can be used for user research.
A Functional Prototype captures both function and appearance of the intended design, though it may be created with different techniques and even different scale from final design.
A Paper Prototype is a printed or hand-drawn representation of the user interface of a software product. Such prototypes are commonly used for early testing of a software design, and can be part of a software walkthrough to confirm design decisions before more costly levels of design effort are expended.