코드 검토

위키백과, 우리 모두의 백과사전.
둘러보기로 가기 검색하러 가기
소프트웨어 개발 프로세스
활동과 단계
요구사항 분석 · 기능 명세
구조 · 설계
구현 · 테스팅
배치 · 유지보수
개발 모형
애자일 소프트웨어 개발 · 클린룸
DSDM · 순차점증적 개발 · 반복형 개발
RAD · RUP · 나선 모형
폭포수 모델 · 익스트림 프로그래밍
스크럼 · V 모델 · TDD
지원 활동
구성 관리 · 문서화
품질보증 · 프로젝트 관리
사용자 경험 설계
도구
컴파일러 · 디버거 · 프로파일러
GUI 디자이너 · 통합 개발 환경
v  d  e  h

코드 검토(code review)는 코드를 개발자가 작성하고, 다른 개발자가 정해진 방법을 통해 검토하는 일을 말한다. 등위 검사, 제3자 검사라고도 한다. 검토는 페어 프로그래밍(동료 프로그래밍), 비공식 워크스루(informal walkthroughs), 공식 소프트웨어 검사와 같은 다양한 형태로 수행된다.[1]

검토 방식[편집]

  • 적용 대상: 작성된(완성된) 코드만 적용이 가능, 코드 작성 이전의 아키텍처와 소프트웨어 디자인의 산출물 및 작성된 코드의 실행 가능한 형태의 경우 다른 검토 방법을 이용해야 한다.
  • 적용 단계: 코드 작성 과정에서 검토의 주최자가 적절한 시기를 선정하여 진행한다.
  • 적용 효과: 코드 작성 과정에서 발생하는 60% ~ 70% 이상의 오류를 제거하고 디버깅, 유지보수, 기능 개선 작업과정을 효과적으로 수행 할 수 있다.

종류[편집]

  • 코드 규칙 검사(Coding Rule Check) : 미리 정의된 코딩 규칙에 따라서 코드가 작성되었는지 검사하며 빠른시간에 검토하고, 품질향상 효과가 매우 크다 하지만 오류 검출율이 낮다.
  • 실패 검출(Fault Detection) : 오류를 유발하는 코드의 형태를 추적하여 발생여부를 판단하는 방법, 오류검출이 효과적으로 가능하지만 코드의 추적대상이 광범위 해지며 이에 따라서 요구되는 시간이 증가된다.
  • 워크 스루(Work Thru) : 작성된 시나리오에 따라 코드를 시뮬레이션하여 검출하는 방법, 유일하게 기능 검사가 가능하지만, 투자되는 시간에 비해서 비효율적이다.

지원 도구[편집]

  • C/C++/JAVA : CODESCROLLTM code inspector, QAC, QACPP, PMD, Jlint, FindBugs, JsLint

각주[편집]

  1. Kolawa, Adam; Huizinga, Dorota (2007). 《Automated Defect Prevention: Best Practices in Software Management》. Wiley-IEEE Computer Society Press. 260쪽. ISBN 0-470-04212-5.