시스템은 일반적으로 함께 병행하여 연구하는 개별 구현자의 팀이 구현합니다. 팀에 의한 구현이 가능하려면 다음과 같은 몇 개의 작업공간이 필요합니다.
개발 작업공간
개별 구현자에게는 책임을 맡고 있는 서브시스템과 포함된 요소를 구현하는 개발 작업공간이 있습니다. 서브시스템에서 코드를 컴파일, 링크, 실행 및 테스트하려면 시스템의 다른 파트가 필요합니다. 일반적으로 구현자는
자신의 서브시스템을 개발하는 데 전체 시스템을 필요로 하지 않습니다. 개발 작업공간에서 서브시스템을 컴파일, 링크 및 실행하는 데 필요한 서브시스템을 가지고 있는 것으로 충분합니다. 이와 같은 다른 서브시스템은 한
구현자의 개인 개발 작업공간에 실제 사본으로 상주하지 않아도 됩니다. 대신 내부적으로 릴리스된 서브시스템이 있는 공통 저장소에 상주할 수 있습니다. 구현자가 다른 서브시스템의 정확한 위치를 컴파일할 때 별도의
파일에 정의됩니다(예: make 파일).
예제:
은행 업무 시스템의 월별 계정 전화 서브시스템은 해당 요소를 컴파일, 링크 및 실행하기 위해 서브시스템이 직접 또는 간접적으로 들여오는 서브시스템을 필요로 합니다. 이 경우 10개의 서브시스템 중 여섯 개가 월별
계정 전화 서브시스템 구현자에게 필요하게 됩니다.
월별 계정 전화의 구현자를 위한 개발 작업공간
팀의 통합 작업공간
간혹 동일한 서브시스템을 동시에 개발하는 구현자들의 팀이 있을 수 있습니다. 이 경우에는 먼저 구현자들이 자신의 요소를 서브시스템에 통합해야 요소를 시스템 통합에 전달할 수 있습니다. 팀 통합은 종종 개별 팀
구성원의 연구 통합에만 사용되는 서브시스템 통합 작업공간에서 수행됩니다. 한 명의 팀 구성원이 통합자 역할을 하고 통합 작업공간과 성능에 대한 책임을 갖습니다.
시스템 레벨에서 통합자를 위한 통합 작업공간
시스템 통합자는 하나 또는 몇 개의 소프트웨어 요소나 하나 또는 몇 개의 서브시스템을 동시에 추가할 수 있는 통합 작업공간을 가지고 있으므로 통합 테스트를 받게되는 빌드가 작성됩니다.
통합 증분마다 서브시스템이 추가되는 시스템 통합자를 위한 통합 작업공간
|