Just like the question about what makes a prototype, the same can be asked about how you get from a prototype which you’re happy with through to production.

Prototype

You’ve built a prototype; it’s up and running and accessible, and you feel ready for testing and feedback.

Feedback

Next, we’re onto the feedback stage. You want to give users access to a controlled environment, guide them through it, and ensure they understand what to expect and what not to expect. Get their feedback, first impressions, and understanding of how they found the prototype, what they found easy and challenging, and how they would do things differently. You don’t have to implement all the responses, but at least getting a feel for what the majority think is essential.

Iterate

Once you’ve got some feedback, we’re in a feedback – iteration loop. Improve your prototype, get feedback, iterate, and continue until you feel like the product is getting close to being viable.

MVP

Once you’re happy with the testing and feedback, stability and design, you’re then entering the MVP phase. This might be a release; it might be just a transition. But at this point, you’re looking for more feedback from a wider pool of users to ensure that the changes you’ve made are what they should be doing over a more extensive sample set. Get the feedback, and go through a few releases to ensure it’s working as you anticipate.

Scale/Load Testing

Before we reach production, we have a few more tasks. First, we must ensure the platform performs under the expected load and beyond. There are several services out there to simulate users; we can see how the platform performs; do we need to implement more cloud services to deal with auto-scaling? Does it serve the load fine, but are you overpaying for hardware that isn’t going to get used? There’s a balancing act there.

Security Audit

Finally, before you hit production, make sure the thing is secure. Get it audited by someone who understands security audits. Ensure your cloud services follow best practices, your APIs are secure and so on. If you can outsource security for your product, I recommend it; there are many platforms out there, perhaps hosted by your cloud provider, that eliminates the need to deal with your application security in most cases.

Production

Finally, get the release into production, ensure all the automation is working. The procedures are documented and protocols are in place to deal with user questions, bug reports, feedback, support, and so on.