• 제목/요약/키워드: Software Component Composition

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

관점지향 프로그램 기반의 동적 소프트웨어 컴포넌트 조합 패턴 (Dynamic Software Component Composition Based On Aspect-Oriented Programming)

  • 배성문;박철순;박춘호
    • 산업경영시스템학회지
    • /
    • 제31권4호
    • /
    • pp.100-105
    • /
    • 2008
  • Cost reduction, time to market, and quality improvement of software product are critical issues to the software companies which try to survive in recent competitive market environments. Software Product Line Engineering (SPLE) is one of the approaches to address these issues. The goal of software product line is to maximize the software reuse and achieve the best productivity with the minimum cost. In software product line, software components are classified into the common and variable modules for composition work. In this paper, we proposed a dynamic composition process based on aspect-oriented programming methodology in which software requirements are classified into the core-concerns and cross-cutting concerns, and then assembled into the final software product. It enables developers to concentrate on the core logics of given problem, not the side-issues of software product such as transactions and logging. We also proposed useful composition patterns based on aspect oriented programming paradigm. Finally, we implemented a prototype of the proposed process using Java and Aspect to show the proposed approach's feasibility. The scenario of the prototype is based on the embedded analysis software of telecommunication devices.

CBSD에서의 컴포넌트 조립 테스트 기법 (A Component Composition Testing Technique in CBSD)

  • 윤회진;최병주
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제29권10호
    • /
    • pp.694-702
    • /
    • 2002
  • 컴포넌트 기반 소프트웨어 개발(Component-Based Software Development : CBSD)로 만들어진 소프트웨어는 현재 개발자에 의해 새로 만들어진 컴포넌트들과 재사용되는 컴포넌트들의 '조립'으로 이루어진다. 본 논문에서는 이들을 각각 화이트박스 컴포넌트와 블랙박스 컴포넌트로 정의한다. 따라서 컴포넌트 조림에 의한 오류는 소프트웨어를 이루는 블랙박스 컴포넌트들과 화이트박스 컴포넌트들의 상호작용에 의해 발생한다. 본 논문은 이러한 조립 오류들을 테스트하는 방법을 제안하고, 엔터프라이즈 자바빈즈 아키텍쳐에서의 컴포넌트 조립 테스트에 적용한다. 본 기법은 화이트박스 컴포넌트의 특정 영역에만 오류를 삽입하여 테스트 케이스를 선정한다. 오류가 삽입되는 특정 영역은 컴포넌트 조립의 패턴들을 분석하석 선정되며, 이는 본 기법의 테스트 케이스가 높은 효율성을 갖도록 한다. 본 논문에서는 테스트 케이스의 효율성을 실험을 통해 평가하며, 나아가 컴포넌트 조립 테스트 기법의 자동화 방안을 제안한다.

컴포넌트 결합 명세서에 기반한 컴포넌트 결합 모델 (A Component Composition Model based on Component Composition Specification)

  • 백경원;박성은;이정태;류기열
    • 정보처리학회논문지D
    • /
    • 제8D권6호
    • /
    • pp.723-734
    • /
    • 2001
  • 현재 대부분의 컴포넌트 기반 개발 환경 들이 특정 형태 컴포넌트와 이를 위한 프레임웍 기능 제공을 위주로 하는데 대하여, 좀 더 효과적인 컴포넌트 기반 개발 환경의 구축을 위해서는 재귀적 컴포넌트 결합 및 다양한 결합형태의 지원, 그리고 다중 티어 아키텍쳐를 지원할 수 있는 방안의 필요성이 제기되고 있다. 이의 해결 방안의 하나로 본 논문에서는 재귀적 컴포넌트 결합을 지원할 수 있으며, 컴포넌트간 상호 동작 조건을 기술할 수 있도록 확장된 컴포넌트 결합 명세의 기술 방안 및 이를 이용한 컴포넌트 결합 모델을 제안하였다. 제안된 결합 명세서는 기존의 컴포넌트 기술 방법들에서 지적되고 있는 컨트랙트로서의 부족한 기능을 보완하고 있을 뿐만 아니라 다양한 형태의 컴포넌트간 결합을 일관된 형태로 지원 함으로써 다중 티어(Multi-Tier) 개념을 지원하는 컴포넌트 아키텍쳐의 구현 및 이를 위한 컴포넌트 결합 도구의 구현에 활용될 수 있다.

  • PDF

안정적 확장이 보장되는 소프트웨어를 위한 정형적 조합 법칙 (Compatibility-Guaranteeing Software Component Evolution based on Composition Rules)

  • Lee, Sunae;Lee, Joon-Sang;Bae, Doo-Hwan
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 봄 학술발표논문집 Vol.30 No.1 (B)
    • /
    • pp.10-12
    • /
    • 2003
  • Since building large-scale software is usually bi9 burden to most developers, it has been an important issue for many researchers. In this paper, we suggest a mechanism that can be used to support such large-scale development. Through composition rules via subtyping within Statecharts, incremental construction of software can be achieved. Among the composition rules (i.e. delegation rule and mixin rule), we mainly focus on the delegation rule in our work. Not only we can check the subtype property. but also can verify the behavior compatibility of composite results that are available by composition rules. This new mechanism is helpful for analysts as well as designers, and it can be used as a guideline for incremental and compatible construction of component based software.

  • PDF

