It is known 4 main ways of rolling out any software testing project:
Pilot
The actual production system is installed at a single or limited quantity of users. Pilot generally means that the product is rolled out to limited users for real work (QaTestLab make a special offer for companies aimed at long-term cooperation: 20 hours of free trial period).
Staged Execution
In this execution the product is rolled out to all users in incrementally. That means every following rollout has certain appended functionality. And as soon as new functionality appears, new installations occur and the client tests them successively. The advantage of this strategy is that clients can begin using the functionality and give useful feedback successively.
Gradual Execution
In this execution the entire product is shipped to the limited quantity of users or all users at the client end. In this case the developers get instant feedback from the recipients which permit them to modify the product before it is accessible.
But it is also the downside of this strategy. It is that developers and software testers carry on more than one version at one time.
Counterpart Execution
In this case the existing application is run side by side with the new application. In the situation if there are any issues with the new application we move back to the old one. The only trouble with this type of strategy is that additional software, hardware and resources are needed.