ETRI-Knowledge Sharing Plaform



논문 검색
구분 SCI
연도 ~ 키워드


학술지 A Feature-Oriented Method for Extracting a Product Line Asset from a Family of Legacy Applications
Cited - time in scopus Download 9 time Share share facebook twitter linkedin kakaostory
이혜선, 이강복
정보처리학회논문지 : 소프트웨어 및 데이터 공학, v.6 no.7, pp.337-352
한국정보처리학회 (KIPS)
17ZH1300, Infra-less 보행항법 기반 증강인지 커넥티드 헬멧 시스템 기술 개발, 이강복
Clone-and-own reuse is an approach to creating new software variants by copying and modifying existing software products. A family of legacy software products developed by clone-and-own reuse often requires high maintenance cost and tends to be error-prone due to patch-ups without refactoring and structural degradation. To overcome these problems, many organizations that have used clone-and-own reuse now want to migrate their legacy products to software product line (SPL) for more systematic reuse and management of software asset. However, with most of existing methods, variation points are embedded directly into design and code rather than modeled and managed separately; variation points are not created (“engineered”) systematically based on a variability model. This approach causes the following problems: it is difficult to understand the relationships between variation points, thus it is hard to maintain such code and the asset tends to become error-prone as it evolves. Also, when SPL evolves, design/code assets tend to be modified directly in an ad-hoc manner rather than engineered systematically with appropriate refactoring. To address these problems, we propose a feature-oriented method for extracting a SPL asset from a family of legacy applications. With the approach, we identify and model variation points and their relationships in a feature model separate from implementation, and then extract and manage a SPL asset from legacy applications based on the feature model. We have applied the method to a family of legacy Notepad++ products and demonstrated the feasibility of the method.
KSP 제안 키워드
Ad hoc, Clone-and-own, Feature model, Legacy applications, Legacy software, Maintenance cost, Model variation, Software Product Line, Software variants, Structural degradation, Systematic reuse