• Title/Summary/Keyword: 소프트웨어 그래프

Search Result 276, Processing Time 0.03 seconds

객체지향 프로그램 표현을 위한 객체지향 프로그램 종속성 그래프 (A Object-oriented Program Dependency Graph for Object-oriented Program Representation)

  • 류희열;박중양;박재흥
    • 한국정보처리학회논문지
    • /
    • 제5권10호
    • /
    • pp.2567-2574
    • /
    • 1998
  • 소프트웨어 공학 기법과 툴들은 제어 흐름 그래프, 프로그램 종속성 그래프, 시스템 종속성 그래프와 같은 프로그램의 그래픽한 표현에 의존한다. 본 논문은 기존의 객체지향 프로그램의 표현방법의 복잡하고 중복된 표현의 문제점을 개선하여 새로운 객체 지향 프로그램 종속성 그래프를 제안한다. 객체지향 프로그램 종속성 그래프는 클래스 종속성 그래프와 클래스 계층구조 그래프, 그리고 프로시듀어 종속성 그래프로 구성된다. 제안된 객체지향 프로그램 종속성 그래프는 기존의 방법에 비해 그 표현이 간결할 뿐만 아니라, 쉽게 확장이 가능하여 프로그램이 점진적으로 개발되는 경우에도 사용할 수 있다. 뿐만 아니라 프로그램에 대한 동적 정보를 제공할수 있도록 확장될 수 있다.

  • PDF

C++에서 프로그램 의존도 그래프를 이용한 클래스 분해 방법 (Class Slicing Method using Program Dependency Graph in C++)

  • 김영선;김홍진;손용식
    • 한국컴퓨터정보학회논문지
    • /
    • 제3권1호
    • /
    • pp.63-80
    • /
    • 1998
  • 객체 지향 소프트웨어 개발에서 재사용은 소프트웨어 품질 향상과 소프트웨어 개발자의 생산성 향상을 위하여 연구되고 있다. 그러나 설계 단계에서 부적절한 작성과 유지보수시의 잘못된 변화로 인하여 클래스를 재사용 하는데 문제점이 존재한다. 본 논문에서 제안하는 방법은 C++. 프로그램 의존도 그래프를 이용하여 클래스의 의미론적인 결합 도를 분석하고, 결합 도에 따라 클래스를 분해하여 클래스의 품질 재평가와 확장성을 지원하도록 하는 방법이다. 따라서 본 논문에서 제안하는 방안은 개발자가 객체 지향 프로그램을 개발시에 원하는 부품만을 선택하여 재사용 시스템 구축을 용이하게 하였다.

  • PDF

WALA와 Boa를 활용하여 대규모 소프트웨어 저장소를 정적으로 분석하는 도구 개발 (Static Analysis of Large Scale Software Repositories Using WALA and Boa)

  • 박경희;류석영
    • 정보과학회 논문지
    • /
    • 제44권10호
    • /
    • pp.1081-1086
    • /
    • 2017
  • 대규모 공개 소스 소프트웨어 저장소를 대상으로 프로그램 분석을 수행하면, 각 저장소의 소프트웨어의 변화 과정을 살펴볼 수 있고, 방대한 양의 프로그램을 분석함으로써 신뢰도가 높은 분석 결과를 얻을 수 있다는 점에서 의의가 있다. 본 논문에서는 대규모 소프트웨어 저장소를 대상으로 확장 가능하게 정적 프로그램 분석을 수행할 수 있는 프레임워크인 WALABOA를 소개한다. 나아가, 정적 분석 결과인 정적 함수 호출 그래프와 동적 분석 결과인 동적 함수 호출 그래프를 비교하는 모듈을 WALABOA에 추가하여, 자바스크립트 분석기 WALA에서 제공하는 분석 기법 중 하나인 필드 기반 분석(field-based analysis) 결과를 평가하는 데 활용하였다.

개념구조의 효율적인 표현을 위한 개념 트리 (Conceptural Trees for an Efficient Representation of Conceptural Structure)

  • 배우정;박인철;이용석
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제26권6호
    • /
    • pp.822-832
    • /
    • 1999
  • 개념 그래프는 개념구조(conceptual structures)를 그래프로 표현한 논리 시스템으로 자연어 처리에 적합한 여러 특성을 지니고 있다. 그러나, 개념주조의 그래프 표현은 개념 그래프에 대한 연산의 복잡도를 증가시키고 의미 표현의 일관성(consistency)과 유일성(uniqueness)을 잃게 한다. 본 논문에서는 개념 그래프의 이러한 문제점에 대해 자세히 살펴보고이를 해결한 개념 트리의 표현 방법을 보인다. 표현의 유일성을 위해, 개념 트리는 중심어 선행 표현(perorder expression)에 의해 제약된다 또한 , 표현의 일관성을 위해 집합 참조대상 (set referents)을 확장하고 이를 다루기 위한 set join연산을 재정의한다. 우리는 개념 트리가 자연어 문장에 대한 표현력을 유지하면서 효율적임을 보인다.

