맨위로가기

ISO/IEC 9126

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

ISO/IEC 9126은 소프트웨어 제품의 품질을 평가하기 위한 국제 표준으로, 1991년에 처음 발행되었다. 이 표준은 소프트웨어 품질을 기능성, 신뢰성, 사용성, 효율성, 유지 보수성, 이식성 등 6가지 특성으로 분류하고, 각 특성은 하위 특성으로 세분화된다. 2011년에는 ISO/IEC 9126을 대체하는 SQuaRE (Systems and software Quality Requirements and Evaluation) 표준이 발표되었으며, 보안 및 호환성이 주요 특성으로 추가되었다. ISO/IEC 9126 및 SQuaRE는 한국의 소프트웨어 산업과 정책에도 영향을 미치며, 소프트웨어 품질 관리 기준 및 관련 정책 수립에 활용된다.

더 읽어볼만한 페이지

  • 소프트웨어 품질 - 신뢰성 공학
    신뢰성 공학은 제품이나 시스템이 정해진 기간 동안 지정된 조건에서 의도된 기능을 수행할 확률을 다루는 공학 분야이며, 확률, 의도된 기능, 기간, 조건을 고려하여 시스템의 신뢰성을 높이고, 신뢰성 시험 및 다양한 기법을 활용하여 안전 공학 및 제조업 분야에서 중요한 역할을 한다.
  • 소프트웨어 품질 - 정확성
    프로그램이나 시스템이 의도한 대로 작동하는지를 나타내는 컴퓨터 과학 및 철학의 개념인 정확성은 알란 튜링의 정지 문제와 같은 컴퓨터 과학의 근본적인 문제와 관련되어 철학적 논의의 대상이 된다.
  • ISO/IEC 표준 - 프로젝트 관리
    프로젝트 관리는 제한된 자원 내에서 특정 목표를 달성하기 위해 상호 연관된 작업들을 계획, 실행, 모니터링 및 종료하는 일시적인 활동으로, 범위, 시간, 비용, 품질, 리스크 관리가 중요하며, 프로젝트 관리자는 표준 및 방법론을 활용하여 프로젝트의 성공을 책임진다.
  • ISO/IEC 표준 - ISO/IEC 646
    ISO/IEC 646는 ASCII 기반의 7비트 문자 인코딩 표준으로, 국가별 변형이 존재했으나, 최종 개정판은 ASCII와 호환되도록 정의되었고, 현재는 ITU-T 권고 T.50 IRA가 현행 표준으로 유지되고 있다.
ISO/IEC 9126
품질 모델 개요
명칭시스템 및 소프트웨어 품질 요구사항 및 평가 (SQuaRE) - 시스템 및 소프트웨어 품질 모델
원어 명칭Systems and software engineering -- Systems and software Quality Requirements and Evaluation (SQuaRE) -- System and software quality model
표준 번호ISO/IEC 9126
대체 표준ISO/IEC 25010
설명ISO/IEC 9126은 소프트웨어 제품 품질을 위한 표준으로, 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성의 6가지 주요 품질 특성을 정의한다. 현재는 ISO/IEC 25010으로 대체되었다.
품질 특성
기능성명시된 조건 하에서 사용될 때, 명시적이고 묵시적인 요구를 만족시키는 기능을 제공하는 능력
신뢰성명시된 조건 하에서 사용될 때, 지정된 시간 동안 성능 수준을 유지하는 능력
사용성명시된 조건 하에서 사용될 때, 사용자가 이해, 학습, 사용하고 매력을 느끼는 능력
효율성사용된 자원의 양에 상대적인 성능을 제공하는 능력
유지보수성수정이 가능하게 하는 능력. 여기에는 수정, 개선 또는 환경이나 요구사항의 변화에 대한 적응이 포함된다.
이식성한 환경에서 다른 환경으로 이전될 수 있는 능력

2. 역사

ISO/IEC 9126은 1991년 12월 19일에 처음 발행되었고, 2001년 6월 15일에 ISO/IEC 9126:2001 (4개 파트 9126–1 ~ 9126–4)로 대체되었다. 이후 2011년 3월 1일, ISO/IEC 9126은 ISO/IEC 25010:2011로 대체되면서, 더 광범위한 표준인 '''SQuaRE''' (Software product Quality Requirements and Evaluation, 소프트웨어 제품 품질 요구 사항 및 평가) 시리즈의 일부가 되었다.[3]

2. 1. 초창기 (1991)

1991년 12월 19일에 ISO/IEC 9126:1991 표준이 처음 발행되었다.

2. 2. 발전 (2001)

