Categories: 정보관리기술사

제135회 정보관리기술사 4교시 3번 — SQA·코드리뷰·정적분석·Quality Gate

정보관리기술사 · 135회 4교시 · 3번 · 배점 25점

제135회 정보관리기술사 4교시 3번

서술형 | 25점
[문제] 소프트웨어 품질 보증(SQA: Software Quality Assurance)의 개념과 테스팅과의 차이를 설명하고, 코드 리뷰(Code Review)의 유형 (인스펙션, 워크스루, 피어 리뷰)과 효과적인 코드 리뷰 프로세스를 서술하시오. 또한 정적 코드 분석(Static Code Analysis) 도구의 유형과 CI/CD 파이프라인에서의 품질 게이트(Quality Gate) 적용 전략을 논하시오.

1. SQA 개념과 테스팅과의 차이

SQA(Software Quality Assurance)는 소프트웨어 개발 프로세스 전반에 걸쳐 품질 표준·방법론·절차를 수립하고 준수를 보장하는 활동이다.

구분 SQA 소프트웨어 테스팅
목적 프로세스 품질 보장 (결함 예방) 제품 결함 발견 (결함 탐지)
범위 개발 프로세스 전체 수명주기 개발 완료 후 주로 실행
활동 프로세스 감사, 표준 수립, 교육, 코드 리뷰 단위·통합·시스템·인수 테스트 실행

2. 코드 리뷰 유형 비교

유형 특성 참여자 형식성
인스펙션 (Inspection) 가장 공식적인 리뷰. 역할(진행자·작성자·검토자·리코더) 분리. 결함 기록·추적 4~6명 팀 높음 (Fagan Inspection)
워크스루 (Walkthrough) 작성자가 직접 코드를 설명하며 참가자가 질문·의견 제시 작성자 주도 중간
피어 리뷰 (Peer Review) 동료 간 1:1 또는 소규모 리뷰. Pull Request 기반 코드 리뷰가 대표 형태 2~3명 낮음 (비공식적)

효과적인 코드 리뷰 원칙: ① 200~400줄 이하 단위로 리뷰 ② 60분 미만 집중 ③ 코드 스타일은 Linter 자동화 ④ 승인/변경요청 명확히 ⑤ 개인 비판 아닌 코드 비판

3. 정적 코드 분석 도구 유형

유형 분석 대상 대표 도구
SAST (정적 보안 분석) 소스 코드의 보안 취약점 (SQL Injection, XSS, 하드코딩 비밀번호) SonarQube, Checkmarx, Semgrep, Snyk Code
코드 품질 분석 복잡도, 중복 코드, 코드 스멜, 기술 부채 SonarQube, ESLint, PMD, Pylint
SCA (소프트웨어 구성 분석) 오픈소스 라이브러리 취약점·라이선스 Dependabot, Snyk, OWASP Dependency-Check
IaC 분석 Terraform·K8s YAML의 보안 구성 오류 Checkov, tfsec, KICS

4. CI/CD 품질 게이트(Quality Gate) 전략

  • SonarQube Quality Gate: 코드 커버리지 >80%, 새 취약점 0, 코드 중복 <3% 등 기준 미충족 시 파이프라인 차단
  • Shift Left 보안: PR 생성 시 SAST·SCA 자동 실행. 고위험 취약점 발견 시 머지 차단
  • 단계별 게이트: 빌드 → 단위 테스트 커버리지 → SAST → 통합 테스트 → DAST → 배포 승인 단계별 통과 조건
  • 이진 결정: 게이트는 통과/실패로만 결정. 경고(Warning)는 배포 차단하지 않되 기술 부채 대시보드에 누적 가시화
[ 결론 ]

SQA는 테스팅과 달리 개발 전 과정에서 품질을 예방적으로 보장한다. 코드 리뷰(인스펙션·워크스루·피어 리뷰)는 결함을 조기 발견하고, SAST·SCA·Quality Gate를 CI/CD에 통합하여 코드 품질·보안을 자동으로 검증함으로써 고품질 소프트웨어를 지속적으로 배포할 수 있다.

zerg96

Recent Posts

요양원 선택 전 반드시 확인해야 할 것들, 부모님 맡기기 전에 보세요

요양원 선택 전 반드시 확인해야 할 체크리스트를 공개합니다. 공식 평가 자료 조회법, 방문 시 확인…

2일 ago

공공기관 채용 비리, 내부에서 터져나온 충격 증언

공공기관 채용 비리의 실태와 피해 지원자의 대응법을 정리했습니다. 채용 비리 신고 방법, 공익신고자 보호제도, 취준생…

2일 ago

주식 손실 났을 때 세금 줄이는 방법, 아는 사람만 씁니다

주식 손실을 세금 절약에 활용하는 합법적 방법을 공개합니다. 해외주식 손익통산, ISA 계좌 활용, 연금계좌 절세까지…

2일 ago

음식 배달 늦으면 소비자가 취소할 수 있다, 몰랐던 권리

배달이 예상 시간보다 크게 늦으면 취소·환불을 요청할 수 있습니다. 배달앱별 지연 취소 방법과 잘못 배달됐을…

2일 ago

휴대폰 요금제 바꾸면 연 수십만원 절약, 지금 내 요금제 확인하세요

통신비 절약의 핵심은 요금제 최적화입니다. 내 데이터 사용량 확인법, 알뜰폰 전환 비교, 위약금 없이 요금제…

2일 ago

퇴직금 못 받았다면, 지금 당장 이렇게 하세요

퇴직 후 퇴직금을 받지 못했다면 즉시 노동부에 신고하세요. 지급 기한, 자격 요건, 신고 방법, 소액체당금…

2일 ago