Software development environments

What are the different environments in your development process or development life cycle at your company?
This is a general interview question and not very specific to ASP.NET. Usually, the interviewer asks this question to measure your understanding of the different environments and their role in software development. Some interviewers, may also ask this question, to check if you really have the work experience you are claiming or just faking it.




1. Development
2. QA
3. Staging
4. UAT (User Acceptance Testing)
5. Production

1. Development Environment - All the developers check in their current work into development environment.

2. QA (Quality Assurance) Environment - This is the environment, where testers (QA) test the application. QA cannot test on development environment, because developers are continuously checking in new code. So, if there is a bug, we don't know, if it's caused by the old or new code. In short,  if development is going on in the same environment it would be difficult to keep up with the current state. There will be lot of confusion, if the developer is trying to fix in the same area as the tester is testing. Without development and QA environment being seperate their is no way to do proper testing.

3. Staging Environment - Many organisations, try to keep their staging environment as identical as possible to the actual production environment. The primary reason for this environment is to identify any deployment related issues. Also, if you are developing a B2B (Business to Business) application, you may be interfacing with other service provider systems. Many organisations, usually setup their staging environment to interface with the service providers as well, for complete end to end testing.

4. Production Environment - The actual live environment, that we use for day to day business. 

Note: In general, the code flows from Development => QA => Staging => Production
 
Disclaimer - Terms of use - Contact Us