• 제목/요약/키워드: 소프트웨어 자산

검색결과 164건 처리시간 0.027초

레거시 어플리케이션 제품군으로부터 제품라인 자산을 추출하는 휘처 기반의 방법 (A Feature-Oriented Method for Extracting a Product Line Asset from a Family of Legacy Applications)

  • 이혜선;이강복
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제6권7호
    • /
    • pp.337-352
    • /
    • 2017
  • 복제 및 소유(Clone-and-own) 재사용은 기존의 소프트웨어 제품을 복사하고 수정하여 새로운 소프트웨어를 개발하는 방법이다. 복제 및 소유 재사용으로 개발된 레거시 소프트웨어 제품군은 일반적으로 리팩토링 없이 패치 업 되고 구조적으로 저하되기 때문에 높은 유지보수 비용을 필요로 하고 오류가 발생하기 쉬운 경향이 있다. 기존에 복제 및 소유 재사용 방법을 사용했던 많은 회사들이 이러한 문제를 해결하고 소프트웨어 자산을 더 체계적으로 재사용하고 관리하기 위하여 레거시 제품들을 소프트웨어 제품라인으로 전환하려고 하고 있다. 하지만 대부분의 기존 방법들은 가변점(Variation points)을 디자인과 코드로부터 분리해서 모델링하고 관리하지 않고 디자인과 코드에 바로 임베드시킨다. 즉, 가변점이 가변성 모델을 기반으로 체계적으로 생성되고 관리되지 않는다. 이러한 기존 방법들은 다음의 문제를 야기한다. 기존 방법에서는 가변점 간 관계를 이해하기가 어렵기 때문에 가변점이 임베드 된 코드를 유지보수하기가 어렵고 코드가 변경 및 진화될 때 오류가 생기기 쉽다. 또한 소프트웨어 제품라인이 진화할 때 디자인/코드 자산이 적합한 리팩토링을 적용하여 체계적으로 변경되는 것이 아니라, 애드 혹(Ad-hoc) 방식으로 직접적으로 변경되는 경향이 있다. 본 논문에서는 이러한 문제를 해결하기 위하여 레거시 어플리케이션 제품군으로부터 소프트웨어 제품라인 자산을 구축하는 휘처 기반의 방법을 제안한다. 제안하는 방법에서는 가변점과 가변점 간 관계를 식별하고 이들을 구현으로부터 분리하여 휘처 모델로 모델링한다. 그리고 휘처 모델을 기반으로 레거시 어플리케이션으로부터 소프트웨어 제품라인 자산을 추출하고 관리한다. 제안하는 방법을 레거시 Notepad++ 제품군에 적용을 하여 방법의 실행가능성을 검증하였다.

소프트웨어 프로덕트 라인에서 핵심 자산으로서 요구사항을 관리하는 방법 (An Approach to Managing Requirements as a Core Asset in Software Product-Line)

  • 문미경;염근혁
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제31권8호
    • /
    • pp.1010-1026
    • /
    • 2004
  • 소프트웨어 프로덕트 라인 공학의 목표는 일련의 유사한 소프트웨어 시스템의 공통성과 구별되는 특성을 이해하고 제어함으로써 시스템의 체계적인 개발을 지원하는 것이다[1]. 이것은 소프트웨어 개발 시 나오는 산출물들을 핵심 자산으로 만들어 놓고 이를 체계적으로 재사용 할 수 있도록 지원하기 위한 프레임웍 역할을 한다. 현재 많은 기술들이 프로덕트 라인 공학 관련하여 연구되고 있지만, 그 초점이 소프트웨어 아키텍쳐나 상세 설계 또는 코드에 맞추어져 있다[2]. 소프트웨어 프로덕트 라인 공학에서는 컴포넌트의 공급, 조립뿐만 아니라 조립공정까지 특정 요구나 변화에 신속히 적응할 수 있도록 관리하는 것이 중요한데, 이는 요구사항 분석 단계에서부터 이루어져야 한다. 소프트웨어 프로덕트 라인 공학에서 요구사항은 전통적인 시스템 개발에서와 마찬가지로 모든 개발의 기초가 되는 부분이며, 다른 핵심 자산의 공통성과 가변성의 성질을 결정짓게 만들 수 있는 기준이 된다. 그러나 요구사항들을 다 반영하기도 전에 변경이 발생하는 수많은 경험을 해 온 것처럼, 올바른 요구사항을 획득하고 이를 분석, 관리한다는 것은 결코 쉬운 일이 아니다. 특히, 여러 개의 시스템을 개발할 때 사용할 요구사항은 공통성과 가변성의 속성을 가지게 된다. 그러므로 계획할 수 있는 변화에는 충분히 안정적이면서, 반면에 예측하지 못하는 변화에 잘 적응하고 개조될 수 있도록 유연성을 지닌 핵심 요구사항을 개발, 관리하기 위한 체계적인 방법이 필요하다. 본 논문에서는 소프트웨어 프로덕트 라인에서 핵심 자산의 하나인 도메인 요구사항을 관리하는 방법에 대하여 제안한다. 이를 통해 도메인 요구사항에 대한 재사용성을 중대시키고 시스템의 목표를 정확히 세우는 데 투자되는 많은 시간과 노력을 감소시켜 준다. 이는 결과적으로 소프트웨어 개발 시간과 비용을 줄이고, 생산성을 향상시키는 등의 장점을 가져다준다.

