Study_Note

classification by test type 본문

CSTS

classification by test type

12월7일생 2024. 2. 7. 15:00
728x90
반응형

테스트 유형에 의한 분류
(classification by test type)

 

소프트웨어의 동작과 특성을 확인하기 위한 기준은 요구사항 명세서에 정의됩니다. 이 명세서는 주로 기능 요구사항과 품질 요구사항으로 구성됩니다. 기능 요구사항은 소프트웨어가 수행해야 하는 작업과 기능을 설명하고, 품질 요구사항은 소프트웨어의 품질과 성능에 대한 기준을 제시합니다.

이러한 요구사항에 기반하여 소프트웨어의 테스트가 이루어집니다. 테스트는 주로 기능 테스트와 비기능 테스트로 구분됩니다. 기능 테스트는 소프트웨어의 각 기능이 요구사항에 맞게 동작하는지를 확인하는 것에 중점을 둡니다. 반면에 비기능 테스트는 성능, 효율성, 신뢰성 등의 품질 특성에 초점을 맞추어 수행됩니다.

전통적으로 비기능 테스트는 성능 효율성 테스트, 신뢰성 테스트 등과 같은 개별 품질 특성을 검증하는 것으로 알려져 있습니다. 또한 ISO 29119 표준에서는 기능 테스트와 각각의 비기능 테스트를 유형 테스트로 분류하여 정의하고 있습니다.

테스트 유형  설명
기능(functional) 테스트 - 기능 요구사항 측면의 결함 검출 및 충족 여부 확인을 목적으로 한다.
- 모든 테스트 수준 에서 진행된다.
(component/unit test , integration test , system test , acceptance test)
비기능(non-functinal) 테스트 - 성능, 보안성 신뢰성 등 품질 요구사항 측면의 결함 검출 및 충족 여부 확인을 목적으로 한다.
- 일반적으로 system test 와 acceptance test 수준에서 진행된다.

 

ISO 25010은 소프트웨어 품질 모델을 정의하는 국제 표준입니다. 이 표준은 소프트웨어가 갖춰야 하는 다양한 품질 특성에 관한 표준을 제시합니다. 소프트웨어 품질 모델은 소프트웨어의 사용자가 요구하는 특정 품질 특성에 대한 명확한 정의와 평가 기준을 제공합니다.

ISO 25010은 기능적인 측면 뿐만 아니라 비기능적인 측면에 대한 품질 특성을 다룹니다. 이는 소프트웨어의 기능뿐만 아니라 성능, 신뢰성, 사용성, 호환성 등과 같은 품질 측면을 고려합니다.

소프트웨어 개발 및 테스트 과정에서 ISO 25010의 품질 모델은 소프트웨어의 품질을 평가하고 개선하기 위한 중요한 지침으로 활용됩니다. 이를 통해 소프트웨어의 품질이 향상되고 사용자 만족도가 높아지는 것을 목표로 합니다.

 

[ISO 25010 8가지 주요 품질 특성]

  • 기능성 (Functionality) :
    소프트웨어가 제공해야 하는 기능이 얼마나 정확하고 완전히 수행되는지에 대한 특성입니다.
  • 사용성 (Usability) :
    사용자가 소프트웨어를 얼마나 쉽게 배우고 사용할 수 있는지에 대한 특성입니다.
  • 효율성 (Efficiency) 
    소프트웨어가 제한된 자원을 이용하여 얼마나 빠르고 효율적으로 동작하는지에 대한 특성입니다.
  • 호환성 (Compatibility) :
    소프트웨어가 다른 시스템과 얼마나 잘 통합되고 상호 작용할 수 있는지에 대한 특성입니다.
  • 신뢰성 (Reliability) :
    소프트웨어가 특정 시간 또는 조건 하에서 얼마나 안정적으로 동작하는지에 대한 특성입니다.
  • 보안성 (Security):
    소프트웨어가 사용자의 데이터와 시스템을 얼마나 안전하게 보호할 수 있는지에 대한 특성입니다.
  • 유지보수성 (Maintainability) :
    소프트웨어를 얼마나 쉽게 변경하고 수정할 수 있는지에 대한 특성입니다.
  • 이식성 (Portability) :
    소프트웨어를 얼마나 쉽게 다른 환경으로 이전하고 재사용할 수 있는지에 대한 특성입니다.

 

주특성 부특성
기능 적합성 완정성, 정확성, 타당성
사용성 타당성 식별력, 학습성, 운영 용이성, 사용자 오류 보호, 사용자 인테페이스 미학, 접근성
성능 효율성 시간행동(time-behaviour), 자원 활용성, 수용성(capacity)
호환성 공존성, 상호운영성
신뢰성 성숙성, 가용성, 장애 허용성, 회복가능성
보안성 기밀성, 무결성, 부인방지, 책임성, 진본성
유지보수성 모듈성, 재사용성, 분석성, 변경 용이성, 테스트 용이성
이식성 적응성, 설치용이성, 대치 용이성

 

ISO 25010 품질 모델은 소프트웨어의 품질을 8가지 주요 품질 특성으로 정의합니다. 이 특성들은 각각 기능 적합성, 사용성, 성능효율성, 호환성, 신뢰성, 보안성, 유지보수성, 이식성입니다. 이들 주요 특성은 더 세부적인 부특성으로 세분화됩니다.

예를 들어, 호환성은 공존성과 상호운영성으로 세분화되며, 유지보수성은 모듈성, 재사용성, 분석성, 변경용이성, 테스트 용이성으로 세분화됩니다.

이러한 품질 특성들은 소프트웨어가 충족해야 하는 요소이며, 소프트웨어 요구사항의 일부입니다. 소프트웨어가 각 특성을 충족하는지 테스트하기 위해서는 각각의 특성에 대한 테스트를 수행해야 합니다. 예를 들어, 성능 요구사항을 충족하기 위해 신뢰성 테스트를 수행할 수 있습니다.

 

https://iso25000.com/index.php/en/iso-25000-standards/iso-25010

 

ISO 25010

 

iso25000.com