• 제목/요약/키워드: 컴포넌트 가변성

검색결과 56건 처리시간 0.025초

컴포넌트 아키텍쳐 기반의 동적 컴포넌트 조합을 위한 가변성 설계 기법 (A Variability Design Technique based on Component Architecture for Dynamic Component Integration)

  • 김철진;조은숙
    • 인터넷정보학회논문지
    • /
    • 제6권2호
    • /
    • pp.13-24
    • /
    • 2005
  • 컴포넌트 조합을 통한 소프트웨어 개발은 Time-To-Market을 위한 시대적인 흐름이며 소프트웨어의 짧은 생명주기(Lifecycle) 를 극복할 수 있는 방안이다. 그러므로 효과적으로 컴포넌트를 통합하기 위한 기법들이 연구되어 왔다. 그러나 체계적이고 실용적인 기법들의 연구가 미흡하였다. 컴포넌트 통합을 위한 핵심 중에 하나는 통합을 위한 스펙을 어떻게 정의하느냐와 그 통합 스펙을 운영하기 위한 컴포넌트 아키텍쳐를 어떻게 구성하느냐 이다. 본 논문은 특화가 가능한 복합 컴포넌트를 개발하기 위해 컴포넌트 아키텍쳐를 기반으로 컴포넌트간의 조합을 위한 가변성 설계 기법을 제안하며 가변성 중에 컴포넌트간의 메시지의 흐름인 워크플로우(Workflow)에 대한 가변성 설계 기법을 제안한다. 본 기법은 컴포넌트 아키텍쳐 기반의 연결 계약(Connection Contract)을 설계하는 것이 핵심이다. 연결 계약은 컴포넌트의 제공 인터페이스(Provided Interface)를 사용하여 설계하며 이 연결 계약에 의해 동적으로 컴포넌트를 조합하고 특화(Customiztion)할 수 있는 기법을 제공한다.

  • PDF

엔터프라이즈 프레임워크에서 닷넷 기반의 컴포넌트 워크플로우 가변성 구현 기법 (Techniques of Component Workflow Variability Implementation based on .NET in the Enterprise Framework)

  • 노재우;이승훈;류성열
    • 한국전자거래학회지
    • /
    • 제9권2호
    • /
    • pp.145-161
    • /
    • 2004
  • 컴포넌트 기반 개발(Component Based Development, CBD)은 미리 구현된 블록단위의 컴포넌트를 사용하여 소프트웨어 개발 비용 및 시간을 단축할 수 있다. 또한 컴포넌트는 내부의 상세 부분을 숨기고 인터페이스를 제공하여 대형 어플리케이션을 개발하는데 복잡성을 감소시킬 수 있다. 엔터프라이즈 프레임 워크 환경에서의 패밀리 (Family)의 공통적인 요구사항은 컴포넌트 내 업무 워크플로우 형태로 표현될 수 있으나, 다양한 패밀리 멤버(Family Member)의 요구사항에 특화된 워크플로우를 하나의 컴포넌트 내에 표현하는 것은 매우 어렵다. 따라서 패밀리 멤버 (Family Member)를 위한 컴포넌트간 워크플로우 가변성 관리 및 구헌 방법에 대한 필요성은 끊임없이 요구되어 왔다. 본 논문에서는 .NET 기반 하에 엔터프라이즈 프레임워크에서 컴포넌트 워크플로우 가변성을 위한 구현 기법을 제시한다. 제시된 컴포넌트 워크플로우 가변성 구현 기법은 엔터프라이즈 프레 임워크에서 패밀리가 사용할 수 있는 공통 업무 워크플로우가 컴포넌트 내에 이미 생성되었음을 가정하며. 다양한 패밀리 멤버에 특화된 컴포넌트간의 워크플로우 구성 및 실행을 위한 기법으로 컴포넌트간 워크플로우의 확장성을 높여주게 된다.

  • PDF

