지속적인 검증 및 CI/CD
검증을 CI 파이프라인에 통합하면, 결함이 통합 빌드나 하류 구성 요소로 전파되기 전에 발생 즉시 드러나게 됩니다.
임베디드 소프트웨어 팀의 경우, 검증 단계를 CI/CD 파이프라인에 통합하면 모든 코드 커밋 시 정적 분석, 회귀 테스트 실행, 코드 범위 검사 및 품질 게이트 검사가 자동으로 실행됩니다. 이로 인해 문제가 발생한 지 몇 분 내에 바로 드러나며, 코드가 최신 상태이고 수정도 간단하게 이루어질 수 있습니다.
파이프라인 내 정적 분석
PC-lint Plus는 명령행 도구로 실행되며, 어떤 CI/CD 환경에도 통합될 수 있습니다. 완전히 사용자 정의 가능한 출력 포맷을 통해 빌드 시스템, 이슈 트래커, 대시보드에서 분석 결과를 활용할 수 있습니다. 소스 코드를 기반으로 작동하며 별도의 빌드나 실행 과정이 필요하지 않기 때문에, 최소한의 오버헤드로 매 커밋 시마다 실행할 수 있습니다.
PC-lint Plus View는 이러한 가시성을 development environment로 직접 확장합니다. 코드가 작성되는 즉시 분석 결과가 인라인으로 표시되므로, 결함이나 가이드라인 위반 사항이 나중에 빌드 보고서를 통해 드러나는 대신 이를 유발한 개발자가 즉시 확인할 수 있습니다. 파이프라인에서 실행되는 것과 동일한 분석이 동일한 규칙 구성에 따라 편집기에서도 수행됩니다.
PC-lint Plus는 코드 구현 표준 위반, null 포인터 참조, 보안 취약점 및 기타 결함 유형이 코드베이스에 나타나는 즉시, 이를 유발한 빌드 내에서 이를 표시합니다.
자동화된 테스트 실행
VectorCAST는 Jenkins, Azure DevOps, GitLab 및 기타 CI 체계와 연동됩니다. 서버 에디션은 자동화 환경에서 테스트를 병렬로 실행하도록 최적화되어 있어, 대화형 테스트 개발을 방해하지 않으면서도 여러 구성에 걸쳐 테스트를 실행할 수 있습니다.
변경 기반 시험
대규모 코드베이스에서는 매 커밋 시 전체 테스트 스위트를 실행하는 것이 비실용적입니다. VectorCAST의 변경 기반 시험(CBT)은 변경 사항의 영향을 받는 코드 섹션을 포괄하는 최소한의 test 케이스 집합을 식별하고, 해당 test 케이스만 재실행함으로써 이 문제를 해결합니다.
테스트 커버리지의 무결성은 유지됩니다. CBT는 CI 주기를 짧게 유지하면서 각 변경 사항의 영향에 대한 신속한 피드백을 제공합니다. 필요 시 전체 회귀 테스트를 예약하여 실행할 수 있습니다. 이러한 과정 사이에서 CBT는 변경 사항의 영향에 대한 신속한 피드백을 제공함으로써, 누락 없이 CI 주기를 짧게 유지합니다.
품질 게이트 및 추세 모니터링
개별 테스트 실행 결과는 단일 빌드의 상태를 반영합니다. Squore는 프로젝트의 진행 경로를 모니터링합니다. 릴리스 간 커버리지가 개선되고 있는지, 정적 분석 결과 항목이 누적되고 있는지, 그리고 통합 전에 코드베이스가 커버리지 요건을 충족할 수 있는 궤도에 있는지 여부를 추적합니다.
Squore는 규정을 준수하지 않는 코드가 파이프라인을 통과하는 것을 막는 품질 게이트를 적용합니다. 커밋으로 인해 커버리지가 정의된 임계값 아래로 저하되거나, 정적 분석 결과가 설정된 한도를 초과할 경우, 게이트는 빌드를 중단하고 팀에 경고를 보냅니다. 추세 분석을 통해 품질 저하가 릴리스를 지연시키는 문제가 되기 전에 조기에 파악할 수 있습니다.
규정 준수에서 얻는 이익
각 자동화 테스트 실행, 정적 분석 실행, 커버리지 측정은 무엇이 검증되었는지, 얼마나 철저하게 검증되었는지, 그리고 어떤 근거에 따라 검증되었는지를 보여주는 증거를 점차 축적해 나갑니다. 이러한 증거는 감사 직전에 압박을 받아 급하게 마련하는 별도의 규정 준수 활동이 아니라, 개발 프로세스의 부산물로 축적됩니다.
ISO 26262, DO-178C, IEC 61508 또는 IEC 62304 표준에 따라 작업하는 팀에게 이는 실질적인 측면에서 매우 중요한 의미를 갖습니다. 이전 프로젝트 말미에 몇 주나 걸려 컴파일했던 인증 증거 자료가 이번 프로젝트 전반에 걸쳐 지속적으로 생성됩니다. 커버리지 누락은 그 규모가 아직 작을 때 바로 드러납니다. 정적 분석 부채가 관리 불가능한 수준까지 누적되지 않습니다. 감사는 기록을 급하게 작성해야 하는 경쟁이 아니라, 기존 기록을 검토하는 과정이 됩니다.
PC-lint Plus, VectorCAST, Squore는 각각 지원하는 표준에 따라 인증을 받았습니다. 이 도구들의 출력물은 추가적인 검증 작업 없이 검증 증거로 인정됩니다. 이를 파이프라인에 통합하면, 규정 준수 증거는 별도의 프로젝트가 아닌 엔지니어링 실무의 제품이 됩니다.