티스토리 뷰

728x90
반응형

 포스팅은 아키텍트가 되기 위한 과정을 설명합니다.


그 열두번째 시간으로 아키텍처 개발 중 개발환경 구성 과정에 대해 살펴보도록 하겠습니다.

아키텍처에 기반하여 최적의 개발환경 구성에 필요한 솔루션 및 개발 툴을 식별하고 구성하여 개발환경을 표준화하는데 목적이 있습니다.


1. 수행절차


  1. 아키텍처에 기반하여 서버 개발환경을 구성한다.
    • 서버 개발환경 구성방안을 설계한다.
    • 서버 별로 설치해야 할 소프트웨어 목록을 확인하여 소프트웨어를 설치하고 구성한다.
    • 어플리케이션 실행에 필요한 라이브러리 및 공통 모듈을 설치한다.
    • 설치 및 구성이 정상적으로 되었는지 점검한다.
  2. 아키텍처에 기반하여 개발자 로컬 PC의 개발환경을 구성한다.
    • 개발자 로컬 PC에 설치해야 할 모든 솔루션과 개발 툴을 식별한다.
    • 각 솔루션과 개발 툴에 대한 설치 및 연동에 대해 분석하여 최적의 로컬개발환경을 구성한다.
    • 개발자는 최적의 로컬개발환경 구성에 따라 솔루션 및 개발 툴을 설치하고 구성한다.
    • 개발 및 테스트에 필요한 소스나 공통 모듈을 설치한다
    • 설치 및 구성이 정상적으로 되었는지 확인한다.


2. 수행가이드


  1. 개발환경 구성 시 유지보수환경을 고려한다. 유지보수환경과 개발환경의 차이점을 분석한 후, 각 차이점으로 인하여 발생 가능한 리스크를 도출하고 각 리스크에 대한 회피계획을 수립하여 유지보수 및 개발환경의 차이로 인한 위험성을 최소화한다. 또는 솔루션개발 상황에 따라 개발환경 구성 초기에 유지보수환경(CI)을 포함하여 구성한다.
  2. 개발환경은 제품백로그의 스프린트 차수를 고려하여 해당 스프린트에 영향을 주지 않도록 구성한다.
  3. 개발 환경은 아키텍처 및 시스템공통 모듈이 상세화되고 개발됨에 따라 기존 설치 환경에 영향을 미치지 않도록 설치 방법을 제공한다.
  4. 개발 환경과 테스트 환경은 분리시키는 방안을 고려한다. 각 환경별 원활한 업무 진행을 도울 뿐 아니라 이행을 위한 환경으로도 쓰일 수 있도록 고려한다.
  5. 서버 개발환경은 목표시스템과 동일한 소프트웨어 환경을 구성한다. 개발지연 방지를 위한 개발서버의 성능 확보방안을 고려하여 설계한다. 즉 개발자 수 및 개발업무부하를 고려한 개발 서버의 성능 확보로 개발업무의 지연을 방지한다. 파티션을 한 경우에는 파티션당 적절한 수의 CPU로 구성하고, 동적으로 자원을 할당하여 시스템 부하로 인한 병목현상을 방지하는 방안을 고려한다.
  6. 개발서버의 성능저하 및 장애 사전 감지를 위한 모니터링 체계 구현을 고려한다. (예 SMS 구성)
  7. 개발환경의 효율적 백업체계를 수립한다. 개발환경의 데이터는 실시간 데이터의 무결이 필요하지 않고, 온라인 백업으로 인한 시스템 부하를 방지하기 위하여 개발환경의 백업은 오프라인으로 수행하는 방안을 고려한다.
  8. 개발환경의 보안성 강화를 위해 개발환경에 대한 논리적 접근통제 구현, 개발환경 네트워크 서비스의 사용 관리, 개발환경 데이터베이스 보안 관리를 고려하여 설계하도록 한다.

728x90
반응형