KR20110070743A - 정적 분석 도구 통합 관리 장치 및 시스템 - Google Patents

정적 분석 도구 통합 관리 장치 및 시스템 Download PDF

Info

Publication number
KR20110070743A
KR20110070743A KR1020100057732A KR20100057732A KR20110070743A KR 20110070743 A KR20110070743 A KR 20110070743A KR 1020100057732 A KR1020100057732 A KR 1020100057732A KR 20100057732 A KR20100057732 A KR 20100057732A KR 20110070743 A KR20110070743 A KR 20110070743A
Authority
KR
South Korea
Prior art keywords
analysis
setting
static analysis
tool
static
Prior art date
Application number
KR1020100057732A
Other languages
English (en)
Other versions
KR101369776B1 (ko
Inventor
김태호
김익순
임채덕
임동선
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to JP2010279444A priority Critical patent/JP2011129121A/ja
Priority to US12/969,736 priority patent/US20110154120A1/en
Publication of KR20110070743A publication Critical patent/KR20110070743A/ko
Application granted granted Critical
Publication of KR101369776B1 publication Critical patent/KR101369776B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • G06K19/07363Means for preventing undesired reading or writing from or onto record carriers by preventing analysis of the circuit, e.g. dynamic or static power analysis or current analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 정적 분석 도구 통합 관리 장치 및 시스템에 관한 것으로서, 특히 본 발명의 정적 분석 도구 통합 관리 시스템은 분석 대상 프로그램을 정적 분석하는 다수의 정적 분석 도구 및 사용자로부터 정적 분석 도구들의 분석을 위한 통합 설정 형식으로 초기 설정 정보를 입력 받아 정적 분석 도구의 초기 설정 형식으로 변환하여 전송하는 도구 설정 모듈, 정적 분석 도구의 분석 결과를 수신하고 공통 분석 결과 형식으로 변환하여 출력하는 결과 출력 모듈, 사용자로부터 분석 설정 정보를 입력 받아 상기 정적 분석 도구의 분석 설정 형식으로 변환하여 전송하는 분석 설정 모듈 및 상기 정적 분석 도구의 분석 수행 관리, 상기 정적 분석 도구 자체의 설정 관리 또는 상기 정적 분석 도구의 검증 규칙 관리 중 하나 이상의 기능을 포함하는 실행 관리 모듈을 갖는 정적 분석 도구 통합 관리 장치를 포함한다.

Description

정적 분석 도구 통합 관리 장치 및 시스템{Apparatus and system of enterprise management of static analysis tools}
본 발명은 정적 분석 도구 통합 관리 장치 및 시스템에 관한 것으로서, 구체적으로는 다수의 프로그램 정적 분석 도구를 사용하는 환경에서 상기 다수의 정적 분석 도구들을 통합적으로 관리하는 장치 및 시스템에 관한 것입니다.
정적 분석 도구란 프로그램을 실제 수행시키지 않고, 수학적인 증명 방법과 기호 수행등의 방법을 통해 프로그램의 오류를 검출하는 방식의 분석 도구이다. 정적 분석 도구는 프로그램을 실제로 수행시키지 않기 때문에 프로그램의 실행 환경 설정이 필요 없고, 프로그램의 개발이 완료되지 않은 상태에서도 프로그램의 오류를 검출할 수 있는 장점이 있기 때문에 최근 많은 프로그램 개발에서 활용되고 있다.
일반적으로, 프로그램 정적 분석 도구는 정적 분석 도구를 설정하는 모듈, 분석 결과를 출력하는 모듈, 분석 결과에 사용자의 분석 결과를 설정하는 모듈로 구성된다.
정적 분석 도구를 설정하는 모듈은 개발자가 대상 프로그램을 선택하고, 검증 대상의 검증 규칙을 선택할 수 있도록 한다.
정적 분석 도구의 분석 결과를 출력하는 모듈은 프로그램을 분석한 결과 얻어진 분석 정보를 사용자에게 제공한다. 예를 들어, 프로그램의 분석 결과로는 어떤 종류의 오류가 발생했는지, 발생한 오류의 정보는 무엇인지, 발생한 오류의 중요성은 어느 정도인지, 분석 결과로 추출된 오류가 실제 오류가 아닐 가능성이 있는지 또는 이 오류가 발생하게 된 근본적인 원인이나 경로 정보 등이 있다.
정적 분석 결과에 사용자의 분석 결과를 설정하는 모듈은 오류 정보의 확인 여부 또는 분석 결과의 정확성 등에 대한 사용자의 검토 사항을 입력받는다. 이를 통해서 실제로는 발생되지 않는 오류를 구분하고, 사용자의 의도적인 표현을 표시한다. 이렇게 함으로써 차후에 반복하여 분석하지 않도록 해준다.
다양한 상용 및 공개 정적 분석 도구가 최근에 개발되고 있다. 하지만, 각 정적 분석 도구는 개발 목적, 검증 하려고 하는 오류의 종류, 검증 방식, 요약화 (abstraction)의 정도, 분석 도구 구현 기술 또는 경험적인 최적화 (heuristic) 기술, 분석 속도 등 분석 도구의 기본 철학의 차이로 인해 각 정적 분석 도구가 검출하는 오류의 종류 및 오류의 정확도에 차이가 있다. 따라서, 각 정적 분석 도구의 우열을 직접적으로 비교하는 것이 불가능하다.
그러므로, 하나의 프로그램을 분석할 때, 하나의 정적 분석 도구만을 사용하는 것이 아니라, 다수 개의 정적 분석 도구를 동시에 사용하여 상호 보완하는 것이 바람직하다.
하지만, 다수의 정적 분석 도구를 사용하는 기존의 방법은 각각의 정적 분석 도구에 관하여, 설정하는 단계, 분석 결과를 출력하는 단계, 분석 결과에 대하여 사용자의 분석 결과를 설정하는 단계가 각 개별 도구에 대해서 이뤄지기 때문에 중복된 작업을 하게 된다.
도 1은 종래 다수의 정적 분석 도구를 사용하는 정적 분석 도구 관리 시스템의 실시예를 도시한 도면이다.
도1을 참조하면, 정적 분석 도구 A, B, C를 동시에 사용하는 사용자의 경우 각각의 정적 분석 도구에 대하여 설정, 출력, 사용자 분석 설정의 작업을 개별적으로 수행해야 한다. 검증 대상 프로그램 선택 작업등은 각 도구에 대해서 동일하다. 또한, 동일한 오류 정보에 대한 사용자 분석 설정 작업도 오류 정보를 출력한 정적 분석 도구에 대하여 각각 설정해야 하므로 중복되는 작업이다.
뿐만 아니라, 사용자의 입장에서도 다양한 정적 분석 도구의 사용법을 익히는 것이 쉽지 않으며, 이 때문에 각 도구의 설정 중에 실수를 할 수 있는 문제도 있다.
종래 다수의 정적 분석 도구를 사용하면 발생하는 문제점은 다수의 정적 분석 도구가 발견한 오류들 중 수정의 우선 순위를 정하기가 매우 어려운 점이다. 물론, 각각의 정적 분석 도구가 발견할 수 있는 오류 중 수정의 우선 순위를 정할 수 있다. 하지만 이것은 각 정적 분석 도구에 대하여 개별적인 우선 순위일 뿐이다. 즉, 다양한 정적 분석 도구의 결과를 통합하여 그들에 대하여 전체적인 우선 순위를 정하는 것은 종래의 기술로서는 여전히 어려운 사항이다.
상기의 문제점을 해결하기 위한 본 발명의 정적 분석 도구 통합 관리 장치 및 시스템은 다수의 정적 분석 도구를 사용하는 환경에서 상기 다수의 정적 분석 도구의 정적 분석 도구의 설정, 정적 분석 도구의 분석 결과 출력, 분석 결과의 사용자 분석 설정 과정을 통합적으로 관리할 수 있는 정적 분석 도구 통합 관리 장치 및 시스템을 제안하는 것을 목적으로 한다.
상기의 과제를 달성하기 위한 본 발명의 일 실시예에 의한 정적 분석 도구 통합 관리 장치는 사용자로부터 정적 분석 도구들의 분석을 위한 초기 설정 정보를 입력 받아 정적 분석 도구에 적합한 형식으로 변환하여 전송하는 도구 설정 모듈, 정적 분석 도구의 분석 결과를 수신하고 공통 분석 결과 형식으로 변환하여 출력하는 결과 출력 모듈, 사용자로부터 분석 설정 정보를 입력 받아 정적 분석 도구에 적합한 형식으로 변환하여 전송하는 분석 설정 모듈 및 정적 분석 도구의 분석 수행 관리, 정적 분석 도구 자체의 설정 관리 또는 정적 분석 도구의 검증 규칙 관리 중 하나 이상의 기능을 포함하는 실행 관리 모듈을 포함한다.
상기의 과제를 달성하기 위한 본 발명의 일 실시예에 의한 정적 분석 도구 통합 관리 시스템은 분석 대상 프로그램을 정적 분석하는 다수의 정적 분석 도구, 사용자로부터 상기 정적 분석 도구들의 분석을 위한 초기 설정 정보를 입력 받아 상기 정적 분석 도구에 적합한 형식으로 변환하여 전송하는 도구 설정 모듈, 상기 정적 분석 도구의 분석 결과를 수신하고 공통 분석 결과 형식으로 변환하여 출력하는 결과 출력 모듈, 사용자로부터 분석 설정 정보를 입력 받아 상기 정적 분석 도구에 적합한 형식으로 변환하여 전송하는 분석 설정 모듈 및 상기 정적 분석 도구의 분석 수행 관리, 상기 정적 분석 도구 자체의 설정 관리 또는 상기 정적 분석 도구의 검증 규칙 관리 중 하나 이상의 기능을 포함하는 실행 관리 모듈을 갖는 정적 분석 도구 통합 관리 장치를 포함한다.
상기의 본 발명의 정적 분석 도구 통합 관리 장치 및 시스템에 따르면, 각각의 정적 분석 도구를 사용자가 개별적으로 설정, 관리 및 결과 분석하는 것이 아니라 통합적인 환경을 통해서 일괄적으로 다수의 정적 분석 도구를 사용할 수 있다. 이를 통해서 정적 분석 도구의 정확성을 높이고 사용성을 개선하며, 분산 환경에서 수행되기 때문에 성능 또한 향상시킬 수 있는 이점이 있다.
도 1은 종래의 다수의 정적 분석 도구를 사용하는 경우의 실시예를 도시한 도면이다.
도 2는 본 발명의 정적 분석 도구 통합 관리 장치를 이용한 정적 분석 도구 통합 관리 시스템의 일 실시예를 도시한 도면이다.
도 3은 본 발명의 정적 분석 도구 통합 관리 장치를 이용한 정적 분석 도구 통합 관리 시스템의 다른 실시예를 도시한 도면이다.
도 4는 본 발명의 정적 분석 도구 통합 관리 장치의 기능 블록을 도시한 기능 블록도이다.
도 5는 본 발명의 정적 분석 도구 통합 관리 장치의 도구 설정 모듈의 기능 블록을 도시한 기능 블록도이다.
도 6은 본 발명의 정적 분석 도구 통합 관리 장치의 설정 인터페이스가 사용자에게 제공하는 정적 분석 도구 통합 설정 화면의 일 실시예를 도시한 도면이다.
도 7은 본 발명의 정적 분석 도구 종합 관리 장치의 설정 인터페이스가 공통 설정 형식으로 저장한 파일의 일 예를 도시한 도면이다.
도 8은 본 발명의 정적 분석 도구 종합 관리 장치의 결과 출력 모듈의 기능 블록을 도시한 기능 블록도이다.
도 9는 본 발명의 정적 분석 도구 종합 관리 장치의 분석 설정 모듈의 기능 블록을 도시한 기능 블록도이다.
도 10은 본 발명의 정적 분석 도구 종합 관리 장치의 실행 관리 모듈의 기능 블록을 도시한 기능 블록도이다.
도 11은 본 발명의 정적 분석 도구 통합 관리 장치의 실행 관리 인터페이스가 사용자에게 제공하는 정적 분석 도구 통합 실행 관리 화면의 일 실시예를 도시한 도면이다.
도 12는 본 발명의 정적 분석 도구 통합 관리 장치의 결과 출력 모듈이 제공하는 정적 분석 도구 통합 분석 결과 출력 화면의 일 실시예를 도시한 도면이다.
도 13은 본 발명의 정적 분석 도구 통합 관리 장치의 분석 설정 모듈이 제공하는 정적 분석 도구 통합 분석 설정 출력 화면의 일 실시예를 도시한 도면이다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시 예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
또한, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 2는 본 발명의 정적 분석 도구 통합 관리 장치를 이용한 정적 분석 도구 통합 관리 시스템의 일 실시예를 도시한 도면이다.
도 2를 참조하면 본 발명의 정적 분석 도구 통합 관리 시스템은 다수의 정적 분석 도구(200) 및 정적 분석 도구 통합 관리 장치(100)을 포함하여 구성될 수 있다.
분석의 대상인 프로그램(300)은 소스 코드나 목적 코드 또는 전처리기를 통과한 분석 대상으로 다수의 정적 분석 도구(200)로 입력된다.
다수의 정적 분석 도구, 정적 분석 도구 A 내지 C(200)는 기존에 사용되는 프로그램 정적 분석 도구들이 될 수 있다. 다수의 정적 분석 도구(200)들은 사용자에 의해 설정된 정보를 이용하여 프로그램(300)이 검증 규칙에 맞는지 정적 분석을 수행한다.
정적 분석 도구 통합 관리 장치(100)는 사용자에게 다수의 정적 분석 도구(200)를 통일적으로 설정할 수 있는 통합적인 인터페이스의 제공하고, 다수의 정적 분석 도구(200)들을 설정하고 분석을 수행토록 명령 및 관리하며, 다수의 정적 분석 도구(200)들이 분석한 결과를 종합하여 사용자에게 분석 결과를 출력할 수 있다. 또한 정적 분석 도구 통합 관리 장치(100)는 사용자가 상기 분석 결과를 검토한 결과를 입력하면 이를 다시 각 정적 분석 도구로 전달한다.
상기의 통합 관리 시스템을 통해서 사용자는 정적 분석 결과를 보고받을 수 있고, 사용자가 분석 결과에 대해 추가적인 분석을 수행해서 사용자의 분석을 설정하면, 설정 값을 다시 각 정적 분석 도구(200)에 전달한다. 이 정보는 차후에 각 정적 분석 도구(200)가 분석을 행할 때 이용하게 된다
도 3은 본 발명의 정적 분석 도구 통합 관리 장치를 이용한 정적 분석 도구 통합 관리 시스템의 다른 실시예를 도시한 도면이다.
도 3을 참조하면, 정적 분석 도구 통합 관리 시스템은 각 정적 분석 도구용 에이전트(400)를 더 포함할 수 있다. 에이전트(400) 시스템 대신 네트워크 등을 이용하여 정적 분석 도구(200)들과 본 발명의 정적 분석 도구 통합 관리 장치(100)를 연결할 수도 있다.
이때, 각각의 정적 분석 도구는 서로 다른 인터페이스를 제공할 수 있다. 즉, 정적 분석 도구 A는 인터페이스로 웹 페이지를 제공하고, 정적 분석 도구 B는 명령행 라인을 제공하고, 정적 분석 도구 C는 API 형식의 인터페이스를 제공할 수 있다.
따라서, 각 정적 분석 도구와의 연결성을 높이고, 각 분석 도구의 변경에 빠르게 대응할 수 있도록 정적 분석 도구 통합 관리 장치와 각 정적 분석 도구의 사이에 에이전트를 둔다. 이 에이전트는 정적 분석 도구 통합 관리 장치의 입력과 출력을 정적 분석 도구 A로는 웹 인터페이스를 통하여 접근하고, 정적 분석 도구 B로는 명령행 라인을 통하여 접근한다. 그리고, 정적 분석 도구 C로는 API 형식의 인터페이스를 통하여 접근한다. 또한 각각의 정적 분석 도구가 서로 다른 시스템에 설치 될 수도 있으므로, 도구 간의 연결 및 세부 모듈의 정보 전달 방법은 같은 시스템 내의 파일, API, 네트워크 또는 에이전트 시스템 등의 특정한 방법에 제한되지 않는다.
도 4는 본 발명의 정적 분석 도구 통합 관리 장치의 기능 블록을 도시한 기능 블록도이다.
도 4를 참조하면, 본 발명의 정적 분석 도구 통합 관리 장치(100)는 도구 설정 모듈(110), 결과 출력 모듈(120), 분석 설정 모듈(130) 및 실행 관리 모듈(140)을 포함하여 구성될 수 있고, 제1 인터페이스 모듈(150) 및 제2 인터페이스 모듈(160)을 더 포함하여 구성될 수 있다.
도구 설정 모듈(110)은 사용자가 대상 프로그램의 선택 및 검증 규칙 등을 선택할 수 있는 환경을 제공한다. 또한 도구 설정 모듈(110)은 각 정적 분석 도구(200)의 설정에 대한 것도 통합적으로 수행하는 것이 가능하다.
결과 출력 모듈(120)은 다수의 정적 분석 도구(200)의 분석 결과를 파일 또는 데이터 베이스 등으로 통합하여 출력한다. 이를 통해서 사용자는 각 정적 분석 도구(200)들의 분석 결과를 통합적으로 확인할 수 있다.
분석 설정 모듈(130)은 상기 결과 출력 모듈(120)에 의해 출력된 통합적인 분석 결과를 사용자가 검토하여 재확인이 필요한 오류인지, 오류임이 확실한지, 오류가 아님이 확실한지 등을 설정할 수 있는 환경을 제공한다. 상기의 정보들은 다시 각 정적 분석 도구(200)로 전달되어 각 정적 분석 도구(200)의 실행에 참고된다.
실행 관리 모듈(140)은 사용자가 각 정적 분석 도구(200)들이 프로그램(300)을 분석하는 과정을 제어할 수 있는 환경을 제공한다. 이를 통해서 사용자는 각 정적 분석 도구(200)들의 분석 과정을 통합적으로 제어할 수 있다.
도시하지는 않았으나 상기 도구 설정 모듈(110), 결과 출력 모듈(120), 분석 설정 모듈(130) 및 실행 관리 모듈(140)은 직접 사용자와 정적 분석 도구(200)를 연결할 수 있다. 이 경우에는 각 모듈(110 내지 140)은 사용자 및 정적 분석 도구(200)과 연결되기 위한 인터페이스부를 포함할 수 있다.
제1 인터페이스 모듈(150) 및 제2 인터페이스 모듈(160)은 상기 도구 설정 모듈(110), 결과 출력 모듈(120), 분석 설정 모듈(130) 및 실행 관리 모듈(140)에 포함될 수 있는 인터페이스 장치들을 통합한 모듈이다.
제1 인터페이스 모듈(150)은 도구 설정 모듈(110), 결과 출력 모듈(120), 분석 설정 모듈(130) 및 실행 관리 모듈(140)을 사용자와 연결하면서 사용자에게 통합된 인터페이스를 제공한다.
제2 인터페이스 모듈(160)은 도구 설정 모듈(110), 결과 출력 모듈(120), 분석 설정 모듈(130) 및 실행 관리 모듈(140)을 정적 분석 도구와 연결한다. 따라서, 제2 인터페이스 모듈(160)은 사용자에게 정적 분석 모듈을 본 발명의 정적 분석 도구 통합 관리 장치(100)에 연결하는데 있어 편의성을 제공한다.
도 5는 본 발명의 정적 분석 도구 통합 관리 장치의 도구 설정 모듈의 기능 블록을 도시한 기능 블록도이다.
도 5를 참조하면, 본 발명의 도구 설정 모듈(110)은 설정 인터페이스(113) 및 설정 형식 변환기(111)를 포함하여 구성될 수 있다.
설정 인터페이스(113)는 사용자에게 정적 분석 도구들을 통합적으로 설정할 수 있는 설정 환경을 제공한다. 일반적으로 설정 환경은 사용자가 설정을 위해 체크할 수 있는 항목 및 필요한 변수 등을 입력할 수 있는 입력창 등을 포함하여 구성될 수 있다.
이런 다양한 종류의 설정 정보들은 결국 프로그램의 오류 여부 확인이라는 목적 하에서 정적 분석 도구들을 설정하기위한 것이므로 설정 사항들 중 모든 정적 분석 도구에 공통적인 사항들이 다수 존재한다. 따라서 이러한 공통 사항들을 중심으로 각 도구 별로 특징적인 사항을 추가함으로써 공통 설정 형식을 제안할 수 있다.
또한 설정 인터페이스(113)는 입력받은 설정 정보를 저장할 수 있으며, 저장은 반드시 파일 형식으로 할 필요는 없고, 메모리, 패킷 또는 트랜잭션 등 다양한 형태로 저장할 수 있다.
도 6을 참조하면, 설정 인터페이스(113)가 사용자에게 제공하는 통합 설정 환경은 '분석 대상 검증 규칙'과 '분석대상 프로젝트' 항목을 반드시 포함한다. 또한 설정 인터페이스(113)는 분석 대상 검증 규칙을 계층적으로 정리하는 것이 가능하다.
설정 형식 변환기(111)는 설정 인터페이스(113)로부터 공통 설정 형식으로 입력된 설정 정보들을 각 정적 분석 도구(200)의 설정 형식에 맞게 변환하고 설정 내용을 저장한다. 바람직하게는 설정 형식 변환기(111)는 연결된 각 정적 분석 도구(200)들의 설정 형식에 대한 정보를 저장한다. 또한 필요에 따라서는 설정 형식 변환기(111)는 설정 형식의 변환 방법에 대한 정보를 사전에 설정 또는 입력받을 수 있다.
또한, 설정 형식 변환기(111)는 입력받은 검사 항목을 분석하여 검사 항목에 장점을 가지는 정적 분석 도구(200)를 선택할 수 있다.
예를 들어, 정적 분석 도구 A(200)가 배열 범위 검사에 장점을 가지고 있다면, 설정 형식 변환기(111)는 정적 분석 도구 A(200)를 프로그램 분석을 위한 정적 분석 도구(200)로 선택한다. 그리고 공통 설정 형식의 설정 정보를 정적 분석 도구 A를 위한 설정 정보로 변환하고 정적 분석 도구 A(200)로 전송한다.
경우에 따라서 도구 설정 모듈(110)은 해당 검사에 최적의 성능을 가지는 정적 분석 도구(200)로만 설정 정보를 전송할 수 있다.
설정 인터페이스(113)로 입력된 설정 정보는 설정 형식 변환기(111)를 통해 공통 설정 형식으로 변환 및 저장되어, 각 정적 분석 도구(200)로 전송된다. 각 정적 분석 도구(200)는 내부의 설정 변환 장치를 이용하여 각 정적 분석 도구의 분석 방식을 설정한다.
도 7은 본 발명의 정적 분석 도구 종합 관리 장치의 설정 인터페이스가 공통 설정 형식으로 저장한 파일의 일 예를 도시한 도면이다.
도 7을 참조하면, 설정 인터페이스(113)는 도 6에 도시된 사용자가 체크가 설정 항목을 공통 설정 형식으로 저장한다. 설정 인터페이스(113)가 공통 설정 형식으로 설정 정보를 저장한 파일은 XML 파일 형식을 이용하였다. 하지만 설정 인터페이스(113)는 파일을 XML 파일 형식 이외의 파일 형식으로도 저장하는 것도 가능하다.
도 8은 본 발명의 정적 분석 도구 종합 관리 장치의 결과 출력 모듈의 기능 블록을 도시한 기능 블록도이다.
도 8을 참조하면, 본 발명의 결과 출력 모듈(120)은 결과 형식 변환기(121), 결과 분석 엔진(123) 및 출력 인터페이스(125)를 포함하여 구성될 수 있다.
본 발명의 결과 출력 모듈(120)은 각 정적 분석 도구(200)의 분석 결과를 받아 결과 형식 변환기(121)를 통해, 공통 분석 결과 형식으로 변환한다. 정적 분석 도구가 전송하는 분석 결과에는 오류의 유무 외에도 오류에 이르는 경로 정보, 오류 정보 등 관련된 정보가 포함될 수 있다. 이런 다양한 종류의 결과 정보들은 결국 프로그램의 오류 여부 확인이라는 목적 하에서 분석을 수행한 결과이므로 출력 결과들 간에 공통적인 사항들이 다수 존재한다. 따라서 이러한 공통 사항들을 중심으로 각 도구 별로 특징적인 사항을 추가함으로써 공통 분석 결과 형식을 제안할 수 있다.
결과 분석 엔진(123)은 변환된 결과를 받아 추가적인 작업을 할 수 있다. 이러한 추가적인 작업은 결과의 우선 순위를 조정, 추가적인 분석을 수행 또는 공통적인 결과 부분 정리 작업 등이 있다.
출력 인터페이스(125)는 변환된 결과 또는 추가 작업된 결과를 사용자가 요구하는 방식으로 출력한다. 출력 방식은 화면 상에 표시하거나, 파일 형식으로 출력하는 등의 방식이 있다. 필요에 따라 도구 설정 모듈(110)를 통해서 설정한 분석 항목과 연관되는 결과만을 출력할 수 있다.
도 12를 참조하면, 본 발명의 정적 분석 도구 종합 관리 장치의 결과 출력 모듈이 제공하는 분석 결과 출력 화면의 일 실시예를 확인할 수 있다.
화면 상에 표현된 'V' 표시는 오류가 있는 부분을 의미한다. 예를 들어, 배열 범위 검증에 오류가 존재하는 경우에는 이 검증 규칙에 관련된 상위 그룹인 메모리 관련 오류에도 문제가 있음을 표시하고, 결과적으로 분석 대상 검증 규칙을 모두 통과하지 못했음을 나타낸다.
도 12에 도시된 분석 결과 출력 화면의 하단에 나타나는 소스코드는 오류가 존재하는 부분을 출력한다. 즉, 배열 범위 검증을 선택하면 그에 해당하는 오류가 존재하는 소스 코드의 파일 명 및 라인 번호 등을 표시하여, 사용자에게 오류 수정의 편의성을 제공한다. 도 12에 도시된 예에서는 apple1.c에 오류가 존재하며, 오류가 있는 라인 번호는 20번째 라인 및 201번째 라인임을 표시한다. 또한 apple2.java에는 47번째 라인에 오류가 있음을 표시한다.
도 9는 본 발명의 정적 분석 도구 종합 관리 장치의 분석 설정 모듈의 기능 블록을 도시한 기능 블록도이다.
도 9를 참조하면, 본 발명의 분석 설정 모듈(130)은 분석 설정 인터페이스(131) 및 분석 설정 형식 변환기(133)를 포함하여 구성될 수 있다.
사용자는 다수의 정적 분석 도구(200)의 통합적인 분석 결과를 검토한 후, 오류의 확인 여부, 잘못된 오류인지 여부 또는 수정 여부 등의 정보를 바탕으로 각 정적 분석 도구(200)에 입력시켜 각 정적 분석 도구(200)가 중복적인 작업을 수행하지 않도록 해야 한다. 이러한 분석 결과 검토를 바탕으로 분석 설정을 재조정하는 것은 각 정적 분석 도구마다 차이가 있으므로, 본 발명의 정적 분석 도구 통합 관리 장치(100)는 각 정적 분석 장치(200)들을 통합적으로 분석 설정을 할 수 있는 환경을 제공한다.
사용자는 통합 프로그램 정적 분석 도구 분석 결과 사용자 분석 설정 인터페이스를 통해 사용자의 분석 결과를 입력하면, 정적 분석 도구 공통 사용자 분석 설정 형식으로 저장된다. 이 사용자 분석 설정은 각 분석 도구의 사용자 분석 설정 변환기로 변환되어 각 정적 분석 도구로 보내진다
분석 설정 인터페이스(131)는 사용자에게 정적 분석 도구들을 통합적으로 분석 설정할 수 있는 설정 환경을 제공한다. 일반적으로 설정 환경은 사용자가 분석 설정을 위해 체크할 수 있는 항목, 필요한 변수 등을 입력할 수 있는 입력창 및 각 분석 결과로 추출된 오류들의 진위여부를 체크할 수 있는 항목 등을 포함하여 구성될 수 있다.
이런 다양한 종류의 분석 설정 정보들은 결국 프로그램의 오류 여부 확인 및 정적 분석 도구의 설정 재조정이라는 목적 하에서 정적 분석 도구들을 분석 설정하기 위한 것이다. 따라서 분석 설정 사항들 중 모든 정적 분석 도구에 공통적인 사항들이 다수 존재하므로, 이러한 공통 사항들을 중심으로 각 도구 별로 특징적인 사항을 추가함으로써 공통 설정 형식을 제안할 수 있다.
분석 설정 형식 변환기(133)는 분석 설정 인터페이스(131)로부터 공통 분석 설정 형식으로 입력된 분석 설정 정보들을 각 정적 분석 도구(200)의 분석 설정 형식에 맞게 변환하고 설정 내용을 저장한다. 바람직하게는 분석 설정 형식 변환기(133)는 연결된 각 정적 분석 도구(200)들의 분석 설정 형식에 대한 정보를 저장한다. 또한 필요에 따라서는 설정 형식 변환기(111)는 설정 형식의 변환 방법에 대한 정보를 사전에 설정 또는 입력받을 수 있다
도 13를 참조하면, 본 발명의 정적 분석 도구 종합 관리 장치의 분석 설정 모듈이 제공하는 분석 설정 화면의 일 실시예를 확인할 수 있다.
사용자는 분석 도구의 결과를 검토하여 분석 의견을 입력한다. 예를 들어, 배열 범위 검증 오류로 발견된 3개의 오류 중, apple1.c 의 20번째 라인에서 발견된 오류는 사용자의 의도적인 표현으로 검증 규칙상에는 문제가 존재하지만 실제로는 발생되지 않음을 나타낸다. 201번째 라인의 경우에는 사용자가 아직 오류를 분석하지 않은 상태임을 나타낸다. apple2.java의 47번째 라인에 해당하는 오류는 오류임을 확인한 것을 표시한다. 이와 같은 표시를 통하여 차후에 수정 후 재분석 시에 도움을 받을 수 있다.
도 10은 본 발명의 정적 분석 도구 종합 관리 장치의 실행 관리 모듈의 기능 블록을 도시한 기능 블록도이다.
본 발명의 실행 관리 모듈(140)은 각 정적 분석 도구(200)의 실행을 전체적, 통합적으로 조율한다.
사용자는 실행 관리 모듈(140)을 통하여 전체 실행 관리 명령을 각 정적 분석 도구(200)로 전달할 수 있고, 또한 각 정적 분석 도구(200)의 실행 상태도 실행 관리 모듈(140)을 통해 확인할 수 있다. 따라서 실행 관리 모듈(140)은 사용자가 전체 정적 분석 도구(200)들을 통합적 효율적으로 관리할 수 있도록 한다.
실행 관리 모듈(140)에서 수행하는 기능은 전체 정적 분석 도구(200)들의 실행 여부를 관리하는 것, 각 정적 분석 도구(200) 자체의 설정을 관리하는 것 및 정적 분석 도구의 검증 규칙을 관리하는 것이 포함될 수 있다.
정적 분석 도구(200)들의 실행 여부를 관리하는 기능은 도구 설정 모듈(110)에서 설정한대로 정적 분석 도구(200)가 검증을 시작하고 검증을 종료하도록 하는 기능이다. 즉, 실행 관리 모듈(140)에서 정적 분석 도구(200)로 시작 명령을 전송하면, 설정된 검증 규칙 및 소스코드 등을 이용하여 당해 정적 분석 도구(200)이 분석을 시작한다. 또한 실행 관리 모듈(140)에서 정적 분석 도구(200)로 종료 명령을 전송하면, 당해 정적 분석 도구(200)는 분석을 종료한다.
상기와 같이 실행 관리 모듈(140)에서 각 정적 분석 도구(200)들의 분석 실행 및 종료를 관리함으로써, 각각의 정적 분석 도구(200)들을 서로 다른 시스템에 분산하여 배치할 수 있게 된다. 정적 분석 도구(200)들의 분산 배치가 가능해지면, 정적 분석 도구(200)들의 검증의 효율성이 증대된다. 또한 동일한 정적 분석 도구(200)를 다수개 분산하여 설치할 수 있어 분석을 병렬적으로 처리할 수 있으므로, 개별 정적 분석 도구(200)의 로드를 줄일 수 있는 정적 분석 도구 통합 관리 시스템 설계가 가능해진다.
각 정적 분석 도구(200) 자체의 설정을 관리하는 기능은 개별 정적 분석 도구(200)가 설치되어 동작하고 있는 시스템의 ip 주소, 계정 명, 비밀 번호, 각 도구의 위치 또는 파일 이름 등을 사용자가 설정할 수 있는 환경을 제공한다.
정적 분석 도구의 검증 규칙을 관리하는 기능은 검증 규칙에 따라서 특정한 정적 분석 도구(200)만이 분석하도록 설정하는 기능이다. 정적 분석 도구(200)들은 각각 분석 방식이 차이가 있어 특정 검증 규칙에는 특정한 정적 분석 도구(200)가 성능이 좋기 때문에, 검증 규칙 별로 장점을 가진 정적 분석 도구(200)에서 분석을 담당하도록 설정한다. 이를 통해서 정적 분석 도구 통합 관리 시스템의 효율적인 운영이 가능하다.
도 10을 참조하면, 상기의 기능을 구현하기 위한 본 발명의 실행 관리 모듈(140)는 실행 관리 인터페이스(141) 및 관리 명령 형식 변환기(143)를 포함하여 구성될 수 있다.
실행 관리 인터페이스(141)는 사용자로부터 각 정적 분석 도구(200)들의 실행 관리와 관련된 사항을 입력받고, 실행 관리 상황을 사용자에게 모니터링 해준다.
도 11을 참조하면, 본 발명의 실행 관리 인터페이스(141)는 사용자에게 각 정적 분석 도구(200)의 실행 관리와 관련 사항을 입력받는 정적 분석 도구 통합 실행 관리 화면을 제공할 수 있다. 각 정적 분석 도구(200) 자체의 설정을 관리하는 입력부분이 포함됨을 확인할 수 있다.
관리 명령 형식 변환기(143)는 실행 관리 인터페이스(141)를 통해서 입력받은 통합 실행 관리 명령을 각 정적 분석 도구(200)가 요구하는 실행 관리 명령 형식으로 변환하여 각 정적 분석 도구(200)로 전송한다. 또한 관리 명령 형식 변환기(143)는 실행 관리 명령을 분석하여 상기된 정적 분석 도구(200)의 검증 규칙을 관리할 수 있다.
바람직하게는 관리 명령 형식 변환기(143)는 연결된 각 정적 분석 도구(200)들의 실행 관리 명령 형식에 대한 정보를 저장한다. 또한 필요에 따라서는 관리 명령 형식 변환기(143)는 실행 관리 명령 형식의 변환 방법에 대한 정보를 사전에 설정 또는 입력받을 수 있다
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경할 수 있다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 당업자에게 있어 명백할 것이다.
100: 정적 분석 도구 통합 관리 장치 200: 정적 분석 도구
110: 도구 설정 모듈
111: 설정 형식 변환기 113: 설정 인터페이스
120: 결과 출력 모듈
121: 결과 형식 변환기 123: 결과 분석 엔진
125: 출력 인터페이스
130: 분석 설정 모듈
131: 분석 설정 인터페이스 133: 분석 설정 형식 변환기
140: 실행 관리 모듈
141: 실행 관리 인터페이스 143: 관리 명령 형식 변환기
150: 제1 인터페이스 모듈 160: 제2 인터페이스 모듈

Claims (17)

  1. 사용자로부터 정적 분석 도구들의 분석을 위한 통합 설정 형식으로 초기 설정 정보를 입력 받아 정적 분석 도구의 초기 설정 형식으로 변환하여 전송하는 도구 설정 모듈;
    정적 분석 도구의 분석 결과를 수신하고 공통 분석 결과 형식으로 변환하여 출력하는 결과 출력 모듈;
    사용자로부터 분석 설정 정보를 입력 받아 정적 분석 도구의 분석 설정 형식으로 변환하여 전송하는 분석 설정 모듈; 및
    정적 분석 도구의 분석 수행 관리, 정적 분석 도구 자체의 설정 관리 또는 정적 분석 도구의 검증 규칙 관리 중 하나 이상의 기능을 포함하는 실행 관리 모듈을 포함하는 정적 분석 도구 통합 관리 장치.
  2. 제1항에 있어서, 상기 도구 설정 모듈은
    상기 사용자에게 상기 정적 분석 도구들을 통합적으로 설정할 수 있는 설정 환경을 제공하는 설정 인터페이스; 및
    상기 설정 인터페이스로부터 상기 통합 설정 형식의 초기 설정 정보를 전송 받아 상기 정적 분석 도구의 초기 설정 형식으로 변환하고 해당 정적 분석 도구로 전송하는 설정 형식 변환기를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  3. 제2항에 있어서, 상기 설정 인터페이스는 상기 초기 설정 정보를 통합 설정 형식으로 저장하며,
    상기 설정 형식 변환기는 상기 정적 분석 도구들에 적합한 설정 형식에 대한 정보를 저장하고 있는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  4. 제1항에 있어서, 상기 결과 출력 모듈은
    상기 분석 결과를 공통 분석 결과 형식으로 변환하는 결과 형식 변환기; 및
    상기 변환된 분석 결과를 사용자가 요구 또는 설정한 방식으로 출력하는 출력 인터페이스를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  5. 제4항에 있어서, 상기 결과 출력 모듈은
    상기 결과 형식 변환기로부터 변환된 분석 결과를 수신하고,
    상기 분석 결과의 우선 순위 조정, 상기 분석 결과를 바탕으로 추가 분석 수행 또는 상기 분석 결과 중 중복되는 분석 결과 정리 작업 중 하나 이상의 작업을 수행하는 결과 분석 엔진을 더 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  6. 제1항에 있어서, 상기 분석 설정 모듈은
    상기 사용자에게 상기 정적 분석 도구들을 통합적으로 분석 설정할 수 있는 분석 설정 환경을 제공하는 분석 설정 인터페이스; 및
    상기 분석 설정 인터페이스로부터 상기 분석 설정 정보를 전송 받아 상기 정적 분석 도구에 적합한 분석 설정 형식으로 변환하고 해당 정적 분석 도구로 전송하는 분석 설정 형식 변환기를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  7. 제6항에 있어서, 상기 분석 설정 인터페이스는 상기 분석 설정 정보를 통합 분석 설정 형식으로 저장하며,
    상기 분석 설정 형식 변환기는 상기 정적 분석 도구들에 적합한 분석 설정 형식에 대한 정보를 저장하고 있는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  8. 제1항에 있어서, 상기 실행 관리 모듈은
    상기 사용자로부터 정적 분석 도구의 실행 관리와 관련된 통합 실행 명령 형식의 실행 관리 명령을 입력받고, 상기 실행 관리 상황을 사용자에게 모니터링하는 실행 관리 인터페이스; 및
    상기 실행 관리 인터페이스로부터 상기 통합 실행 명령 형식의 실행 관리 명령을 수신하고 상기 정적 분석 도구의 실행 명령 형식으로 변환하여 전송하는 관리 명령 형식 변환기를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  9. 제8항에 있어서, 상기 관리 명령 형식 변환기는 상기 실행 관리 명령을 분석하여 검증 규칙 별로 분석을 수행할 정적 분석 도구를 선택하는 것을 특징으로 하는 정적 분석 도구 통합 관리 장치.
  10. 분석 대상 프로그램을 정적 분석하는 다수의 정적 분석 도구; 및
    사용자로부터 정적 분석 도구들의 분석을 위한 통합 설정 형식으로 초기 설정 정보를 입력 받아 정적 분석 도구의 초기 설정 형식으로 변환하여 전송하는 도구 설정 모듈, 정적 분석 도구의 분석 결과를 수신하고 공통 분석 결과 형식으로 변환하여 출력하는 결과 출력 모듈, 사용자로부터 분석 설정 정보를 입력 받아 상기 정적 분석 도구의 분석 설정 형식으로 변환하여 전송하는 분석 설정 모듈 및 상기 정적 분석 도구의 분석 수행 관리, 상기 정적 분석 도구 자체의 설정 관리 또는 상기 정적 분석 도구의 검증 규칙 관리 중 하나 이상의 기능을 포함하는 실행 관리 모듈을 갖는 정적 분석 도구 통합 관리 장치를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  11. 제10항에 있어서, 상기 다수의 정적 분석 도구들은 하나 이상의 네트워크 장비에 분산되어 설치되어 있는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  12. 제10항에 있어서, 상기 다수의 정적 분석 도구들과 상기 정적 분석 도구 통합 관리 장치 사이에 정적 분석 도구용 에이전트 또는 네트워크 연결 장치를 더 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  13. 제11항에 있어서, 상기 실행 관리 모듈은
    상기 분산 설치된 다수의 정적 분석 도구들이 병렬적으로 분석을 처리할 수 있도록 분석 사항 또는 규칙 등을 상기 다수의 정적 분석 도구에 분배하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  14. 제10항에 있어서, 상기 도구 설정 모듈은
    상기 사용자에게 상기 정적 분석 도구들을 통합적으로 설정할 수 있는 설정 환경을 제공하는 설정 인터페이스; 및
    상기 설정 인터페이스로부터 상기 통합 설정 형식의 초기 설정 정보를 전송 받아 상기 정적 분석 도구의 초기 설정 형식으로 변환하고 해당 정적 분석 도구로 전송하는 설정 형식 변환기를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  15. 제10항에 있어서, 상기 결과 출력 모듈은
    상기 분석 결과를 공통 분석 결과 형식으로 변환하는 결과 형식 변환기; 및
    상기 변환된 분석 결과를 사용자가 요구 또는 설정한 방식으로 출력하는 출력 인터페이스를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  16. 제10항에 있어서, 상기 분석 설정 모듈은
    상기 사용자에게 상기 정적 분석 도구들을 통합적으로 분석 설정할 수 있는 분석 설정 환경을 제공하는 분석 설정 인터페이스; 및7
    상기 분석 설정 인터페이스로부터 상기 분석 설정 정보를 전송 받아 상기 정적 분석 도구에 적합한 분석 설정 형식으로 변환하고 해당 정적 분석 도구로 전송하는 분석 설정 형식 변환기를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
  17. 제10항에 있어서, 상기 실행 관리 모듈은
    상기 사용자로부터 정적 분석 도구의 실행 관리와 관련된 통합 실행 명령 형식의 실행 관리 명령을 입력받고, 상기 실행 관리 상황을 사용자에게 모니터링하는 실행 관리 인터페이스; 및
    상기 실행 관리 인터페이스로부터 상기 통합 실행 명령 형식의 실행 관리 명령을 수신하고 상기 정적 분석 도구의 실행 명령 형식으로 변환하여 전송하는 관리 명령 형식 변환기를 포함하는 것을 특징으로 하는 정적 분석 도구 통합 관리 시스템.
KR1020100057732A 2009-12-18 2010-06-17 정적 분석 도구 통합 관리 장치 및 시스템 KR101369776B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010279444A JP2011129121A (ja) 2009-12-18 2010-12-15 静的分析道具統合管理装置及びシステム
US12/969,736 US20110154120A1 (en) 2009-12-18 2010-12-16 Apparatus and system for integratedly managing static analysis tools

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090127490 2009-12-18
KR20090127490 2009-12-18

Publications (2)

Publication Number Publication Date
KR20110070743A true KR20110070743A (ko) 2011-06-24
KR101369776B1 KR101369776B1 (ko) 2014-03-06

Family

ID=44402213

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100057732A KR101369776B1 (ko) 2009-12-18 2010-06-17 정적 분석 도구 통합 관리 장치 및 시스템

Country Status (1)

Country Link
KR (1) KR101369776B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150052725A (ko) * 2013-11-06 2015-05-14 주식회사 엘지씨엔에스 모델링 코드 검증 방법, 이를 수행하는 모델링 코드 검증 장치 및 이를 저장하는 기록매체
KR20180136163A (ko) * 2017-06-14 2018-12-24 슈어소프트테크주식회사 소프트웨어 통합 품질 평가 방법 및 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
KR20190030490A (ko) * 2017-09-14 2019-03-22 국방과학연구소 프로그램 소스 코드의 보안 취약점 검출 장치 및 방법
KR101984294B1 (ko) * 2017-12-19 2019-05-30 광운대학교 산학협력단 동적 분석을 기반으로 하는 소스 코드 분석을 위한 분석 시스템 및 방법
KR102380506B1 (ko) * 2020-10-29 2022-03-31 포스필 주식회사 전자기기 자가 진단 장치

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100656559B1 (ko) * 2003-09-15 2006-12-13 (주)대컴정보기술 Bibd 방법론을 이용하는 프로그램 자동 개발 장치

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150052725A (ko) * 2013-11-06 2015-05-14 주식회사 엘지씨엔에스 모델링 코드 검증 방법, 이를 수행하는 모델링 코드 검증 장치 및 이를 저장하는 기록매체
KR20180136163A (ko) * 2017-06-14 2018-12-24 슈어소프트테크주식회사 소프트웨어 통합 품질 평가 방법 및 이를 실행하기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
KR20190030490A (ko) * 2017-09-14 2019-03-22 국방과학연구소 프로그램 소스 코드의 보안 취약점 검출 장치 및 방법
KR101984294B1 (ko) * 2017-12-19 2019-05-30 광운대학교 산학협력단 동적 분석을 기반으로 하는 소스 코드 분석을 위한 분석 시스템 및 방법
KR102380506B1 (ko) * 2020-10-29 2022-03-31 포스필 주식회사 전자기기 자가 진단 장치
US11686772B2 (en) 2020-10-29 2023-06-27 Phosphil Inc. Self diagnostic apparatus for electronic device

Also Published As

Publication number Publication date
KR101369776B1 (ko) 2014-03-06

Similar Documents

Publication Publication Date Title
US10095602B2 (en) Automated code analyzer
CN104756086B (zh) 用于调试依领域而定的语言的系统和方法
US20150100832A1 (en) Method and system for selecting and executing test scripts
US20150100829A1 (en) Method and system for selecting and executing test scripts
KR101369776B1 (ko) 정적 분석 도구 통합 관리 장치 및 시스템
US20110307860A1 (en) Simulation-based interface testing automation system and method for robot software components
CN107241315B (zh) 银行网关接口的接入方法、装置及计算机可读存储介质
CN109508295B (zh) 区块链共识算法测试方法、装置、计算装置和存储介质
US20150100831A1 (en) Method and system for selecting and executing test scripts
US9633144B2 (en) Method for performing an inventory of the hardware components connected to a control unit test system
US11816479B2 (en) System and method for implementing a code audit tool
JP2011129121A (ja) 静的分析道具統合管理装置及びシステム
CN109542781B (zh) 区块链共识算法测试方法、装置、计算装置和存储介质
WO2022103685A1 (en) Continuous integration and development of code in a secure environment
US9612944B2 (en) Method and system for verifying scenario based test selection, execution and reporting
KR20110063084A (ko) 웹 서비스 상호 운용성 시험 장치 및 그 방법
CN109586946B (zh) 异常处理方法、装置及计算机可读存储介质
US10606569B2 (en) Declarative configuration elements
EP2012490B1 (en) Middleware for use in a client-server architecture
US20070124723A1 (en) Monitoring dynamic aspect oriented applications at execution time
JP4257364B2 (ja) 通信エラー情報出力プログラム、通信エラー情報出力方法および通信エラー情報出力装置
Hartmann et al. A UML-based approach for validating product lines
CN106407309B (zh) 支持多种数据源的集群数据库数据加载工具及方法
CN1932760B (zh) 用于运行应用程序的系统和方法
US9612870B2 (en) Inversion of control for executable extensions in a run-time environment

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170124

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190125

Year of fee payment: 6