핵심 인사이트

  1. 본질: QA (Quality Assurance, 품질 보증)는 올바른 프로세스를 따르는지 확인하는 예방 중심 활동이고, QC (Quality Control, 품질 통제)는 제품/산출물에서 결함을 찾아내는 발견 중심 활동이다—QA는 "어떻게 만드는가"를, QC는 "만든 것이 맞는가"를 검증한다.
  2. 가치: 품질 비용(CoQ, Cost of Quality) 관점에서 QA(예방 비용)에 1원 투자하면 QC(실패 비용)를 훨씬 줄일 수 있다—결함을 예방하는 것이 발견·수정하는 것보다 항상 저렴하다.
  3. 판단 포인트: QA는 프로세스 감사, QC는 제품 검사—두 활동은 상호 보완적이므로 어느 하나만 하면 품질 목표를 달성하기 어렵다.

Ⅰ. 개요 및 필요성

QA (Quality Assurance, 품질 보증)와 QC (Quality Control, 품질 통제)는 SW 품질 관리의 양대 축이다. 두 개념은 자주 혼동되지만, 관점과 활동 방식이 근본적으로 다르다.

QA는 "품질을 만드는 프로세스가 올바른가"에 초점을 맞춘다. 코딩 표준 준수, 코드 리뷰 절차 이행, 테스트 계획 수립 등 올바른 방법으로 개발하고 있는지 확인한다. QA는 결함이 발생하기 전에 예방하는 활동이다.

QC는 "만들어진 제품이 요구사항을 충족하는가"에 초점을 맞춘다. 단위 테스트, 통합 테스트, 검수(Inspection) 등 실제 산출물을 검사해 결함을 발견한다. QC는 결함이 발생한 후에 발견하는 활동이다.

ISO 9000 시리즈는 QMS (Quality Management System, 품질 경영 시스템)의 국제 표준으로, QA 활동의 프레임워크를 제공한다. SW 제품 품질은 ISO/IEC 25010이 정의한 8대 품질 특성으로 측정한다.

📢 섹션 요약 비유: QA는 음식점의 주방 위생 점검이고, QC는 음식이 나오기 전 맛을 보는 것이다. 위생 점검(QA)이 잘 되면 맛 검사(QC)에서 불합격이 줄어들지만, 둘 다 필요하다.


Ⅱ. 아키텍처 및 핵심 원리

QA vs QC 핵심 비교

┌──────────────────────────────────────────────────────────────┐
│              QA vs QC 비교                                    │
├─────────────────┬──────────────┬───────────────────────────┤
│ 구분            │ QA           │ QC                         │
├─────────────────┼──────────────┼───────────────────────────┤
│ 초점            │ 프로세스      │ 제품/산출물                │
│ 목적            │ 예방          │ 발견                       │
│ 시점            │ 사전          │ 사후                       │
│ 담당            │ 전체 조직     │ 프로젝트 팀                │
│ 활동 예         │ 프로세스 감사 │ 테스트, 검수               │
│                 │ 표준 준수 확인│ 인스펙션, 리뷰             │
│ 책임            │ 품질 시스템   │ 특정 인도물                │
│ PMBOK 영역      │ 품질 보증 수행│ 품질 통제 수행             │
└─────────────────┴──────────────┴───────────────────────────┘

품질 비용 (CoQ, Cost of Quality)

┌─────────────────────────────────────────────────────────────┐
│  CoQ (Cost of Quality) = 적합 비용 + 비적합 비용           │
├─────────────────────────────────┬───────────────────────────┤
│  적합 비용 (Cost of Conformance)│ 비적합 비용 (Non-conform.) │
├───────────────┬─────────────────┼───────────────────────────┤
│ 예방 비용     │ 평가 비용       │ 내부 실패 비용             │
│ (Prevention)  │ (Appraisal)     │ (Internal Failure)         │
├───────────────┼─────────────────┼───────────────────────────┤
│ 품질 교육     │ 테스팅          │ 재작업 (Rework)            │
│ 프로세스 설계 │ 검수 (Inspect.) │ 결함 수정                  │
│ 코딩 표준     │ 코드 리뷰       │ 폐기물                     │
│ QA 활동       │ QC 활동         │ 외부 실패 비용             │
│               │                 │ (External Failure)         │
│               │                 │ 보증 수리                  │
│               │                 │ 고객 불만                  │
└───────────────┴─────────────────┴───────────────────────────┘

