The Software Product Line Development(SPLD) can be used in analyzing the commonality and variability of product family as well as in maximizing their reuse by providing a common platform. Thus, SPLD is an efficient way to reduce cost and enhance quality of products. Traceability is another important element which has influence on the product quality. It is a mechanism to help trace the changes of intermediate artifacts generated in the process of software development through defining and figuring out the relation and precedence between them. By incorporating traceability into the conventional SPLD, therefore, it will be possible to develop an effective software to produce high quality products.
The software products are not only continually updated during the development process but also are evolved by market requirements or other external factors. Since the artifacts generated in the process of product development are also changed for these reasons, the traceability representing the relation between them must be amended accordingly. Recognizing the importance of the traceability, some researchers have tried to analyze its mechanism and to update the related models. Although there are several studies on the SPLD traceability, because of its complex characteristics concerning the domain engineering and the applied engineering they have mainly focused on the construction of traceability of a single software product in a family of products. Thus, it is necessary to conduct a systematic approach using a proper method of updating traceability for SPLD.
In this dissertation, we investigate the method of updating the platform traceability for SPLD based on the previous study on the modeling of platform traceability concerning features-to-requirements. To begin with, we analyze the causes of changing factors which affect the traceability between these artifacts. Based on the results of this analysis, we then define the updating process and suggest a process to acquire newly updated platform traceability.
소프트웨어 제품라인 개발(SPLD)은 제품군을 생산하기 위해 공통성과 가변성을 분석하고, 공통 플랫폼을 통해 재사용을 극대화함으로써 비용 절감 및 품질 향상에 효과적인 개발방법이다. 추적성은 제품 개발 시 품질에 영향을 미치는 요소로써 소프트웨어 개발 공정에서 발생하는 각 산출물 간에 연관 관계를 정의하여 소프트웨어 개발 산출물의 변화를 추적하거나 각 산출물간의 선행관계를 파악하는데 도움을 주는 메커니즘이다. 체계적인 소프트웨어 제품라인 개발은 기존의 SPLD에 추적성을 더함으로써 SPLD에서 체계적인 공정과 고품질의 제품 개발이 가능하도록 한다.
소프트웨어 제품들은 개발 공정 동안 지속적으로 변경될 뿐 아니라, 시장의 요구 사항이나 다른 외부적 요인에 의해서 지속적으로 진화한다. 따라서 제품 개발 과정에서의 산출물들도 이에 따라 변화하므로, 이들 산출물간의 연관관계를 표현하는 추적성 또한 이에 맞게 변경된다. 추적성은 소프트웨어 제품의 품질에 영향을 미치는 요소인 만큼 기존의 연구들이 추적성과 그에 대한 변경 방법들을 제시하였다.
SPLD에서도 추적성에 대한 연구들이 있지만 주로 추적성 구축에 집중하거나 도메인 공학과 응용 공학으로 나뉘는 SPLD의 복잡한 특성으로 인해 그 변경 방법 대부분은 단일 소프트웨어 제품 개발에 적합한 수준이다. 따라서 SPLD에 적합한 체계적인 추적성 변경 연구가 이루어져야 한다.
본 논문에서는 SPLD에서 피처-요구사항간의 플랫폼 추적성 모델링 연구를 기반으로 추적성 모델의 갱신 방법에 대한 연구를 진행한다. 이를 위해 먼저 피처와 요구사항 간의 플랫폼 추적성에 어떤 요인들이 변경을 일으키는 원인이 되는지 분석한다. 그리고 분석 결과를 바탕으로 플랫폼 추적성 갱신 프로세스를 정의하고 새로이 갱신된 플랫폼 추적성을 획득하는 방법을 제안한다.