Creating Database Environments
Different types of database environments are needed to allow for a smooth transition to e-Business as well as to apply changes to the system with minimal service interruption after it is implemented. An iDBA should strive for the following environments, depending on the exact scenario, although doing so might not always be practical:
Development environmentThe main purpose of this environment is to allow for the development of custom code changes and to perform unit testing. Initial integration testing can be done in this environment as well, and any major data changes are first tested here.
QA environmentThis environment is used for the majority of the testing and quality assurance of the product. Code, schema, and HTML patches are evaluated in this environment and either approved or rolled back.
Primary staging environmentOnce approved in the QA environment, any patch is applied in this environment and tested in a limited environment. Some types of testing can be done in this environment, such as scalability, performance, and installation. This environment should be very similar to the production environment in terms of software, hardware, and architecture used.
Fast staging environmentIn this controlled environment, minor and quick changes can be tested before they are pushed into the production environment.
Production environmentThis environment is accessible and available to the general public. An iDBA should promote the idea of not making changes directly to a production environment.
Often companies consider the use of an application service provider (ASP) for purposes of outsourcing. By using ASPs, you can potentially save lots of time, money, and effort because you can concentrate on running the business instead of worrying about managing the infrastructure and software development problems or running an IT department. Just like any other form of outsourcing, however, this solution does have its problems. When using an ASP, you will have less control over the data and won't have as much say in the manner in which the system is designed and operated. In addition, you will also have to manage the relationship with the ASP vendor.