• 제목/요약/키워드: 디자인 코드

검색결과 200건 처리시간 0.031초

디자인 패턴에 대한 소스코드 자동 생성 기법 (Automatic Source Code Generating Technique from Design Patterns)

  • 김운용;최영근
    • 정보처리학회논문지D
    • /
    • 제9D권5호
    • /
    • pp.847-858
    • /
    • 2002
  • 객체지향 프로그래밍의 주요 목적은 효율적인 재사용성과 개발시간의 단축 그리고 소프트웨어 품질의 향상에 있다. 이러한 목적을 달성하기 위한 하나의 방법으로 소프트웨어 개발 시 기존에 잘 정의되고 테스트된 설계정보를 이용하는 것이다. 이 잘 정의되고 테스트된 설계정보는 디자인 패턴이라 불러진다. 이 디자인 패턴은 소프트웨어 개발 시 특정상황에서 발생할 수 있는 문제에 대한 해결책을 표현하고 있다. 그러나 이 패턴은 추상적인 해결책을 제시하고 있기 때문에 어플리케이션 개발 시 적용되는 디자인 패턴에 대한 명세와 활용은 주로 개발자의 수작업에 의존하고 다양한 형태로 적용되고 있다. 그 결과 일관된 형태의 분석과 활용이 어렵고 오류발생 빈도를 높일 뿐 아니라 프로그램 개발에 많은 시간이 필요하다. 또한 적용된 패턴은 어플리케이션 내부에서 시각적으로 표현되지 않기 때문에 이 패턴에 대한 분석과 테스팅이 어렵다. 이에 본 논문에서는 어플리케이션 개발 시 디자인 패턴의 요소를 효율적으로 적용할 수 있기 위해 디자인 패턴에 대한 소스코드 자동 생성기법을 제시하고 어플리케이션 내부에 적용된 패턴들간의 분석 및 활용법을 보인다. 이를 통해 어플리케이션 내부의 디자인 패턴들은 일관된 형태의 구조와 효율성을 제공하고 이들간의 분석 및 활용 효과를 증대시킨다.

UML 클래스 다이어그램 기반의 효율적인 C++코드 생성기의 설계와 구현 (Design and Implementation of an Efficient C++ Code Generator based on UML Class Diagram)

  • 조형주;정진완;김형주
    • 한국정보과학회논문지:컴퓨팅의 실제 및 레터
    • /
    • 제6권4호
    • /
    • pp.393-402
    • /
    • 2000
  • UML은 OMG에 의해서 표준 객체지향 모델링 언어로 승인 받았다. 그러나, UML을 지원하는 몇몇의 CASE 도구들이 생성한 C++ 코드는 1대 n 관계나 aggregation 관계의 의미를 정확히 반영하지 못하고 있다. 또한, 상용 CASE 도구들이 하나의 UML 클래스 다이어그램에서 너무 많은 프로그래밍 언어를 지원하기 때문에, 그들은 C++언어가 가지는 특징을 효율적으로 지원하지 못하고 있다. 제안된 C++코드 생성기는 1대 n의 관계, aggregation 관계, 코드 패턴(code pattern), 디자인 패턴(design pattern)을 지원한다.본 논문에서는 UML 클래스 다이어그램 기반의 효율적인 C++ 코드 생성기의 설계와 구현에 대하여 기술한다.

  • PDF

