리서치이노션 지식위키리서치이노션 지식위키
  • Introduction
  • 코딩 스타일 가이드

    • 공통 스타일
    • 언어별 가이드
    • 코드 품질 및 규칙
    • 코드 리뷰 & 테스트
  • Front-End

    • HTML Layout
    • Javascript
    • Library
  • Back-End

    • Spring Boot
    • eGovFrame
  • 환경 구축

    • Window
    • Linux
    • Spring Framework
  • Figma 템플릿

    • 컴포넌트 시스템
    • 웹 서비스 스타일 가이드
    • 모바일 디자인 템플릿
  • HTML/CSS 템플릿

    • 기본 부트스트랩 템플릿
    • 관리자 테마 UI
  • 기타 자료

    • 디자인 시스템 문서
    • 공통 아이콘 폴더
  • 운영 사이트

    • GitLab (버전 관리)
    • Jenkins (배포 자동화)
    • SonarQube (정적 코드 분석)
    • Send API 문서 (Postman)
  • 접속 환경

    • VPN 연결
  • Introduction
  • 코딩 스타일 가이드

    • 공통 스타일
    • 언어별 가이드
    • 코드 품질 및 규칙
    • 코드 리뷰 & 테스트
  • Front-End

    • HTML Layout
    • Javascript
    • Library
  • Back-End

    • Spring Boot
    • eGovFrame
  • 환경 구축

    • Window
    • Linux
    • Spring Framework
  • Figma 템플릿

    • 컴포넌트 시스템
    • 웹 서비스 스타일 가이드
    • 모바일 디자인 템플릿
  • HTML/CSS 템플릿

    • 기본 부트스트랩 템플릿
    • 관리자 테마 UI
  • 기타 자료

    • 디자인 시스템 문서
    • 공통 아이콘 폴더
  • 운영 사이트

    • GitLab (버전 관리)
    • Jenkins (배포 자동화)
    • SonarQube (정적 코드 분석)
    • Send API 문서 (Postman)
  • 접속 환경

    • VPN 연결
  • 운영 사이트

    • GitLab (버전 관리)

      • 1. 개요
    • Jenkins (배포 자동화)

      • 1. 개요
      • 2. 원격 서버 설정 가이드
    • SonarQube (정적 코드 분석)

      • 1. 개요
      • 2-1. 프로젝트 생성 (로컬)
      • 3-0. 분석 결과 해석 및 필수 조치 가이드
      • 3-1. 로컬 점검

🛡 SonarQube 분석 결과 해석 및 필수 조치 가이드

SonarQube 분석 결과가 Passed 상태이더라도
모든 항목이 안전하거나 수정이 불필요하다는 의미는 아닙니다.

본 가이드는 운영 기준에서 반드시 확인·조치해야 할 항목을 명확히 안내합니다.


✅ Passed 상태의 정확한 의미

SonarQube의 Passed는 다음을 의미합니다.

  • 현재 설정된 Quality Gate 조건을 충족
  • 최소 품질 기준을 통과했을 뿐
  • 보안·안정성 리스크가 없다는 의미는 아님

⚠️ 즉, Passed ≠ “운영에 완전히 안전”


🔴 반드시 확인 및 조치해야 할 항목

아래 항목은 운영 환경 기준에서 필수 확인 또는 수정 대상입니다.


🔐 1️⃣ Security Hotspots (보안 검토 항목) — 최우선

  • 현재 상태: Security Hotspots 존재
  • 의미:
    • 실제 취약점일 수도 있는 코드
    • 아직 보안 검토가 완료되지 않은 상태

반드시 수행해야 할 작업

  1. SonarQube 프로젝트 화면에서 Security Hotspots 클릭
  2. 각 항목을 하나씩 검토
  3. 아래 중 하나로 반드시 판정 처리
판정의미조치
Vulnerable실제 취약점❌ 반드시 수정
Fixed수정 완료✔
Safe안전하다고 판단✔ (사유 명시 권장)

⚠️ Hotspot을 검토하지 않은 상태로 운영 배포 금지


🧯 2️⃣ Reliability (Bug) — 반드시 수정

  • 항목: Bug (Reliability)
  • 의미:
    • 런타임 오류 가능성
    • 장애로 이어질 수 있는 코드

운영 기준

  • Bug는 “언젠가 장애가 되는 문제”
  • 수량이 적어도 방치 금지

👉 모든 Bug 항목 수정 권장 (사실상 필수)


⚠️ 당장 필수는 아니지만 관리 대상인 항목

아래 항목은 즉시 차단 대상은 아니나, 중·장기적으로 관리가 필요합니다.


🧼 Maintainability (Code Smell)

  • 의미:
    • 가독성, 구조, 유지보수성 문제
  • 운영 기준:
    • 기존 코드: 점진 개선
    • 신규 코드(New Code): 적극 관리

👉 즉시 수정 필수 ❌


🧪 Coverage (테스트 커버리지)

  • 현재 상태: 낮거나 0%
  • 의미:
    • 테스트 코드 부족
  • 운영 기준:
    • 기존 프로젝트: 허용 가능
    • 신규 코드부터 점진적 적용 권장

👉 당장 차단 ❌, 개선 대상 ⭕


🧬 Duplications (중복 코드)

  • 중복 비율이 Gate 기준 이하일 경우 통과
  • 운영 기준:
    • 신규 코드 중심으로 감소 유도

📋 운영 기준 요약 표

항목상태운영 조치
Security없음✔
Security Hotspots존재❗ 반드시 검토/판정
Reliability (Bug)존재❗ 반드시 수정
Maintainability다수⏳ 점진 개선
Coverage낮음⚠️ 개선 권장
Duplications일부⚠️ 관리 대상

🎯 권장 조치 순서 (이 순서대로 진행)

1️⃣ Security Hotspots 전부 검토 및 판정
2️⃣ Reliability(Bug) 항목 전부 수정
3️⃣ 신규 코드 기준으로 Coverage / Duplication 관리 강화


📌 결론

SonarQube Passed는 “최소 기준 통과”일 뿐,
보안·안정성까지 보장하지는 않습니다.

운영 환경 기준에서 **반드시 조치해야 할 항목은 아래 두 가지입니다.

  • 🔐 Security Hotspots (보안 검토)
  • 🧯 Reliability (Bug)

위 두 항목만 확실히 관리해도
👉 실질적인 운영 리스크의 대부분을 제거할 수 있습니다.

GitLab에서 이 페이지 편집하기
최종 수정일: 26. 1. 7. 오후 2:09
기여자: jhhyun@reinno.com
Prev
2-1. 프로젝트 생성 (로컬)
Next
3-1. 로컬 점검