1. 품질 요구사항
소프트웨어 품질은 소프트웨어의 기능, 성능 ,만족도 등 소프트웨어에 대한 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성의 총체이다.
- 소프트웨어의 품질은 사용자의 요구사항을 충족시킴으로써 확립된다.
- ISO/IEC 9126
- 소프트웨어의 품질 특성과 평가를 위한 표준 지침으로 국제 표준으로 널리 사용된다.
- 소프트웨어의 품질에 대한 요구사항을 기술하거나 개발중인 또는 개발이 완료된 소프트웨어의 품질 평가 등에 사용된다.
- 2011년에 호환성과 보안성을 강화하여 ISO/IEC 25010으로 개정되었다.
- ISO/IEC 9126에서 제시한 소프트웨어의 품질 특성
- 기능성
- 적절성/적합성
- 정밀성/정확성
- 상호 운용성
- 보안성
- 준수성
- 신뢰성
- 성숙성
- 고장허용성
- 횝고상
- 사용성
- 이해성
- 학습성
- 운용성
- 친밀성
- 효율성
- 시간 효율성
- 자원 효율성
- 유지 보수성
- 분석성
- 변경성
- 안정성
- 시험성
- 이식성
- 적용성
- 설치성
- 대체성
- 공존성
- 기능성
- ISO/IEC 25010
- ISO/IEC 25010은 소프트웨어 제품에 대한 국제 표준으로 2011년에 ISO/IEC 9126을 개정하여 만들었다.
- 기능 적합성
- 기능 완전성
- 기능 정확성
- 기능 적절성
- 성능 효율성
- 시간 효율성
- 자원 효율성
- 사양
- 호환성
- 공존성
- 상호운영성
- 사용성
- 적절 인지정도
- 학습성
- 조작성
- 사룡자 오류 방지
- UI 미학
- 접근성
- 신뢰성
- 성숙성
- 사용가능성
- 결함 허용성
- 복구성
- 보안성
- 기밀성
- 무결성
- 부인방지
- 책임추적성
- 인증성
- 유지 보수성
- 모듈성
- 재사용성
- 분석성
- 변경성
- 시험성
- 이식성
- 적응성
- 설치성
- 대체성
기타 소프트웨어 품질 관련 표준
- ISO/IEC 1219 : ISO/IEC 9126을 준수한 품질 표준으로, 테스트 절차를 포함하여 규정
- ISO/IEC 12598 : 소프트웨어 품질의 측정과 평가에 필요 절차를 규정한 표준으로, 개발자, 구매자, 평가자 별로 수행해야 할 제품 평가 활동을 규정
기능성(Functionality)
기능성은 소프트웨어가 사용자의 요구사항을 정확하게 만족하는 기능을 제공하는지 여부를 나타낸다.
- 적합성/적절성(Suitability) : 지정된 작업과 사용자의 목적 달성을 위해 적절한 기능을 제공할 수 있는 능력
- 정밀성/정확성(Accuracy) : 사용자가 요구하는 결과를 정확하게 산출할 수 있는 능력
- 상호 운용성(Interoperability) : 다른 시스템들과 서로 어울려 작업할 수 있는 능력
- 보안성(Security) : 정보에 대한 접근을 권한에 따라 허용하거나 차단할 수 있는 능력
- 준수성(Compliance) : 기능과 관련된 표준, 관례 및 규정을 준수할 수 있는 능력
신뢰성(Reliability)
신뢰성은 소프트웨어가 요구된 기능을 정확하고 일관되게 오류 없이 수행할 수 있는 정도를 나타낸다.
- 성숙성(Maturity) : 결함으로 인한 고장을 피해갈 수 있는 능력
- 고장 허용성(Fault Tolerance) : 결함 또는 인터페이스 결여 시에도 규정된 성능 수준을 유지할 수 있는 능력
- 회복성(Recoverability) : 고장 시 규정된 성능 수준까지 다시 회복하고 직접적으로 영향 받은 데이터를 복구할 수 있는 능력
사용성(Usability)
사용성은 사용자와 컴퓨터 사이에 발생하는 어떠한 행위에 대하여 사용자가 쉽게 배우고 사용할 수 있으며, 향후 다시 사용하고 싶은 정도를 나타낸다.
- 이해성(Understandability) :소프트웨어의 적합성, 사용방법 등을 사용자가 이해할 수 잇는 능력
- 학습성(Learnability) :소프트웨어 애플리케이션을 학습할 수 있도록 하는 능력
- 운용성(Operability) : 사용자가 소프트웨어를 운용하고 제어할 수 있도록 하는 능력
- 친밀성(Attractiveness) : 사용자가 소프트웨어를 다시 사용하고 싶어 하도록 하는 능력
효율성(Effciency)
효율성은 사요자가 요구하는 기능을 할당된 시간 동안 한정된 자원으로 얼마나 빨리 처리할 수 있는지 정도를 나타낸다.
- 시간 효율성(Time Behaviour) : 특정 기능을 수행할 때 적절한 반으 시간 및 처리 시간, 처리율을 제공할 수 있는 능력
- 자원 효율성(Resource Behaviour) : 특정 기능을 수행할 때 적절한 자원의 양과 종류를 제공할 수 있는 능력
유지 보수성(Maintainability)
유지 보수성은 환경의 변화 또는 새로운 요구사항이 발생했을 때 소프트웨어를 개선하거나 확장할 수 있는 정도를 나타낸다.
- 분석성(Analyzability) : 결함이나 고장의 원인, 수정될 부분들의 식별을 가능하게 하는 능력
- 변경성(Changeability) : 결함 제거 또는 환경 변화로 인한 수정 등을 쉽게 구현할 수 있는 능력
- 안정성(Stability) : 변경으로 인한 예상치 못한 결과를 최소화 할 수 있는 능력
- 시험성(Testability) : 소프트웨어의 변경이 검증될 수 있는 능력
이식성(Portability)
이식성은 소프트웨어가 다른 환경에서도 얼마나 쉽게 적용할 수 있는지 정도를 나타낸다.
- 적용성(Adaptability) : 원래의 목적으로 제공되는 것 외에 다른 환경으로 변경될 수 있는 능력
- 설치성(Installability) : 임의의 환경에서 소프트웨어를 설치할 수 있는 능력
- 대체성(Replaceability) : 동일한 환경에서 동일한 목적을 위해 다른 소프트웨어를 대신하여 사용될 수 있는 능력
- 공존성(Co-existence) : 자원을 공유하는 환경에서 다른 소프트웨어와 공존할 수 있는 능력
'휴지통 > 정보처리기사' 카테고리의 다른 글
오답노트 01 (0) | 2022.02.07 |
---|---|
016. UI 프로토타입 제작 및 검토 (0) | 2022.01.02 |
014. UI 요구사항 확인 (0) | 2022.01.02 |
013. UI 설계 도구 (0) | 2022.01.02 |
012. UI 표준 및 지침 (0) | 2022.01.02 |