검색 상세

적응형 소프트웨어를 위한 문맥 독립적 행위 모델 기반 메서드 수준 오작동 탐지 기법

Method-level Failure Detection Method based on Context-Insensitive Behavior Model for Self-Adaptive Software

초록/요약

최근에는 스마트 폰과 같이 임베디드 형태로 다양한 장소에서 서비스를 제공하는 어플리케이션의 수가 늘어나는 추세이다. 특이할 사항은 이전의 고정된 장소에서의 환경보다 서비스 실행 중의 상태가 동적으로 변할 수 있다는 점이다. 실행 환경의 빈번한 상태 변화는 실행 중 오작동을 발생시킬 수 있다. 해결 방안으로 자가 적응형 소프트웨어, 오토노믹 컴퓨팅 연구가 있다. 본 연구에서는 레거시 소프트웨어를 대상으로 메서드 수준의 오작동 탐지 기능의 구축에 관심을 둔다. 기존의 명세 기반의 오작동 탐지 방식은 소프트웨어 구현에 대한 상세 정보를 파악해야 구현 가능하기 때문에 레거시 소프트웨어를 대상으로 적용하기 어렵다. 대안으로서 히스토리 기반의 탐지 방식을 채용할 수 있다. 컴포넌트 간의 상호작용을 문맥 의존적 행위 모델로 캡쳐하여 비정상 행위를 탐지하는 방식이다. 이러한 방식은 메서드 수준의 탐지에 적용 시 거짓 양성의 발생 비율 증가, 모니터링 오버헤드 증가 등의 문제가 발생 가능하다. 이를 해결하기 위해 본 연구에서는 문맥 독립적 행위 모델 기반 오작동 탐지(Context-Insensitive Behavior Model-based Failure Detection, CIBFD) 기법을 제안한다. 기능 별 문맥 독립적 행위 모델을 추출하고, 모델 간 Diff 분석을 통해 기능 특화 행위 모델을 추출한다. 모델 내 순차적 불변 속성을 추출하여 오작동 탐지를 구현한다. 사례 연구를 통해 기존 연구 대비 탐지 결과를 비교 분석하고, 어플리케이션 도메인 별 기법의 효용성을 비교 분석한다.

more

초록/요약

In recent years, embedded software applications provide various types of services in various places. Due to the frequent changes of states in the execution environment, a malfunction may occur during execution. To solve the problem, we can employ the self-technologies, such as self-adaptive software, autonomic computing. This study puts the attention on the detection of method-level failures in the legacy software. Existing specification-based detection method is difficult to apply to the legacy software because we have to know the details of that application that has insufficient documents. As an alternative to the specification-based method, we can employ the history-based method. Interactions between the components are captured to the context-sensitive behavior model. We can determine if the software executes the abnormal behavior based on the behavior model. However, when applied to the method-level behavior model, several problems happen such as false alarm and monitoring overhead. To solve those issues, we propose CIBFD(Context-Insensitive Behavior Model-based Failure Detection) method. Context-insensitive behavior model is extracted based on execution log files. The function-specific behavior model is extracted by the diff-analysis of behavior model. Extracting the sequential invariant properties from the model, we implement the failure detection based on the invariant. Through the case studies, the comparative analysis between the proposed method and existing method. And we analyze the effectiveness of applying the method to the application domains.

more