AI Code Governance for Mission Critical SW

Gen AI가 만든 코드는반드시 사람의 리뷰가필요합니다.

Automotive와 기능 안전이 중요한 소프트웨어에서는 AI가 만든 코드의 생성 이력, 무결성, 리뷰 상태, 변경 통제 증적을 철저히 남겨야 합니다.

시네틱스는 이 프로세스를 정의하고, AI가 만든 코드를 식별하고 리뷰어를 지원하는 솔루션을 통해 실제 개발 흐름 안에서 운영되도록 컨설팅합니다.

ISO 26262 보조 통제A‑SPICE SWE.3 / SWE.4VS Code + JenkinsHash-based Integrity

컨설팅, 사람, AI, 도구의 역할을 구분한 Flow

Flow
01
컨설팅AI 코딩 방식 설정
02
사람AI에게 코드 생성 요청
03
AI정해진 방식으로 코드 생성
04
도구AI 생성 코드 식별 및 무결성 확보
05
도구리뷰 대상 AI 코드 제시 및 리뷰 항목 제안
06
사람리뷰 수행
07
도구AI 생성 코드의 리뷰 결과 저장
08
도구AI 생성 코드 현황 대시보드

컨설팅은 AI 코딩 방식을 정리하고, 사람은 생성 요청과 최종 리뷰를 수행합니다. 도구는 AI 생성 코드 식별, 무결성, 리뷰 증적을 관리합니다.

4 Integrity Levels

함수, 정적 컨텍스트, 모듈/클래스, 파일 단위 해시로 변경 영향을 추적합니다.

3 Tool Components

AICodeGenSaver, AICodeGenReviewer, AICodeGenDashboard로 IDE와 CI를 연결합니다.

CI Review Gate

Jenkins에서 Annotation, 해시, 리뷰 상태, 정책 위반을 자동 검증합니다.

Why It Matters

AI 생성 코드는 속도보다 통제가 먼저입니다

Gen AI가 만든 코드를 그대로 병합하면 요구사항 누락, 임의 동작 추가, 리뷰 증적 부족, 도구 신뢰성 문제가 발생할 수 있습니다.

추적성 약화

모델, 프롬프트, 요청자, 기준 commit이 남지 않으면 코드가 어떤 근거로 생성됐는지 설명하기 어렵습니다.

리뷰 증적 부족

사람이 실제로 검토했는지, 누가 언제 승인했는지 남지 않으면 Safety 활동의 객관적 증거가 약해집니다.

무결성 회귀 미탐지

리뷰된 함수가 변경됐는데 상태가 그대로 유지되면 변경 통제와 재리뷰 체계가 깨집니다.

Operating Flow

AI 코드를 후보 코드로 시작해 승인 가능한 증적으로 전환합니다

개발자의 요청부터 Jenkins 결과 산출물까지 하나의 흐름으로 연결합니다.

01

요구사항 기반 생성 요청

요구사항 ID, 변경요청 ID, 안전 분류, 변경 허용 범위를 Gen AI 요청에 포함합니다.

02

Annotation과 해시 자동 주입

저장 시점에 IDE Plugin이 provenance와 함수/컨텍스트/모듈/파일 해시를 계산합니다.

03

사람 리뷰와 상태 전환

AI는 Reviewed를 설정하지 못하고, 사람 Reviewer만 Reviewed 또는 ReworkRequired 상태를 남깁니다.

04

CI 게이트와 감사 증적

Jenkins가 Placeholder, Hash mismatch, 리뷰 미완료, 독립성 위반을 검증하고 산출물로 보관합니다.

Integrity Model

파일 전체가 아니라 논리 단위별로 AI 생성 이력을 관리합니다

같은 파일 안에 사람 작성 코드와 AI 생성 코드가 섞여도, 변경 영향과 재리뷰 범위를 구조적으로 추적할 수 있게 합니다.

L1

Function-Level

함수 시그니처와 본체를 AST 기반으로 정규화해 @funcId 해시를 관리합니다.

L2

Static Context Block

include, define, typedef, constexpr 등 컴파일 의미에 영향을 주는 정적 요소를 @staticContextId로 관리합니다.