2001년 6월 15일, ISO/IEC 9126:1991은 ISO/IEC 9126:2001 (4개 파트 9126–1 ~ 9126–4)로 대체되었다.

2. 3. SQuaRE 시리즈로의 전환 (2011~)

2011년 3월 1일, ISO/IEC 9126은 ISO/IEC '''25010''':2011 시스템 및 소프트웨어 공학 - 시스템 및 소프트웨어 품질 요구 사항 및 평가 (SQuaRE) - 시스템 및 소프트웨어 품질 모델로 대체되었다. ISO/IEC는 ISO/IEC 9126을 대체하는 보다 광범위한 일련의 표준인 '''SQuaRE''' (Software product Quality Requirements and Evaluation, 소프트웨어 제품 품질 요구 사항 및 평가) 작업에 착수했으며, ISO/IEC 250''mn'' 형식의 번호를 사용했다.[3] 예를 들어, ISO/IEC 25000은 2005년에 발행되었고, ISO/IEC 9126-1을 대체하는 '''ISO/IEC 25010'''은 2011년 3월에 발행되었다. ISO 25010은 8개의 제품 품질 특성(ISO 9126의 6개와 대조)과 31개의 하위 특성을 가지고 있다.[3]

9126과 비교하여 "보안" 및 "호환성"이 주요 특성으로 추가되었다.

  • "기능성(Functionality)"은 "기능적 적합성(functional suitability)"으로 이름이 변경되었다. "기능적 완전성(functional completeness)"은 하위 특성으로 추가되었고, "상호 운용성(interoperability)" 및 "보안(security)"은 다른 곳으로 이동되었다. "정확성(Accuracy)"은 "기능적 정확성(functional correctness)"으로 이름이 변경되었고, "적합성(suitability)"은 "기능적 적절성(functional appropriateness)"으로 이름이 변경되었다.
  • "효율성(Efficiency)"은 "성능 효율성(performance efficiency)"으로 이름이 변경되었다. "수용 능력(Capacity)"은 하위 특성으로 추가되었다.
  • "호환성(Compatibility)"은 새로운 특성이며, "공존성(co-existence)"은 "이식성(portability)"에서, "상호 운용성(interoperability)"은 "기능성(functionality)"에서 이동되었다.
  • "사용성(Usability)"은 "사용자 오류 보호(user error protection)" 및 "접근성(accessibility)"(광범위한 특성을 가진 사람들의 사용)의 새로운 하위 특성을 갖는다. "이해도(Understandability)"는 "적절성 인식(appropriateness recognizability)"으로 이름이 변경되었고, "매력성(attractiveness)"은 "사용자 인터페이스 미학(user interface aesthetics)"으로 이름이 변경되었다.
  • "신뢰성(Reliability)"은 "가용성(availability)"(사용에 필요한 경우)의 새로운 하위 특성을 갖는다.
  • "보안(Security)"은 "기밀성(confidentiality)"(권한이 있는 사람만 데이터에 액세스 가능), "무결성(integrity)"(무단 수정으로부터 보호), "부인 방지(non-repudiation)"(작업이 수행되었음을 증명 가능), "책임성(accountability)"(작업을 수행한 사람 추적 가능), "진정성(authenticity)"(신원이 주장된 것임을 증명 가능)의 하위 특성을 가진 새로운 특성이다.
  • "유지 보수성(Maintainability)"은 "모듈성(modularity)"(한 구성 요소의 변경이 다른 구성 요소에 미치는 영향이 최소화됨) 및 "재사용성(reusability)"의 새로운 하위 특성을 갖는다; "변경 가능성(changeability)" 및 "안정성(stability)"은 "수정 용이성(modifiability)"으로 통합되었다.
  • "이식성(Portability)"은 "공존성(co-existence)"이 다른 곳으로 이동되었다.


소프트웨어 품질에 대한 유지 보수성 모델


'''ISO/IEC SQuaRE 시리즈'''는 ISO/IEC에서 제정한 시스템 및 소프트웨어 품질 규격군이다. 정식 명칭은 "'''Systems and software Quality Requirements and Evaluation (SQuaRE)'''"이다[4]

SQuaRE 규격군
규격 번호제정/추인 연도부제이력대응 JIS
https://www.iso.org/standard/64764.html 25000:20142014/2020Guide to SQuaREhttps://www.iso.org/standard/35683.html :2005JIS X 25000:2017
https://www.iso.org/standard/35733.html 25010:20112011/2017System and software quality models
https://www.iso.org/standard/35736.html 25012:20082008/2019Data quality model-
https://www.iso.org/standard/72116.html 25030:20192019Quality requirements frameworkhttps://www.iso.org/standard/35755.html :2007


