서론

프로젝트 투입에 앞서 프로젝트 계획서를 읽는데 인프라 구성도와 SW 구성도를 확인하는데 낯선 용어가 많아 개발 환경 용어에 대해 정리해보려고 작성한다.

1. 로컬(Local)

각 개발 PC에 개발 환경 및 서버를 세팅한 환경을 의미(내 PC)

주의할 점은 프로젝트에 투입되는 모든 개발자가 같은 개발 환경을 사용해야한다. 서로 다른 환경에서 작업 후 머지하면 각자 로컬에서 잘 작동하던 것이 작동하지 않는 경우가 발생할 수 있음

2. 개발(Dev)

개발자들이 작업한 코드를 머지하여 테스트를 진행할 수 있는 환경

소스코드를 깃과 같은 형상관리 시스템에 커밋하면 코드는 개발 서버에 배포되고 이 환경에서 개발 테스트(단위 테스트 등)를 진행한다.

3. 프로덕션/라이브(Production/Live)

실제 서비스를 진행하는 환경

4. 테스트(QA)

QA 엔지니어가 기능 및 비기능 테스트 등을 수행하는 환경

테스트를 수행할 때 라이브 환경(실제 환경)과 유사한 환경을 만들고 테스트를 수행

5. 스테이지(Stage)

라이브 환경과 동일한 환경을 만들고 라이브 배포 전 최종적으로 비기능적인 부분들의 테스트를 수행하는 환경