• 제목/요약/키워드: Software reuse

검색결과 395건 처리시간 0.021초

컴포넌트 정적/동적 커스터마이제이션 기법 (The Static and Dynamic Customization Technique of Component)

  • 김철진;김수동
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제29권9호
    • /
    • pp.605-618
    • /
    • 2002
  • 컴포넌트 기반 어플리케이션 개발(CBD: Component Based Development)은 Time-To-Market을 위한 필수적인 기법이며 컴포넌트를 이용해 다양한 도메인의 어플리케이션을 개발하기 위해서는 재사용성이 높은 컴포넌트가 제공되어야만 한다. 컴포넌트의 재사용성을 높이려면 다양한 도메인의 요구사항을 분석하여 개발해야 한다. 그러나 개발하려는 컴포넌트에 해당하는 다양한 도메인의 모든 요구사항을 분석해 컴포넌트 내에 포함한다는 것은 많은 부하를 주며, 또한 여러 도메인의 공통 기능을 가진 일반적인 컴포넌트만 제공하는 것은 개발자가 개발해야 하는 다른 영역이 존재하므로 Time-To-Market을 이루기가 쉽지 않다. 이와 같이, 컴포넌트 개발(CD : Component Development) 시점에 다양한 도메인의 요구사항 분석을 통해 일반적인 컴포넌트를 개발하는 것이 재사용성이 높다고는 볼 수 없으며 이러한 컴포넌트는 공통적인 기능을 가지고 있는 컴포넌트 일뿐이며 공통 영역 외의 영역은 또 다른 개발의 부담을 준다. 따라서 본 논문에서는 공통 컴포넌트를 포함하여 특정 영역의 컴포넌트를 재사용하기 위한 컴포넌트 커스터마이제이션 기법을 제안한다. 컴포넌트의 데이터 속성(Attribute), 기능(Behavior), 그리고 메시지 흐름(Message Flow)에 대한 변경 가능성을 제공하여 컴포넌트의 재사용성을 높일 수 있다. 본 커스터마이제이션 기법은 개발된 컴포넌트들을 통합하거나 컴포넌트 내에 새로운 기능을 제공할 수 있도록 컴포넌트 내의 메시지 흐름을 변경할 수 있다. 또한 컴포넌트 내에 존재하는 클래스를 다른 클래스로 교환하거나 통합된 컴포넌트를 다른 기능의 컴포넌트로 교환할 수 있는 기법을 제공하여 다양한 도메인의 요구 사항을 수용할 수 있도록 한다. 이와 같이 본 커스터마이제이션 기법은 공통 기능의 컴포넌트 뿐만 아니라 특정 영역의 컴포넌트에 대한 재사용성도 확보할 수 있다.

가변성 결정기반 BPM 생성을 위한 가변성 의존관계 분석 (Variability Dependency Analysis for Generating Business Process Models based on Variability Decisions)

  • 문미경
    • 정보처리학회논문지D
    • /
    • 제16D권5호
    • /
    • pp.791-800
    • /
    • 2009
  • 최근 서비스 지향 아키텍처 (Service Oriented Architecture SOA) 기반의 애플리케이션 개발에 맞게 비즈니스 프로세스의 유연성을 확보하고 재사용을 증진시키기 위하여 비즈니스 프로세스 패밀리 모델 (Business Process Family Model: BPFM)이 제시되었다. BPFM은 소프트웨어 프로덕트 라인 방법의 가변성 분석 기법을 사용하여 비즈니스 프로세스 군 (family)에서 나타날 수 있는 가변성을 분석하여 이를 명시적으로 표현하고 있는 모델이다. BPFM으로부터 여러 개의 비즈니스 프로세스 모델 (Business Process Model: BPM)을 개발하기 위해서는 가변성 결정 및 가지치기(Decision and Pruning) 과정을 거쳐야 한다. 이 때 가변성 사이에는 서로 협력적 또는 배타적인 관계를 가질 수 있고 이는 가변성 결정과 가지치기에 영향을 미치게 되는데, 현재 제시된 BPFM에는 이러한 바인딩 정보에 대해서 고려하지 않고 있다. 본 논문에서는 비즈니스 프로세스 군에서 식별될 수 있는 가변성들 사이의 의존관계 유형을 분석하고 이러한 가변성 정보를 독립된 의존관계 분석모델로 표현하는 방법을 제시한다. 또한 추출된 모델을 기반으로 하나의 가변성 결정으로부터 영향을 받는 다른 가변성들을 추적하여 선결정 처리 할 수 있는 방법을 제공한다. 본 방법을 이용함으로써 가변성 결정회수를 줄일 수 있고, 또한 잘못된 가변성 결정으로 인한 BPM의 기능 불일치를 해소할 수 있음을 사례연구를 통해 보인다.