3. ISO/IEC 9126 품질 모델

ISO/IEC 9126-1 표준은 소프트웨어 품질을 체계적으로 평가하기 위한 품질 모델을 제시한다. 이 모델은 기능성, 신뢰성, 사용성, 효율성, 유지보수성, 이식성의 6가지 주요 품질 특성으로 구성되며, 각 특성은 다시 여러 하위 특성으로 나뉜다.[2]

각 품질 하위 특성(예: 적응성)은 속성으로 더 세분화된다. 속성은 소프트웨어 제품에서 검증하거나 측정할 수 있는 요소이지만, 소프트웨어 제품마다 다르기 때문에 표준에서 구체적으로 정의되지는 않는다.

ISO/IEC 9126 표준은 조직이 자체적으로 소프트웨어 제품에 대한 품질 모델을 정의할 수 있는 틀을 제공한다. 조직은 품질 속성의 존재 정도를 평가하는 품질 메트릭에 대한 목표 값을 지정함으로써, 자체 모델을 구체화할 수 있다.

SQuaRE에서 '''소프트웨어 품질'''은 "명시된 조건에서 사용할 때, 명시적 요구 사항 또는 암묵적 요구 사항을 충족하기 위한 소프트웨어 제품의 능력"으로 정의된다.[2] 이는 ISO 9000에서 정의하는 품질의 소프트웨어 버전이라고 할 수 있다.

SQuaRE에서 '''이용 시 품질'''(quality in use)은 "특정 이용 상황에서, 특정 이용자가 특정 목표를 달성한다는 요구를 충족하기 위해, 유효성, 효율성, 위험 회피성 및 만족성에 관하여, 소프트웨어 제품 또는 시스템을 사용할 수 있는 정도"로 정의된다. 간단히 말하면, "사용자가 대상을 사용하여 효과적이고, 효율적이며, 안전하게, 만족감을 느끼면서 목표를 달성할 수 있는 정도"가 이용 시 품질이다.

3. 1. 기능성 (Functionality)

"지정된 속성과 일련의 기능의 존재와 관련된 속성 집합. 기능은 명시적이거나 암묵적인 요구 사항을 충족하는 기능입니다."[2] 기능성의 하위 특성은 다음과 같다.

  • 적합성
  • 정확성
  • 상호 운용성
  • 보안
  • 기능성 준수

3. 2. 신뢰성 (Reliability)

명시된 기간 동안 명시된 조건에서 소프트웨어가 성능 수준을 유지하는 능력과 관련된 속성 집합이다.[2]

  • 성숙도
  • 결함 허용
  • 복구 가능성
  • 신뢰성 준수

3. 3. 사용성 (Usability)

사용성은 지정되거나 암묵적인 사용자 집합에 의한 사용에 필요한 노력과 그러한 사용의 개별 평가와 관련된 속성 집합이다.[2] 하위 특성은 다음과 같다.

  • 이해도
  • 학습성
  • 조작성
  • 매력도
  • 사용성 준수

3. 4. 효율성 (Efficiency)

명시된 조건에서 소프트웨어의 성능 수준과 사용된 리소스 양 간의 관계와 관련된 속성 집합이다.[2] 하위 특성은 다음과 같다.

  • 시간 동작
  • 자원 활용
  • 효율성 준수

3. 5. 유지 보수성 (Maintainability)

유지 보수성은 지정된 수정 사항을 만드는 데 필요한 노력과 관련된 속성 집합이다.[2] 하위 특성은 다음과 같다.

  • '''분석 가능성'''
  • '''변경 가능성'''
  • '''안정성'''
  • '''테스트 용이성'''
  • '''유지 보수성 준수'''

3. 6. 이식성 (Portability)

소프트웨어를 한 환경에서 다른 환경으로 전송하는 기능과 관련된 속성 집합이다.[2] 하위 특성은 다음과 같다.

  • '''적응성'''
  • '''설치 가능성'''
  • '''공존성'''
  • '''교체 가능성'''
  • '''이식성 준수'''

4. ISO/IEC 25010 (SQuaRE) 품질 모델

ISO/IEC 9126을 대체하여 2011년 3월에 발행된 ISO/IEC 25010은 소프트웨어 품질 요구 사항 및 평가(SQuaRE) 시리즈의 일부이다.[3] 이 표준은 이전 모델의 6가지 특성을 확장하여 8가지 주요 품질 특성과 31개의 하위 특성을 제시한다.[3]

