제품계열 방법론
제품계열 방법론은 공통 자산을 재사용해 유사한 소프트웨어 제품군을 체계적으로 생산하는 개발 방법론이다. 비슷한 제품을 매번 처음부터 만들지 않고, 공통 부품과 설계를 먼저 만든 뒤 다른 부분만 바꿔 끼운다. 시험에서 핵심 키워드는 공통성과 가변성, 그리고 도메인 공학…
주요 장면
대본
정의
제품계열 방법론은 공통 자산을 재사용해 유사한 소프트웨어 제품군을 체계적으로 생산하는 개발 방법론이다.
비슷한 제품을 매번 처음부터 만들지 않고, 공통 부품과 설계를 먼저 만든 뒤 다른 부분만 바꿔 끼운다.
시험에서 핵심 키워드는 공통성과 가변성, 그리고 도메인 공학과 애플리케이션 공학이다.
구조와 원리
제품계열은 도메인 공학과 애플리케이션 공학의 두 축으로 움직인다.
도메인 공학은 공통 자산을 만들고, 애플리케이션 공학은 가변점을 바인딩해 개별 제품을 만든다.
공통 자산은 저장소에 쌓여 재사용되고, 가변점은 제품을 만들 때 변종 하나를 고른다.
계산 예제
가상의 예로, 공통 자산 재사용 비율이 80%인 제품군에서 신규 제품 1종을 만든다고 하자.
전체 개발 공수가 1,000인일이면 재사용으로 절감되는 공수는 전체에 재사용 비율을 곱한 800인일이다.
따라서 신규 개발 공수는 200인일이다. 다만 실제 효과는 초기 코어자산 투자 공수까지 빼고 판단해야 한다.
비교
사전 계획형은 도메인 공학에서 가변점을 미리 정해 장기 재사용 효과가 크다.
점진 확장형은 초기 비용이 낮지만 자산 구조가 불안정해질 수 있다.
코어자산 개발은 제품 개발보다 먼저 수행하는 것이 원칙이다.
관리 활동이 빠지면 자산이 제품마다 달라져 재사용이 무너진다.
바인딩과 정리
가변점을 어느 시점에 바인딩할지는 컴파일, 링크, 런타임 중에서 고른다.
바인딩이 늦을수록 유연하지만 실행 부담이 커진다. 이 상충을 답안에 함께 쓴다.
제품계열은 공통 자산을 계획적으로 재사용해 비용과 출시 기간을 줄이는 방법이다.
초기 코어자산 투자가 크다는 점과 스코프 선정 실패의 위험도 빠뜨리지 않는다.