금융업무프레임워크에서 컴포넌트 워크플로우 가변성연구 (Study on the Techniques in Component Workflow Variability Implementation based on the Banking Framework)

  • 최성
    • 정보처리학회논문지D
    • /
    • 제12D권7호
    • /
    • pp.1023-1030
    • /
    • 2005
  • 컴포넌트 기반 개발(Component Based Development, CBD)은 미리 구현된 블록단위의 컴포넌트를 사용하여 소프트웨어 개발비용 및 시간을 단축할 수 있다. 또한 컴포넌트는 내부의 상세 부분을 숨기고 인터페이스를 제공하여 대형 어플리케이션을 개발하는데 복잡성을 감소시킬수 있다. 엔터프라이즈 프레임워크 환경에서의 패밀리(Family)의 공통적인 요구사항은 컴포넌트 내 업무 워크플로우 형태로 표현될 수 있으나 ,다양한 패밀리 멤버(Family Member)의 요구사항에 특화된 워크플로우를 하나의 컴포넌트 내에 표현하는 것은 쉽지 않다. 따라서 패밀리 멤버(Family Member)를 위한 컴포넌트간 워크플로우 가변성 관리 및 구현 방법에 대한 필요성은 끊임없이 요구되고 있다. 본 연구에서는 은행업무의 엔터프라이즈 프레임워크에서 컴포넌트 워크플로우 가변성을 위한 구현 기법을 적용한 사례로 제시하였다. 예시된 컴포넌트 워크플로우 가변성 구현 기법은 엔터프라이즈 프레임워크에서 패밀리가 사용할 수 있는 공통 업무 워크플로우가 컴포넌트 내에 이미 생성되었음을 가정하며, 다양한 패밀리 멤버에 특화된 컴포넌트간의 워크플로우 구성 및 실행을 위한 기법으로 컴포넌트간 워크플로우의 확장성을 높여주게 된다.

EJB 기반 컴포넌트의 가변성 맞춤화 기법 (A Method to Customize the Variability of EJB-Based Components)

  • 민현기;김성안;이진열;김수동
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제33권6호
    • /
    • pp.539-549
    • /
    • 2006
  • 컴포넌트 기반 소프트웨어 개발 (CBD) 기술은 재사용 가능한 컴포넌트를 조립하여, 효율적으로 소프트웨어를 개발함으로써 개발 노력과 상품화 시간을 줄여주는 새로운 기술로 정착되고 있다. 이러한 CBD 컴포넌트는 한 도메인의 표준이나 공통적인 기능을 제공하여야 재사용성이 높아진다. 특히, 공통성 안의 미세한 가변적인 부분도 모델링하고, 이러한 가변성을 각 어플리케이션의 특성에 적합하게 특화 할 수 있도록 설계되어야 한다. Enterprise JavaBeans(EJB)는 컴포넌트를 구현하는 최적의 환경으로 인식되어 왔다. 그러나 EJB는 컴포넌트를 특화 할 수 있는 설계 기법을 제공하지 않기 때문에 비즈니스 컴포넌트의 재사용성이 낮아진다. 따라서 본 논문에서는 EJB 환경에서 컴포넌트의 가변성을 설계하는 효율적인 기법을 제안한다. 세 가지 컴포넌트 특화 기법인 선택형 기법, 플러그인 기법, 외부 프로파일 기법을 적용하여 EJB를 위한 컴포넌트 특화 기법을 제안한다. 제시한 기법을 다른 연구의 다양한 기준과 비교하여 제시한 기법의 유용성에 대해서 평가한다.

컴포넌트 코드 생성을 통한 컴포넌트 기반 제품 라인에서의 가변성 지원 (Variability Support in Component-based Product Lines using Component Code Generation)

  • 최승훈
    • 인터넷정보학회논문지
    • /
    • 제6권4호
    • /
    • pp.21-35
    • /
    • 2005
  • 소프트웨어 제품 라인은 소프트웨어 자산에 존재하는 재구성 가능한 컴포넌트를 구체화하고 미리 정의된 아키텍처를 기반으로 조립함으로써 고품질의 응용 프로그램을 효율적으로 개발하기 위한 패러다임이다. 최근 컴포넌트 기반의 여러 가지 제품 라인 개발 방법론들이 제안되었지만, 가변성 지원 컴포넌트의 구체적인 구현 기술은 제공하지 못하고 있다. 한편, 가변성을 지원하기 위한 여러 가지 구현 기술이 개발되었지만, 이러한 구현 기술은 개발 초기부터 가변성을 고려한 체계적인 분석 및 설계 방법을 제공하지 못한다. 본 논문에서는, UMI 모델링 기법을 확장한 컴포넌트 기반 제품 라인 개발 방법론인 PLUS와 컴포넌트 자동 생성 기법을 결합하여 특정 제품 생산의 효율성을 높이는 기법을 제안한다. 본 논문에서의 컴포넌트는 가변성을 지원하는 구현 부품들이 계층 구조를 이루며 각 구현 부품들은 XSLT 스크립트로 작성된다. 특성 모델에서 선택된 특성들로부터 개발자가 원하는 컴포넌트의 코드가 자동 생성되며, 마이크로웨이브 오븐 제품 라인을 사례 연구로 해서 가변성 지원 컴포넌트의 개발 프로세스를 살펴본다.

  • PDF