ISO/IEC 25010에서 변경된 주요 내용은 다음과 같다.


  • 기능성 (Functionality): "기능적 적합성 (functional suitability)"으로 명칭이 변경되었으며, "기능적 완전성 (functional completeness)"이 하위 특성으로 추가되었다. "상호 운용성 (interoperability)"과 "보안 (security)"은 별도의 특성으로 분리되었다. "정확성 (Accuracy)"은 "기능적 정확성 (functional correctness)"으로, "적합성 (suitability)"은 "기능적 적절성 (functional appropriateness)"으로 변경되었다.
  • 효율성 (Efficiency): "성능 효율성 (performance efficiency)"으로 명칭이 변경되었으며, "수용 능력 (Capacity)"이 하위 특성으로 추가되었다.
  • 호환성 (Compatibility): "공존성 (co-existence)"은 "이식성 (portability)"에서, "상호 운용성 (interoperability)"은 "기능성 (functionality)"에서 이동하여 새롭게 구성된 특성이다.
  • 사용성 (Usability): "사용자 오류 보호 (user error protection)" 및 "접근성 (accessibility)" 하위 특성이 추가되었다. "이해도 (Understandability)"는 "적절성 인식 (appropriateness recognizability)"으로, "매력성 (attractiveness)"은 "사용자 인터페이스 미학 (user interface aesthetics)"으로 변경되었다.
  • 신뢰성 (Reliability): "가용성 (availability)" 하위 특성이 추가되었다.
  • 보안 (Security): "기밀성 (confidentiality)", "무결성 (integrity)", "부인 방지 (non-repudiation)", "책임성 (accountability)", "진정성 (authenticity)" 등의 하위 특성을 포함하는 새로운 특성으로 구성되었다.
  • 유지 보수성 (Maintainability): "모듈성 (modularity)" 및 "재사용성 (reusability)" 하위 특성이 추가되었으며, "변경 가능성 (changeability)"과 "안정성 (stability)"은 "수정 용이성 (modifiability)"으로 통합되었다.
  • 이식성 (Portability): "공존성 (co-existence)"이 "호환성"으로 이동하였다.


ISO/IEC SQuaRE 시리즈는 시스템 및 소프트웨어 품질 규격군으로, 정식 명칭은 "Systems and software Quality Requirements and Evaluation (SQuaRE)"이다.[4]

SQuaRE 규격군
규격 번호제정/추인 연도부제이력대응 JIS
https://www.iso.org/standard/64764.html 25000:20142014/2020Guide to SQuaREhttps://www.iso.org/standard/35683.html :2005JIS X 25000:2017
https://www.iso.org/standard/35733.html 25010:20112011/2017System and software quality models
https://www.iso.org/standard/35736.html 25012:20082008/2019Data quality model-
https://www.iso.org/standard/72116.html 25030:20192019Quality requirements frameworkhttps://www.iso.org/standard/35755.html :2007


4. 1. 기능적 적합성 (Functional Suitability)

ISO/IEC 25000:2014영어 / JIS X 25000:2017일본어에 따르면, 소프트웨어 품질은 "명시된 조건 하에서 사용할 때, 명시적 요구 사항 또는 암묵적 요구 사항을 충족하기 위한 소프트웨어 제품의 능력"으로 정의된다.[1] 이는 대상(소프트웨어 제품)이 명시적·암묵적 요구 사항을 충족하는 정도라는 점에서 ISO 9000에서의 품질의 소프트웨어 버전으로 볼 수 있다.

4. 2. 성능 효율성 (Performance Efficiency)

Performance Efficiency영어는 명시된 조건에서, 사용되는 자원의 양에 따른 소프트웨어 품질 성능을 제공하는 정도를 나타낸다. 여기서 자원은 CPU, 메모리, 디스크, 네트워크 등 소프트웨어가 실행되는 데 필요한 모든 것을 포함한다.

4. 3. 호환성 (Compatibility)

Compatibility영어는 다른 소프트웨어 제품과 정보를 교환하거나, 동일한 환경을 공유할 수 있는 소프트웨어 품질의 특성이다. 주어진 원문에서는 호환성에 대한 직접적인 언급은 없지만, 소프트웨어 품질에 대한 일반적인 정의를 내리고 있다.

4. 4. 사용성 (Usability)

quality in use영어는 특정 이용 상황에서, 특정 이용자가 특정 목표를 달성한다는 요구를 충족하기 위해 유효성, 효율성, 위험 회피성 및 만족성에 관하여 소프트웨어 제품 또는 시스템을 사용할 수 있는 정도이다.[1] 품질의 정의는 "누구의 요구인가"를 한정하지 않는다. 예를 들어, 개발팀에게는 "지속적인 개발"이라는 요구를 충족하는 "유지 보수성"이, 사용자 지원팀에게는 "명확한 전화상의 조작 지시"라는 요구를 충족하는 "운용 조작성"이 품질에 기여한다.