집합 간선 그래프를 이용한 상호 작용적 연속 제어 캐릭터 생성 (Fat Graph: Constructing characters with continuous controls)

  • 신현준;오현석
    • 한국컴퓨터그래픽스학회논문지
    • /
    • 제12권2호
    • /
    • pp.27-34
    • /
    • 2006
  • 본 연구는 실행 시(run-time)에 사용자의 연속적인 입력에 따라 움직이는 고품질의 애니메이션을 적은 계산 량으로 합성하는 방법을 제안한다. 본 연구의 목적은 Gleicher 등 [5]의 연구에 기반하여 집합 간선 그래프(fat graphs)를 반 자동으로 생성하는 것이다. 여기서 집합 간선 그래프는 동작 데이터를 구성하는 프레임 중 특정한 자세를 노드로 하고 노드의 자세로부터 시작하거나 끝나는 동작 절편의 집합들(motion segments)을 간선으로 하는 그래프를 일컫는다. 입력 동작에 대하여 이러한 집합 간선 그래프를 생성하고 동작 합성 및 변환 기법을 통해 가공한 후, 실행 시에 사용자가 마우스, 키보드, 조이스틱과 같은 입력 장치를 통해 캐릭터를 원하는 대로 움직일 수 있도록 한다. 몇 가지 제약 조건이 존재하지만 비디오 게임을 비롯한 여러 응용 소프트웨어에서 본 연구의 결과를 사용할 수 있을 것으로 기대한다.

  • PDF

레거시 시스템 이해도구를 이용한 비즈니스 로직 추출 기법 (The Extraction Method of Business Logic Using Legacy System Understanding Tool)

  • 송문섭;박창순
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 가을 학술발표논문집 Vol.29 No.2 (2)
    • /
    • pp.100-102
    • /
    • 2002
  • 최근 컴포넌트 기반 개발이 소프트웨어 개발의 새로운 패러다임으로 대두되고 있는 가장 큰 이유는 컴포넌트의 재사용으로 인해 얻을 수 있는 개발 기간의 단축, 유지ㆍ보수의 용이함 등의 장점들 때문이다. 재사용의 개념을 시스템으로 확장하여 생각하면 기존 레거시 시스템을 컴포넌트 기반 시스템으로 바꾸는 것이며 이를 위해서는 레거시 시스템의비즈니스 로직을 추출하여 컴포넌트화 해야 한다. 본 논문에서는 기존 레거시 시스템에서 컴포넌트 기반 시스템으로 변환하기 위해 필요한 비즈니스 로직 추출 방법으로 레거시 시스템 분석을 통해 얻은 시스템 플로우 그래프, 프로그램 호출 그래프, 패러그래프 흐름 그래프 등의 그래프 등을 이용하여 레거시 시스템을 이해하고 추출 정보로써 핵심 변수와 패턴 식별을 이용한 방법을 제안한 후 구현된 비즈니스 로직 추출기를 이용하여 구체적으로 COBOL 소스 코드에서 비즈니스 로직이 추출되는 과정을 설명하겠다.

  • PDF

Maximum Bipartite Subgraph 문제를 위한 GRASP + Tabu Search 알고리즘 연구 (Study for the Maximum Bipartite Subgraph Problem Using GRASP + Tabu Search)

  • 한근희;김찬수
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제3권3호
    • /
    • pp.119-124
    • /
    • 2014
  • G = (V, E) 를 그래프라 하자. Maximum Bipartite Subgraph 문제는 주어진 그래프 G로부터 최소 개수의 간선을 제거함으로써 G 를 이분그래프로 변환시키는 문제이며 결합 최적화 문제들 중 대표적인 문제들 중의 하나로 알려 져 있다. 본 문제는 NP-complete 계열에 포함되는 문제로서 본 연구에서는 Tabu Search 및 GRASP 등을 조합한 새로운 메타휴리스틱 알고리즘을 제시하고자 한다.