룰 기반 컴포넌트 개발 기법 및 사례 (Rule based Component Development Technique and Case study)

  • 김정아;황선명;진영택
    • 정보처리학회논문지D
    • /
    • 제12D권2호
    • /
    • pp.275-282
    • /
    • 2005
  • 컴포넌트 설계 시에 컴포넌트의 확장성 및 재사용성을 확대하기 위해서는 비즈니스 어플리케이션 개발 과정에서 발견된 가변성을 별도의 룰로 정의할 필요가 있다. 인터페이스의 래핑이나 구현 클래스의 재정의를 통한 컴포넌트의 개조 기법은 컴포넌트의 재사용을 지원하는데 한계가 있기 때문이다. 따라서, 컴포넌트 개발 과정에서 향후 컴포넌트의 재사용성을 고려한 설계가 필수적이다. 본 연구에서는 컴포넌트로 부터 가변적 특성을 분리하여 룰 컴포넌트를 포함하도록 기존의 컴포넌트 아키텍처를 확장하였으며, 룬 정의에 필요한 구문을 정의하였다. 또한 보험판매 시스템에 적용하여 룰의 재정의를 통한 컴포넌트의 재사용성을 검증해 보았다.

데이터 타입 무결성 컴포넌트 모델 : 외부화된 데이터 가변성 처리 기법 (Data Type-Tolerant Component Model: A Method to Process Variability of Externalized Data)

  • 임윤선;김명;정승남;정안모
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제36권5호
    • /
    • pp.386-395
    • /
    • 2009
  • 다계층 구조로 설계된 현대의 분산 애플리케이션 아키텍처에서 비즈니스 엔티티는 모든 서비스 로직 컴포넌트들을 관통하는 일종의 횡단관심사(Crosscutting Concerns)이다. 그러므로 비즈니스 엔티티가 변화하면 이와 관련된 서비스 컴포넌트들은 비록 애플리케이션 프레임워크의 공통적인 기능을 구현한 서비스 로직 컴포넌트라 할지라도 새로운 비즈니스 엔티티를 다를 수 있도록 수정되어야 한다. 본 논문에서는 비즈니스 엔티티, 즉 외부화(externalized)된 데이터에 대한 가변성(variability)을 처리하는 DTT 컴포넌트 모델(Data Type-Tolerant Component Model)을 제시한다. DTT 컴포넌트 모델은 SCDT(Self-Contained Data Type)와 가변점(Variation Point) 인터페이스를 통해 프로덕트 라인의 데이터 가변성을 구현 수준에서 구체적으로 표현하고, 서비스 컴포넌트 코드 수정대신 비즈니스 엔티티와 SCDT간 타입 변환을 지원하는 데이터 타입 컨버터를 도입함으로써 애플리케이션 엔지니어링 효율을 향상시킨다. 서비스 컴포넌트가 외부화된 비즈니스 엔티티를 직접 다루지 않고 SCDT 만을 다루게 함으로써 데이터와 함수의 커플링을 다시 컴포넌트 수준에서 로컬화했다는 점이 DTT 컴포넌트 모델의 의의라 할 수 있다.

컴포넌트 기반의 MDA 공학 프로세스 (Component-Based MDA Engineering Process)

  • 유태권;라현정;김수동
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 한국컴퓨터종합학술대회 논문집 Vol.32 No.1 (B)
    • /
    • pp.325-327
    • /
    • 2005
  • 컴포넌트는 컴포넌트 기반 개발(Component Based Development, CBD)기술에서 재사용되는 기본 단위로서 OOP(Object Oriented Programming, OOP)의 객체보다 상대적으로 큰 단위의 기능성을 제공하며 재사용성이 뛰어나다. 모델 기반 아키텍처(Model Driven Architecture, MDA)는 모델들 간의 다양한 변환(Transformation)을 활용하여 어플리케이션 개발을 자동화하는 새로운 패러다임으로서 소프트웨어의 생산성을 향상시킨다. 그러나 MDA 는 컴포넌트와 같은 어플리케이션들 간의 공통성과 가변성을 활용한 재사용성을 직접적으로 지원하지는 않는다. 본 논문에서는 CBD 와 MDA 의 장점과 한계점을 알아보고 서로의 단점을 보완할 수 있도록 컴포넌트 PIM 과 컴포넌트 기반의 MDA 공학 프로세스를 제안한다. 제안된 컴포넌트 PIM 과 프로세스를 이용하면 어플리케이션들 간의 공통성과 가변성을 이용한 뛰어난 재사용성과 자동화를 통한 생산성의 ,향상 및 높은 유지보수성을 가질 수 있다.

  • PDF

