검토요청 및 검토시의 확인사항

검토 요청시 확인사항

  • 다음은 검토를 위해 Gitlab Merge Request 커밋에 반영 되어야 할 사항입니다. 검토자가 소스의 변경부분을 읽거나 프로그램을 빌드해 보기 위한 최소한의 조건입니다.

    1. 변경된 모듈을 Rebuild 할 때 Compile Error가 없어야 합니다. (최상위 커밋 기준)

    2. 변경된 소스는 파일 단위로 Formatting을 적용합니다. (최초 적용시에는 별도의 선행 커밋으로 분리)

    3. 변경된 소스는 인코딩을 UTF-8 BOM 으로 변환합니다. (최초 적용시에는 별도의 선행 커밋으로 분리)

  • main브랜치에 병합될 소스의 경고 제거 수준입니다.

    • 납품 소프트웨어의 소스

      • Clean Level 3을 적용 합니다.

      • Extern 모듈에 대한 헤더는 수정대상이 아니지만 필요시 인코딩은 변환(UTF-8 BOM) 합니다. (별도 커밋으로 분리)

    • 시험용 소프트웨어의 소스

      • 최소 Clean Level 1을 적용 합니다.

Table 1. Clean Level
Level 설명

Clean Level 1

MSVC /W3에서 경고 없음

Clean Level 2

MSVC /W4에서 경고 없음 + clang-tidy 도구적용 (JS Coding Style Guide 일부분)

Clean Level 3

+ JS Coding Style Guide 준수

Clean Level 4

+ NUREG CR-6463 Guide 일부분 준수

Clean Level 5

+ NUREG CR-6463 Guide 준수

검토자 점검 포인트

  • https://docs.jssolution.co.kr/project-name/CR/CodeReviewBasic.html

  • 코드 분석 사용법에 따라 Code Analysis를 돌려서 Warning이 발생하는지 확인 합니다.

  • 그 밖에 코딩 스타일 지침서에 따르지 않은 부분이 있는지 확인 합니다.

  • 자동빌드(CI)가 설정된 경우 Error, Warning 발생여부를 확인 합니다.

  • SonarQube가 설정된 경우 추가적으로 발생된 메시지가 있는지 확인 합니다.

  • cpp파일 내에서 include시 #include <Foo/Bar.h> (외부라이브러리) 또는 #include "Foo/Bar.h" (Repo내부) 형식인지 확인 합니다.