4분 읽기
Last updated on
소프트웨어 QA 가이드
테스트는 누구나 할 수 있지만, QA는 준비된 자만이 할 수 있다.
📚 정의
QA(Quality Assurance)란?
- 품질보증을 의미
- 주로 플랜트, 제약, 게임업계 등에서 주로 사용
- 품질관리(QC)와는 다르며 QC는 시야가 작은 범위을 검증한다면 QA는 보다 넓은 범위를 검증한다
즉, 리스크를 예방한다는 것이다.
🎯 역할
서비스 기획 단계부터 참여하여 개발, 테스트 그리고 출시까지의 전체 소프트웨어 라이프 사이클 전반에서 잠재적인 품질 리스크를 찾아내어 프로젝트 참여자들과 공유하며, 해당 서비스가 최종 사용자의 요구사항에 충족하는지에 대한 다양한 활동을 진행한다.
즉, 테스트는 QA의 다양한 업무 중 하나일 뿐이다.
주요 활동
- 요구사항 분석 및 검토
- 테스트 계획 수립
- 테스트 케이스 작성
- 테스트 실행 및 결과 분석
- 품질 리스크 관리
- 프로세스 개선
🎪 목표
프로젝트 목적에 대한 정확한 이해를 바탕으로 서비스 품질을 보증하여 비즈니스 리스크를 감소시키고 사용자에게 최대의 서비스 가치를 제공하는 것을 목표로 한다.
💡 기대효과
PM/기획자 입장
- 놓친 부분 등을 다른 이들이 교차 확인해 주어 안심이 된다
개발자 입장
- 본인이 작성한 코드 너머, 서비스의 실제 구동, 운영 차원에서 이해하게 되는 계기가 된다
디자이너 입장
- 본인이 퍼블리싱이 잘못된 부분이 없는지 한 번 더 살펴보게 되고 세부 정책도 한 번 더 확인하게 된다
조직 내 이해관계자 및 요청자
- 요청한 기능이 잘 들어갔는지 직접 확인할 수 있다
🔍 QA vs QC 비교
구분 | QA (Quality Assurance) | QC (Quality Control) |
---|---|---|
목적 | 품질 보증 | 품질 관리 |
범위 | 전체 프로세스 | 개별 산출물 |
시점 | 사전 예방 | 사후 검증 |
초점 | 프로세스 개선 | 결함 발견 |
📝 QA 프로세스
-
요구사항 분석
- 비즈니스 요구사항 이해
- 테스트 가능한 요구사항 정의
-
테스트 계획
- 테스트 전략 수립
- 리소스 및 일정 계획
-
테스트 설계
- 테스트 케이스 작성
- 테스트 데이터 준비
-
테스트 실행
- 테스트 수행
- 결함 보고 및 추적
-
테스트 완료
- 테스트 결과 분석
- 품질 보고서 작성
✅ 결론
QA는 단순히 테스트에 국한되지 않으며 프로젝트의 모든 참여자가 함께 수행해야하는 매우 중요한 일이다.
품질은 개발 마지막 단계에서 확인하는 것이 아니라, 프로젝트 시작부터 끝까지 모든 단계에서 고려되어야 한다. QA는 이러한 품질 문화를 조직에 정착시키는 핵심 역할을 수행한다.
성공적인 QA를 위한 핵심 요소
- 조기 참여
- 지속적인 커뮤니케이션
- 체계적인 프로세스
- 도구의 적절한 활용
- 품질에 대한 공동 책임 의식
“품질은 우연이 아니라, 언제나 지적인 노력의 결과이다.” - John Ruskin