QA 와 QC.
QA 와 QC.
QA와 QC
🛠️ QA(Quality Assurance)
✅ 소프트웨어 개발 과정에서 프로세스 중심의 품질 보증 활동
✅ 개발 과정 자체를 개선해 품질 문제를 사전에 방지
➡️ (즉, 개발 단계에서부터 개입한다는 의미임)
🔍 QC(Quality Control)
✅ 소프트웨어 제품 중심의 품질 검증 활동
✅ 완성된 제품의 결함을 발견하고 수정
➡️ (즉, 완제품 기준으로 검증)
🔄 QA & QC 관계
QA(품질 문제 사전 방지) → 품질 개선 → QC(최종 품질 검증)
💡 QA는 예방, QC는 검증!
🏗️ QA & QC 활동 타이밍
| 단계 | QA 활동 (예방 활동) | QC 활동 (검증 활동) |
|---|---|---|
| 계획 | 프로젝트 목표 설정, 품질 기준 수립 | - |
| 요구사항 정의 | 요구사항 검토 및 품질 기준 충족 여부 확인 | - |
| 설계 | 아키텍처 검토, 설계 문서 검증 | - |
| 구현 | 코드 품질 및 표준 준수 관리 | - |
| 테스트 | 테스트 전략 수립 | 테스트 실행 및 결함 발견 |
| 배포 | 배포 전 최종 품질 검토 | 배포 후 품질 검증 |
| 유지보수 | 지속적인 품질 관리 및 회귀 테스트 수행 | 제품의 결함 분석 및 수정 |
🧐 QA 활동 상세
📌 1. 계획 단계
- 프로젝트 방향성과 목표 설정 (품질 보증 기준 수립 → 명확하고 측정 가능해야 함)
- ✅ 요구사항 검토
- ✅ 품질 기준 정의
- ✅ 초기 리스크 문서화
📌 2. 요구사항 정의 단계
- 소프트웨어가 무엇을 해야 하는지 명확하게 규정
- 실현 가능성과 품질 기준 충족 여부 검토
- 📜 SRS(Software Requirements Specification) 요구사항 명세서 작성
- 🔍 요구사항 명확성 및 테스트 가능성 검토
- ⚠️ 요구사항 간 중복/충돌 사항 체크
📌 3. 설계 단계
- 시스템 구조와 동작을 정의 → 설계 단계에서도 품질 문제를 방지
- 🏗️ 아키텍처 검토
- 🔄 요구사항 매핑
- 📑 설계 문서 검증
📌 4. 구현 단계
- 코드 작성이 이루어지는 핵심 단계
- 코드 품질과 개발 프로세스 관리
- ✅ 코드 복잡도 (가독성, 일관성, 효율성)
- ✅ 코드 표준 준수 여부
- ✅ 테스트 가능성
- ✅ 성능 및 보안 문제 체크
📌 5. 테스트 단계
- 프로젝트 목표 및 품질 기준 달성을 위한 테스트 전략 수립
- 🎯 테스트 범위, 종류, 우선순위 결정
📌 6. 배포 단계
- 최종 품질 확인
- ✅ 주요 결함 수정됨?
- ✅ 성능, 보안, 호환성 테스트 완료됨?
- ✅ 테스트 환경과 운영 환경의 불일치 없음?
- ✅ 사용자 수락 테스트(UAT) 결과 적합함?
- 안정적인 배포를 위한 활동
- 🔄 테스트 환경과 운영 환경 간 일관성 보장
- 🔍 배포 중 발생 가능 리스크 예측 및 대응 계획 수립
- 🔧 배포 후 초기 단계에서 지속적인 지원 제공
📌 7. 유지보수 단계
- 제품 수명 주기에서 지속적인 품질 관리
- 🔍 신규 결함 발견 및 분석
- ⚠️ 운영 환경에서의 문제 해결
- 🔄 기존 기능 검증
- 🔁 회귀 테스트(Regression Test)
- 기존 기능 정상 동작 확인
- 새로운 요구사항도 테스트
- 🛠️ 업데이트 시뮬레이션 후 결과 분석
🎯 결론
모든 단계에서 품질 기준을 추적해야 한다구! 🚀
This post is licensed under CC BY 4.0 by the author.