I'm currently reading Steve McConnells "Survival Guide" and am thinking of how I can improve our processes on requirements development. The book seems to have very strong ideas about using prototypes and I'm not sure if they are quite right for us.
As background, we are 2 fulltime staff and we usually work on projects of 4-6 man months size, while we are also doing often significant amounts of maintenance on existing clients sites. About 80% of projects have about 1/2 man month of web design involved, which is usually done by an external contractor.
We develop in-house software for owner operators, largely based on CRUD generated admin interfaces using Symfony, which we often combine with a Joomla CMS website system (WYSIWYG and configuration type entry screens)
My thoughts on requirements development are:
- If I was to build a prototype it would be fastest to actually just generate the CRUD interface in Symfony, unless it is a complex interface, then a paper storyboard would be faster. I would however see no reason not to re-use the data model for the final CRUD generation - McConnells advised strongly against this. The reason why this is fastest is that we don't have good mockup and design skills in-house and it seems likely quicker to write a quick, rough data model and produce the output by copying in past clients HTML and buttons.
- For some users it may be sufficient to showcase another project, then to just tell them what field we are going to have in which screen
- Many CMS problems could also be modelled by example of case studies, then describing fields.
- Writing a user manual seems to be the most productive way to gather requirements as it can be used at the end
The question is: are CRUD tools a good way to build prototypes or am I tricking myself? Is anyone else here using CRUD tools for prototyping? Or alternatively, how long should it take me to learn mocking up prototypes by copying existing screens/ rows/ fields/ buttons around with Gimp/ Photoshop?