A software prototype can be described as a visual presentation of functionality. When our developer teams here at DCSL are working on a software project, they often use a prototype alongside a written functional specification to help make sure that the end product is exactly what you as a client expect.