이용 시 품질은 이용자에게 있어서의 품질이다. 이용자는 "특정 이용 상황"이라는 명시된 조건 하에서 대상을 사용하며, "특정 목표를 달성한다"는 요구를 가지고 있다. 유효성, 효율성, 위험 회피성, 만족성의 관점에서 이 요구를 충족할 수 있는 능력의 정도가 이용 시 품질이다.

평이한 표현으로 하자면 "사용자가 대상을 사용하여, 효과적으로, 효율적으로, 안전하게, 만족감을 가지고 목표를 달성할 수 있는 정도"가 이용 시 품질이다.

4. 5. 신뢰성 (Reliability)

신뢰성(Reliability영어)은 주어진 시간 동안 주어진 조건에서 요구되는 기능을 수행하는 소프트웨어 제품의 능력으로 정의된다.

4. 6. 보안 (Security)

Security영어는 ISO/IEC 9126에서 정의되지 않은 속성이다.

4. 7. 유지보수성 (Maintainability)

(이전 출력과 동일하게, 유지보수성과 관련된 내용을 찾을 수 없어 빈 텍스트를 출력합니다.)

4. 8. 이식성 (Portability)

소프트웨어 제품이 명시적·암묵적 요구 사항을 충족하는 정도라는 점에서 ISO 9000에서의 품질의 소프트웨어 버전으로 볼 수 있다.

5. 내부, 외부, 사용 품질 지표

ISO/IEC 9126 표준은 소프트웨어 품질을 평가하기 위해 세 가지 유형의 품질 지표를 제시한다. 이 세 가지 지표는 내부 지표, 외부 지표, 사용 품질 지표이다. 이상적으로는 내부 품질이 외부 품질을 결정하고, 외부 품질이 사용 품질을 결정하는 관계를 가진다.


  • 내부 지표: 소프트웨어가 실행되지 않는 상태에서 측정 가능한 지표이다. 예를 들어, 코드의 복잡도나 모듈화 정도 등이 내부 지표에 해당한다.
  • 외부 지표: 소프트웨어가 실행되는 동안 측정 가능한 지표이다. 예를 들어, 소프트웨어의 응답 시간, 오류 발생률 등이 외부 지표에 해당한다.
  • 사용 품질 지표: 최종 제품이 실제 사용 환경에서 사용될 때 측정 가능한 지표이다. 예를 들어, 사용자의 만족도, 업무 효율성 향상 정도 등이 사용 품질 지표에 해당한다.


ISO/IEC 9126에서는 '''결함'''과 '''부적합'''을 구분한다.

  • '''결함'''은 "의도된 사용 요구 사항을 충족하지 못하는 것"을 의미한다.
  • '''부적합'''은 "명시된 요구 사항을 충족하지 못하는 것"을 의미한다.

이는 테스트 업계에서 V&V로 알려진 검증(Verification)과 확인(Validation)의 구분과 유사하다.[1]

SQuaRE에서 '''소프트웨어 품질'''(software quality)은 "명시된 조건 하에서 사용할 때, 명시적 요구 사항 또는 암묵적 요구 사항을 충족하기 위한 소프트웨어 제품의 능력"으로 정의된다.[1] 이는 ISO 9000에서 정의하는 품질의 소프트웨어 버전이라고 볼 수 있다.[1]

SQuaRE에서 '''이용 시 품질''' (quality in use영어)은 "특정 이용 상황에서, 특정 이용자가 특정 목표를 달성한다는 요구를 충족하기 위해, 유효성, 효율성, 위험 회피성 및 만족성에 관하여, 소프트웨어 제품 또는 시스템을 사용할 수 있는 정도"로 정의된다.[1] 쉽게 말해, "사용자가 대상을 사용하여, 효과적으로, 효율적으로, 안전하게, 만족감을 가지고 목표를 달성할 수 있는 정도"가 이용 시 품질이다.[1]

참조

[1] 간행물 Systems and software engineering -- Systems and software Quality Requirements and Evaluation (SQuaRE) -- System and software quality model http://www.iso.org/i[...]
[2] 간행물 Software engineering — Product quality — Part 1: Quality model http://www.iso.org/i[...]
[3] 간행물 ISO/IEC 25010:2011 : Systems and software engineering -- Systems and software Quality Requirements and Evaluation (SQuaRE) -- System and software quality models http://www.iso.org/i[...]
[4] 문서 2010年以前の版では「'''Software product''' Quality Requirements and Evaluation (SQuaRE)」



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com