최적 투자: 예방 비용 증가 → 실패 비용 감소 → 총 CoQ 최소화

ISO/IEC 25010 SW 품질 특성

┌──────────────────────────────────────────────────────────────┐
│  ISO/IEC 25010 - 소프트웨어 품질 특성 (8가지)                │
├──────────────────────────────────────────────────────────────┤
│  1. 기능 적합성 (Functional Suitability)                     │
│     - 완전성, 정확성, 적절성                                 │
│  2. 성능 효율성 (Performance Efficiency)                     │
│     - 시간 행동, 자원 활용, 용량                             │
│  3. 호환성 (Compatibility)                                   │
│     - 공존성, 상호운용성                                     │
│  4. 사용성 (Usability)                                      │
│     - 인식가능성, 학습가능성, 운용가능성                     │
│  5. 신뢰성 (Reliability)                                     │
│     - 성숙도, 가용성, 결함 허용성, 복구성                    │
│  6. 보안성 (Security)                                        │
│     - 기밀성, 무결성, 부인방지, 책임추적성                   │
│  7. 유지보수성 (Maintainability)                             │
│     - 모듈성, 재사용성, 분석가능성, 수정가능성               │
│  8. 이식성 (Portability)                                     │
│     - 적응가능성, 설치가능성, 대체가능성                     │
└──────────────────────────────────────────────────────────────┘

품질 관리 도구

도구용도QA/QC
파레토 차트 (Pareto Chart)80/20 법칙으로 주요 결함 유형 식별QC
피시본 다이어그램 (Fishbone/Ishikawa)결함 근본 원인 분석QC
체크시트 (Check Sheet)결함 빈도 기록QC
관리도 (Control Chart)프로세스 안정성 모니터링QA/QC
히스토그램분포 분석QC
산점도 (Scatter Diagram)두 변수 상관관계QA/QC
프로세스 감사 (Process Audit)절차 준수 여부 확인QA

📢 섹션 요약 비유: CoQ는 자동차 유지보수와 같다. 정기 점검(예방 비용/QA)을 소홀히 하면 고장(내부 실패)이 잦아지고, 최악에는 사고(외부 실패)가 난다—예방에 1만원 쓰면 수리에 10만원을 절약한다.


Ⅲ. 비교 및 연결

결함 발견 시점과 수정 비용

결함 발견이 늦을수록 수정 비용 기하급수적 증가:

  요구사항 단계에서 발견: 비용 × 1
  설계 단계에서 발견:     비용 × 10
  개발 단계에서 발견:     비용 × 100
  테스트 단계에서 발견:   비용 × 100~1,000
  운영 배포 후 발견:      비용 × 1,000~10,000

  → Shift Left Testing: QC를 개발 초기로 이동
  → QA로 요구사항·설계 단계 품질 확보가 가장 경제적

SW 품질 인증 체계

기준내용
ISO 9001QMS (품질 경영 시스템) 인증, 산업 일반
ISO/IEC 25010SW 제품 품질 특성 정의
CMMI (Capability Maturity Model Integration)SW 프로세스 성숙도 (1~5 레벨)
ISO/IEC 15504 (SPICE)프로세스 평가

📢 섹션 요약 비유: Shift Left Testing은 의사의 조기 검진과 같다. 병이 중증이 되기 전(요구사항·설계 단계)에 발견하면 치료(수정)가 훨씬 쉽고 저렴하다—말기(운영 배포 후)에 발견하면 비용과 리스크가 모두 폭증한다.


Ⅳ. 실무 적용 및 기술사 판단

QA 활동 vs QC 활동 구분

QA 활동QC 활동
코딩 표준 수립 및 교육단위 테스트 수행
리뷰 프로세스 설계통합 테스트 수행
형상 관리 절차 수립인스펙션 (Inspection)
테스트 전략 수립사용자 인수 테스트 (UAT)
프로세스 감사결함 추적
메트릭 수집 체계 구축결함 밀도 측정
CMMI 평가 준비코드 커버리지 측정

