McCall 품질 모델
더 많은 작업
McCall 품질 모델(McCall's Quality Model)은 1977년 짐 매콜(Jim McCall) 등이 미 공군의 의뢰로 만든 소프트웨어 품질 모델로, 사용자가 느끼는 품질 요소(factor)와 개발자가 제품 안에서 확인하는 품질 기준(criteria)을 연결해 품질을 측정하게 한 모델이다.
McCall 모델은 품질을 세 단계로 나눈다.
- 품질 요소(Quality Factor) : 사용자·관리자가 바깥에서 보는 품질. 외부 품질이다
- 품질 기준(Quality Criteria) : 요소를 이루는 제품 내부의 속성. 개발자가 설계와 코드에서 직접 확인하는 내부 품질이다
- 메트릭(Metric) : 기준을 재는 측정값과 점검표
하나의 요소는 여러 기준으로 이루어지고, 하나의 기준이 여러 요소에 걸치기도 한다. 이 요소-기준의 관계로 내부 품질과 외부 품질의 관계를 설명한 것이 이 모델의 핵심이다. 뒤에 나온 Boehm 모델과 ISO/IEC 9126 의 계층 구조(주특성-부특성)가 이 틀을 이어받았다.
11개의 품질 요소를 제품을 대하는 세 가지 관점으로 묶는다.
| 관점 | 품질 요소 |
|---|---|
| 제품 운영(Product Operation) | 정확성(Correctness), 신뢰성(Reliability), 효율성(Efficiency), 무결성(Integrity), 사용성(Usability) |
| 제품 수정(Product Revision) | 유지보수성(Maintainability), 유연성(Flexibility), 시험 용이성(Testability) |
| 제품 전이(Product Transition) | 이식성(Portability), 재사용성(Reusability), 상호 운용성(Interoperability) |
신뢰성·효율성·상호 운용성처럼 위 표에 있는 것은 모두 요소이므로 외부 품질을 나타낸다.
| 품질 요소 | 그 요소를 이루는 주요 품질 기준 |
|---|---|
| 정확성 | 추적성(Traceability), 완전성(Completeness), 일관성(Consistency) |
| 신뢰성 | 일관성, 정밀성(Accuracy), 오류 허용성(Error Tolerance), 단순성(Simplicity) |
| 효율성 | 실행 효율성(Execution Efficiency), 저장 효율성(Storage Efficiency) |
| 무결성 | 접근 통제(Access Control), 접근 감사(Access Audit) |
| 사용성 | 운용성(Operability), 훈련성(Training), 의사소통성(Communicativeness) |
| 유지보수성 | 일관성, 단순성, 간결성(Conciseness), 자기 설명성(Self-descriptiveness), 모듈성(Modularity) |
| 유연성 | 자기 설명성, 확장성(Expandability), 일반성(Generality), 모듈성 |
| 시험 용이성 | 단순성, 모듈성, 계측성(Instrumentation), 자기 설명성 |
| 이식성 | 자기 설명성, 모듈성, 소프트웨어 시스템 독립성, 기계 독립성 |
| 재사용성 | 일반성, 모듈성, 소프트웨어 시스템 독립성, 기계 독립성, 자기 설명성 |
| 상호 운용성 | 모듈성, 통신 공통성(Communications Commonality), 데이터 공통성(Data Commonality) |
추적성·완전성·일관성은 정확성과 직접 관련된 기준이다. 요구사항부터 코드까지 추적되고, 빠진 기능이 없고, 표기와 설계가 한결같아야 요구한 기능이 정확히 구현된다.
McCall 모델은 제품의 품질을 재는 모델이다. SPICE(ISO/IEC 15504)는 소프트웨어를 만드는 프로세스의 수행 능력을 평가하고 개선하는 국제 표준으로, ISO 12207 의 생명주기 프로세스와 CMM 같은 프로세스 개선 모형을 바탕으로 한다. SPICE 는 McCall 의 품질 이론에 기반한 가이드라인이 아니다.
| 구분 | McCall 품질 모델 | SPICE |
|---|---|---|
| 대상 | 소프트웨어 제품 | 소프트웨어 프로세스 |
| 구조 | 요소 → 기준 → 메트릭 | 프로세스 차원 × 능력 수준(0~5) |
| 목적 | 제품 품질 측정 | 프로세스 능력 평가와 개선 |