• 제목/요약/키워드: code generation

검색결과 1,012건 처리시간 0.028초

AJFCode: An Approach for Full Aspect-Oriented Code Generation from Reusable Aspect Models

  • Mehmood, Abid;Jawawi, Dayang N.A.
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제16권6호
    • /
    • pp.1973-1993
    • /
    • 2022
  • Model-driven engineering (MDE) and aspect-oriented software development (AOSD) contribute to the common goal of development of high-quality code in reduced time. To complement each approach with the benefits of the other, various methods of integration of the two approaches were proposed in the past. Aspect-oriented code generation, which targets obtaining aspect-oriented code directly from aspect models, offers some unique advantages over the other integration approaches. However, the existing aspect-oriented code generation approaches do not comprehensively address all aspects of a model-driven code generation system, such as a textual representation of graphical models, conceptual mapping, and incorporation of behavioral diagrams. These problems limit the worth of generated code, especially in practical use. Here, we propose AJFCode, an approach for aspect-oriented model-driven code generation, which comprehensively addresses the various aspects including the graphical models and their text-based representation, mapping between visual model elements and code, and the behavioral code generation. Experiments are conducted to compare the maintainability and reusability characteristics of the aspect-oriented code generated using the AJFCode with the most comprehensive object-oriented code generation approach. AJFCode performs well in terms of all metrics related to maintainability and reusability of code. However, the most significant improvement is noticed in the separation of concerns, coupling, and cohesion. For instance, AJFCode yields significant improvement in concern diffusion over operations (19 vs 51), coupling between components (0 vs 6), and lack of cohesion in operations (5 vs 9) for one of the experimented concerns.

