ASPICE 기본 이론

ASPICE SWE.5 , SWE.6 대한 상세 설명 기능안전과 비교

아즈마민초 2025. 7. 23. 15:09
너의 말대로라면 SWE.5에서 말하는 software component verification의 기준 문서가 software requirement와 component design이라면, SWE.6(Software Verification)에서는 기준 문서가 뭐야? 내가 알기로는 SWE.6의 기준 문서는 software requirement로 알고 있는데 그러면, SWE.5와 중복되는거 아냐?
 

ChatGPT의 말:

좋은 지적이에요.
SWE.5와 SWE.6 모두 기준 문서로 Software Requirement (소프트웨어 요구사항) 을 참조하는 것처럼 보일 수 있어서 혼동되기 쉬운 부분입니다. 하지만 두 프로세스는 **“검증의 관점”과 “테스트의 목적”**에서 분명한 차이가 있습니다.


🔹 핵심 개념 먼저 정리

✅ SWE.5 – Software Component and Integration Verification

  • 검증 대상:
    • 개별 컴포넌트 (unit/module)
    • 통합된 컴포넌트 집합
  • 검증 관점:
    • 구조 기반 (Structure-based) 검증
    • → Software Architecture와 Component Design을 중심으로 검증
      • Software Requirements도 참조하지만, 기능의 내부 구현 측면에서 테스트 (예: 로직, 인터페이스 등)
  • 기준 문서:
    • Software Architecture
    • Component Design
    • 일부 Software Requirement (하지만 구조 위주로 해석함)

✅ SWE.6 – Software Verification

  • 검증 대상:
    • 전체 소프트웨어 시스템의 기능적 요구사항 충족 여부
  • 검증 관점:
    • 기능 기반 (Requirement-based) 검증
    • → Software Requirement Specification (SWE.1)에서 정의한 기능 요구사항 중심
  • 기준 문서:
    • Software Requirement Specification (SWE.1 산출물)
    • = SSR 또는 SRS (Software Requirement Spec)

 

🔹 실제 예를 들어 설명해 볼게요:

예시 요구사항 (Software Requirement):

"If the vehicle speed exceeds 120 km/h, the system shall limit torque to 80%."


① SWE.5에서의 검증 (구조 기반):

  • 이 로직이 포함된 컴포넌트가 어떤 방식으로 구현되었는지 확인
  • 속도 입력과 토크 출력 사이의 데이터 흐름이 소프트웨어 아키텍처에 정의된 대로 연결됐는지 테스트
  • 해당 로직이 특정 함수/클래스 단위에서 제대로 동작하는지 단위 테스트 수행

중점: 구조적으로 해당 요구사항이 올바르게 “내재”되어 있는지


② SWE.6에서의 검증 (기능 기반):

  • 실제로 속도값을 130km/h로 시뮬레이션했을 때 토크가 80% 이하로 제한되는지 확인
  • 테스트 케이스가 SSR 요구사항의 기능적 동작을 만족시키는지 검증

중점: 최종 기능 관점에서 시스템이 "해야 할 일"을 제대로 수행하는지


🔸 결론

  • 네 말대로, 두 프로세스 모두 Software Requirement를 참조하지만
    👉 SWE.5는 구조적 구현이 이를 반영했는지 보는 것이고
    👉 SWE.6는 그 요구사항이 실제로 충족됐는지를 테스트하는 것이에요.

이 차이점 때문에 중복이 아니라 역할 분담으로 보는 게 맞습니다.