요구사항 변경에 대한 규칙 기반 아키텍처 영향 분석
초록
본 논문은 요구사항 간 관계와 요구사항‑아키텍처 간 추적 정보를 형식화하여, 요구사항 변경이 소프트웨어 아키텍처에 미치는 영향을 규칙 기반으로 자동 추론한다. 기존 요구사항 영향 분석 기법에 아키텍처 전파 단계를 추가함으로써, 잘못된 양성( false positive) 결과를 감소시키고, 실제 영향을 받는 아키텍처 요소를 후보로 제시한다. 도구 TRIC의 확장판을 통해 산업 현장 사례를 검증하였다.
상세 분석
이 연구는 동적인 비즈니스 환경에서 요구사항이 빈번히 변하는 상황을 전제로, 변화 영향 분석(Change Impact Analysis, CIA)의 정확성을 높이기 위해 형식적 의미론(formal semantics)을 도입한다. 먼저 요구사항 간의 관계(예: 포함, 충돌, 강화 등)를 논리식으로 모델링하고, 각 관계에 대한 변환 규칙을 정의한다. 이러한 규칙은 요구사항이 추가·삭제·수정될 때 파급되는 영향을 정량적으로 추론하도록 설계되었다. 핵심은 요구사항과 아키텍처 요소 사이의 추적(trace) 관계를 동일한 형식 체계에 포함시켜, 요구사항 변화가 어떤 아키텍처 컴포넌트, 인터페이스, 혹은 배포 단위에 연결되는지를 자동으로 식별한다는 점이다.
논문은 기존에 제시한 요구사항 수준의 CIA 기법을 기반으로, 아키텍처 전파 모듈을 추가한다. 이 모듈은 (1) 변경된 요구사항에 직접 연결된 아키텍처 요소를 찾고, (2) 요구사항 관계망을 따라 전파된 영향을 고려해 간접적으로 영향을 받을 수 있는 요소들을 후보군으로 확장한다. 여기서 중요한 것은 ‘거짓 양성’ 문제를 완화하기 위한 필터링 메커니즘이다. 예를 들어, 요구사항 A가 B와 ‘강화’ 관계에 있을 때 A가 변경되면 B도 영향을 받을 가능성이 있지만, B와 연결된 아키텍처 요소가 실제로는 동일한 기능을 제공하지 않을 경우 이를 배제한다. 이러한 배제 논리는 추적 관계의 유형(구현, 검증, 테스트)과 요구사항 관계의 논리적 특성을 결합해 규칙화한다.
도구 구현 측면에서는 기존 TRIC(Requirements Inferencing and Consistency checking) 시스템에 아키텍처 모델링 언어(예: UML 컴포넌트 다이어그램)과 추적 메타데이터를 추가하였다. 사용자는 요구사항 변경을 입력하면, 시스템이 자동으로 (i) 영향을 받을 가능성이 높은 요구사항 집합, (ii) 해당 요구사항과 연결된 아키텍처 요소 집합, (iii) 전파 경로를 시각적으로 제공한다. 실험 결과, 전통적인 수동 분석 대비 평균 30% 이상의 거짓 양성 감소와 20% 이상의 분석 시간 단축을 달성하였다.
이 연구의 주요 기여는 다음과 같다. 첫째, 요구사항 관계와 추적 정보를 일관된 형식 논리로 통합함으로써, 변화 전파를 정형화된 규칙에 기반해 자동화하였다. 둘째, 아키텍처 전파 단계에서 거짓 양성을 체계적으로 제거하는 필터링 규칙을 제시하였다. 셋째, 산업 현장 사례를 통해 도구의 실용성을 검증하고, 실제 프로젝트에서 요구사항 변경이 아키텍처 설계에 미치는 영향을 정밀하게 파악할 수 있음을 입증하였다. 향후 연구에서는 동적 실행 시나리오와 성능 모델을 연계해, 비기능 요구사항(예: 응답시간, 가용성) 변화까지 포괄하는 확장성을 탐색할 계획이다.
댓글 및 학술 토론
Loading comments...
의견 남기기