Back in 1996, Steve McConnell's "Rapid Development" listed a few ways to develop a spec. One of them was (p324, according to <a href="https://archive.org/details/rapiddevelopment00mcco/mode/2up?q=%22user+manual+as+spec%22" rel="nofollow">https://archive.org/details/rapiddevelopment00mcco/mode/2up?...</a>):<p>> User manual as spec — Instead of writing a traditional specification, write a user manual, and require the software to conform to the manual. Since you have to write the user manual at some point anyway, you might as well write it first and eliminate the redundancy you would otherwise incur by writing both a user manual and a specification. A variation on this idea is to write an on-line help system for use as the spec.<p>The approach given here seems a combination of user-manual-as-spec and evolutionary prototyping.