1-2 013 품질 요구사항 [B]

이지우·2024년 4월 1일
0

정보처리기사

목록 보기
13/29

품질 요구사항

소프트웨어의 품질은 기능, 성능, 만족도 등 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성의 총체

소프트웨어의 품질은 사용자의 요구사항을 충족시킴으로써 확립됨

ISO/IEC 9126

  • 소프트웨어의 품질 특성과 평가를 위한 표준 지침으로서 국제 표준
  • 요구사항을 기술하거나 개발중인 또는 개발이 완료된 소프트웨어의 품질 평가에 사용
  • 2011년에 호환성과 보안성을 강화하여 ISO/IEC 25010으로 개정됨

ISO/IEC 25010

  • 소프트웨어 제품에 대한 국제 표준
  • ISO/IEC 9126을 개정하여 만듦

기타 소프트웨어 품질 관련 표준

  • ISO/IEC 12119
    : ISO/IEC 9126을 준수한 품질 표준으로, 테스트 절차가 포함됨

  • ISO/IEC 14598
    : 소프트웨어 품질의 측정과 평가에 필요한 절차를 규정한 표준
    : 개발자, 구매자, 평가자 별로 수행해야 할 제품 평가 활동 규정


기능성(Functionality)

사용자의 요구사항을 정확하게 반족하는 기능을 제공하는지 여부

  • 적절성/적합성(Suitability)
    : 지정된 작업과 사용자의 목적 달성을 위해 적절한 기능을 제공할 수 있는 능력

  • 정밀성/정확성(Accuracy)
    : 결과를 정확하게 산출할 수 있는 능력

  • 상호 운용성(Interoperabilty)
    : 다른 시스템들과 서로 어울려 작업할 수 있는 능력

  • 보안성(Security)
    : 정보에 대한 접근을 권한에 따라 허용하거나 차단할 수 있는 능력

  • 준수성(Compliance)
    : 기능과 관련된 표준, 관례 및 규정을 준수할 수 있는 능력


신뢰성(Reliability)

요구된 기능을 정확하고 일관되게 오류 없이 수행할 수 있는 정도

  • 성숙성(Maturity)
    : 결함으로 인한 고장을 피해갈 수 있는 능력

  • 고장 허용성(Fault Tolerance)
    : 결함 또는 인터페이스 결여 시에도 규정된 성능 수준을 유지할 수 있는 능력

  • 회복성(Recoverability)
    : 고장 시 규정된 성능 수준까지 다시 회복하고 직접적으로 영향 받은 데이터를 복구할 수 있는 능력


사용성(Usability)

사용자가 쉽게 배우고 사용할 수 있으며, 다시 사용하고 싶은 정도

  • 이해성(Understandability)
    : 소프트웨어 적합성, 사용 방법 등 사용자가 이해할 수 있는 능력

  • 학습성(Learnability)
    : 학습할 수 있도록 하는 능력

  • 운용성(Operability)
    : 사용자가 운용하고 제어할 수 있도록 하는 능력

  • 친밀성(Attractiveness)
    : 사용자가 다시 사용하고 싶어 하도록 하는 능력


효율성(Efficiency)

요구하는 기능을 할당된 시간 동안 한정된 자원으로 얼마나 빨리 처리할 수 있는지 정도

  • 시간 효율성(Time Behaviour)
    : 적절한 반응 시간 및 처리 시간, 처리율을 제공할 수 있는 능력

  • 자원 효율성(Resource Behaviour)
    : 적절한 자원의 양과 종류를 제공할 수 있는 능력


유지 보수성(Maintainability)

환경의 변화 또는 새로운 요구사항이 발생했을 때 소프트웨어를 개선하거나 확장할 수 있는 정도

  • 분석성(Analyzability)
    : 결함이나 고장의 원인, 수정될 부분들의 식별을 가능하게 하는 능력

  • 변경성(Changeability)
    : 결함 제거 또는 환경 변화로 인한 수정 등을 쉽게 구현할 수 있는 능력

  • 안정성(Stability)
    : 변경으로 인한 예상치 못한 결과를 최소화할 수 있는 능력

  • 시험성(Testability)
    : 변경이 검증될 수 있는 능력


이식성(Portability)

다른 환경에서도 얼마나 쉽게 적용할 수 있는지 정도

  • 적용성(Adaptability)
    : 원래의 목적으로 제공되는 것 외에 다른 환경으로 변경될 수 있는 능력

  • 설치성(Installability)
    : 임의의 환경에 소프트웨어를 설치할 수 있는 능력

  • 대체성(Replaceability)
    : 동일한 환경에서 동일한 목적을 위해 다른 소프트웨어를 대신하여 사용될 수 있는 능력

  • 공존성(Co-existence)
    : 자원을 공유하는 환경에서 다른 소프트웨어와 공존할 수 있는 능력

profile
노력형 인간

0개의 댓글