레거시 시스템을 현대화하기 위한 유스케이스 기반의 컴포넌트 추출 방법 (A Use-case based Component Mining Approach for the Modernization of Legacy Systems)

  • 김현수;채흥석;김철홍
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권7호
    • /
    • pp.601-611
    • /
    • 2005
  • 레거시 시스템은 입증된 안정성과 신뢰성을 갖고 있을 뿐만 아니라 그것의 개발 과정에 많은 투자와 수년간의 축적된 경험과 지식이 투입되었기 때문에 다양한 조직의 핵심 비즈니스 응용 시스템을 오랫동안 지원해왔다. 그런데 웹을 기반으로 한 e-비즈니스 환경의 출현으로 이러한 핵심 비즈니스는 웹 기반의 환경에서 동작할 필요가 강하게 대두되었다. 이것은 새로운 비즈니스 환경에서 경쟁력이 되기 때문이다. 따라서 여러 조직들은 새로운 e-비즈니스 응용 시스템에서 재사용하기 위해 레거시 시스템에 묻혀 있는 비즈니스 가치를 찾아야할 필요를 느끼게 되었다. 본 논문에서는 특정 비즈니스 서비스를 수행하는 컴포넌트를 추출하기 위한 체계적인 접근 방법을 제안한다. 이 컴포넌트들은 레거시 시스템의 자산들로 구성되며 새로운 플랫폼으로 도입될 것이다. 컴포넌트 추출 과정은 여러 개의 작업들로 이루어진다. 먼저, 비즈니스 프로세스를 실현하고 있는 유스케이스가 파악된다. 다음으로, 유사한 기능성을 갖는 유스케이스를 통합하기 위해 파악된 유스케이스별로 설계 모델을 구축한다. 세 번째 단계에서는 설계 모델을 바탕으로 컴포넌트 후보를 도출하고, 컴포넌트 후보들 간에 공유되는 공유 요소들을 파악하고 컴포넌트 후보들을 수정한다. 또한 비즈니스 컴포넌트를 J2EE/EJB 환경에 도입하기 위하여 세 개의 보다 작은 규모의 컴포넌트들로 세분한다. 마지막으로, 컴포넌트가 제공하는 기능에 대한 인터페이스를 정의한다.

계산과학공학 플랫폼을 위한 실행-이력 기반의 시뮬레이션 데이터 관리 프레임워크 설계 및 구현 (Design and Implementation of an Execution-Provenance Based Simulation Data Management Framework for Computational Science Engineering Simulation Platform)

  • 마진;이식;조금원;서영균
    • 인터넷정보학회논문지
    • /
    • 제19권1호
    • /
    • pp.77-86
    • /
    • 2018
  • 지난 수년간 KISTI는 EDISON이라는 온라인 시뮬레이션 실행 플랫폼을 통해 사용자들이 다양한 계산과학공학 분야에서 제공된 사이언스 애플리케이션에 대한 시뮬레이션을 수행할 수 있는 서비스를 제공하고 있다. 일반적으로 이러한 시뮬레이션은 대규모 계산을 수반하므로 대용량의 출력 데이터를 생산해 낸다. 온라인 플랫폼에서 이러한 시뮬레이션을 수행 할 때 발생하는 중요한 문제 중 하나는 많은 사용자가 동일한 (또는 거의 변하지 않는) 입력 매개 변수 또는 파일을 사용하여 시뮬레이션 요청 (또는 작업)을 플랫폼에 동시에 제출함으로써 플랫폼에 상당한 부담을 준다는 점이다. 다시 말해, 동일한 컴퓨팅 작업으로 인해 중복 컴퓨팅 및 스토리지 리소스가 빠른 속도로 소모된다는 점이다. 이와 같은 동일한 시뮬레이션 요청으로 인한 과도한 자원 사용 문제를 극복하기 위해, 본 논문은 실행 메타 데이터, 즉 프로비넌스를 기반으로 시뮬레이션 데이터를 효율적으로 관리하기 위한 IceSheet라는 새로운 프레임 워크를 제안한다. IceSheet 프레임워크는 시뮬레이션 실행과 관련된 프로비넌스를 수집하여 저장한다. 수집된 프로비넌스 정보는 중복 시뮬레이션 요청을 제외할 뿐만 아니라 오픈소스 검색 엔진인 ElasticSearch를 통해 기존 시뮬레이션 결과를 검색하는 데도 사용된다. 특히 본 논문은 IceSheet 프레임워크에서 저장된 시뮬레이션 결과를 검색하고 재사용할 수 있는 핵심 구성 요소에 대해 자세히 설명한다. 우리는 온라인 시뮬레이션 실행 플랫폼과 함께 연동하는 검색 엔진을 기반으로 제안된 프레임워크의 프로토타입을 구현하였다. 플랫폼에서 수집된 실제 시뮬레이션 실행 프로비넌스를 기반으로 제안된 프레임워크의 성능 평가를 수행하였다. 플랫폼과 완벽히 연동된 IceSheet 프레임워크는 사용자로 하여금 선택된 시뮬레이션 소프트웨어에 대해 과거에 입력된 매개 변수 값을 빠르게 검색하고 동일한 입력 매개 변수 값이 존재하는 경우 기존의 결과를 곧바로 반환할 수 있도록 할 것으로 기대된다. 따라서 제안된 프레임워크를 통해 이전에 실행된 시뮬레이션과 동일한 요청에 대해 중복 자원 소모를 없애고 실행 시간을 크게 단축시키는 데 도움이 될 것으로 기대한다.

