Abstract
In a software product line approach, developers first develop common software architecture and components by analyzing the characteristics of all software members, and then produce each application by integrating components. The approach is considered very effective means for developing and maintaining in parallel a software product family. Main disadvantage of this approach is that it requires a big up-front investment in preparing product line. Therefore, it takes time to deliver the first version. In this paper, we present an incremental method to develop software families, which requires small additional cost for initial versions and allows an organization to move smoothly to full-scale product line. We present our method by explaining how to record and upgrade the results of variations analysis, and show the application of our method by developing a family of YBS. Our method is a low-risk approach that can be effectively applied to an organization that starts developing software systems but has to deliver the first versions quickly to the market.
소프트웨어 제품 군 개발 방법은 모든 멤버 시스템에 대한 공통점과 차이점들을 분석하여 표준 소프트웨어 구조와 컴포넌트들을 개발하여 생산라인을 갖추고, 제품 개발 조직에서 여러 버전을 병행하여 생산하고 관리하는 방법이다. 기존의 제품 군 방법은 성공하였을 경우에 경제적 이익은 크나, 초기 투자비가 매우 크다는 것과 첫 제품이 늦게 나온다는 것이 문제점으로 지적되고 있다. 이 논문에서 우리는 초기 비용을 적게 들이면서 궁극적으로 제품군 개발 방법을 조직에 적용할 수 있는 점진적 방법을 제안한다. 이 방법은 초기 버전을 개발할 때부터 변화 가능성에 관한 정보를 기록하여 차기 버전의 개발에 활용한다. 이 변화 분석의 결과는 본격 제품 군 개발로의 전환을 쉽게 해 준다. 변화 가능성을 기록하는 변경 사양서의 생성과 개선 기법을 중심으로 우리의 방법을 설명하고, YBS 시스템 개발을 예로 그 적용을 보인다. 우리가 제안한 방법은 초기에 많은 투자를 할 수 없거나 초기버전을 빨리 시장에 내 놓아야 하는 경우에 적용할 수 있는 저 위험 제품 군 개발 방법이다.