그래프 기반 음악 추천을 위한 소리 데이터를 통한 태그 자동 분류 (Automatic Tag Classification from Sound Data for Graph-Based Music Recommendation)

  • 김태진;김희찬;이수원
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제10권10호
    • /
    • pp.399-406
    • /
    • 2021
  • 콘텐츠 산업의 꾸준한 성장에 따라 수많은 콘텐츠 중에서 개인의 취향에 적합한 콘텐츠를 자동으로 추천하는 연구의 필요성이 증가하고 있다. 콘텐츠 자동 추천의 정확도를 향상시키기 위해서는 콘텐츠에 대한 사용자의 선호 이력을 바탕으로 하는 기존 추천 기법과 더불어 콘텐츠의 메타데이터 및 콘텐츠 자체에서 추출할 수 있는 특징을 융합한 추천 기법이 필요하다. 본 연구에서는 음악의 소리 데이터로부터 태그 정보를 분류하는 LSTM 기반의 모델을 학습하고 분류된 태그 정보를 음악의 메타 데이터로 추가하여, 그래프 임베딩 시 콘텐츠의 특징까지 고려할 수 있는 KPRN 기반의 새로운 콘텐츠 추천 방법을 제안한다. 카카오 아레나 데이터 기반 실험 결과, 본 연구의 제안 방법은 기존의 임베딩 기반 추천 방법보다 우수한 추천 정확도를 보였다.

함수의 그래프 표현 및 그래프 해석 지도 가능성 탐색 - 초등학교 5학년을 중심으로 - (Investigation to Teach Graphical Representations and Their Interpretations of Functions to Fifth Graders)

  • 이화영;류현아;장경윤
    • 대한수학교육학회지:학교수학
    • /
    • 제11권1호
    • /
    • pp.131-145
    • /
    • 2009
  • 본 연구는 초등학교 학생들에게 함수의 그래프 표현 및 해석의 지도가능성을 탐색하기 위하여 설계되었다. 이를 위하여 부분적으로 역동적인 기하 소프트웨어를 이용하는 점진적인 함수 그래프 지도 방법을 고안하여, 초등학교 5학년생 4명을 대상으로 8차시의 수업을 실행하였다. 연구 결과, 아동들은 함수 관계에 대한 개념화, 1차 함수 그래프의 해석, 1차 함수 그래프 기울기의 의미를 인식하고, 기울기에 대한 논의와 실생활과의 관련성을 파악하는 것으로 나타났다. 함으로써 함수의 그래프 표현 및 해석의 지도가 가능함을 알 수 있었다. --삭제) 또한, 아동들은 GSP-선그래프를 통하여 그래프에서의 점과 선의 관계를 시각적으로 명확히 인식하였으며, 함수관계를 그래프로 정확하게 표현하는 데에 있어서 결정적인 역할을 했음을 알 수 있었다.

  • PDF

흐름 그래프 형태를 이용한 함수형 프로그램 유사성 비고 (A Program Similarity Check by Flow Graphs of Functional Programs)

  • 서선애;한태숙
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권4호
    • /
    • pp.290-299
    • /
    • 2005
  • 컴퓨터와 소프트웨어의 사용이 증가하면서, 프로그램 소스의 도용(표절)이 사회적인 문제로 부각되고 있다. 이런 문제를 해결하고자 프로그램의 문법 구조를 비교하여 표절을 찾아내는 방법론이 제안되었지만, 간단한 프로그램 수정에도 표절을 찾아내지 못하는 한계를 가지고 있다 이 연구에서는, 문법 구조적인 정보 뿐 아니라, 프로그램식 간의 수행시 의존 관계를 드러내는 그래프를 이용한 프로그램 표절 감지 시스템을 제안한다. 이 방법론은 문법 정보 뿐 아니라, 수행시 의존 관계까지 비교 대상에 을림으로써, 수행시 의콘 관계를 변화시키지 못하는 프로그램 수정에 대해서도 프로그램 표절을 판별할 수 있다. 또한, 이 연구에서는 표절 프로그램이란 무엇인가를 엄밀하게 정의하고 이 표절 프로그램의 정의와 연구에서 제안된 표:늰 감별 그래프와의 관계를 보였다. 즉, 두 프로그램이 표절이라는 것은 표절 감별 그래프가 일치한다는 긴과 필요 충분 관계가 있음을 증명하였다. 또한 제안된 표절 감별 방법론을 실제적인 프로그래밍 언어인 IML 에 대해서 구현하였다. 구현된 도구를 통해서 실제 표절된 프로그램들을 감별한 결과, 기존의 방법에서 찾기 어려운 프로그램 표절을 제안된 방법론이 다룰 수 있음을 확인하였다.