In many cases system requirements are produced in lengthy specification documents. In some cases, having this detail is desirable but for others it provides a document that is un-engaging and tedious to read.
If you sit in the latter category, then using a ‘rapid prototype’ can be far better and provides a way to create an interactive visual model of the system that users can engage with.
What is rapid prototyping?
Rapid prototyping is a process whereby wireframes or simple mocks-ups of the system are used as the base layer and interactive elements can be added that allow the user to mimic how they may use the real system. Interactive elements would typically include being able to click on drop down lists and view the options it holds or, navigating between pages.
Why consider rapid prototyping?
By using a prototype model users are able to try and test the functionality before it is built into the live system. This provides a way of identifying any potential errors in the requirements and even establishing new requirements that hadn’t been previously considered. Creating a version of the system in this way is also quick to produce and easy to change if something isn’t correct and requires re-testing – making it a very cost effective way of both capturing and validating requirements.
In additional rapid prototyping provides an opportunity to get system users engaged and on board at an early stage of the development project. There are many tools that can help to produce rapid prototypes, the best of which allow users to attach feedback directly to the prototype, so there’s no need to send emails backwards and forwards.
This agile approach can leave many nervous of spiralling costs and a process that will leave them still trying to firm up requirements at the end but, managed right this process should actually result in quite the opposite and save expenditure in the long term.
What are the Pros & Cons of rapid prototyping?
There are some potential downsides of rapid prototyping and it won’t be the right choice for everyone. Ultimately it provides a simple representation of the actual system and therefore is unlikely to include every aspect of the finished software. It is however a great way to engage users and capture requirements and start the building blocks for your final system. Here are a few Pros and Cons:
- Visual and interactive
- They are a great way to engage users and gain feedback
- Quick to produce
- Provides a solid foundation to build on
- Great way to refine and prioritise requirements
- Won’t look like the finished screens – it’s a representation, not the real thing
- May need additional documentation for more complicated requirements
- Risk that the prototype becomes an end in itself rather than a means to having working software