• 제목/요약/키워드: 소프트웨어제품라인

검색결과 83건 처리시간 0.029초

효율적인 소프트웨어 제품라인 회귀시험을 위한 자동화된 코드 기반 시험 방법 (Efficient Code-based Software Product Line Regression Testing)

  • 정필수;강성원
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제29권2호
    • /
    • pp.1-6
    • /
    • 2020
  • 소프트웨어 제품라인 개발은 제품군의 개발을 위하여 공통적인 부분과 가변적인 부분을 분리 개발함으로써 중복개발을 피하여 효율적으로 제품군을 개발하는 개발 패러다임이다. 소프트웨어 제품라인 개발에서 제품군을 생성하기 위해 사용되는 소스코드를 제품라인 코드 베이스라고 부르고, 제품라인 코드 베이스가 변경되어 제품군의 제품들이 영향을 받을 때 영향 받은 제품들을 시험하는 활동을 제품라인 회귀시험이라고 한다. 이 때 제품군의 각 제품을 개별적으로 시험하는 대신, 변경과 무관한 시험을 파악하여 피할 수 있다면 효율적인 제품라인 회귀시험이 가능해 질 것이다. 본 논문은 이런 방법으로 소프트웨어 제품라인 회귀시험을 효율적으로 수행하는 자동화된 방법인 SRTS를 소개한다. 이 방법은, 먼저 제품라인 코드 베이스와 시험 항목을 공통성과 가변성을 기반으로 나누고 변경에 영향을 받는 시험 항목을 식별하여 선택한 후, 선택된 시험 항목만을 재실행함으로써 불필요한 시험을 줄인다.

웹 시스템 군의 개발을 위한 소프트웨어 제품라인 공학의 적용 (Application of Software Product Line Engineering for Developing Web Application Families)

  • 황병한;진영택
    • 한국전자거래학회지
    • /
    • 제22권2호
    • /
    • pp.39-60
    • /
    • 2017
  • 소프트웨어 제품라인 공학은 체계적인 소프트웨어 재사용을 위한 효과적인 방법으로 널리 인식되고 있으며, 기존 소프트웨어 개발 실무와 프로세스를 소프트웨어 제품라인으로 전환하기 위한 연구가 진행되어 오고 있다. 기존 소프트웨어 개발을 제품라인으로 전환하기 위해서는 수행조직, 적절한 프로세스 선택 및 수정, 도구의 지원 등 많은 투자가 요구된다. 특히 소규모 기업에서 소프트웨어 제품라인 공학 기술을 본격적으로 도입하기 앞서 적절한 비즈니스 사례와 소프트웨어 제품라인 공학의 적용에 대한 구체적인 실무가 필요하다. 본 논문에서는 웹 시스템 군의 개발에 소프트웨어 제품라인 공학을 적용하는데 따른 실질적인 사례와 소프트웨어 자산을 체계적으로 구축하고 재사용하는 과정을 제시하였다. 이를 위해, 다수의 웹 개발 프로젝트를 분석하였으며 소규모의 기업이 소프트웨어 제품라인을 채택하는데 따른 경험과 다양한 고려사항들을 제시하였다.

구성가능한 소프트웨어 제품라인 시험에서 코드 커버리지 측정 (Code Coverage Measurement in Configurable Software Product Line Testing)

  • 한수빈;이지현;고서연
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제11권7호
    • /
    • pp.273-282
    • /
    • 2022
  • 구성가능한 소프트웨어 제품라인 시험은 모든 멤버제품들에 포함되는 공통 부분과 일부 또는 단일 제품에 포함되는 가변 부분을 고려해야 하기 때문에 단일 제품 시험 방법들을 그대로 적용하기 어렵다. 소프트웨어 시스템 시험에서 시험 커버리지는 수행된 시험의 적절성을 측정하는 척도이다. 구성가능한 소프트웨어 제품라인으로부터 생성될 수 있는 멤버제품들은 수백 개에 이를 수 있기 때문에 시험 커버리지 측정은 소프트웨어 제품라인 수준에서 시험의 적절성을 평가하기 위해 중요하다. 이 논문은 구성가능한 소프트웨어 제품라인 시험에서 제품라인 수준의 코드 커버리지 측정 방법을 제안한다. 제안한 방법은 피처 집합의 포함 관계를 기준으로 제품들을 계층화한 후 제품라인의 멤버제품들을 시험하고, 시험으로부터 얻어진 각 제품의 시험 커버리지들을 종합하여 SPL 시험 커버리지를 정량화한다. 제안한 방법을 11개의 구성가능한 소프트웨어 제품라인 사례에 적용하여 검증한 결과, 제안한 방법은 SPL 시험이 얼마나 철저하게 수행되었는지를 정량적으로 기술하여 SPL 시험의 적정성을 확인할 수 있도록 도왔다. 또한, 새로 추가된 SPL 멤버제품의 시험이 이전 멤버제품 시험 대비 커버리지를 증가시키는 방향인지 확인할 수 있어 새로운 시험케이스들이 멤버제품들 간의 차이를 커버하는 방향으로 시험이 이루어지고 있는지 확인할 수 있었다.

