Core Concepts
본 연구는 데이터 사전에서 얻은 정보를 활용하여 고수준 요구사항 간의 모순을 분석하고 식별하는 방법을 제안한다. 이 방법은 고수준 요구사항을 논리적 표현으로 변환하고 SAT 솔버를 사용하여 면밀히 검토함으로써 모순을 탐지하는 것을 목표로 한다.
Abstract
본 연구는 항공 인증 표준 DO-178C에 따라 소프트웨어 검증 프로세스에서 고수준 요구사항의 일관성을 보장하는 것이 필수적임을 강조한다. 복잡한 소프트웨어 시스템에서 요구사항 간 충돌이 발생할 수 있으며, 이를 초기 단계에서 해결하는 것이 중요하다.
제안된 방법은 DOORS에 통합되어 각 고수준 요구사항을 논리적 표현으로 변환하고 SAT 솔버를 사용하여 모순을 탐지한다. 이를 통해 요구사항 검토 프로세스의 효율성과 정확성을 크게 향상시킬 수 있다.
구체적으로 다음과 같은 단계로 진행된다:
요구사항을 논리적 표현으로 변환: ANTLR4를 사용하여 요구사항 형식의 문법을 작성하고 이를 통해 논리적 표현으로 변환
SAT 솔버 REST API를 활용한 모순 분석: 공통 작업을 공유하는 요구사항 쌍을 대상으로 SAT 솔버를 통해 모순 여부 분석
모순 분석 보고서 생성: Jenkins 자동화를 통해 분석 결과를 HTML 형식의 보고서로 제공
이 방법은 특히 복잡한 항공 소프트웨어 시스템에서 요구사항 검토 시간을 크게 단축하고 잠재적인 검토자 오류를 최소화할 수 있다.
Stats
복잡한 소프트웨어 시스템에서 요구사항 간 충돌이 발생할 수 있으며, 이를 초기 단계에서 해결하는 것이 중요하다.
본 연구에서 제안한 방법을 통해 25개의 요구사항을 25초 내에 분석하여 총 6개의 모순을 식별할 수 있었다.
참여자들은 평균 21분 동안 수작업으로 분석하여 4개의 모순을 찾아냈다.
Quotes
"복잡한 소프트웨어 시스템에서 요구사항 간 충돌이 발생할 수 있으며, 이를 초기 단계에서 해결하는 것이 중요하다."
"본 연구에서 제안한 방법을 통해 25개의 요구사항을 25초 내에 분석하여 총 6개의 모순을 식별할 수 있었다."