|
반갑습니다. 신승백입니다. 이번 PNA 2008에서 서로 많은 지식과 경험을 나누었으면 좋겠습니다. 11/28미디어아트. 우리 모두 타이핑언어튜토리얼(M)11/29일반튜토리얼(테스팅)테스트에 대한 이해를 가지고 개발하면 개발 품질/생산성이 높아질 것인가?
+테스팅 보물지도
. 테스팅의 큰 그림을 보여주는 지도
- 왜? 테스트에 대한 큰 그림 없이 개발/테스트 하는 사람들이 대부분.
- 어떤 개발 방법론을 사용하던 테스팅은 비슷하게 적용할 수 있다. (물론 개발 모델에 대한 이해는 있어야 함.)
- 유럽쪽 컨퍼런스에서 비슷한 지도를 봄. 이미 매우 유용하게 사용하고 있다는 경험담.
. 왼쪽 - 테스팅에 대한 일반적인 내용들 / 조직 - 프로젝트 - 실제 테스트 레벨의 구조로 구성
+ 테스팅이 무엇이라고 생각하는가? 어떻게 테스팅하고 있는가? 에 대한 조별 토의
+ V모델 (테스팅과 개발과의 관계 보여줌)
. 개발 : 요구사항 - 설계 - 상세설계 - 개발
인수테스팅 - 시스템테스팅 - 통합테스팅 - 유닛테스팅
테스트주체 : 사용자 - 테스트/개발 - 개발/테스트 - 개발/테스트
요구사항 - 기능전체Scan/비기능 - 모듈간통합시결함중점적 - 각각의모듈
. 하위 단계에서 제대로 테스팅하지 못한채로 상위 단계로 올라가면 고치기가 더 어려워진다.
. 상위 단계에서 하위 단계에서 못 찾은 결함이 계속해서 검출된다. 점점 더 바빠지고 어려워짐.
. 결국 사용자가 요구사항을 검증해야 하는 단계에서 관계없는 결함들이 계속 발생. 포커스를 제대로 맞추지 못하게 된다.
. (인수,시스템,통합,유닛테스팅)을 아우르는 프로젝트 테스팅 차원의 계획이 있음.
- 각각의 테스트들의 완료 조건등을 설정.
. 프로젝트 테스팅 차원 위쪽의 조직 차원이 있음.
. Early Test Design
- 각각의 개발 단계가 끝나면 테스트 Pland/Design을 세운다. 이때 모호한 명세나 요구사항은 테스트를 만들 수 없으므로 사전에 결함을 예방할 수 있다
+ 리스크 기반 테스팅
. 프로젝트 기간이 촉박하면 대체로 테스트 기간이 우선적으로 줄어드는 문제점.
. 비즈니스 임팩트와 장애 발생 가능성의 2차원 매트릭스를 그려 우선순위를 정함.
. 정성적인 중요도에 인한 테스트 항목 선정보다 리스크 관리라는 검증된 모델을 사용.
. 우선순위: 1사분면, 2사분면, 4사분면, 3사분면.
+ 테스트의 일반 원리
+ 탐색적 테스팅 (Exploratory Testing)
. Agile
. Dynamic and Heuristic
. 애자일 개발자라면 반드시 관심을 가져야할 내용!
+ ISO/IEC 9126 품질 매트릭
+ 정적테스팅/동적테스팅
. 코드를 보지 않고 하는 정적 테스팅 (문서/요구사항명세서)
- 리뷰. 정적 분석(도구 사용)
+ 관련 국제표준
. ISO/IEC 20000
. ISO/IEC 9126
. ISO/IEC 29119
- 가장 최근에 관심을 받는 표준
. IEEE 829
. ISTQB Syllabus
+ 프로젝트 차원
. 프로젝트/마스터 테스트 계획
. 모니터링 및 제어
. 프로젝트 완료 보고서
+ 조직 차원
- 테스트 정책과 전략
. 분량에 관계없이 존재하는것과 그렇지않은것의 차이는 크다.
* 이런저런이야기
. 테스팅은 이미 잘 구조화 되어 있다. 익혀서 사용만 하면 된다.
. 개발자들의 테스팅에 대한 인식이 낮다.
. 테스팅을 전문적인 분야로 보지 않는다.
. 살충제효과. 결함은 테스트케이스에 내성을 갖는다. 오래전에 만들어놓은 테스트는 새로운 결함에 대해 점점 취약해진다. (TDD의 취약점 - 리그레션테스팅에는 매우 좋지만...)
. 참고서적 : 개발자도 알아야할 소프트웨어 테스팅 실무
. 테스트를 체계적으로 잘 할 경우 일반적으로 개발 비용은 더 들어갈 수 있지만, 결국 높은 품질로 돌아온다. 그리고 유지보수나 재작업 비용을 최소화할 수 있다.
- 최상의 경우에는 전체 개발 기간과 비용을 줄일 수도 있다. 미디어아트LETS
11/30 |