S-MADP : 중대형 프로젝트의 모바일 애플리케이션을 위한 서비스 기반 개발 프로세스 (S-MADP : Service based Development Process for Mobile Applications of Medium-Large Scale Project)

  • 강태덕;김경백;정기주
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제2권8호
    • /
    • pp.555-564
    • /
    • 2013
  • 최근 모바일 기기의 혁신적 진화와 태블릿 PC나 스마트폰의 급격한 확산이 이루어지면서 개인의 일상뿐 아니라 기업의 업무용 애플리케이션에도 새로운 변화가 이루어지고 있다. 특히 수개월 이상의 개발 기간이 필요한 중대형 업무용 모바일 애플리케이션의 경우 그 복잡도나 중요도가 급격하게 늘고 있다. 현재 애자일 기반의 모바일 애플리케이션 개발 프로세스가 이러한 중대형 모바일 애플리케이션 개발에 사용되지만, 개발자의 숙련도에 대한 높은 의존도와 상세 작성지침들의 부족한 현상등의 문제점들이 나타나고 있다. 본 논문에서는 이러한 문제점들을 해결하기 위해 S-MADP (Smart Mobile Application Development Process)를 제안한다. S-MADP은 객체지향 설계프로세스를 확장한 서비스 기반의 중대형 모바일 애플리케이션을 위한 개발 프로세스이다. 다양하고 제한된 모바일 기기들의 리소스를 보다 효과적으로 사용하는 애플리케이션의 개발을 위해 사용자 요구사항을 서버기반 또는 클라이언트기반의 서비스로 정의하고 효과적인 서비스의 재사용을 위한 상세지침들을 제공한다. 또한 다양한 사용자 인터페이스를 지원하는 화면 개발을 위한 효과적인 UI설계 상세지침을 지원한다. S-MADP의 성능을 검증하기 위해 3개사의 대형 업무용 모바일 애플리케이션 개발 프로젝트를 진행하였고 그 결과를 분석하였다. 수행된 프로젝트들은 TB사의 'TBS(TB Mobile Service) 3.0', TS사의 '모바일 앱스토어'와 TG그룹의 '모바일 그룹웨어' 프로젝트들이다. 프로젝트를 수행한 결과, 기존의 애자일 기반의 모바일 애플리케이션 개발 프로세스를 사용할 때에 비해서 S-MADP은 모바일 애플리케이션 개발 환경에서 중점적으로 고려되어야 하는 '리소스 사용의 최소화', '서비스 기반의 설계', '모바일 기기에 적합한 사용자 인터페이스'에 대한 상세설계 내용을 보다 자세히 제공하는 것으로 확인되어, 개발된 모바일 애플리케이션의 사용성, 유지보수성, 효율성을 향상 시킨다고 분석되었다. 또한 S-MADP를 현장 적용한 결과 애자일 기반의 개발 프로세스에서 예상된 성능보다 25%향상된 성능으로 중대형 모바일 애플리케이션을 개발 할 수 있음을 확인 하였다.