Key points are not available for this paper at this time.
소프트웨어 시스템의 구성 요소를 표기상 호환 가능한 구성 요소로 교체하는 것이 시스템의 동작을 변경할 수 있는지를 평가하는 새로운 자동 기술을 소개합니다. 이 기술은 새로운 구성 요소를 시스템에 통합하거나 시스템 테스트를 실행하기 전에 작동하여 문제를 더 빠르고 저렴하게 식별할 수 있도록 합니다. 특정 구성 요소 업그레이드는 한 맥락에서는 바람직할 수 있지만 다른 맥락에서는 바람직하지 않을 수 있음을 고려하여 시스템의 구성 요소 사용을 감안합니다. 공식적인 명세가 필요하지 않아 구성 요소의 오류 또는 시스템의 오류로 인한 문제를 감지할 수 있습니다. 외부 및 내부 동작을 비교할 수 있어 즉각적으로 출력에 반영되지 않는 문제를 감지할 수 있습니다. 이 기술은 시스템의 맥락에서 구형 구성 요소에 대한 운영 추상화를 생성하고, 테스트 스위트의 맥락에서 신형 구성 요소에 대한 운영 추상화를 생성합니다. 운영 추상화는 관찰된 런타임 동작을 일반화한 프로그램 속성 집합입니다. 자동화된 논리 비교가 새로운 구성 요소가 구형 구성 요소의 모든 보장을 제공하지 않는다고 나타내면, 업그레이드가 시스템 동작에 영향을 미칠 수 있으며 추가 검토 없이 수행되어서는 안됩니다. 사례 연구에서는 이 기술이 여러 소프트웨어 구성 요소 간의 비호환성을 식별했습니다.
McCamant 외 (Mon,)가 이 질문을 연구했습니다.