홀로그래픽 데이터 저장장치에서의 멀티레벨 변조부호 (Multilevel Modulation Codes for Holographic Data Storage)

  • 정성권;이재진
    • 전자공학회논문지
    • /
    • 제52권9호
    • /
    • pp.13-18
    • /
    • 2015
  • 멀티레벨 홀로그래픽 데이터 저장장치는 한 픽셀에 1비트 이상을 저장할 수 있기 때문에 용량에 대한 큰 장점을 갖는다. 본 논문에서는 (1) 레벨의 수, (2) 코드워드 내에서 픽셀의 수, (3) 최소 유클리디안 거리에 따른 코드워드들의 개수를 보여준다. 픽셀당 레벨의 수의 증가는 용량을 증가시키지만 노이즈 마진이 감소함에 따라 많은 에러를 발생시킨다. 코드워드에서 픽셀개수의 증가는 코드율을 증가시키며 용량을 늘리지만, 코드의 인코더와 디코더의 복잡도를 증가시킨다. 코드의 최소 거리 증가는 검출 에러를 줄이지만 코드율을 감소시킨다. 위와 같이 시스템 디자인은 항상 장 단점을 가지고 있지만, 시스템의 요구사항을 위해 주어진 상황에서 효과적인 방법을 찾아야 한다. 그러므로 본 논문에서 조사된 코드워드의 수는 효과적인 코드 디자인을 위한 가이드라인을 제시한다.

실시간 운영체제의 모듈화를 위한 그래픽 기반 AOP 프레임워크 (Graphical Aspect-Oriented Programming Framework for Modularizing Real-Time Operating Systems)

  • 박지용;김세화;홍성수
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 가을 학술발표논문집 Vol.30 No.2 (1)
    • /
    • pp.307-309
    • /
    • 2003
  • 본 논문에서는 실시간 운영체제(RTOS)를 모듈화 하기 위하여 그래픽 기반의 Aspect-Oriented Programming (AOP) 프레임워크를 제시한다. 기존의 컴포넌트, 객체 지향 방법론, 그리고 최근의 AOP들은 RTOS와 같이 많은 기능들이 복잡하게 연관된 소프트웨어를 모듈화 하는 데는 적합하지 않았다. 본 논문의 새로운 AOP 프레임워크는 다음과 같은 특징을 가지고 있다. 첫째, 클래스나 메소드의 단위를 넘어서서 구현되는 기능들이 어떻게 aspect로 모듈화 되는지를 시각적으로 보여준다. 또한 기존의 AOP와 같이 여러 aspect들을 이리저리 옮겨 다닐 필요 없이 한 곳에서 코드가 어떤 순서로 수행될 지 알 수 있도록 해 준다. 둘째, 코드를 삽입할 위치를 지정하는 단위를 메소드 단위보다 더 세밀하게 하여 메소드의 수행 중간에 특정 aspect를 위한 코드를 삽입할 수 있도록 하였다. 그래서 하나의 메소드에 여러 aspect가 복잡하게 관여하는 경우가 많은 RTOS를 디자인 할 때 특히 유리하다.

  • PDF

디자인패턴 기반의 에이전트 지향 개발방법론 (Agent Oriented Methodology Based on Design Pattern)

  • 이학진;윤현상;이은석
    • 한국HCI학회:학술대회논문집
    • /
    • 한국HCI학회 2006년도 학술대회 1부
    • /
    • pp.374-380
    • /
    • 2006
  • 최근 에이전트 기반 시스템을 만들기 위한 기술로서, 에이전트 지향 개발방법론 (Agent Oriented Methodology)이라는 영역이 출현하여, 여러 연구 기관에서 에이전트 시스템을 만드는데 이를 적용한 성공 사례가 늘고 있다. 그러나, 이들을 가지고 복잡한 다중 에이전트 시스템을 개발하는 일은 여전히 경험이 많지 않은 개발자들에게 있어서 어려운 일에 해당된다. 본 논문에서는 개발자에게 에이전트 설계 시 부과되는 이러한 어려운 점을 대한 해결책으로서, 개발자들에게 기능에 따라 분류된 디자인 패턴을 지원하여 다중 에이전트 시스템 설계 및 개발을 지원하는 개발방법론을 제안한다. 또한, 우리는 요구사항 분석부터 코드 생성까지 개발 프로세스에 반영하는 지원 도구를 제안한다. 이 CASE 도구는 단계별 자동화 기능뿐만 아니라, 설계 과정에서 개발자들에게 디자인 패턴을 고려할 수 있는 기능을 제공한다. 이를 통해, 우리는 에이전트 시스템 개발자 및 에이전트에 대한 지식이 부족한 이들에게 멀티에이전트 시스템 설계와 개발을 보다 쉽고 빠르게 해결할 수 있도록 돕는다. 본 논문에서는 여행 도우미 시나리오(Travel Assistant Scenario)을 제안 개발 방법에 따라 적용시켰다. 최종적으로, 보다 쉬운 방식으로 에이전트 소스 코드를 생성해냈으며, 이를 통해 제안 개발방법론이 개발자들의 다중 에이전트 기반 시스템의 개발에 대한 부하를 줄여 줄 수 있다는 결론을 내렸다.

  • PDF

