PROTOTYPE: Is a a working representation of a final artifact. They are concrete representations of a design.
There are essentially two types of prototypes: low fidelity prototypes and high fidelity prototypes
LOW-FIDELITY PROTOTYPES: is a quick and easy way to translate high-level design concepts into tangible and testable artifacts. The first and most important role of lo-fi prototypes is to check and test functionality rather than the visual appearance of the product.
HIGH-FIDELITY PROTOTYPES: appear and function as similar as possible to the actual product that will ship. Teams usually create high-fidelity prototypes when they have a solid understanding of what they are going to build and they need to either test it with real users or get final-design approval from stakeholders.