CompGenX: GenVoca와 XML 기반의 컴포넌트 코드 생성 시스템

CompGenX: Component Code Generation System based on GenVoca and XML

  • 최승훈 (덕성여자대학교 컴퓨터과학부)
  • 발행 : 2003.06.01

초록

소프트웨어 생산 라인은. 소프트웨어 자산에 존재하는 일반적인 컴포넌트를 구체화하고 미리 정의된 아키텍처를 기반으로 조립함으로써, 고품질의 응용 프로그램을 빠르게 개발할 수 있도록 해 주는 것을 목적으로 한다. 본 논문에서는, 소프트웨어 생산 라인 구축을 지원하기 위하여 GenVoco 아키텍처와 XML/XSLT 기술을 이용한 컴포넌트 코드 자동 생성 기법과, 이를 기반으로 한 컴포넌트 코드 생성 시스템인 CompGenX(Component Generator using XML)를 제안한다. CompGenX은 컴포넌트 코드 생성 시에 컴포넌트의 재구성성을 지원함으로써 재사용자가 컴포넌트 재사용 시 자신의 목적에 맞는 컴포넌트의 소스 코드를 자동으로 생성할 수 있게 해 준다. 이를 위한 컴포넌트 개발 과정은 크게 컴포넌트 패밀리 구축 과정과 컴포넌트 재사용 과정으로 나누어진다. CompGenX는 컴포넌트 패밀리 구축 과정을 위하여, 도메인 분석을 위한 특성 모델 작성 도구, 도메인 설계를 위한 도메인 아키텍처 정의 도구를 제공한다. 또한 코드 자동 생성에 필요한 구성 지식 명세서와 코드 템플릿 작성 도구를 제공한다. 컴포넌트 재사용 과정을 위해서 CompGenX는, 컴포넌트 패밀리 검색 도구, 컴포넌트 커스터마이징 도구 및 컴포넌트 코드 생성기 등을 제공한다. 본 논문의 컴포넌트 코드 자동 생성 기법과 생성 시스템은 컴포넌트 기반 소프트웨어 생산 라인 구축을 위한 기반 기술로서 적용될 수 있다.

Software product lines are to attain the rapid development of qualify applications by concretizing the general components populated in software assets and assembling them according to the predefined architectures. For supporting the construction of the software product lines, this paper proposes a component code generation techniques based on GenVoca architecture and XML/XSLT technologies, In addition, CompGenX(Component Generator using XML), a component code generation system, is proposed on the basis of this techniques. By providing reconfigurability of component at the time of code generation, CompGenX allows the reusers to create the component source code that is appropriate to their purpose, In this system, the process of the component development is divided into two tasks which are the component family construction task and the component reuse task, For the component family construction, CompGenX provides the feature modeling tool for domain analysis and the domain architecture definition tool. Also, it provides the tool for building the component configuration know1edge specification and the code templates, For the component reuse task, it offers the component family search tool. the component customizing tool and the component code generator. Component code generation techniques and system in this paper should be applicable as basic technology to build the component-based software product lines.

키워드