디자인 패턴을 이용한 네트워크 턴 게임 API 설계 및 구현 (Design and Implementation of the Network Turn Game for API Using Design Patterns)

  • 김종수;김태석
    • 한국멀티미디어학회논문지
    • /
    • 제7권11호
    • /
    • pp.1588-1596
    • /
    • 2004
  • 현재 인터넷에서 서비스되고 있는 실시간 네트워크 게임을 개발하는 경우, 개발 인원과 시간이 많이 투입되는 프로젝트이기 때문에, 게임 제작시 기존에 작성되어 있는 코드를 재사용이 가능하도록 설계하는 것은 중요한 일이다. 코드의 재사용을 극대화하기 위해서 연구되고 있는 분야가 디자인 패턴과 관련한 분야인데, 보다 효율적인 게임 제작을 위해 잘 정의된 디자인 패턴을 이용한 다양한 설계기법과 그 적용 예가 개발자에게 제공된다면, 보다 나은 게임 API(Application Programming Interface)를 개발할 수 있고, 또한 API를 바탕으로 한 게임 개발 전용 프레임워크의 개발이 가능하다. 본 논문에서는 2종류의 네트워크 턴 게임 설계와 구현에 있어서, GoF(Gang of Four)가 제안한 디자인 패턴들을 적용하였다. 이를 통해서 네트워크 턴 게임 제작에 있어서 기존에 개발된 게임 API를 효과적으로 재사용하는 효율적인 설계 기법을 제안한다.

  • PDF

정성적 접근방법에 따른 도시 커뮤니티 시설 특성의 상세설계 언어 형상에 관한 연구 - 콩코드(Concord), 렉싱톤(Lexington), 알링톤(Arlington) 타운을 사례로 - (A Study on the Configuration of Detail Design Language of the Idiosyncrasy of Community Facilities with the Qualitative Method - in Cases of Concord, Lexington and Arlington, Massachusetts -)

  • 권상준
    • 한국조경학회지
    • /
    • 제35권5호
    • /
    • pp.1-15
    • /
    • 2007
  • 본 연구는 커뮤니티 시설 상세 설계의 대상물에 대한 질적 특성을 파악하기 위하여 그 대상물의 이미지를 상징화하는 단계적 발전 과정을 거쳐 그 시설의 상세 설계적 언어를 형상화하는 방법을 제시하였다. 사례로 역사적, 문화적, 전이적 특성을 지닌 세 커뮤니티를 조사하여 디자인 언어와 상징화되는 이미지를 구명해 보면서 디자인 언어의 구성과 설계요소와의 관계 커뮤니티의 목표 등과 연관시켜 커뮤니티의 본질성을 추구하는 수단을 평가 분석하는 방법을 강구하고 커뮤니티 시설의 상세 설계 언어의 형상을 검토하는 방법을 통섭적으로 제시하였다. 설계 언어의 형상 분석의 수단을 구체화 하는 데는 시각적 형태, 설계 주제의 상황, 설계요소의 관계성, 설계요소의 위치와 구성 등과 연관된 문제이다. 본 연구는 상세설계 언어의 형상을 개발하는 시도로 네 가지 기본 전제를 세우고 그를 설명해 보았다. 본 연구는 커뮤니티 시설 특성의 상징화를 위한 설계언어연구 대상의 사례로 미국의 전통성이 강한 메사츄세츠주에서 역사적, 문화적, 전이적 특성을 각기 다르게 지니고 있는 콩코드(Concord), 렉싱톤(Lexington), 알링톤(Arlington) 등의 세 커뮤니티를 택하였다. 사례 커뮤니티 시설 특성의 상세 설계 언어의 형상을 도출하는 과정을 설명하고 시각적 노트와 디자인 의미와 그 상징성을 바탕으로 상징과 시각적 언어를 찾으면서 상세 요소의 디자인 언어를 비교하였다. 그를 바탕으로 디자인 언어와 의미 및 그에 대한 평가를 위하여 편익을 기초로 사회, 건강, 환경, 경제 등 네 가지로 세부 분류된 커뮤니티 시설을 검토하였다. 커뮤니티 시설 특성을 파악하는 기법 발굴 과정에서 시작된 시각적 형상으로부터 상징과 그 의미 등을 구명하면서 그를 정성화하기 위한 기준으로서 설계 언어, 상징적 언어, 커뮤니티, 자연적 심미성 등의 네 가지로 대표되는 평가 요소에 의하여 분석 평가 검토에 이르기까지 일련의 과정이 그 상세설계언어의 형상에 관하여 통섭적 접근이 이루어 졌다.