스크럼 방법에서 백로그 바인더를 이용한 재사용 지원 (Support of Reuse in Scrum Method with Backlog Binder)

  • 김지홍
    • 디지털융복합연구
    • /
    • 제11권12호
    • /
    • pp.439-445
    • /
    • 2013
  • 애자일 방법과 소프트웨어 재사용의 장점을 통합하는 여러 연구가 나타나고 있다. 대부분의 연구는 스크럼 방법에 재사용을 도입하기보다는 소프트웨어 프로덕트라인에 애자일 방법을 도입하고 있다. 스크럼은 가장 인기있는 애자일 방법이지만 재사용 결합의 연구는 부족하다. 한편, 백로그와 점증적 산출물과 같은 스크럼 개발의 자산은 재사용이 가능하다. 본 연구는 스크럼 방법에서 재사용이 가능한 통합 자산인 백로그 바인더를 식별하고 이들의 재사용을 지원하는 백로그 바인더 재사용 방안을 제안하였다. 아울러, 제안한 기술을 구인 구직 응용에 적용하여 백로그 바인더와 자산 재사용의 프로토타이핑을 보일 수 있었다.

소프트웨어 프로세스 개선을 위한 통합 자산 저장소 구축 (Construction of Assets Integration Repository for Software Process Improvement)

  • 박은주;김행곤
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2008년도 추계학술발표대회
    • /
    • pp.550-553
    • /
    • 2008
  • 최근 많은 기업들이 조직 내의 소프트웨어 프로세스 개선을 위한 CMMI 레벨 획득을 위해 노력을 기울이고 있다. 하지만 기존의 CMMI 지원 솔루션들은 특정 프로세스 영역별로 분리되어 제한적으로 활용됨으로써 원활한 평가 지원에 한계가 있다. 따라서 소프트웨어 단계별 프로세스 전반에 걸쳐 툴, 자산 그리고 산출물들의 연계적 적용, 관리를 지원하는 통합 저장소 활용이 절대적으로 요구된다. 본 논문에서는 이질적인 CMMI 관련 툴, 방법론 그리고 다양한 문서 등을 효과적으로 관리 지원을 위한 통합 저장소인 PARMS(Process Assets Repository Management System) 개발 기술에 대해 서술한다. 즉, 통합 저장소 아키텍처와 메타데이터를 설계하고, 통합 모델을 제시한다. 이들 모델을 기반으로 하여 기 개발된 각 도구간의 효과적 네트워킹을 위한 미들웨어 아키텍처 구현은 CBD 개발 기법을 적용한다. 그리고 구현된 프로토타이핑 시스템 실행 예를 제시하고 저장소 평가 모델을 적용하여 평가한다. 이를 통해 소프트웨어 프로세스 개선을 위한 기존의 지원 도구로부터 산출되는 이질적인 산출물들을 통합하여 보다 쉽고 간편한 제어 및 관리를 가능케 하며, 통합된 소프트웨어 프로세스 개선 자산을 통해 CMMI의 인증 지원에 유용한 도구로 활용가능하다.