기술사 시험 판단 포인트

  1. QA ≠ QC: 시험에서 "QA 활동"이라고 할 때 "테스트 수행"을 답으로 쓰면 오답—테스트는 QC.

  2. CoQ 최적화: 예방 비용과 평가 비용에 적정 수준 투자 → 실패 비용을 최소화 → 총 CoQ 최소화.

  3. ISO/IEC 25010 8대 특성: 기능 적합성·성능 효율성·호환성·사용성·신뢰성·보안성·유지보수성·이식성. 이전 ISO/IEC 9126(6대 특성)에서 확장됨.

  4. PDCA와 품질: Plan(QA 계획)-Do(QC 실행)-Check(품질 지표 측정)-Act(개선)의 사이클.

피시본 다이어그램 (Fishbone/Ishikawa Diagram)

결함 근본 원인 분석 도구:

                    원인                 결과
  ┌─────────────────────────────────────────────┐
  │ 사람  ───────────────────────────────▶       │
  │ 프로세스──────────────────────────▶  결함    │
  │ 도구/환경────────────────────────▶  (뼈대)  │
  │ 재료  ──────────────────────────▶          │
  └─────────────────────────────────────────────┘
  
  6M: Man, Machine, Method, Material, Measurement, Mother Nature
  SW에서: People, Process, Technology, Environment, Data, Measurement

📢 섹션 요약 비유: 기술사 시험에서 QA/QC 구분은 마치 의사의 진료와 예방 의학의 차이를 구분하는 것이다—"어떻게 건강을 유지하나(QA/예방)"와 "이미 아픈 사람을 어떻게 치료하나(QC/발견)"는 다른 활동이다.


Ⅴ. 기대효과 및 결론

QA와 QC를 균형 있게 적용하면:

  1. 결함 예방 우선: QA 강화로 결함 발생 자체를 줄여 QC에서의 재작업 비용을 감소시킨다.
  2. 품질 문화 정착: QA는 조직 전체의 품질 의식을 높이고, QC는 구체적 결함 데이터를 제공한다.
  3. CoQ 최적화: 예방·평가 비용의 적정 투자로 내부·외부 실패 비용을 최소화한다.
  4. ISO 인증 기반: ISO 9001, CMMI 인증의 근거가 되는 체계적 품질 관리를 실현한다.

궁극적으로 SW 품질은 "검사로 확보하는 것(QC)"이 아니라 "설계하여 만드는 것(QA)"이라는 원칙—W. Edwards Deming의 "품질은 검사로 만들 수 없다"—을 실천해야 한다.

📢 섹션 요약 비유: QA+QC 균형은 요리와 시식의 조화와 같다. 레시피와 위생(QA)이 좋아야 맛있는 음식이 나오지만, 맛 검사(QC)도 해야 실수를 잡을 수 있다—레시피만 완벽해도 요리사 실수가 있고, 맛만 보면 너무 늦게 문제를 발견한다.


📌 관련 개념 맵

개념설명연관 키워드
QA (Quality Assurance, 품질 보증)프로세스 중심, 예방적, 조직 전체CMMI, ISO 9001
QC (Quality Control, 품질 통제)제품 중심, 발견적, 검사테스팅, 인스펙션
CoQ (Cost of Quality, 품질 비용)예방+평가+실패 비용의 합최적화
ISO/IEC 25010SW 품질 8대 특성 표준품질 특성
파레토 차트 (Pareto Chart)80/20 법칙 결함 분석QC 도구
피시본 다이어그램 (Fishbone)결함 근본 원인 분석Ishikawa
Shift Left Testing테스트를 개발 초기로 이동조기 결함 발견
관리도 (Control Chart)프로세스 안정성 통계 모니터링7대 품질 도구

👶 어린이를 위한 3줄 비유 설명

  1. QA는 요리하기 전 손 씻기와 위생 점검이에요 — 나쁜 것이 들어가지 않도록 미리 예방하는 거예요.
  2. QC는 음식이 완성된 후 맛보기예요 — 이상이 있는지 직접 확인하는 거예요.
  3. QA를 잘 하면 QC에서 문제가 줄어드니까, 둘 다 필요하지만 QA에 더 많이 투자하는 것이 결국 더 저렴해요.