소프트웨어 제품라인 아키텍처 모델에서의 가변성 표현 방법 비교 연구 (Expressing Variability in Software Product Line Architecture Models: A Comparative Study)

  • 이혜선;조성배;강교철
    • 소프트웨어공학소사이어티 논문지
    • /
    • 제24권3호
    • /
    • pp.77-89
    • /
    • 2011
  • 소프트웨어 제품라인 공학은 제품라인의 공통적인 부분과 차이점을 핵심 자산으로 관리하여 품질을 높이고, 핵심 자산을 계획된 제품들에 재사용함으로써 소프트웨어의 생산성을 높이는데 효과적인 방법이다. 제품라인 아키텍처에는 제품에 따라서 포함되거나 포함되지 않는 가변적인 부분이 있기 때문에, 기존 단일 소프트웨어를 대상으로 한 아키텍처 모델과는 달리, 제품라인 아키텍처는 제품 간의 차이점인 가변성을 나타낼 수 있어야 한다. 기존에 여러 연구자가 제품라인 아키텍처 모델에 가변성을 표현하는 방법을 제안하였지만, 이들이 제시한 표현 방법들의 강약점을 분석하고 차이점을 비교하는 연구가 부족하였다. 따라서 본 논문에서는 현재까지 제안된 제품라인 아키텍처 모델에서의 가변성 표현 방법을 분석하고 비교하여, 적합한 표현 방법을 선택하는데 가이드가 되고자 한다.

  • PDF

워크플로우 기반의 제품라인 소프트웨어 개발 지원 환경 (A Tool for Workflow-based Product Line Software Development)

  • 양진석;강교철
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제2권6호
    • /
    • pp.377-382
    • /
    • 2013
  • 제품라인공학 기반의 융합소프트웨어 개발 방법론에서는 어플리케이션 개발을 위해 아키텍처 모델을 제안하고 있다. 그리고 명세를 이용하여 제어컴포넌트를 개발하도록 제안하는데 워크플로우는 트랜잭션을 주로 처리하는 어플리케이션 개발을 위해 제안되었다. 제품라인 공학 기반의 소프트웨어 개발이 효과를 발휘하기 위해서는 도구의 지원이 반드시 필요하다. 하지만 기존의 워크플로우 모델링 도구들은 제품라인 공학개념을 지원하지 않기 때문에 워크플로우 기반의 제품라인 소프트웨어 개발을 지원할 수 있는 도구의 개발이 필요했다. 본 논문에서는 워크플로우 기반의 제품라인 소프트웨어 개발을 지원하기 위해서 개발된 도구를 소개하고 개발된 도구의 활용 가능성을 확인하기 위해서 간단한 활용예제를 소개한다.

워크플로우 기반의 제품라인 소프트웨어 개발 지원 환경 (A Tool for Workflow-based Product Line Software Development)

  • 양진석;;강교철
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 추계학술발표대회
    • /
    • pp.1515-1518
    • /
    • 2012
  • 제품라인공학 기반의 융합소프트웨어 개발 방법론에서는 어플리케이션 개발을 위해 아키텍처 모델을 제안하고 있다. 개발 모델에서는 명세를 이용하여 제어컴포넌트를 개발하도록 제안하는데 워크플로우는 트랜잭션을 주로 처리하는 어플리케이션 개발을 위해 제안되었다. 제품라인 공학 기반의 소프트웨어 개발이 효과를 발휘하기 위해서는 도구의 지원이 반드시 필요하다. 하지만 기존의 워크플로우 모델링 도구들은 제품라인 공학 개념을 지원하지 않기 때문에 워크플로우 기반의 제품 라인 소프트웨어 개발을 지원할 수 있는 도구의 개발이 필요했다. 본 논문에서는 워크플로우 기반의 제품라인 소프트웨어 개발을 지원하기 위해서 개발된 도구를 소개하고 개발된 도구의 활용 가능성을 확인하기 위해서 간단한 활용예제를 소개한다.

