ISO/IEC 5055
더 많은 작업
- ISO/IEC 5055; Automated Source Code Quality Measures; 자동화된 소스코드 품질 측정
- 소스코드에서 구조적 약점(CWE)을 자동으로 검출·계수하여 신뢰성, 보안성, 성능 효율성, 유지보수성 4개 특성을 측정하는 국제 표준
ISO/IEC 5055:2021의 정식 명칭은 "Information technology — Software measurement — Software quality measurement — Automated source code quality measures"이며, 2021년 3월 제1판이 발행되었다. CISQ(Consortium for Information & Software Quality)가 만든 품질 측정 표준들을 OMG가 ASCQM(Automated Source Code Quality Measures) 표준으로 통합하고, 이를 ISO/IEC JTC 1에 제출하여 국제 표준이 되었다. CISQ는 OMG(Object Management Group)와 카네기멜론대학교 SEI(Software Engineering Institute)가 공동 설립한 단체이다.
이 표준의 측정값은 좋은 아키텍처·코딩 관행을 위반한 사례, 곧 운영 위험이나 과도한 비용을 낳을 수 있는 약점을 소스코드에서 찾아 세는 방식으로 계산된다. 기존 ISO/IEC 25000 시리즈는 소스코드 수준의 측정 척도를 적게 제공했기 때문에, 아웃소싱·개발 계약에서 쓸 수 있는 코드 수준 기준을 마련했다는 데 의의가 있다. 약점이 모든 형태의 소프트웨어에 적용된다고 보아 임베디드 소프트웨어를 별도로 다루지 않는다.
각 특성의 측정치는 CWE(Common Weakness Enumeration)에서 고른 약점들의 집합으로 구성된다. 측정치는 약점 발생 건수를 세는 방식이며, 약점 목록은 특성마다 따로 정의된다.
| 특성 | 측정 관점 | 약점 예 |
|---|---|---|
| 신뢰성(Reliability) | 장애·비정상 종료·데이터 손상으로 이어질 수 있는 결함 | 예외 처리 누락, 자원 해제 누락, 경쟁 조건 |
| 보안성(Security) | 공격자가 악용할 수 있는 취약점 | SQL 인젝션, 버퍼 오버플로, 입력값 검증 누락 |
| 성능 효율성(Performance Efficiency) | 응답 시간·자원 사용을 악화시키는 구조 | 반복문 안의 비싼 연산, 비효율적 데이터 접근 |
| 유지보수성(Maintainability) | 이해·변경을 어렵게 하는 구조 | 과도한 복잡도, 중복 코드, 계층 위반 |
- SQuaRE의 ISO/IEC 25010은 제품 품질 모델을 정의한다. 2011년판은 8개 특성, 2023년판(제2판)은 9개 특성으로 구성된다.
- ISO/IEC 5055는 그중 4개 특성을 골라 소스코드의 구조적 측면에서 측정한다. CISQ는 이를 25010 특성 8개 중 4개를 평가하는 것으로 설명한다.
- ISO/IEC 25023이 주로 운영 수준의 측정치를 제시하는 데 비해, ISO/IEC 5055는 개발 중 소스코드에서 구조·아키텍처 측정치를 뽑아낸다. 결함이 운영 장애로 드러나기 전에 측정한다는 점에서 서로 보완 관계이다.
| 구분 | ISO/IEC 25010 | ISO/IEC 5055 |
|---|---|---|
| 성격 | 품질 모델(특성·부특성 정의) | 측정 방법(측정치 정의) |
| 범위 | 제품 품질 전반 | 4개 특성, 소스코드 수준 |
| 측정 대상 | 요구사항·설계·테스트·운영 전 생명주기 | 소스코드(정적 분석) |
| 측정 방식 | 측정치는 ISO/IEC 2502n(품질 측정) 문서에서 정의 | CWE 기반 약점 자동 검출·계수 |
- 4개 특성(신뢰성·보안성·성능 효율성·유지보수성)과 CWE 기반 측정이라는 점
- ISO/IEC 25010은 품질 모델, ISO/IEC 5055는 소스코드 수준 측정 표준이라는 차이
- CISQ·OMG 기원(ASCQM)과 발행 연도(2021)
- 정적 분석으로 개발 단계에서 구조적 약점을 사전에 찾는다는 목적
- ISO/IEC 5055:2021 – ISO
- Code Quality Standards – CISQ