Reverse Engineering of Embedded Software based on Model-Driven Development

모델 기반 개발방법에 기반한 임베디드 소프트웨어의 역공학

  • Na, DongJin (College of Information and Communications, Hanyang University) ;
  • Lee, Yongsoon (College of Information and Communications, Hanyang University) ;
  • Kim, Heejin (College of Information and Communications, Hanyang University) ;
  • Ryu, Minsoo (College of Information and Communications, Hanyang University)
  • 나동진 (한양대학교 전자컴퓨터통신공학과) ;
  • 이용순 (한양대학교 전자컴퓨터통신공학과) ;
  • 김희진 (한양대학교 전자컴퓨터통신공학과) ;
  • 유민수 (한양대학교 전자컴퓨터통신공학과)
  • Published : 2007.11.09

Abstract

모델 기반 개발방법은 개발자가 추상화된 모델만을 설계하는 것만으로도 소프트웨어를 개발할 수 있도록 하는 방법이다. 현재까지의 모델 기반 개발방법론은 모델에서 코드를 변환하는 것은 다루고 있지만, 반대로 코드에서 모델로의 변환은 고려하고 있지 않다. 본 논문에서는 모델이 아닌 기존에 작성된 C 언어 코드를 모델로 변환하는 역공학 기법을 제안한다. 이러한 역공학 기법을 사용하면, 새로운 모델을 작성할 때 기존의 코드로부터 모델을 얻어내 적용할 수 있다. 또한, 모델을 작성하고 작성된 모델을 통해 생성된 최종코드를 수정하였을 경우 역공학을 통해 모델과 수정한 코드를 일관성 있게 유지할 수 있다. 이를 지원하기 위해 C 언어를 UML 로 변환하는 방법 및 변환된 모델의 효율적인 구성을 위한 모델 재구성 방법을 제안한다.

Keywords