A prototype is an early sample, model, or release of a product built to test a concept or process.[1] It is a term used in a variety of contexts, including semantics, design, electronics, and software programming. A prototype is generally used to evaluate a new design to enhance precision by system analysts and users.[2] [3] Prototyping serves to provide specifications for a real, working system rather than a theoretical one.[4] Physical prototyping has a long history, and paper prototyping and virtual prototyping now extensively complement it. In some design workflow models, creating a prototype (a process sometimes called materialization) is the step between the formalization and the evaluation of an idea.[5]
A prototype can also mean a typical example of something such as in the use of the derivation 'prototypical
The word prototype derives from the Greek Greek, Modern (1453-);: πρωτότυπον|italic=no, "primitive form", neutral of Greek, Modern (1453-);: πρωτότυπος|italic=no, "original, primitive", from πρῶτος protos, "first" and τύπος typos, "impression" (originally in the sense of a mark left by a blow, then by a stamp struck by a die (note "typewriter"); by implication a scar or mark; by analogy a shape i.e. a statue, (figuratively) style, or resemblance; a model for imitation or illustrative example—note "typical").[7] [8]
Prototypes explore different aspects of an intended design:[9]
In general, the creation of prototypes will differ from creation of the final product in some fundamental ways:
Engineers and prototype specialists attempt to minimize the impact of these differences on the intended role for the prototype. For example, if a visual prototype is not able to use the same materials as the final product, they will attempt to substitute materials with properties that closely simulate the intended final materials.
Engineers and prototyping specialists seek to understand the limitations of prototypes to exactly simulate the characteristics of their intended design.
Prototypes represent some compromise from the final production design. This is due to the skill and choices of the designer(s), and the inevitable inherent limitations of a prototype. Due to differences in materials, processes and design fidelity, it is possible that a prototype may fail to perform acceptably although the production design may have been sound. Conversely, prototypes may perform acceptably but the production design and outcome may prove unsuccessful.
In general, it can be expected that individual prototype costs will be substantially greater than the final production costs due to inefficiencies in materials and processes. Prototypes are also used to revise the design for the purposes of reducing costs through optimization and refinement.[17]
It is possible to use prototype testing to reduce the risk that a design may not perform as intended, however prototypes generally cannot eliminate all risk.
Building the full design is often expensive and can be time-consuming, especially when repeated several times—building the full design, figuring out what the problems are and how to solve them, then building another full design. As an alternative, rapid prototyping or rapid application development techniques are used for the initial prototypes, which implement part, but not all, of the complete design. This allows designers and manufacturers to rapidly and inexpensively test the parts of the design that are most likely to have problems, solve those problems, and then build the full design.
In technology research, a technology demonstrator is a prototype serving as proof-of-concept and demonstration model for a new technology or future product, proving its viability and illustrating conceivable applications.
In large development projects, a testbed is a platform and prototype development environment for rigorous experimentation and testing of new technologies, components, scientific theories and computational tools.[18]
With recent advances in computer modeling it is becoming practical to eliminate the creation of a physical prototype (except possibly at greatly reduced scales for promotional purposes), instead modeling all aspects of the final product as a computer model. An example of such a development can be seen in Boeing 787 Dreamliner, in which the first full sized physical realization is made on the series production line. Computer modeling is now being extensively used in automotive design, both for form (in the styling and aerodynamics of the vehicle) and in function—especially for improving vehicle crashworthiness and in weight reduction to improve mileage.
The most common use of the word prototype is a functional, although experimental, version of a non-military machine (e.g., automobiles, domestic appliances, consumer electronics) whose designers would like to have built by mass production means, as opposed to a mockup, which is an inert representation of a machine's appearance, often made of some non-durable substance.
An electronics designer often builds the first prototype from breadboard or stripboard or perfboard, typically using "DIP" packages.
However, more and more often the first functional prototype is built on a "prototype PCB" almost identical to the production PCB, as PCB manufacturing prices fall and as many components are not available in DIP packages, but only available in SMT packages optimized for placing on a PCB.
Builders of military machines and aviation prefer the terms "experimental" and "service test".[19]
See main article: Software prototyping and Software release cycle.
Prototype software is often referred to as alpha grade, meaning it is the first version to run. Often only a few functions are implemented, the primary focus of the alpha is to have a functional base code on to which features may be added. Once alpha grade software has most of the required features integrated into it, it becomes beta software for testing of the entire software and to adjust the program to respond correctly during situations unforeseen during development.[20]
Often the end users may not be able to provide a complete set of application objectives, detailed input, processing, or output requirements in the initial stage. After the user evaluation, another prototype will be built based on feedback from users, and again the cycle returns to customer evaluation. The cycle starts by listening to the user, followed by building or revising a mock-up, and letting the user test the mock-up, then back. There is now a new generation of tools called Application Simulation Software which help quickly simulate application before their development.[21]
Extreme programming uses iterative design to gradually add one feature at a time to the initial prototype.[22]
In many programming languages, a function prototype is the declaration of a subroutine or function (and should not be confused with software prototyping). This term is rather C/C++-specific; other terms for this notion are signature, type and interface. In prototype-based programming (a form of object-oriented programming), new objects are produced by cloning existing objects, which are called prototypes.[23]
The term may also refer to the Prototype Javascript Framework.
Additionally, the term may refer to the prototype design pattern.
Continuous learning approaches within organizations or businesses may also use the concept of business or process prototypes through software models.
The concept of prototypicality is used to describe how much a website deviates from the expected norm, and leads to a lowering of user preference for that site's design.[24]
A data prototype is a form of functional or working prototype.[25] The justification for its creation is usually a data migration, data integration or application implementation project and the raw materials used as input are an instance of all the relevant data which exists at the start of the project.
The objectives of data prototyping are to produce:
To achieve this, a data architect uses a graphical interface to interactively develop and execute transformation and cleansing rules using raw data. The resultant data is then evaluated and the rules refined. Beyond the obvious visual checking of the data on-screen by the data architect, the usual evaluation and validation approaches are to use Data profiling software[26] and then to insert the resultant data into a test version of the target application and trial its use.
When developing software or digital tools that humans interact with, a prototype is an artifact that is used to ask and answer a design question. Prototypes provide the means for examining design problems and evaluating solutions.
HCI practitioners can employ several different types of prototypes:
In the field of scale modeling (which includes model railroading, vehicle modeling, airplane modeling, military modeling, etc.), a prototype is the real-world basis or source for a scale model—such as the real EMD GP38-2 locomotive—which is the prototype of Athearn's (among other manufacturers) locomotive model. Technically, any non-living object can serve as a prototype for a model, including structures, equipment, and appliances, and so on, but generally prototypes have come to mean full-size real-world vehicles including automobiles (the prototype 1957 Chevy has spawned many models), military equipment (such as M4 Shermans, a favorite among US Military modelers), railroad equipment, motor trucks, motorcycles, and space-ships (real-world such as Apollo/Saturn Vs, or the ISS).As of 2014, basic rapid prototype machines (such as 3D printers) cost about $2,000, but larger and more precise machines can cost as much as $500,000.[30]
In architecture, prototyping refers to either architectural model making (as form of scale modelling) or as part of aesthetic or material experimentation, such as the Forty Wall House open source material prototyping centre in Australia.[31] [32]
Architects prototype to test ideas structurally, aesthetically and technically. Whether the prototype works or not is not the primary focus: architectural prototyping is the revelatory process through which the architect gains insight.[33]
In the science and practice of metrology, a prototype is a human-made object that is used as the standard of measurement of some physical quantity to base all measurement of that physical quantity against. Sometimes this standard object is called an artifact. In the International System of Units (SI), there remains no prototype standard since May 20, 2019. Before that date, the last prototype used was the international prototype of the kilogram, a solid platinum-iridium cylinder kept at the Bureau International des Poids et Mesures (International Bureau of Weights and Measures) in Sèvres France (a suburb of Paris) that by definition was the mass of exactly one kilogram. Copies of this prototype are fashioned and issued to many nations to represent the national standard of the kilogram and are periodically compared to the Paris prototype. Now the kilogram is redefined in such a way that the Planck constant is prescribed a value of exactly
Until 1960, the meter was defined by a platinum-iridium prototype bar with two marks on it (that were, by definition, spaced apart by one meter), the international prototype of the metre, and in 1983 the meter was redefined to be the distance in free space covered by light in 1/299,792,458 of a second (thus defining the speed of light to be 299,792,458 meters per second).
In many sciences, from pathology to taxonomy, prototype refers to a disease, species, etc. which sets a good example for the whole category. In biology, prototype is the ancestral or primitive form of a species or other group; an archetype.[34] For example, the Senegal bichir is regarded as the prototypes of its genus, Polypterus.