정적 기법과 프로세스
리뷰는 코드를 포함하여 개발 및 테스트 산출물 을 검토하고 테스팅 하는 방법으로 결함 발견시 결함 수정비용이 작다
- 조기 결함 발견 및 수정
- 개발 생산성 향상
- 개발 기간 단축
- 테스팅 비용 감소 및 시간 단축
- 개발 수명주기 전체에 걸친 비용 감소
- 결함 감소(품질 향상)
- 커뮤니케이션 향상
동적 테스팅에서 발견하기 어려운 개발 산출물 누락 등의 결함 발견 가능.
리뷰를 통해 발견 되는 결함.
- 표준 위반
- 요구사항 결함
- 계발 설계 결함
- 불충분한 유지보수성
- 부정확한 인터페이스 명세
리뷰 프로세스
페이건(Fagan) 인스펙션
일반적 : 개발초기 (요구사항정의 , 분석/설계) 인력이 소수 투입 코딩이 시작도면 투입인력 급증
인스펙션도입 : 코딩 전까지 일반적 방법보다 2배의 인력이 필요 -> 코딩 결과 재작업과 투입인력이 줄게 되어 품질 비용이 감소하고 개발 기간을 단축 할 수 있다.
계획 활동 - 시작 - 개별준비 - 리뷰 미팅 - 재작업 - 후속처리 확인
- 관리자 : 리뷰의 실행여부를 결정, 프로젝트에 리뷰시간 할당, 리뷰의 목적달성 여부 확인하고 승인
- 중재자 : 문서의 리뷰를 리드한다. 리뷰의 성패를 좌우함.
- 저자 : 리뷰 대상 문서(산출물)의 작성자 또는 책임자
- 검토자 : 리뷰대상에서 인시던트(결함포함)을 발견하고 기술하는 사람 -> 테스트 전문가.
- 기록자 : 리뷰미팅에서 발견된 모든 이슈, 문제점, 미해결점 등을 기록하고 문서화 한다.
리뷰의 유형
비공식적 리뷰
- 공식적인 절차가 없음
- 페어 프로그래밍에 의한 리뷰, 기술선임자가 설계와 코드를 리뷰
- 선택적으로 문서화 가능
- 리뷰하는 사람에 따라 성과가 좌우됨
- 저럼한 방법으로 일정 수준 성과 달성
기술적 리뷰
- 동료와 기술전문가가 참여, 결함 발견을 위한 문서화되고 정의된 프로세스 존재
- 기술적 문제 해결, 토론, 의사결정, 대안 평가, 결함 발견, 명세서 또는 표준과의 적합성 검토
워크쓰루
- 저자에 의한 진행 및 제어
- 성격 : 시나리오 사용, 예행 연습(Dry runs), 동료 그룹 검토
- 시간 및 인원수의 제약이 없고 상황에 따라 변경 가능
- 학습, 시스템에 대한 이해 향상, 결함 발견
인스펙션
- 저자가 아닌 훈련된 중재자에 의한 진행 및 제어
- 동료검사, 역할이 정의되어 있음
- 미팅전 준비 , 매트릭을 수집하고 활용함, 체크리스트와 규칙기반 시작과 종료조건이 있는 정식 프로세스 존재
- 결함발견 이 주요목적
리뷰의 성공요소
- 각각의 리뷰 활동에는 명확하게 기 정의된 목적이 있어야 함
- 리뷰목적에 적합한 인력이 선택되야 함
- 결함 발견은 언제나 환영하는 분위기이고 결함은 객관적으로 표현해야함.
- 사람관련 이슈와 심리적 측면 고려
- 소프트 웨어 개발 산출물과 검토자의 수준과 타입을 고려하여 리뷰기법을 적절히 적용해야함
- 리뷰기법에 대한 교육 훈련 제공 (공식적인 기법에 대해서 중재자는 별도의 교육을 반드시 이수 )
- 관리자가 적극적으로 리뷰 프로세스를 지원해야 함
- 학습과 프로새스 개선에 대한 강조
- 리뷰 경함과 효과를 내재화 하여 지속적으로 적용하는것이 필요
도구에 의한 정적 분석
정적 분석의 특징
- 정적 분석은 동적 테스팅으로 찾기 힘든 결함을 발견함
- 리뷰와 마찬가지로 정적 분석은 장애 보다는 결함을 발견함
- 도구의 도움을 받아 수행함
- 정적 분석 도구는 프로그램 코드를 분석하는 것은 물론, HTML이나 XML 과 같이 생성된 결과물도 분석함.
정적 분석의 가치
- 테스트 실행전에 조기 결함 발견
- 높은 복잡도 측정치와 같은 메트릭을 계산하여 코드와 설계의 의심스러운 부분에 대한 조기 경보
- 동적 테스팅으로는 발견하기 어려운 결함 발견
- 소프트웨어 모델상의 의존도와 불일치성 발견
- 코드와 설계의 유지보수성 향상
- 결함 예방 가능
정적분석을 통해 발견되는 결함.
- 정의 되지 않는 값으로 변수 참조
- 모듈과 컴포넌트 간의 일관되지 않은 인터페이스
- 사용되지 않는 코드
- 코딩 표준 위반
- 보안 취약성
- 코드와 소프트 웨어 모델의 구문 규칙 위반
'ISTQB' 카테고리의 다른 글
ISTQB CTFL 국제자격증 2013년 5회 정기시험(한글)(강북)(9월 30일) (0) | 2013.10.15 |
---|---|
4장 테스트 설계 기법 (0) | 2013.09.26 |
2장 소프트웨어 수명주기와 테스팅 (0) | 2013.09.25 |
1장 소프트 웨어 테스팅의 기초. (0) | 2013.09.25 |