Creating and maintaining a DTAP
(Development-Test-Acceptance-Production) environment helps the project teams
and IT department ensure faster and quality delivery at a lower cost. It also
reduces the risk of breaking other applications when side by side deployment of
components is facilitated in higher environments. The teams get early feedback
on the compatibility and performance of the software in Production by simulating
the deployment on a production like environment (A). All stakeholders
(including the customer) can be involved in the acceptance of the feature
before the feature is deployed in Production by following the DTAP street.
The code checked in by the team is rebuild on a daily basis
with unit test and deployed daily to a test environment (CI box). All changes
to CI and subsequent environments are deployed using wsp's and PowerShell
scripts. A fully automated CI process is implemented by a combination of XML
configuration files and PowerShell scripts. Having a process like this will
also ensure that installation on all environments including development have a
similar process.
Environments and
purpose
Development (D)
Standalone VM's with self-contained SQL server, SharePoint,
Visual Studio and related tools for developers to create and debug
solutions. Developers work on code
checked into TFS and are responsible for maintaining a passing build on every check-in.
These servers are also used as quick demo environments to end users and
building proof of concepts.
The development machines are configured by using PowerShell
scripts which makes it easy to configure SharePoint on machines by team members
who have minimal knowledge of SharePoint.
Test (T)
This environment is mainly used by IT department. Teams make
use of this environment to fine tune installations before moving up to the next
farm in the street. This environment has a stable release so testers can
perform better integration testing against a specific release build. Project
teams use this environment for demos to end users and have installations
multiple times before going to A.
Acceptance (A)
This a production like server where the IT department
performs final validation of the software before going to production. This
environment is not used for final testing, but to use as a stage to get final
approval from the PO before going to production.
Production (P)
This is the final phase of the development process. The
installations are all fully automated and have the content to serve the end
users!!!
No comments:
Post a Comment