L3

Module / Class-Level

클래스, 구조체, namespace 수준 변경을 Merkle Tree 방식의 @moduleId로 추적합니다.

L4

File-Level

유효 노드 해시를 결합한 @fileHash로 Jenkins Quick Integrity Check를 수행합니다.

Tool Architecture

프로세스는 문서가 아니라 개발 도구 안에서 실행돼야 합니다

정의서의 절차를 VS Code 플러그인 2개와 Jenkins 플러그인 1개로 구현해 현장 적용성을 높입니다.

VS Code 저장 시점 Hook

AICodeGenSaver

  • Annotation Placeholder 갱신
  • 함수/컨텍스트/모듈/파일 해시 계산
  • Reviewed 코드 변경 시 상태 자동 회귀

사람 리뷰 지원 도구

AICodeGenReviewer

  • 리뷰 대상 함수 식별
  • 리뷰 전용 Gen AI 가이드 표시
  • 사람 Reviewer의 상태 변경 이력 기록

Jenkins 검증 게이트

AICodeGenDashboard

  • Annotation과 해시 재검증
  • Advisory / Blocking 정책 적용
  • 대시보드와 감사 산출물 생성

Consulting Scope

도구 개발과 프로세스 적용을 함께 설계합니다

단순 플러그인 개발이 아니라 Safety Plan, A‑SPICE 활동, 코딩 규칙, CI/CT 운영 방식까지 연결합니다.

프로세스 정책 설계

AI 코드 사용 정책, 상태 모델, Annotation 규칙, 리뷰 회귀 정책, Advisory/Blocking 기준을 정의합니다.

프로젝트 적용 컨설팅

요구사항/변경요청/안전 분류 체계와 Git/Jenkins 운영 방식에 맞춰 적용 범위를 설계합니다.

도구 신뢰성 대응

Safety 관련 프로젝트에서는 IDE/Jenkins 플러그인을 소프트웨어 도구 신뢰성 평가 대상으로 정리합니다.

리뷰·검증 체계 구축

사람 리뷰, AI 리뷰 가이드, 정적분석, 단위 테스트, CI 품질 게이트가 충돌하지 않도록 운영 구조를 만듭니다.

Evidence Dashboard

감사와 프로세스 평가에 사용할 수 있는 수치와 산출물을 남깁니다

Jenkins 결과는 화면에만 표시하지 않고 JSON, HTML, CSV 형태로 남겨 객관적 증거로 활용할 수 있게 합니다.

Gen AI 코드 LOC와 전체 대비 비율
리뷰 대상 함수/파일 수와 리뷰 완료율
모델별·모듈별 AI 코드 비율
Hash mismatch와 리뷰 회귀 발생 건수
평균 리뷰 소요 시간과 인원별 리뷰 진행률

FAQ

이 프로세스가 답해야 하는 질문

이 프로세스만 적용하면 ISO 26262나 A‑SPICE 적합성이 보장되나요?

아닙니다. 이 프로세스는 표준 적합성을 보조하는 통제 수단이며 Safety Plan, 코딩 규칙, 검증 전략, 품질보증 활동과 함께 운영되어야 합니다.

AI가 리뷰 상태를 Reviewed로 바꿀 수 있나요?

불가능하게 설계합니다. Gen AI가 만든 코드는 후보 코드이며, 최종 리뷰 상태 변경은 사람 Reviewer의 명시적 행동으로만 남겨야 합니다.

왜 파일 단위가 아니라 함수와 컨텍스트 단위로 관리하나요?

한 파일 안에 사람 작성 코드와 AI 생성 코드가 섞일 수 있기 때문입니다. 논리 단위별 해시를 관리해야 재리뷰 범위를 현실적으로 통제할 수 있습니다.

Next Step

AI 코드 생성은 개발 속도만의 문제가 아닙니다

Mission Critical SW에서는 AI 코드의 생성, 변경, 리뷰, 승인 과정을 설명할 수 있어야 합니다. 현재 개발 프로세스에 맞춘 적용 범위를 함께 검토하겠습니다.