컴포넌트 합성에서 커넥터의 메시지 스케쥴링 알고리즘 (The Message Scheduling Algorithm of Connector in the Software Composition)

  • 정화영
    • 인터넷정보학회논문지
    • /
    • 제8권6호
    • /
    • pp.87-93
    • /
    • 2007
  • 컴포넌트 기반 소프트웨어 개발에서, 컴포넌트 모듈간의 인터페이스는 매우 중요하다. 대부분의 기존 방법들은, 커넥터가 원격 프로시저 호출(RPC)이나 이벤트 호출에 의해서 둘 또는 그 이상의 컴포넌트들 사이의 모든 통신 채널을 담당한다. 그러나 이들 처리방법은 컴포넌트가 커넥터를 통하여 다른 컴포넌트에게 많은 요청을 보낼 때 한계를 가진다. 즉, 커넥터에서 다중 요청을 처리할 수 있는 보다 효율적인 인터페이스 방법이 필요하다. 본 논문에서는 커넥터에서 메시지 큐를 이용한 상호작용 스케줄링 알고리즘을 제안하였다. 이를 위하여 메시지를 일시적으로 저장 및 가져오도록 운영하는 메시지 버퍼를 사용하였다.

  • PDF

Component-Z: Object-Z를 확장한 컴포넌트 정형 명세 언어 (Component-Z: A Formal Specification Language Extended Object-Z for Designing Components)

  • 이종국;신숙경;김수동
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제31권5호
    • /
    • pp.677-696
    • /
    • 2004
  • 컴포넌트 기반 소프트웨어 공학(CBSE)은 재사용 가능한 컴포넌트를 조립하여 시스템을 개발하는 방법이다. CBSE는 소프트웨어 개발비용과 기간을 단축할 수 있는 새로운 패러다임으로 평가되고 있다. 정형 명세를 사용하면 컴포넌트 구성 요소들 사이의 일관성과 정확성을 판단할 수 있기 때문에 컴포넌트 설계의 품질을 높일 수 있다. 현재까지 제안된 컴포넌트 정형 명세 언어들은 인터페이스간의 계약, 컴포넌트의 구조적인 측면과 동적인 측면, 컴포넌트 기반 시스템, 컴포넌트간의 결합, 가변성 중 일부만을 명세에 반영한다. 따라서 지금까지 발표된 정형 명세 언어를 컴포넌트 설계 과정의 모든 단계에서 사용하는 것은 적절치 않다. 본 논문에서는 컴포넌트 정형 명세 언어인 Component-Z를 제안한다. Component-Z는 Object-Z를 확장하여 컴포넌트 명세를 위한 새로운 표기법을 추가하고 의미론을 확장한다. Component-Z를 사용하여 인터페이스, 컴포넌트 내부 구조, 컴포넌트 내부 워크플로우와 인터페이스간의 워크플로우를 명세 할 수 있다. 또한 가변점(variation point), 가변치(variant), customization 인터페이스를 사용하여 가변성을 명세 할 수 있다. 인터페이스와 컴포넌트 사이의 관계는 매핑 스키마(mapping schema)를 사용하여 정의한다. 또한 병렬 연산자(parallel operator)를 사용하여 컴포넌트간의 결합을 명세 할 수 있고 컴포넌트 기반 시스템을 명세하여 컴포넌트가 배포된 상황을 표현할 수 있다. 따라서 본 논문에서 제안된 정형 명세 언어를 사용하여 컴포넌트 설계에 필요한 모든 요소를 표현 할 수 있다. 사례연구에서는 은행 계좌 관리 시스템을 명세하여 Component-Z가 컴포넌트 설계의 전 단계에서 사용될 수 있음을 보인다.

Visual Component Assembly and Tool Support Based on System Architecture

  • Lee, Seung-Yun;Kwon, Oh-Cheon;Shin, Gyu-Sang
    • ETRI Journal
    • /
    • 제25권6호
    • /
    • pp.464-474
    • /
    • 2003
  • Component-based development leverages software reusability and reduces development costs. Enterprise JavaBeans (EJB) is a component model developed to reduce the complexity of software development and to facilitate reuse of components. However, EJB does not support component assembly by a plug-and-play technique due to the hard-wired composition at the code level. To cope with this problem, an architecture for EJB component assembly is defined at the abstract level and the inconsistency between the system architecture and its implementation must be eliminated at the implementation level. We propose a component-based application development tool named the COBALT assembler that supports the design and implementation of EJB component assembly by a plug-and-play technique based on the architecture style. The system architecture is first defined by the Architecture Description Language (ADL). The wrapper code and glue code are then generated for the assembly. After the consistency between the architecture and its implementation is checked, the assembled EJB components are deployed in an application server as a new composite component. We use the COBALT assembler for a shopping mall system and demonstrate that it can promote component reuse and leverage the system maintainability.

  • PDF

