Graphical Presentation Model for Static Analysis of Software

소프트웨어 정적 분석의 가시적 표현 모델

  • Song, Seung-Hwa (Dept. of Computer Science and Engineering, Konkuk University) ;
  • Kim, Yun-Kwan (Dept. of Computer Science and Engineering, Konkuk University) ;
  • Chang, Chun-Hyon (Dept. of Computer Science and Engineering, Konkuk University)
  • 송승화 (건국대학교 컴퓨터.정보통신 공학과) ;
  • 김윤관 (건국대학교 컴퓨터.정보통신 공학과) ;
  • 장천현 (건국대학교 컴퓨터.정보통신 공학과)
  • Published : 2007.06.25

Abstract

오늘날 소프트웨어의 설계 및 개발과 관련된 연구들은 많은 발전을 이루고, UML과 같은 의사소통을 위한 표준 언어가 만들어졌으며 많은 사람들이 관련 이론을 수용 및 활용하고 있다. 또한, 개발 프로세스에서의 설계 및 구현과 더불어 소프트웨어의 유지 보수 단계는 매우 중요하며 이러한 소프트웨어의 유지 보수를 위한 소프트웨어 검증에 관련된 연구는 근래에 많은 주목을 받고 있다. 하지만 소프트웨어 검증의 기술 개발 수준은 설계 및 개발에 비하여 많이 미흡한 실정이다. 소프트웨어 검증은 주로 검증하기 위한 입력 데이터를 산출하여 프로그램 실행을 통해 결과를 확인하는 동적 분석에 대한 연구가 주를 이룬다. 이러한 동적 분석은 원하는 산출물의 확인을 주목적으로 하며, 결과를 표현하는 데에는 따로 정형화된 형식이 필요 없다. 하지만 소스코드를 분석하여 소프트웨어의 구조 관계와 흐름을 파악하는 정적 분석은 분석 자료를 표현하는 표현 모델이 중요하다. 현재는 정적 분석의 결과를 표현하기 위한 공통의 표현 모델이 없기 때문에 검증 과정에서의 의사소통에서 의견의 불일치의 가능성이 있고, 설계 단계에서 사용되는 표현 모델로는 정적 분석 정보의 모든 내용을 표현하는데 한계가 있다. 따라서 본 논문에서는 소프트웨어의 정적 분석 과정을 분석 4계층으로 구분하고, 각 계층마다 분석 결과를 나타내기 위한 표현 모델을 제시한다. 그리고 이 표현 모델을 활용한 소프트웨어 분석 도구의 개발을 위해, 소스 분석 데이터를 가시적으로 표현하기 위한 자료구조의 설계에 대한 내용을 다룬다.

Keywords