One of the best practices in Software Engineering is to perform short iterations to give to the clients functional software that can be released at any time so they can give us adequate feedback about the tasks and requirements that had been completed, in this agile development environment we create a continuous improvement cycle. Nothing is prescript because it depends on the business but I found this brief article at perforce.com about good habits to reach a continuous value delivery state I recommend you to read it as can be useful to get another perspective. These five habits are:
Think beyond the code: The service to the client is not restricted to code, to create a good user experience we need to think a little more (Configuration, architecture, documentation, designs, and interfaces)
Automate: Vital part to continuous value delivery, giving testing, build and deploy faster, also giving the developers fast feedback about their changes. It let us fix the problem before it get to the customer.
Make everything visible as your team needs it: “Improved visibility leads to increase quality as well”. If we can see the full process is easier to reduce any potential issue.
Track every change: As we told in last point, if we can trace every change we have control of the software. Its one of the best practices.
Put all in one place: Work in one repository, “A “Single source of truth” should be your truth.”
You can found the complete article here: http://www.perforce.com/successful-continuous-delivery