Peer Review
태그 :
I. 품질 향상의 필수 기법, 동료 검토(Peer Review)의 개요
가. 동료 검토(Peer Review)의 정의
- 프로젝트 수행 과정에서 각 진행 단계 별로 발생하는 산출물 또는 제품에 대해서 동료들이 상호 교차 검토하는 활동
나. 동료 검토(Peer Review)의 목적
1) 조기 결함 발견을 통한 품질 문제 예방 및 비용 절감
2) 상호 검토를 통한 전체적인 역량 향상
다. 동료 검토(Peer Review)의 수행 주의 사항
1) 문제점을 찾아내는 과정으로 반드시 종결, 해결하는 과정을 별도 구성
2) 의사소통이 용이한 소규모 인원으로 구성 (5~8명이 적절)
3) 정해진 시간 내에 완료
4) 적절한 역할 배분 및 역할에 충실
II. 동료 검토(Peer Review)의 구성과 기본 절차
가. Peer Review 구성 개요
- 각 단계 마다 Peer Review는 실시함
- 각 단계 별 Peer Review를 통해 사전에 발견되고 조치된 결함은 테스트 단계에서 결함 발생 수를 줄이는 효과를 가져옴
나. Peer Review의 절차
단계 |
수행 업무 |
비고 |
계획(Planning) |
저자의 관련 자료의 수집 중재자의 시작 조건 확인 구성원의 역할 배정 일정 계획 |
|
사전설명(Overview) |
검토 대상에 대한 사전 설명 명세, 관찰 대상, 체크리스트 설명 상세한 내용을 상호 아는 경우는 생략 가능 |
생략 가능 |
개별검토(Preparation) |
개별적으로 검토 |
|
검토회의(Examination) |
정식으로 대상물에 대한 검토 수행 오류 또는 결함 사항 발견,. 단 조치는 하지 않음 |
|
재 작업(Rework) |
저자가 재 작업 수행 |
|
후속조치(Follow-up) |
중재자가 재 작업 사항을 확인 |
|
다. Peer Review의 역할 구성
역할 |
설명 |
중재자(Moderator) |
계획 작성, 모임 개체이며, 가장 중요한 역할임 |
독자(Reader) |
대상 산출물을 읽는 역할 |
기록자(Recorder) |
결함을 문서화 하는 역할, 중재자가 겸임하기도 함 |
저자(Author) |
산출물의 작성자, 해당 역할은 Reader나 Moderator를 겸임해서는 안됨 |
관찰자(Viewpoint) |
설계자, 코드 작성자 등 동료 검토를 수행해 주는 사람 |
III. 동료 검토(Peer Review)의 효과
가. 동료 검토 활용의 효과
1) 사전 결함 발견 및 조치로 전체 비용의 감소
- 사전에 결함을 발견하여 다음 단계로 결함이 누출되는 것을 막음
- 품질의 1:10:100의 법칙에 따라, 초기에 발견된 결함이 1의 비용으로 처리 된다고 할 때, 최종으로 발견된 결함은 100의 비용이 발생하게 됨
2) 상호 성장을 통한 역량 강화의 기반
3) 내부 인원들 간 의사소통의 기회
나. 결함증폭모델 기반의 동료 검토 효과 설명
1) 결함증폭모델 개요
- 결함증폭 모형은 소프트웨어 공학에서 예비설계, 상세설계, 그리고 코딩 단계 동안에 오류의 발생과 탐지의 관계를 설명하는데 사용
- 이전 단계에 나온 오류는 다음단계의 증폭 인자가 됨
2) 동료 검토 수행과 “미 수행 시”의 결함증폭모델 비교
- 동료 검토 수행 시 결함증폭 모델
- 동료 검토 “수행 시” 결함증폭 모델
3) 결함증폭 모델의 비교 평가
구분 |
미수행 시 |
수행 시 |
---|---|---|
단위 테스트 단계 결함 수 |
93 |
24 |
최종 잠복 오류 수 |
12 |
3 |
비용 |
2177 |
783 |
IV. 동료 검토의 유형 분류
구분 |
Management Review |
Technical Review |
Software Inspection |
Walkthrough |
목적 |
진행상태를 점검하고 시정조치를 취하도록 함 스케줄과 계획의 진행상태를 확정 |
명세서와 계획에 대한 적합성 평가 및 변경의 무결성 보증 |
결함을 찾고 해결책을 검증 |
결함을 찾고 대안을 시험하고 학습수단으로도 활용 |
추천규모 |
2명 이상 |
3명 이상 |
3~6명 |
2~7명 |
참석자 |
경영자, 분야별 관련자 |
개발자 |
문서화된 공식적인 참석대상자 |
개발자 |
리더쉽 |
선임관리자 |
선임 엔지니어 |
훈련된 중재자 |
개발자 본인 |
자료량 |
목적에 따라 많음 |
목적에 따라 많음 |
상대적으로 적음 |
상대적으로 적음 |
산출물 |
경영검토보고서 |
기술검토보고서 |
검사보고서와 결함목록 |
검토회보고서 |
- Walkthrough는 수시로 대화 형태로 수시로 수행하는 동료 검토를 의미함
- Inspection은 공식적인 형식을 갖추고 수행하는 동료 검토의 대표적인 형태임
V. 동료 검토를 위한 성공 요건
성공 요소 |
설명 |
Allocate time in the project plan for reviews |
프로젝트 계획에 검토 시간을 반드시 포함 |
Obtain management commitment |
경영층의 사전 동의 획득 |
Review early and often, formally and informally |
프로젝트 초기부터 일찍, 그리고 자주 수행 |
Analyze Your Early reviews |
이전 검토 결과에 대한 사전 분석 |
Have peers, rather than customers, find defects |
고객들 보다 동료들의 결함을 찾기 위해 노력하도록 유도 |
Set goals for the review program |
검토 프로그램에 대한 명확한 목표를 제시 |
Identify a review champion |
검토 우수 사례를 관리하고 확인 |
VI. Walkthrough와 Inspection의 비교
구분 |
Walkthrough |
Inspection |
목적 |
산출물 개선/보완, 대안검토, Issue해결, 해당 산출물에 대한 교육 |
산출에서 결함 식별 및 제거 |
형식 |
Informal Review |
Formal Review(공식적인 절차를 따른다) |
대상 |
Work Product Draft |
Completed Work Product |
착수기준 |
산출물 작성 과정에서 필요에 의해 |
산출물이 정의된 기준에 도달(완성도) |
수행결정 |
해당 산출물의 Author가 수행 여부 결정 |
프로젝트 팀 차원에서 수행여부 결정 |
특징 |
검토대상 산출물에 대한 사전검토 없이 검토회의를 통해 즉석에서 의견을 받아 이를 기록하는 검토형태 |
검토대상 산출물을 사전에 비포하여 Reviewer별 개별검토 후 검토회의를 실시하여 사전에 식별된 결함을 토대로 결함을 확정하는 검토형태 |
결함 데이터 측정 및 보고 |
보통 미수행 |
반드시 수행 |
장점 |
검토하는데 투입되는 시간이 최소 |
사전검토를 실시하였기 때문에 결함식별 최대화 |
단점 |
|
검토계획 수립 및 사전검토를 위해 별도의 노력이 필요 |
VII. 동료 검토의 핵심 유형, 인스펙션(Inspection)의 활용 효과에 대한 주장
가. 개발 품질의 향상
1) 개발 품질, 개발 주기의 시간, 총체적인 관리 가능성의 향상
2) 소프트웨어 오류의 80%까치 초기에 판별 가능하도록 향상
3) 동료 검토와 통상적인 테스트가 결합되면, 결함의 수를 수십 분의 일로 줄일 수 있음
- Inspection 미 활용 시 재 작업 비율 및 결함 수
- Inspection 미 활용 시 재 작업 비율 및 결함 수
나. 생산성 향상 모형
- Inspection을 수행할 경우가 기간은 6개월 정도 단축되며, 전체적인 재 작업 비율을 25~35%까지 절감할 수 있음
다. 비용 절감 모형
- Inspection은 품질 비용의 영역 중, A-COST와 P-COST에 해당하는 활동으로 사전의 예방 및 검사를 통해서 조기에 결함을 발견하고 결함의 다음 단계 누출을 막음으로써, 전체적인 비용을 대폭 절감할 수 있음