소프트웨어의 품질
소프트웨어의 품질은 기능, 성능, 만족도 등 소프트웨어에 대한 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성
- ISO/IEC 9126은 소프트웨어의 품질 특성과 평가를 위한 표준 지침이다.
- 기능성, 신뢰성, 사용성, 효율성, 유지 보수성, 이식성으로 총 6개로 분류된다.
기능성
- 소프트웨어가 사용자의 요구사항을 정확하게 만족하는 기능을 제공하는지 여부
상세 품질 요구사항 | 설명 |
---|
적절성/적합성 | 지정된 작업과 사용자의 목적 달성을 위해 적절한 기능을 제공하는지 |
정밀성/정확성 | 사용자가 요구하는 결과를 정확하게 산출할 수 있는 능력 |
상호 운용성 | 다른 시스템들과 서로 어울려 작업할 수 있는 능력 |
보안성 | 정보에 대한 접근을 권한에 따라 허용하거나 차단하는 능력 |
준수성 | 기능과 관련된 표준, 관례 및 규정을 준수할 수 있는 능력 |
신뢰성
- 소프트웨어가 요구된 기능을 정확하고 일관되게 오류 없이 수행할 수 있는 정도
상세 품질 요구사항 | 설명 |
---|
성숙성 | 결함으로 인한 고장을 피해갈 수 있는 능력 |
고장 허용성 | 결함 또는 인터페이스 결여 시에도 규저된 성능 수준을 유지할 수 있는 능력 |
회복성 | 고장 시 규정된 성능 수준까지 다시 회복하고 직접적으로 영향 받은 데이터를 복구할 수 있는 능력 |
사용성
- 사용자와 컴퓨터 사이에 발생하는 어떠한 행위에 대하여 사용자가 정확하게 이해하고 사용하며, 향후 다시 사용하고 싶은 정도를 나타낸다.
상세 품질 요구사항 | 설명 |
---|
이해성 | 소프트웨어의 적합성, 사용 방법 등을 사용자가 이해할 수 있는 능력 |
학습성 | 소프트웨어 애플리케이션을 학습할 수 있도록 하는 능력 |
운용성 | 사용자가 소프트웨어를 운용하고 제어할 수 있도록 하는 능력 |
친밀성 | 사용자가 소프트웨어를 다시 사용하고 싶어 하도록 하는 능력 |
효율성
-사용자가 요구하는 긴응르 할당된 시간 동안 한정된 자원으로 얼마나 빨리 처리할 수 있는지 정도
상세 품질 요구사항 | 설명 |
---|
시간 효율성 | 특정 기능을 수행할 때 적절한 반응 시간 및 처리율을 제공할 수 있는 능력 |
자원 효율성 | 특정 기능을 수행할 떄 적절한 자원의 양과 종류를 제공할 수 있는 능력 |
유지 보수성
- 환경의 변화 또는 새로운 요구사항이 발생했을 떄 소프트웨어를 개선하거나 확장할 수 있는 능력
상세 품질 요구사항 | 설명 |
---|
분식성 | 결함이나 고장의 원인, 수정될 부분들의 식별을 가능하게 하는 능력 |
변경성 | 결함 제거 또는 환경 변화로 인한 수정 등을 쉽게 구현할 수 있는 능력 |
안정성 | 변경으로 인한 예상치 못한 결과를 최소화할 수 있는 능력 |
시험성 | 소프트웨어의 변경이 검증될 수 있는 능력 |
이식성
- 소프트웨어가 다른 환경에서도 얼마나 쉽게 적용할 수 있는지 정도
상세 품질 요구사항 | 설명 |
---|
적용성 | 원래의 목적으로 제공되는 것 외에 다른 환경으로 변경될 수 있는 능력 |
설치성 | 임의의 환경에 소프트웨어를 설치할 수 있는 능력 |
대체성 | 동일한 환경에서 동일한 목적을 위해 다른 소프트우에어를 대신하여 사용될 수 있는 능력 |
공존성 | 자원을 공유하는 환경에서 다른 소프트웨어와 공존할 수 있는 능력 |