DVB-RCS Next Generation을 위한 Third-dimension Turbo Code 분석 (Analysis Third-dimension Turbo Code for DVB-RCS Next Generation)

  • 박태두;김민혁;정지원
    • 한국정보통신학회논문지
    • /
    • 제15권2호
    • /
    • pp.279-285
    • /
    • 2011
  • 차세대 무선통신에서는 현재 서비스 되고 있는 성능보다 높은 BER(Bit Error Rate)의 성능을 요구한다. 기존의 DVB-RCS(Digital Video Broadcasting - Return Channel via Satellite)에서 사용중인 이진 터보 코드(Double binary Turbo code)는 높은 SNR(에서 오류마루 현상이 발생하여 차세대 무선통신에서 사용하기가 어려움이 있다. 따라서 본 논문에서는 DVB-RCS NG에 적합한 부호화 방식으로 3D-터보 코드(Tthird-dimension Turbo code)의 부복호화기의 구조를 분석하고 성능분석 하였다. 3D-터보 코드는 기존의 DVB-RCS 방식에 rate-1인 post-encoder를 첨가시켜 오류마루 현상을 보완한 부호화기이다. 3D-터보 코드는 post-encoder의 형태, 인터리빙 기법, ${\lambda}$값의 변화에 따라 성능이 달라지므로 본 논문에서는 각 파라메타에 대한 최적의 값을 제시하였다. 전체적으로 3D-터보 코드가 기존의 DVB-RCS 터보 코드에 비해 성능이 우수하고 기존의 문제점인 오류마루 현상을 해결할 수 있음을 알 수 있다.

Development of a Code Generation Support System in Integrated Development Environment of an Educational Compiler

  • Kwon, Jung-Hoon;Bae, Jong-Min
    • 한국컴퓨터정보학회논문지
    • /
    • 제21권11호
    • /
    • pp.159-166
    • /
    • 2016
  • Compiler course is one of the important courses in computer science. It requires more efficient learning environment because of its large coverage scale and complexity. One of its solutions is to provide the integrated development environment for educational compilers which is enable to give practice-oriented class and enhance student's interest. This paper presents the code generation support system developed in an integrated development environment of educational compiler. Our system helps students to understand the process of code generation and visualizes the relation among the source language, AST, and the target language. It makes students develop their own compilers more easily.

컴포넌트 모델구축을 위한 클래스 코드 자동생성 방법 (Class Code Generation method for Component model Construction)

  • 임근;이기영
    • 한국컴퓨터정보학회논문지
    • /
    • 제13권5호
    • /
    • pp.69-76
    • /
    • 2008
  • 본 논문에서는 컴포넌트의 단위인 클래스의 일관된 생성과정 및 정형화된 형식을 기반으로 클래스 코드생성을 위한 프로토타입을 구현하였다. 특히 컴포넌트의 기반이 되는 클래스간 연결관계와 집합관계 등을 객체지향언어로는 표현하기 어려운 문제들을 해결하기 위하여 관련성 규칙을 제안하였으며, 이를 통해서 일관성 있는 코드생성의 정형화가 가능하도록 하였다. 또한 코드 생성기를 이용해서 생성된 소스코드는 컴포넌트 모델 구축에 적용되며, 이후에 어플리케이션 개발 시 재사용 대상인 비즈니스 컴포넌트의 조립과 분배의 기반이 되도록 한다.

  • PDF

특징형상정보와 작업설계정보를 이용한 NC코드의 자동 생성 (Automatic generation of NC-code using Feature data and Process Planning data)

  • 박재민;노형민
    • 한국정밀공학회:학술대회논문집
    • /
    • 한국정밀공학회 2002년도 추계학술대회 논문집
    • /
    • pp.591-594
    • /
    • 2002
  • Generating NC-code from 3D part model needs a lot of effort to make many decisions, including machining area, tool change data, tool data, cutting condition, etc., by using either manual or computer aided method. This effort can be reduced by integration of automated process planning and NC-code generation. In case of generating NC code with a help of the process planning system, many data mentioned from the process planning can be used. It means that we can create NC-code about a full part. In this study, integration of FAPPS(Feature based Automatic Process Planning) with a NC-code generating module is described and additional data to adapt NC-code for machine shop is discussed.

  • PDF

재목적 코드 생성 기법을 이용한 자바 Bytecode에서 SPARC 코드로의 번역 (Translating Java Bytecode to SPARC Code using Retargetable Code Generating Techniques)

  • 오세만;정찬성
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제6권3호
    • /
    • pp.356-363
    • /
    • 2000
  • 자바 프로그래밍 언어는 인터넷 및 분산 네트워크 환경에서 효과적으로 수행될 수 있도록 설계된 언어이다. 그러나 각 플랫폼에서 인터프리터 방식으로 실행된다는 단점을 가지고 있기 때문에, 자바 프로그램을 효율적으로 실행하기 위해서는 Bytecode를 목적 기계 코드인 SPARC 코드로 변환하는 코드 생성 시스템이 개발되어야 한다. 본 논문에서는 재목적 코드 생성 기법을 이용하여 Bytecode를 SPARC 코드로 변환하는 코드 생성 시스템을 구현하였다. 이를 위해 Bytecode로부터 SPARC 코드 생성 규칙을 기술한 Bytecode 테이블을 작성하였고, 클래스 파일을 입력으로 받아 Bytecoed를 코드 확장시에 적합한 형태로 변환하는 정보추출기를 구현하였다. 정보추출기가 Bytecode 명령어의 피연산자에 대한 상수 기억장소의 엔트리를 결정한 후, 코드 확장기가 변경된 Bytecode를 Bytecode 테이블에 따라 SPARC 코드로 변환한다. 또한, 재목적 코드 생성 시스템은 다양한 목적 기계 코드를 생성하기 위해 체계적으로 재구성될 수 있다.

  • PDF

자율적인 웹 서비스 품질 정보 수집을 위한 프록시 클라이언트 코드의 자동 생성 방안 (Automatic Generation Method of Proxy Client Code to Autonomic Quality Information)

  • 서영준;한정수;송영재
    • 한국콘텐츠학회논문지
    • /
    • 제8권1호
    • /
    • pp.228-235
    • /
    • 2008
  • 본 논문에서는 모니터링 에이전트를 통한 웹 서비스 선정 과정의 자동화를 위해 프록시 클라이언트 코드를 자동 생성하는 방안을 제안한다. 본 논문의 기법은 템플릿 룰에 따라WSDL문서의 특정 엘리먼트의 속성 값을 가져옴으로써 서비스 사용자에게 프록시 클라이언트의 소스 코드를 제공할 수 있게 해 준다. 즉 XSLT 스크립트 파일은 클라이언트 코드 생성시 필요한 동적 호출 인터페이스 모델의 코드 골격을 제공한다. 이러한 코드 자동 생성 기법은 이동 에이전트 기술과 더불어 선정 아키텍처에서의 기아 상태를 해결하기 위해 필요하다 선정 서비스를 제외하더라도 검색 결과상의 모든 서비스들에 대한 요청 HTTP 메시지를 발생시키기 위해서는 코드 자동 생성 기법이 필요하다. 생성된 프록시 클라이언트 프로그램 코드는 검색된 서비스들에 대한 더미 메시지를 발생시킨다. 본 논문에서 제시한 클라이언트 코드 생성 방안은 자동 생성 프로그래밍 영역에서의 적용 가능성을 보여준다.

A Survey of Automatic Code Generation from Natural Language

  • Shin, Jiho;Nam, Jaechang
    • Journal of Information Processing Systems
    • /
    • 제17권3호
    • /
    • pp.537-555
    • /
    • 2021
  • Many researchers have carried out studies related to programming languages since the beginning of computer science. Besides programming with traditional programming languages (i.e., procedural, object-oriented, functional programming language, etc.), a new paradigm of programming is being carried out. It is programming with natural language. By programming with natural language, we expect that it will free our expressiveness in contrast to programming languages which have strong constraints in syntax. This paper surveys the approaches that generate source code automatically from a natural language description. We also categorize the approaches by their forms of input and output. Finally, we analyze the current trend of approaches and suggest the future direction of this research domain to improve automatic code generation with natural language. From the analysis, we state that researchers should work on customizing language models in the domain of source code and explore better representations of source code such as embedding techniques and pre-trained models which have been proved to work well on natural language processing tasks.

Bytecode로부터 재목적 코드 생성 기법을 이용한 Pentium 코드 생성에 관한 연구 (A Study on the Pentium Code Generation using Retargetable Code Generation Technique from Bytecode)

  • 정성옥;고광만;이성주
    • 전자공학회논문지CI
    • /
    • 제37권4호
    • /
    • pp.1-8
    • /
    • 2000
  • 인터넷 및 WWW의 급속한 성장은 이 기종 기계 및 분산 네트워크 환경에서 수행될 수 있는 응용 소프트웨어를 위한 프로그래밍 언어에 대한 연구를 부각시키고 있다. 이러한 이기종 기계 및 분산 네트웍 환경에서 응용 소프트웨어 개발을 위해 개발된 Java 언어는 객체지향 특성을 지원하는 언어이며 Java 프로그래밍 언어 환경에서는 이식성, 번역성, 고성능, 및 단순성 등을 지원하고 있다. Bytecode는 Java 언어의 중간 코드로서 이 기종 기계 및 분산 네트웍 환경의 다중 플랫폼 환경에서 다양한 응용 소프트웨어의 개발을 가능하게 하고 있다. 하지만 Bytecode는 인터프리터 기법으로 실행되는 특성 때문에 많은 실행 시간을 소비하는 단점을 가지고 있다. 본 연구에서는 Bytecode로부터 정형화된 방법으로 다양한 목적기계에 대한 코드를 생성하기 위해 재목적 코드 생성 시스템을 설계하고 구현하고자 한다. 특히, Java 컴파일러로부터 생성된 Bytecode로부터 실질적으로 Pentium 코드를 생성하는 시스템을 구현한다. 본 연구의 원활한 수행을 위해 컴파일러 자동화 도구인 ACK의 코드 생성 시스템을 기반으로 한다.

  • PDF

Framework for evaluating code generation ability of large language models

  • Sangyeop Yeo;Yu-Seung Ma;Sang Cheol Kim;Hyungkook Jun;Taeho Kim
    • ETRI Journal
    • /
    • 제46권1호
    • /
    • pp.106-117
    • /
    • 2024
  • Large language models (LLMs) have revolutionized various applications in natural language processing and exhibited proficiency in generating programming code. We propose a framework for evaluating the code generation ability of LLMs and introduce a new metric, pass-ratio@n, which captures the granularity of accuracy according to the pass rate of test cases. The framework is intended to be fully automatic to handle the repetitive work involved in generating prompts, conducting inferences, and executing the generated codes. A preliminary evaluation focusing on the prompt detail, problem publication date, and difficulty level demonstrates the successful integration of our framework with the LeetCode coding platform and highlights the applicability of the pass-ratio@n metric.