Space-Time Block Code에서의 코드워드(codeword)가 완전계수(Full-Rank)가 아닌 경우에 관한 연구 (A Study on codeword's nonfull-Rank in Space-Time Block Code)

  • 이은희;김종성;최병태
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2002년도 추계학술발표논문집 (중)
    • /
    • pp.1575-1578
    • /
    • 2002
  • 본 논문에서는 공간-시간 블록 부호디자인(Space-Time Block Code) 관점에서 직교-디자인(Orthogonal-design) 즉, 최소거리가 5이면서 완전-계수(Full-Rank)인 디자인을 비교대상으로 완전-계수(Full-Rank)가 아니면서 최소거리가 5와7인 두 부호에 관하여 연구되어졌다.

  • PDF

디자인 패턴 기반의 컴포넌트 모델링도구에 관한 연구 (A Study on Component Modeling Tool based on Design Pattern)

  • 서영준;송영재
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2001년도 추계학술발표논문집 (상)
    • /
    • pp.437-440
    • /
    • 2001
  • 현재 소프트웨어 개발 생산성과 품질을 개선하기 위해 컴포넌트 재사용에 관한 연구가 활발히 이루어지고 있으며, 특히 분산 개발 환경에서 팀 개발의 생산성을 향상시키기 위한 컴포넌트 재사용 방법이 연구되고 있다. 그러나, 이들 컴포넌트들을 효과적으로 개발, 공유, 관리하기 위한 방안이 부족한 상황이다. 따라서, 본 논문에서는 컴포넌트의 재사용성을 최대화하기 위하여 반복적 설계 문제를 해결하기 위한 구조를 갖고 있는 디자인 패턴을 대상으로 하는 공유 가능한 디자인 패턴 기반의 컴포넌트 개발 시스템을 제안하였다. 본 논문에서 제안하는 DPCM(Design Pattern Component Modeling) 도구는 추상적인 디자인 패턴 구조와 구체적인 컴포넌트 구조를 저장하기 위해 각각 별도의 Library를 구축한다. 그리고, 두 Library 사이에는 패턴 구조를 특정 애플리케이션에 적합하게 구체화하는 과정을 시각적으로 모델링 하며, 구체적인 구현 코드와 함께 COM 사양의 컴포넌트로 변환한다. 본 논문에서는 개발자들이 애플리케이션 개발에 필요한 컴포넌트를 제공 받을 수 있는 디자인 패턴 기반의 소프트웨어 컴포넌트 개발 도구의 방향을 제시하였다.

  • PDF