기존 시스템 기반의 소프트웨어 제품라인 공학기법: 케이블 셋톱박스 소프트웨어 사례 (Legacy System-Based Software Product Line Engineering: A Case Study on Cable Set-Top Box Software)

  • 최현식;이혜선;조윤호;강교철
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제36권7호
    • /
    • pp.539-547
    • /
    • 2009
  • 산업 및 가전 제품에서 소프트웨어의 중요성이 커지면서 소프트웨어 재사용과 제품라인 방법론에 대한 관심이 높아지고 있다. 그러나 대부분의 제품라인 방법론은 초기 비용과 시간이 많이 들고 구체적인 절차나 성공 사례가 부족하여 산업체에서 적용하기에는 어려운 한계가 있다. 본 논문에서는 산업체에서 제품라인 기법을 쉽게 적용할 수 있도록, 기존에 개발된 소프트웨어 자산과 해당 도메인의 휘처모델을 활용하여 제품라인을 쉽게 구축할 수 있는 추출식 접근법의 구체적인 방법을 제시하고 이를 케이블 셋톱박스 소프트웨어에 적용한 사례를 소개한다. 또한, 제품라인으로의 전환 효과를 확인할 수 있는 평가 기준을 제안하고, 사례 연구를 통해 얻은 교훈을 정리하여 다른 산업 및 가전 제품의 소프트웨어에 적용할 수 있는 지침을 제공한다.

소프트웨어 제품라인의 휘처모델과 구성요소간 가변성에 대한 일관성 검증 규칙 (Consistency Checking Rules of Variability between Feature Model and Elements in Software Product Lines)

  • 김세훈;김정아
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제3권1호
    • /
    • pp.1-6
    • /
    • 2014
  • 모든 기업들은 높은 품질의 정보시스템과 높은 생산성을 가지는 소프트웨어 제품을 만들기 위해 소프트웨어 제품라인 공학(software product line engineering)을 도입하고 있다. 소프트웨어 제품라인 방법론은 다양한 모델들을 가지고 있으며, 각 모델은 추상화 관점과 수준이 서로 다르다. 이러한 모델에 존재하는 요소들간 추적성(traceability)과 가변성(variability) 정보의 일관성(consistency)을 유지하는 것이 중요하다. 본 연구에서는 휘처(feature)의 가변성과 다른 산출물에 정의한 가변성의 일관성을 검증하는 규칙을 제시하였다.

소프트웨어 제품 라인의 요구사항과 아키텍처 간 추적성 모델링 (Modeling Traceability Between Software Product Line Requirements and Architecture)

  • 엄석환;강성원;김진규;이선아
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제4권11호
    • /
    • pp.487-498
    • /
    • 2015
  • 추적성은 소프트웨어 개발자에게 소프트웨어 산출물에 대한 변경을 추적하게 해 준다. 소프트웨어 제품 라인 개발에 있어서의 추적성은 공통성과 가변성을 고려해야 하기 때문에, 개별 제품에서의 추적성보다 복잡하다. 과거 연구에서 제품 라인 개발에서의 제품 피처와 요구사항 간의 추적성 구축을 제시되었다. 그러나 요구사항과 아키텍처 설계 사이의 추적성 구축은 다 대 다 관계와 아키텍처 계층으로 인해 고려해야 할 요소가 더 많다. 본 논문은 이러한 요소들을 고려하여, 제품 라인 개발에서의 요구사항과 아키텍처 사이의 추적성을 모델링하는 체계적인 방법을 제공한다. 또한 사례연구를 통하여 이 방법이 효과적임을 보인다.

조합 시험 설계를 이용한 소프트웨어 제품라인 시험항목 생성 방법 (Software Product Line Test Cases Derivation Using Combinatorial Test Design)

  • 백하은;강성원;이지현
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제41권7호
    • /
    • pp.469-480
    • /
    • 2014
  • 소프트웨어 제품라인은 제품들 간의 공통성 및 가변성을 전체 개발라이프사이클에 걸쳐 체계적으로 계획하고 재사용하여 생산성 향상, 비용절감, 시장적시성 향상을 꾀하는 소프트웨어 개발 패러다임이다. 소프트웨어 제품라인이 가져다 주는 이익을 최대화하기 위하여 시험은 도메인 공학과 어플리케이션 공학의 두 라이프사이클을 구성하는 프로세스들과 일관된 방식으로 통합되어야 하며, 더불어 시험 노력을 절감할 수 있어야 한다. 본 논문에서는 조합 시험 설계를 적용하여 제품라인 플랫폼을 시험할 시험항목을 생성함으로써 시험항목 개수를 상당히 줄이면서 동시에 재사용이 용이한 시험항목 생성을 지원하여 시험노력을 절감할 수 있는 조합 시험 설계를 이용한 제품라인 시험항목 생성 방법을 제안한다. 또한, 사례연구를 통하여 제안한 방법이 조합 설계를 이용하거나 그렇지 않은 기존의 다른 방법들 보다 효율적임을 보인다.