컴포넌트 기반 개발에서 처리 부품들의 합성을 검증하는 방안 (A Validation Technique for Process Component Composition in the Component-Based Development Process)

  • 주복규;김영철
    • 정보처리학회논문지D
    • /
    • 제8D권6호
    • /
    • pp.691-698
    • /
    • 2001
  • 컴포넌트 기반 소프트웨어 개발 방법은 점증하는 소프트웨어의 복잡성에 대처하고, 생산성을 높일 수 있는 가장 주요한 수단의 하나로 인식되고 있다. 이 논문은 자료흐름 시스템 구조에 따른 설계서로 부품을 합성하여 소프트웨어를 개발하는 경우에, 두 부품의 영역관계를 분석하였다. 그 결과로 조립 시에 개별 부품들의 시험 자료를 이용하여 통합을 위한 시험 자료를 생성하는 방안을 제시하였으며, 이는 통합을 효과적으로 검증할 수 있게 해 준다. 또한 실험을 통해서 제안된 기법의 실제 적용 가능성을 보였다. 이 연구에서 사용한 영역 분석은 영역 시험 기법을 응용한 것이다.

  • PDF

An XML and Component-based IDE for Document Flow Application

  • Xiaoqin, Xie;Juanzi, Li;Lu, Ma;Kehong, Wang
    • 한국디지털정책학회:학술대회논문집
    • /
    • 한국디지털정책학회 2004년도 International Conference on Digital Policy & Management
    • /
    • pp.299-310
    • /
    • 2004
  • Business process in e-government mostly embody as the flow of documents. Constructing a web-based document flow system becomes an critical task for today s digital government. But few of them use an off-the-shelf workflow product. Why? One of the reasons is that most of the workflow system are heavyweight, monolithic, and package a comprehensive set of features in an all-or-nothing manner. Another reason is that workflow technology lacks the constructs and modeling capability as programming language. It is incumbent on government IT organizations to transform their solution development to component-based computing model. Component technology isolates the computation and communication parts, but how to compose different software components is still a hard nut. An integrated development environment is necessary for CBSD. In this paper we propose a XML and component-based document flow-oriented integrated development environment (DFoIDE) for software developers. By writing some xml configure file, and operate on DFoIDE, developer can construct a workflow application quickly. This method divides system to several components and the activities in process are implemented as business component. Different components are discribed detailedly in this paper, especially one of the core component. Component Integrating Tool. Different perspectives in workflow application are seperated and depicted as different XML files. Correspondly, A component composition method for developing workflow application instead of workflow itself is proposed.

  • PDF

EJB와 COM+ 결합을 위한 모델기반 컴포넌트 변환 기법 (A Component Transformation Technique based on Model for Composition of EJB and COM+)

  • 최일우;신정은;류성열
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권12호
    • /
    • pp.1172-1184
    • /
    • 2003
  • 현재 EJB(Enterprise Java Beans), COM+(Component Object Model+)등의 서로 다른 컴포넌트 참조 모델(Component reference model)을 기반으로 한, 상이한 컴포넌트 시스템 간 통합(Integration)에 대한 새로운 기술들이 제기되고 있다. 동일한 컴포넌트 플랫폼에서 컴포넌트 간 운용은 소스레벨의 결합(Composition)을 통해 이루어진다. 그러나 상이한 컴포넌트 플랫폼의 경우, 유사 도메인 컴포넌트임에도 불구하고 컴포넌트 간 결합은 불가능한 실정이다. 본 논문에서는 상이한 컴포넌트 플랫폼 즉, EJB와 COM+ 컴포넌트 간의 결합 문제를 모델기반의 컴포넌트 변환 기법으로 해결 하였다. EJB, COM+ 컴포넌트 간 결합을 위해 각 참조모델을 비교, 분석하여 구현 독립적(Implementation Independent)인 가상 컴포넌트 모델(Virtual Component Model)과 상호 변환을 위한 구현 테이블(Implementation Table)을 제시하였다. 가상 컴포넌트 모델과 구현 테이블을 참조, 각 구현 모델을 가상 컴포넌트 모델로 일반화하거나 가상 컴포넌트 모델링을 통하여 플랫폼의 구현 독립적인 가상 컴포넌트 모델을 작성하고, 선택적으로 EJB와 COM+로 변환 가능하게 한다. 상이한 컴포넌트 플랫폼으로의 효율적인 모델변환 방법을 제시함으로서 EJB와 COM+ 컴포넌트간의 결합이 가능하다.