아키텍처 자산의 복잡도 측정에 관한 연구 (A Study on the Complexity Measurement of Architecture Assets)

  • 최한용
    • 융합정보논문지
    • /
    • 제7권5호
    • /
    • pp.111-116
    • /
    • 2017
  • 자산의 복잡성을 측정하기 위해 프로그램의 논리적인 복잡도의 측정을 제공하는 척도를 베이스로 하여 각 자산의 특징 값을 표현하고 있는지 평가하는 방법을 사용 한다. 본 연구에서는 소프트웨어 컴포넌트를 기본자산으로 구성하여 표준화된 설계모형을 확보하고, 이를 기반으로 재사용 가능한 확장된 자산을 설계할 경우 자산의 복잡도를 측정하기 위한 방안을 제시하고자 한다. 그러나 우리가 제안하는 자산관리 시스템의 각 자산은 두 가지 영역의 자산을 합성한 복합자산으로 구성되어 있으므로 이 방법만으로는 정확한 측정을 하기 어렵다. 따라서 아키텍처 하부에 저장된 기본 자산의 특성 값을 반영하여야 전체적인 자산의 복잡성을 측정가능하다. 따라서 응집력에 반비례하고 자산연관도안의 각 자산에 대한 연관값의 누적합에 비례하는 합성자산의 복잡성을 측정 가능하다.

MDA / PIM을 이용한 제품계열 핵심자산의 명세 기법 (A Specification Technique for Product Line Core Assets using MDA / PIM)

  • 민현기;한만집;김수동
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권9호
    • /
    • pp.835-846
    • /
    • 2005
  • 제품계열(Product Line)은 핵심자산(Core Asset)을 서로 공유하는 제품들의 집합이며, 제품계열 공학(Product Line Engineering, PLE)은 제품계열을 특화(Instantiation) 할 수 있는 원리, 기술, 메커니즘과 프로세스들의 집합이다. PLE는 여러 유사한 제품들간에 공유할 수 있는 핵심자산을 만들고, 그 핵심자산을 특정 제품에 맞게 실체화 시켜서 제품을 만든다. 모델 기반 아키텍처(Model Driven Architecture, MDA)는 자동화 도구를 이용하여 모델로부터 구현으로 구체화하는 접근 방법이다. 그러므로, 핵심자산을 MDA의 플랫폼 독립적인 모델(PIM)로 정의하여 구현까지 자동화한다면, 두 개발 방법의 장점을 극대화 할 수 있다. 하지만, 핵심자산을 표현하는 UML 프로파일은 현재까지 없으며, PLE의 핵심자산 및 제품 조림의 자동화 생산을 위한 PIM 명세 기법의 연구가 부족하다. 본 논문에서는 PLE기술과 MDA 기술을 접목하기 위해 PIM 수준의 핵심자산 명세 기법을 제안한다. 핵심자산을 명세하기 위해 아키텍처 명세, 컴포넌트 명세, 워크플로우 명세, 알고리즘 명세, 결정 모델 명세 기법을 제안한다. 본 논문의 명세 기법은 PLE, MDA 기술을 사용하여 제품의 생산성, 적용성, 유지보수성 및 품질 향상을 지원한다.

ACAB : 소프트웨어 프로덕트 라인 지원을 위한 컴포넌트 개발 도구 (ACAB : Component Asset Builder for supporting Software Product Lines)

  • 정주미;최승훈
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 가을 학술발표논문집 Vol.32 No.2 (2)
    • /
    • pp.427-429
    • /
    • 2005
  • 최근 컴포넌트 기반의 소프트웨어 프로덕트 라인에 대한 연구와 소프트웨어 프로덕트 라인에 자동 생성 프로그래밍 기법을 적용하기 위한 연구가 활발히 진행 중이다. 본 논문에서는 재사용 가능한 컴포넌트 자산을 구축하고, 재구성 자동화를 통해 컴포넌트 코드를 생성하는 시스템을 제안한다. 본 도구는 컴포넌트 기반 프로덕트 라인 개발 방법론과 자동 생성 프로그래밍 기법, XML/XSLT 기술을 이용하여 구축되었다. Component Asset 개발자 레벨에서 사용하는 컴포넌트 자산 구축기와 재사용자 레벨에서 사용하는 컴포넌트 코드 생성기로 구성되어 있으며, 컴포넌트 기반의 소프트웨어 프로덕트 라인 개발에 효과적으로 활용될 수 있다.

  • PDF