소프트웨어 컴포넌트 개발을 위한 논리 및 워크플로우 가변성 설계 기법 (Techniques for Designing Logic and Workflow Variability in Software Component Development)

  • 정광선;김수동
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제31권8호
    • /
    • pp.1027-1042
    • /
    • 2004
  • 소프트웨어 컴포넌트는 단일 시스템에서 사용하기보다는 다수의 시스템 혹은 기업, 프로젝트간에 재사용하기 위한 소프트웨어 모듈이다. 컴포넌트가 다양한 시스템에서 재사용되기 위해서는 여러 시스템에서 요구되는 공통적인 기능을 제공하는 것뿐만이 아니라 업무상에서 나타나는 다양한 가변적 측면들이 고려되어 고객의 요구에 맞도록 커스터마이즈 될 수 있어야 한다. 사용자가 컴포넌트를 쉽게 사용하기 위해서는 개발 단계에서부터 가변적인 측면이 고려된 컴포넌트가 설계되어 구현되어야 한다. 가변성을 고려하여 쉽게 커스터마이즈 될 수 있는 컴포넌트는 여러 어플리케이션에서 높은 재사용성을 가지게 될 것이다. 기존에 제시된 커스터마이즈 기법들은 소프트웨어가 가지는 가변적인 요소를 어떻게 설계할지에 대해 객체 지향에 기반하여 개념적인 방법만을 제시하고 있으며, 컴포넌트에 적합한 가변성을 고려하고 있는 기법은 드문 실정이다. 따라서 개발이 완료되어 배포된 블랙 박스 형태의 컴포넌트를 커스터마이즈 하기에는 적합하지 않다. 본 논문에서는 컴포넌트가 가지는 기능적인 측면에서의 가변성을 논리와 워크플로우 두 가지로 분류하여 각각의 가변성을 설계하기 위한 선택형, 플러그인, 외부화 세 가지 기법들을 제시한다. 또한 실용적으로 기법들을 적용하기 위해 상세한 설계 지침과 적용 지침들도 제시한다.

EJB 환경에서 컴포넌트의 Required 인터페이스 설계 기법 (Design of Required Interface for Components in EJB Environment)

  • 윤희윤;김수동
    • 정보처리학회논문지D
    • /
    • 제11D권3호
    • /
    • pp.671-682
    • /
    • 2004
  • 다양한 정보기술의 등장과 소프트웨어 복잡성의 증가로 소프트웨어 개발 비용과 노력이 크게 증가하고 있다. 컴포넌트 기반 개발(CBD) 기술은 높은 재사용과 유지보수성을 제공하여 비용과 노력을 크게 절감하는 새로운 방법으로 각광을 받고 있다. CBD에서는 컴포넌트의 사용자가 컴포넌트를 이용해 고유의 도메인에 맞는 시스템을 구축하기 위한 컴포넌트의 가변적인 부분을 가지고 있다. 컴포넌트 내부의 가변적인 부분은 사용자가 컴포넌트에서 제공하는 기능인 Required 인터페이스를 통하여 쉽게 설정할 수 있다. Enterprise JavaBeans(EJB)은 Java 기반의 컴포넌트를 구현할 수 있는 상용 규격으로 활용되고 있다. 그러나 EJB에서 Required 인터페이스를 직접 구현할 수 있는 장치가 제한적이다. 본 논문에서는 EJB 환경에서 Required 인터페이스를 효과적으로 정의하고 子현하기 위한 인터페이스 저장형 기법, 클래스 저장형 기법, 인터페이스 생성형 기법, Plug-in 기법을 제안한다. 인터페이스 저장형 기법은 가변적인 설정 값들은 Required 인터페이스에서 저장하고 있으며 클래스 저장형 기법은 컴포넌트 분석 모델의 수정 없이 가변성을 가진 빈들이 Required 인터페이스로 설정된다. 인터페이스 생성형 기법은 컴포넌트의 가변성을 위한 Required 인터페이스 역할의 민을 새롭게 생성하며 Plug-in 기법은 사용자가 외부로부터 가변적인 부분을 플러그인 하여 가변성을 설정할 수 있다. 제시된 4가지 기법들은 CBD 컴포넌트의 Required 인터페이스의 의미를 보존하며 높은 품질의 컴포넌트 구현을 가능하게 한다.