[정처기 - SW설계 A] 2. 화면 설계 (A단계)

0_0·2023년 4월 26일
0

정보처리기사

목록 보기
2/10

[ 1과목 ] 소프트웨어 설계

    1. 화면 설계 A단계
      015 품질 요구사항

1-2-015 품질 요구사항


품질 요구사항

  • 소프트웨어의 품질
    : 소프트웨어에 대한 요구사항이 얼마나 충족하는가를 나타내는 소프트웨어 특성의 총체
    • 사용자의 요구사항을 충족시킴으로써 확립.
    • ISO/IEC 9126
      : 소프트웨어의 품질 특성과 평가를 위한 표준 지침
      • 품질 요구사항 기술에 사용.
      • 개발중 / 개발 완료된 소프트웨어의 품질 평가에 사용.
      • 품질 특성
        : 기능성, 신뢰성, 사용성, 효율성, 유지 보수성, 이식성
      • 보안성과 호환성을 강화하여 ISO/IEC 25010으로 개정.
    • ISO/IEC 25010
      : 소프트웨어 제품에 대한 국제 표준.
      • 품질 특성
        : 기능 적합성, 성능 효율성, 호환성, 사용성, 신뢰성, 보안성, 유지 보수성, 이식성
    • ISO/IEC 12119
      : 9126을 준수한 품질 표준.
      • 테스트 절차를 포함하여 규정.

기능성 (Functionality)

  • 기능성 (Functionality)
    : 소프트웨어가 사용자의 요구사항을 정확하게 만족하는 기능을 제공하는지 여부.
    • 적절성 / 적합성 (Maturity)
      : 지정된 작업과 사용자의 목적 달성을 위해 적절한 기능을 제공할 수 있는 능력.
    • 정밀성 / 정확성 (Accuracy)
      : 사용자가 요구하는 결과를 정확하게 산출할 수 있는 능력.
    • 상호 운용성 (Interoperability)
      : 다른 시스템들과 서로 어울려 작업할 수 있는 능력.
    • 보안성 (Security)
      : 정보에 대한 접근을 권한에 따라 허용하거나 차단할 수 있는 능력.
    • 준수성 (Compliance)
      : 기능과 관련된 표준, 관례 및 규정을 준수할 수 있는 능력.

신뢰성 (Reliability)

  • 신뢰성 (Reliability)
    : 소프트웨어가 요구된 기능을 정확하고 일관되게 오류 없이 수행할 수 있는 정도.
    • 성숙성 (Maturity)
      : 결함으로 인한 고장을 피해갈 수 있는 능력.
    • 고장 허용성 (Fault Tolerance)
      : 결함 또는 인터페이스 결여 시에도 규정된 성능 수준을 유지할 수 있는 능력.
    • 회복성 (Recoverability)
      : 고장시 규정된 성능 수준까지 다시 회복하고 직접적으로 영향 받은 데이터를 복구할 수 있는 능력.

사용성 (Usability)

  • 사용성 (Usability)
    : 사용자와 컴퓨터 사이에 발생하는 행위에 대해 사용자가 정확하게 이해하고 사용하며, 향후 다시 사용하고 싶은 정도.
    • 이해성 (Understandability)
      : 소프트웨어의 적합성, 사용 방법 등을 사용자가 이해할 수 있는 능력.
    • 학습성 (Learnability)
      : 소프트웨어 애플리케이션을 학습할 수 있도록 하는 능력.
    • 운용성 (Operability)
      : 사용자가 소프트웨어를 운용하고 제어할 수 있도록 하는 능력.
    • 친밀성 (Attractiveness)
      : 사용자가 소프트웨어를 다시 사용하고 싶어 하도록 하는 능력.

효율성 (Efficiency)

  • 효율성 (Efficiency)
    : 사용자가 요구하는 기능을 할당된 시간 동안 한정된 자원으로 얼마나 빨리 처리할 수 있는지 정도.
    • 시간 효율성 (Time Behaviour)
      : 특정 기능을 수행할 때 적절한 반응 시간 및 처리 시간, 처리율을 제공할 수 있는 능력.
    • 자원 효율성 (Resource Behaviour)
      : 특정 기능을 수행할 때 적절한 자원의 양과 종류를 제공할 수 있는 능력.

유지 보수성 (Maintainability)

  • 유지 보수성 (Maintainability)
    : 환경의 변화 또는 새로운 요구사항이 발생했을 때 소프트웨어를 개선하거나 확장할 수 있는 정도.
    • 분석성 (Analyzability)
      : 결함이나 고장의 원인, 수정될 부분들의 식별을 가능하게 하는 능력.
    • 변경성 (Changeability)
      : 결함 제거 또는 환경 변화로 인한 수정 등을 쉽게 구현할 수 있는 능력.
    • 안정성 (Stability)
      : 변경으로 인한 예상치 못한 결과를 최소화할 수 있는 능력.
    • 시험성 (Testability)
      : 소프트웨어의 변경이 검증될 수 있는 능력.

이식성 (Portability)

  • 이식성 (Portability)
    : 다른 환경에서도 얼마나 쉽게 적용할 수 있는지 정도.
    • 적용성 (Adaptability)
      : 원래의 목적으로 제공되는 것 외에 다른 환경으로 변경될 수 있는 능력.
    • 설치성 (Installability)
      : 임의의 환경에 소프트웨어를 설치할 수 있는 능력.
    • 대체성 (Replaceability)
      : 동일한 환경에서 동일한 목적을 위해 다른 소프트웨어를 대신해서 사용할 수 있는 능력.
    • 공존성 (Co-existence)
      : 자원을 공유하는 환경에서 다른 소프트웨어와 공존할 수 있는 능력.

0개의 댓글