감사(Audit)

독립적인 검토자들이 소프트웨어 산출물과 프로세스를 체계적으로 검사하고 평가하는 공식적인 검토 과정이다.
이는 마치 회계 감사와 유사하게, 객관적인 기준에 따라 철저하게 검증하는 과정이다.
외부 또는 독립적인 감사자에 의해 수행되며, 주로 규정 준수와 품질 표준 충족 여부를 확인하는 데 중점을 둔다.

Audit의 주요 특징

  1. 공식성과 체계성
    Audit은 가장 공식적인 검토 형태.
    모든 과정이 문서화되며, 정해진 절차와 체크리스트에 따라 진행된다.
    예를 들어:

    1
    2
    3
    4
    5
    6
    7
    8
    
    Audit 계획서
    1. 검토 범위: 사용자 인증 모듈 전체
    2. 검토 일정: 2024.01.15 - 2024.01.19
    3. 참여자 역할:
       - 주검토자: 김철수 (보안팀)
       - 부검토자: 이영희 (품질관리팀)
       - 기술지원: 박지민 (개발팀)
    4. 검토 기준: ISO/IEC 27001 보안 표준
    
  2. 독립성
    Audit을 수행하는 검토자들은 해당 프로젝트나 코드 개발에 직접 참여하지 않은 독립적인 인원들로 구성된다.
    이는 객관적인 평가를 보장하기 위함이다.

Audit의 주요 목적

  1. 규정 준수 확인

    • 산업 표준 준수 여부
    • 내부 정책 및 절차 준수
    • 법적 요구사항 충족
  2. 품질 보증

    • 코드 품질 검증
    • 문서화 수준 평가
    • 테스트 커버리지 확인
  3. 리스크 관리

    • 보안 취약점 식별
    • 잠재적 문제점 발견
    • 개선 필요 사항 도출

## Audit의 유형

  1. 소프트웨어 품질 감사: 소프트웨어 개발 프로세스, 아티팩트, 문서, 방법론을 평가하여 품질 보증 표준 준수를 확인한다.
  2. 소프트웨어 보안 감사: 데이터 보안, 법적 준수, 취약점 식별 등 소프트웨어의 보안 측면을 평가한다.
  3. 소프트웨어 사용성 및 접근성 감사: UI/UX 디자인 요소를 평가하여 사용자 경험을 개선한다.

Audit 프로세스의 단계

  1. 계획 단계
    예시:

    1
    2
    3
    4
    5
    
    1. 감사 범위
    2. 시작일
    3. 종료일
    4. 감사자 목록
    5. 평가 기준
    
  2. 실행 단계

    • 문서 검토
    • 코드 검사
    • 인터뷰 수행
    • 증거 수집
  3. 보고 단계
    감사 결과를 공식 문서로 작성하고 이해관계자들에게 전달한다:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    
    Audit 결과 보고서
    1. 주요 발견사항
       - 심각도 상: 2건
       - 심각도 중: 5건
       - 심각도 하: 3건
    
    2. 개선 권고사항
       - 보안 취약점 패치 필요
       - 코드 문서화 보완 필요
       - 테스트 케이스 추가 필요
    
    3. 후속 조치 계획
       - 단기 개선 항목
       - 장기 개선 항목
    

Audit의 중요한 구성 요소

  1. 검토 기준
    명확하고 측정 가능한 기준이 필요하다:

    • 코딩 표준
    • 품질 메트릭
    • 보안 요구사항
    • 성능 기준
  2. 검토 도구
    자동화된 도구를 활용하여 효율성을 높인다:

    • 정적 코드 분석 도구
    • 보안 취약점 스캐너
    • 코드 품질 측정 도구
  3. 문서화
    모든 과정과 결과를 상세히 문서화한다:

    • 검토 계획서
    • 체크리스트
    • 발견사항 보고서
    • 개선 권고안

Audit의 성공을 위한 핵심 요소

  1. 철저한 준비

    • 명확한 범위 설정
    • 충분한 시간 할당
    • 필요 자원 확보
  2. 전문성

    • 경험 있는 감사자 선정
    • 도메인 전문가 참여
    • 지속적인 교육
  3. 객관성 유지

    • 독립적인 검토자 선정
    • 명확한 평가 기준
    • 증거 기반 평가

참고 및 출처