Describe the purpose of prototypes to demonstrate the proposed system to the client.

Teaching Note:

AIM 5 The need to effectively collaborate to gather appropriate information to resolve complex problems.

AIM 6 To develop logical and critical thinking to develop proposed systems.


Sample Question (former curriculum):

Define the term prototyping. [1 mark]

Sample Question (former curriculum):

1. Outline what is meant by prototyping. [2 marks]

JSR Notes:

Prototype: model that represents the final design and function(s), without implementing: any code, in the case of software, or full functionality, in the case of hardware.

Examples Prototypes:

Different levels of prototyping for hardware, or hardware/software prototyping:

  1. Nonfunctional model
  2. Limited functionality (so a "working prototype")
  3. Released as a public prototype

Note that for software, we cease to use the term prototype when there is a public "beta" release.


Purpose of prototypes: In general (as the assessment statement itself says), the purpose is to "demonstrate the proposed system to the client". The reasons for doing so are, generally:

(Note that these purposes apply for both software and hardware prototyping.)

You know all about prototyping software, because you did it for your client in your IA dossier process. You made a mock-up of your program using the GUI capabilities of Netbeans and showed it to your client, for exactly the reasons listed above.


IA Solution Connection and Considerations



FIRST Robotics competitions and making the prototype

the main idea of the prototype is to communicate with the end user

Jose: "Here's a preview"... "this is what I ***think*** you mean"....


What is Prototyping?drag to move


is an early sample, model, or release of a product built to test a concept or process or to act as a thing to be replicated or learned from. It is a term used in a variety of contexts, including semantics, design, electronics, and software programming. A prototypeis designed to test and trial a new design to enhance precision by system analysts and users. Prototyping serves to provide specifications for a real, working system rather than a theoretical one. In some workflow models, creating a prototype (a process sometimes called materialization) is the step between the formalization and the evaluation of an idea.

The word prototype derives from the Greek πρωτότυπον prototypon, "primitive form", neutral of πρωτότυπος prototypos, "original, primitive", from πρῶτος protos, "first" and τύπος typos, "impression".

Prototyping in Computer Programming / Computer Science

In many programming languages, a function prototype is the declaration of a subroutine or function. (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.

The term may also refer to the Prototype Javascript Framework.

295283-the_prototype_comes_of_age_figure_3.gifAdditionally, the term may refer to the prototype design pattern.

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.

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.

Extreme programming uses iterative design to gradually add one feature at a time to the initial prototype.

Continuous learning approaches within organizations or businesses may also use the concept of business or process prototypes through software models.


Data Prototyping

data prototype is a form of functional or working prototype. 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:

A set of data cleansing and transformation rules which have been seen to produce data which is all fit for purpose.

A dataset which is the result of those rules being applied to an instance of the relevant raw (source) data.download.jpeg

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 and then to insert the resultant data into a test version of the target application and trial its use.