개념: 소프트웨어 통합
"통합" 용어는 개별 소프트웨어 컴포넌트가
전체로 결합되는 소프트웨어 개발 활동을 말합니다.
통합은 구현의 여러 레벨 및 단계에서 수행됩니다.
- 서브시스템을 시스템 통합자에게 릴리즈하기 전에
동일한 구현 서브시스템에서 작업하는 팀의 작업을 통합
- 서브시스템을 전체 시스템으로 통합
Rational Unified Process의 통합 방법은
소프트웨어를 점진적으로 통합하는 것입니다.
점진적 통합은 코드가 작은 조각으로 작성되고 테스트된 후
동시에 하나의 조각을 추가하여 작업 전체로 결합되는 것을 의미합니다.
점진적 통합과 대조되는 방법은 단계적 통합입니다.
단계적 통합은 여러 컴포넌트(새롭거나 변경된 컴포넌트)를
통합하는 데 의존합니다.
단계적 통합의 주요 약점은 이 통합이 여러 변수를 도입하고
오류를 찾기 어렵다는 것입니다.
이것은 우선적으로 오류가 새 컴포넌트 중 하나,
시스템의 핵심에 있는 새 컴포넌트 간의 상호 작용 또는
새 컴포넌트 간의 상호 작용에 있을 수 있다는
사실 때문입니다.
점진적 통합의 장점은 다음과 같습니다.
- 결함을 찾기 쉽습니다. 점진적 통합 중에 새로운 문제점이 발생할 때
새롭거나 변경된 컴포넌트 또는 이전에 통합된 컴포넌트와의 상호 작용에서
명백하게 결함을 찾을 수 있습니다.
점진적 통합은 결함이 한 번에 하나씩 발견될 수 있게 하여
결함 식별을 더 용이하게 합니다.
- 컴포넌트가 보다 충분히 테스트됩니다. 컴포넌트가 개발되고 테스트된 후
통합됩니다. 이것은 통합이 한 단계에서 수행되는 경우보다 자주
컴포넌트가 사용됨을 의미합니다.
- 무엇인가가 빠르게 실행됩니다.
개발자는 모든 것을 끝까지 기다리는 대신에
작업에서 빠른 결과를 보게 되어
사기가 오르게 됩니다.
또한 피드백을 가능한 빠르게 얻을 수 있게 합니다.
통합이 각 반복 및 모든 반복 내에서
최소한 한 번 발생함을 아는 것이 중요합니다.
반복 계획은 설계할 유스 케이스 및 구현할 유스 케이스를 정의합니다.
통합 전략은 클래스가 구현되고 결합되는 순서를 판별하는 데 중점을 둡니다.
|