Prototyping means virtually the same thing across a wide range of industries. In our business specifically, we are referring to the act of creating a functional yet incomplete version of the software being developed. The purpose of this is to simulate and test the behaviour of software without the upfront cost of full scale development. Prototyping is a key part of the Agile development process. It is similar to and commonly associated with other concepts like incremental or iterative development, beta testing, and minimum viable product.
Prototyping allows us to hear back from our users and stakeholders in ways that are more valuable than hypothetical projections or surveys.
When prototyped software is pushed out, (whether publicly available or not) it's undergoing an immersive testing process by which it is exposed to a multitude of behaviors and scenarios. This helps us find errors fast, before they require large and costly revisions.
Prototyping also helps us, our clients, and other stakeholders experience the app as an end-user. This clarifies the strongest and weakest points in the shared understanding of a particular feature, and help us prioritize future features for the next iteration.