초록
소프트웨어 재사용을 위해 여러 가지의 접근법이 제시되어 왔으나,소프트웨어 개발자들은 이미 개발된 소프트웨어 컴포넌트를 재사용하는데 있어서 여전히 회의적이다. 여러 가지 원인이 있겠으나,기존의 재사용 접근법들이 개발자들이 재사용에 기울이는 노력을 감소시키는데 실질적인 도움을 주지는 못한 것이 가장 큰 원인 중 하나라고 볼 수 있다. 이러한 문제점 해결을 위해 본 논문에서는 RAS기반의 명세를 중심으로 컴포넌트의 다양한 측면을 활용하는 재사용 모델을 제시한다. 제시된 재사용 모델의 실용성 검증을 위해 실제적인 사례연구를 진행하였으며, 기존의 소스코드 기반의 소프트웨어 재사용 프로세스와 비교한 실험을 통해 재사용의 효율성 증가를 검증하였다. 이러한 검증을 통해,제안된 재사용 모델이 이미 개발된 기존 컴포넌트를 개발자들이 검색하고 이해하는데 소요되었던 시간을 감소시킴으로써 전반적인 재사용 소요비용 감소시키고 있음을 확인할 수 있었으며,제품라인공학과 같은 접근방법과 비교하여 일상적인 개발 공정의 지연을 초래할 수 있는 초기 투자비용을 최소화함에 따라,자발적인 개발자들의 참여를 끌어낼 수 있다는 점에서 차별성을 찾을 수 있다. 뿐만 아니라, 제안된 재사용 모델은 컴포넌트 기반 개발 방법론이나 제품라인공학과 같은 기존의 재사용 방법들과 배타적인 개념이 아니므로,필요에 따라 함께 적용하여 재사용 효과를 배가시킬 수 있을 것으로 기대한다.
Even though many approaches for reuse have been introduced, software engineers are still hesitating to reuse existing software components. Among various reasons for the phenomena, the most significant one is that existing approaches failed to give substantial benefit for the reduction of developers' effort in reusing software assets. To solve this problem, we introduce a custom reuse model utilizing diverse aspects of components specified by RAS and services oriented architecture. We also carried out a case study to demonstrate its feasibility and evaluated it by comparing it to an existing code-based software reuse process. The proposed reuse model helps in the reduction of effort in reusing existing components by decreasing the time for searching and understanding them. Compared to other approaches such as product line engineering, our approach for software reuse using MPC does not require much initial work for implementing the reuse model in different projects. It is of interest to software engineers who are worried about heavy investment, which can cause the delay in their usual development work. Furthermore, the proposed reuse model is not mutually exclusive with other approaches for software reuse such as CBSD or product line engineering. It can accelerate the benefits gained from them.