RISS 학술연구정보서비스

검색

인기 검색어

    다국어 입력

    http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.

    변환된 중국어를 복사하여 사용하시면 됩니다.

    예시)
    • 中文 을 입력하시려면 zhongwen을 입력하시고 space를누르시면됩니다.
    • 北京 을 입력하시려면 beijing을 입력하시고 space를 누르시면 됩니다.
    닫기
    KCI등재

    추출식 소프트웨어 제품라인 공학을 위한 자산 컴포넌트 탐색 및 재공학 방법 = Asset Component Identification and Re-engineering Method for an Extractive Software Product Line Engineering

    한글로보기

    https://www.riss.kr/link?id=A60259023

    • 0

      상세조회
    • 0

      다운로드
    서지정보 열기
    • 내보내기
    • 내책장담기
    • 공유하기
    • 오류접수

    부가정보

    국문 초록 (Abstract) kakao i 다국어 번역

    소프트웨어 제품라인 공학은 동일한 도메인에 포함된 제품들의 공통점과 차이점을 분석하고 이를 고려하여 재사용 가능한 자산을 개발하여, 계획된 제품들에 자산을 재사용함으로써 소프트웨어의 품질과 생산성을 향상시키는 방법이다. 제품라인의 자산을 개발하는 방법 중 추출식 접근법은 기존에 주로 연구되던 선행식 접근법과 달리, 레거시 시스템으로부터 재사용 가능한 자산을 확보함으로써 자산 개발에 필요한 초기 비용을 줄이고 시간을 단축시킬 수 있는 접근법으로 제안되었다. 추출식 접근법을 성공적으로 적용하기 위해서는 레거시 시스템을 분석하고 그로부터 자산을 개발함으로써 자산 개발 시간을 줄여야 한다. 하지만 제품라인을 고려하지 않은 레거시 시스템은 설계자가 자신의 고려사항에 따라 하나의 컴포넌트에 여러 기능을 혼합하여 구현한 시스템이기 때문에 설계 및 코드를 이해하고 재사용 가능한 자산을 명확히 분리하여 확보하는데 어려움이 존재한다.
    이를 해결하기 위해서 본 논문에서는 추출식 접근법을 적용하여 제품라인 자산을 확보함에 있어서, 레거시 시스템에 대한 이해를 높이고, 자산 후보의 파악 및 분리를 돕는 방법을 소개한다. 본 논문에서 제안하는 방법은 다음의 두 가지 프로세스로 구성되어 있다: 1) 시스템 구조의 이해를 높이기 위하여, 첫 번째 프로세스는 컴포넌트 타입을 정의하고, 레거시 시스템에서 정의된 컴포넌트 타입의 컴포넌트를 자동으로 탐색하는 단계로 구성된다. 탐색된 레거시 컴포넌트를 통하여 레거시 시스템에서 각 컴포넌트가 갖는 역할을 이해할 수 있게 된다. 2) 재사용 가능한 자산을 레거시 시스템으로부터 분리하기 위하여, 두 번째 프로세스에서는 컴포넌트 타입을 기반으로 응집도가 높은 컴포넌트를 분석하여 분리해내는 재공학 방법을 제안한다. 제안한 방법을 검증하기 위하여 하나의 구체적인 컴포넌트 타입의 탐색 방법 및 재공학 방법을 수립하고, 이를 지원하는 도구를 개발하여 실제 사례에 적용해보았다.
    번역하기

    소프트웨어 제품라인 공학은 동일한 도메인에 포함된 제품들의 공통점과 차이점을 분석하고 이를 고려하여 재사용 가능한 자산을 개발하여, 계획된 제품들에 자산을 재사용함으로써 소프...

    소프트웨어 제품라인 공학은 동일한 도메인에 포함된 제품들의 공통점과 차이점을 분석하고 이를 고려하여 재사용 가능한 자산을 개발하여, 계획된 제품들에 자산을 재사용함으로써 소프트웨어의 품질과 생산성을 향상시키는 방법이다. 제품라인의 자산을 개발하는 방법 중 추출식 접근법은 기존에 주로 연구되던 선행식 접근법과 달리, 레거시 시스템으로부터 재사용 가능한 자산을 확보함으로써 자산 개발에 필요한 초기 비용을 줄이고 시간을 단축시킬 수 있는 접근법으로 제안되었다. 추출식 접근법을 성공적으로 적용하기 위해서는 레거시 시스템을 분석하고 그로부터 자산을 개발함으로써 자산 개발 시간을 줄여야 한다. 하지만 제품라인을 고려하지 않은 레거시 시스템은 설계자가 자신의 고려사항에 따라 하나의 컴포넌트에 여러 기능을 혼합하여 구현한 시스템이기 때문에 설계 및 코드를 이해하고 재사용 가능한 자산을 명확히 분리하여 확보하는데 어려움이 존재한다.
    이를 해결하기 위해서 본 논문에서는 추출식 접근법을 적용하여 제품라인 자산을 확보함에 있어서, 레거시 시스템에 대한 이해를 높이고, 자산 후보의 파악 및 분리를 돕는 방법을 소개한다. 본 논문에서 제안하는 방법은 다음의 두 가지 프로세스로 구성되어 있다: 1) 시스템 구조의 이해를 높이기 위하여, 첫 번째 프로세스는 컴포넌트 타입을 정의하고, 레거시 시스템에서 정의된 컴포넌트 타입의 컴포넌트를 자동으로 탐색하는 단계로 구성된다. 탐색된 레거시 컴포넌트를 통하여 레거시 시스템에서 각 컴포넌트가 갖는 역할을 이해할 수 있게 된다. 2) 재사용 가능한 자산을 레거시 시스템으로부터 분리하기 위하여, 두 번째 프로세스에서는 컴포넌트 타입을 기반으로 응집도가 높은 컴포넌트를 분석하여 분리해내는 재공학 방법을 제안한다. 제안한 방법을 검증하기 위하여 하나의 구체적인 컴포넌트 타입의 탐색 방법 및 재공학 방법을 수립하고, 이를 지원하는 도구를 개발하여 실제 사례에 적용해보았다.

    더보기

    다국어 초록 (Multilingual Abstract) kakao i 다국어 번역

    Abstract Software product line engineering is a paradigm that helps organizations develop software systems from reusable assets rather than from scratch. It can improve both software quality and software productivity. The extractive approach to software product line engineering is an emerging approach that capitalizes on legacy systems when developing reusable assets. With the extractive approach, organizations can reduce time and costs required to initiate a product line, compared to the proactive approach. For the success of the extractive approach, it is important to reduce asset development time by analyzing legacy systems and extracting reusable assets from them. However, as developers who have developed these systems often combined many functions in one component, it is difficult to understand and separate reusable assets.
    To address these challenges, this paper suggests an approach that contains processes and tactics for analyzing legacy systems and extracting reusable assets from them. This approach consists of two major processes: 1) To analyze the legacy system structure, the first process includes steps that define “component type” which can be used to automatically identify legacy components of the defined component type. From the identified legacy components, the analyst can understand the role of each component in the legacy system. 2) To separate reusable assets from the legacy system, the second process includes steps that help analyst evaluate cohesiveness of candidate components based on the component type. To demonstrate the feasibility of the proposed approach, we defined one component type, a component identification method, and a separation method, and developed a tool that supports the method..
    번역하기

    Abstract Software product line engineering is a paradigm that helps organizations develop software systems from reusable assets rather than from scratch. It can improve both software quality and software productivity. The extractive approach to softwa...

    Abstract Software product line engineering is a paradigm that helps organizations develop software systems from reusable assets rather than from scratch. It can improve both software quality and software productivity. The extractive approach to software product line engineering is an emerging approach that capitalizes on legacy systems when developing reusable assets. With the extractive approach, organizations can reduce time and costs required to initiate a product line, compared to the proactive approach. For the success of the extractive approach, it is important to reduce asset development time by analyzing legacy systems and extracting reusable assets from them. However, as developers who have developed these systems often combined many functions in one component, it is difficult to understand and separate reusable assets.
    To address these challenges, this paper suggests an approach that contains processes and tactics for analyzing legacy systems and extracting reusable assets from them. This approach consists of two major processes: 1) To analyze the legacy system structure, the first process includes steps that define “component type” which can be used to automatically identify legacy components of the defined component type. From the identified legacy components, the analyst can understand the role of each component in the legacy system. 2) To separate reusable assets from the legacy system, the second process includes steps that help analyst evaluate cohesiveness of candidate components based on the component type. To demonstrate the feasibility of the proposed approach, we defined one component type, a component identification method, and a separation method, and developed a tool that supports the method..

    더보기

    목차 (Table of Contents)

    • 요약
    • Abstract
    • 1. 서론
    • 2. 자산 컴포넌트 탐색 및 재공학 방법
    • 3. 평가
    • 요약
    • Abstract
    • 1. 서론
    • 2. 자산 컴포넌트 탐색 및 재공학 방법
    • 3. 평가
    • 4. 결론 및 향후 연구
    • 참고문헌
    더보기

    참고문헌 (Reference)

    1 "Understand (tool)"

    2 P. Clements, "Software Product Lines: Practices and Patterns" Addison Wesley Longman Inc 2001

    3 N. Fentoan, "Software Metrics: A Rigorous and Practical Approach (2E)" Course Technology 1998

    4 R. Pressmann, "Software Engineering: A Practitioner's Approach" McGraw Hill

    5 V Ranganath, "Slicing concurrent Java programs using Indus and Kaveri" 9 (9): 489-504, 2007

    6 W. Zhang, "Reuse without Compromising Performance: Industrial Experience from RPG Software Product Line for Mobile Devices, In Proc. of the 9th International Software Product Line Conference" 3714 : 57-69, 2005

    7 M. Weiser, "Program Slicing" 439-449, 1981

    8 R. Brock, "Object Design: Roles, Responsibilities, and Collaborations" Addison-Wesley Professional 2003

    9 J. Martin, "Managing the Data-base Environment" Prentice-Hall 1983

    10 "Lattix LDM (tool)"

    1 "Understand (tool)"

    2 P. Clements, "Software Product Lines: Practices and Patterns" Addison Wesley Longman Inc 2001

    3 N. Fentoan, "Software Metrics: A Rigorous and Practical Approach (2E)" Course Technology 1998

    4 R. Pressmann, "Software Engineering: A Practitioner's Approach" McGraw Hill

    5 V Ranganath, "Slicing concurrent Java programs using Indus and Kaveri" 9 (9): 489-504, 2007

    6 W. Zhang, "Reuse without Compromising Performance: Industrial Experience from RPG Software Product Line for Mobile Devices, In Proc. of the 9th International Software Product Line Conference" 3714 : 57-69, 2005

    7 M. Weiser, "Program Slicing" 439-449, 1981

    8 R. Brock, "Object Design: Roles, Responsibilities, and Collaborations" Addison-Wesley Professional 2003

    9 J. Martin, "Managing the Data-base Environment" Prentice-Hall 1983

    10 "Lattix LDM (tool)"

    11 "JLESA(Java Lift/Elevator Simulator/Analyzer)"

    12 L. Bass, "Fourth Product Line Practice Workshop Report" Software Engineering Institute, Carnegie Mellon University 2000

    13 강교철, "Feature-oriented re-engineering of legacy systems into product line assets - a case study" SPRINGER-VERLAG BERLIN 3714 : 45-56, 200501

    14 강교철, "Feature-based approach to object-oriented engineering of applications for reuse" JOHN WILEY & SONS LTD 30 (30): 1025-1046, 200001

    15 H. Lee, "Experience Report on Using a Domain Model- Based Extractive Approach to Software Product Line Asset Development, In Proc. of the 11th International Conference on Software Reuse" 5791 : 137-149, 2009

    16 C. Krueger, "Easing the transition to software mass customization, In Proc. of the 4th International Workshop on Product Family Engineering" 2290 : 282-293, 2002

    17 "Code Analysis Plugin"

    18 Y. Jo, "A Workbench for Extractive Approach to Software Product Line Engineering" 12 (12): 177-184, 2010

    19 Z. Wang, "A Survey of Business Component Identification Methods and Related Techniques" 2 (2): 229-238, 2005

    20 S. Chidamber, "A Metrics Suite for Object Oriented Design" 20 (20): 476-493, 1994

    21 T. McCabe, "A Complexity Measure" SE-2 (SE-2): 308-320, 1976

    22 R. Kolb, "A Case Study in Refactoring a Legacy Component for Reuse in a Product Line" 18 (18): 109-132, 2006

    더보기

    동일학술지(권/호) 다른 논문

    분석정보

    View

    상세정보조회

    0

    Usage

    원문다운로드

    0

    대출신청

    0

    복사신청

    0

    EDDS신청

    0

    동일 주제 내 활용도 TOP

    더보기

    주제

    연도별 연구동향

    연도별 활용동향

    연관논문

    연구자 네트워크맵

    공동연구자 (7)

    유사연구자 (20) 활용도상위20명

    인용정보 인용지수 설명보기

    학술지 이력

    학술지 이력
    연월일 이력구분 이력상세 등재구분
    2014-09-01 등재 학술지 통합(기타)
    2013-04-26 학술지명변경 한글명 : 정보과학회논문지 : 소프트웨어 및 응용</br>외국어명 : Journal of KIISE : Software and Applications KCI등재
    2011-01-01 등재 등재학술지 유지(등재유지) KCI등재
    2009-01-01 등재 등재학술지 유지(등재유지) KCI등재
    2008-10-17 학술지명변경 한글명 : 정보과학회논문지 : 소프트웨어 및 응용</br>외국어명 : Journal of KISS : Software and Applications KCI등재
    2007-01-01 등재 등재학술지 유지(등재유지) KCI등재
    2005-01-01 등재 등재학술지 유지(등재유지) KCI등재
    2002-01-01 등재 등재학술지 선정(등재후보2차) KCI등재
    더보기

    이 자료와 함께 이용한 RISS 자료

    나만을 위한 추천자료

    해외이동버튼