국제 제품 품질 표준
- ISO/IEC 9126: 품질 특성 및 평가 기준 제시
- ISO/IEC 12119: 패키지 SW 품질 요구사항 및 테스트(20.8)
- ISO/IEC 14598: 품질 평가의 절차 규정
- ISO/IEC 25000: SW 품질 평가 통합 모델
- 품질관리(2500n), 품질모델(2501n), 품질측정(2502n), 품질요구(2503n), 품질평가(2504n)
ISO/IEC 9126 품질 특성⭐️
(20.6,8)
기능성(Functionality)
요구사항을 정확하게 만족하는 기능을 제공하는가
- 부특성: 적절성(적합성), 정확성, 상호운용성, 보안성, 호환성
신뢰성(Reliability)
요구된 기능을 정확하고 일관되게 오류없이 수행하는가
사용성(Usability)
사용자가 정확하게 이해하고 사용하는가
효율성(Efficiency)
할당된 시간 동안 한정된 자원으로 얼마나 빨리 처리하는가
유지보수성(Maintainability)
환경의 변화에 소프트웨어를 쉽게 개선, 확장, 수정할 수 있는가
이식성(Portability)
소프트웨어를 다른환경에서도 쉽게 적용할 수 있는가
ISO/IEC 14598 평가 특성
- 반복성(Repeatability)
- 재현성(Reproducibility)
- 공정성(Impartiality)
- 객관성(Objectivity)
국제 프로세스 품질 표준
- ISO/IEC 12207: 소프트웨어 생명주기 프로세스 관련 규정
- 기본 생명주기 프로세스: 획득, 공급, 개발, 운영, 유지보수
- 지원 생명주기 프로세스: 문서화, 형상관리, 품질 보증, 확인, 합동검토, 감사, 문제해결
- 조직 생명주기 프로세스: 관리, 기반구조, 개선, 교육
- ISO/IEC 15504(SPICE): 프로세스 수행능력 평가 표준 프레임워크
- 불완전 → 수행 → 관리 → 확립 → 예측 → 최적화
- CMM(Capability Maturity Model): SW 개발 조직 성숙도 수준 평가
- CMMI(Capability Maturity Model Integration): CMM + 프로젝트관리, 프로큐어먼트, 시스템엔지니어링
- 초기 → 관리 → 정의 → 정략적 관리 → 최적화
소스코드 품질 분석 도구
(20.6)
- 정적 분석 도구: pmd, cppcheck, checkstyle, SonarQube, ccm, cobertuna
- 동적 분석 도구: Avalanche, Valgrind