Whether you’re having a prototype or a large product developed for your startup by a freelancer, a team, or us, we think you should expect:
Every project should start and finish with it on both sides. Period.
A delivery checklist
Everything you’re getting and what each deliverable means to you.
Development setup instructions
Being able to tinker with your product and make small changes can be informative and is often a financial necessity necessary for boot-strappers. They also save money and mistakes when it’s time to build your startup’s own development team.
Automated tests as documentation
Automated tests are great. Readable test specifications are better. These not only demonstrate your product works, they allow you to make minor changes without fear of bringing it crashing down.
Almost every web and mobile app stack has built-in or de facto approaches to separate content from view and presentation. Even if you only plan to have your app in one language, these allow you to change all the text and images users' see without going near the programming.
Cold start scripts are usually a combination of instructions and scripts that will take target platforms fresh from install and turn out a complete production system. Some folks refer to these as disaster recovery scripts, but well written ones have much more value.
Environments around software are always changing, and settings developers thought were fixed once may—months or years later—become vital to change without warning. Having the configuration documented inline is essential to keeping those times from becoming crises.