소프트웨어 품질: 두 판 사이의 차이

IT위키
편집 요약 없음
편집 요약 없음
1번째 줄: 1번째 줄:
[[분류:소프트웨어 공학]][[분류:정보처리기사]]
[[분류:소프트웨어 공학]][[분류:정보처리기사]]
;Software Quality; Software Metric
;[[ISO/IEC 9126]]에서 정의된 소프트웨어 품질 특성, 국내 정보처리기사 등의 기출문제 문언을 참고하여 구성
;[[ISO/IEC 9126]]에서 정의된 소프트웨어 품질 특성, 국내 정보처리기사 등의 기출문제 문언을 참고하여 구성


== 품질 특성 ==
;Software Metric
기존에 [[ISO/IEC 9126]] 기준의 특성들이 사용되었으나, 9126이 폐기되고 [[ISO/IEC 25000|ISO/IEC 25000(SQuaRE)]]으로 통합었으므로 ISO/IEC 2501n의 특성을 참조함이 바람직하다.


=== 정확성(Correctness) ===
{| class="wikitable"
* 소프트웨어가 사용자의 요구기능을 충족 시키는가
! 품질 특성
* 목적했던 기능이 정확히 동작하는가
! 세부 특성
!
|-
| rowspan="3" | 1. functional suitability (기능 적합성)
| 1.1 functional completeness (기능 완전성)
|
|-
| 1.2 functional correctness (기능적 정확성)
|
|-
| 1.3 functional appropriateness (기능적 적절성)
|
|-
| rowspan="3" | 2. performance efficiency (성능 효율성)
| 2.1 time behavior (시간 효율성)
|
|-
| 2.2 resource utilization (자원 효율성)
|
|-
| 2.3 capacity (사양)
|
|-
| rowspan="2" | 3. compatibility (호환성)
| 3.1 co-existence (공존성)
|
|-
| 3.2 interoperability (상호운영성)
|
|-
| rowspan="6" | 4. usability (사용성)
| 4.1 appropriateness recognizability (적절성 인지정도)
|
|-
| 4.2 learnability (학습성)
|
|-
| 4.3 operability (조작성)
|
|-
| 4.4 user error protection (사용자 오류 방지)
|
|-
| 4.5 user interface aesthetics (UI 미학)
|
|-
| 4.6 accessibility (접근성)
|
|-
| rowspan="4" | 5. reliability (신뢰성)
| 5.1 maturity (성숙성)
|
|-
| 5.2. availability (사용가능성)
|
|-
| 5.3 fault tolerance (결함 허용성)
|
|-
| 5.4 recoverability (복구성)
|
|-
| rowspan="5" | 6. security (보안)
| 6.1 confidentiality (기밀성)
|
|-
| 6.2 integrity (무결성)
|
|-
| 6.3 non-repudiation (부인방지)
|
|-
| 6.4 accountability (책임추적성)
|
|-
| 6.5 authenticity (인증성)
|
|-
| rowspan="5" | 7. maintainability (유지 보수성)
| 7.1 modularity (모듈성)
|
|-
| 7.2 reusability (재사용성)
|
|-
| 7.3 analysability (분석성)
|
|-
| 7.4 modifiability (변경성)
|
|-
| 7.5 testability (시험성)
|
|-
| rowspan="3" | 8. portability (이식성)
| 8.1 adaptability (적응성)
|
|-
| 8.2 installability (설치성)
|
|-
| 8.3 replaceability (대체성)
|
|}


=== 신뢰성(Reliability) ===
=== [[ISO/IEC 9126]]과의 비교 ===
* 기능이 오차나 오류 없이 동작하는가
* 일관된 결과가 도출 되는가


=== 효율성(Efficiency) ===
* 기능을 수행하는데 적절한 자원이 소요되는가
* 기능이 필요한만큼 빠르게 수행되는가


=== 무결성(Integrity) ===
=== 세부 설명 ====
* 허용되지 않는 사용이나 자료 변경을 제어하는가
* 정확성(Correctness)
 
** 소프트웨어가 사용자의 요구기능을 충족 시키는가
=== 사용 용이성(Usability) ===
** 목적했던 기능이 정확히 동작하는가
* 쉽게 배우고 사용할 수 있는가
* 신뢰성(Reliability)
 
** 기능이 오차나 오류 없이 동작하는가
=== 유지보수성(Maintainability) ===
** 일관된 결과가 도출 되는가
* 변경 및 오류 교정 시 쉽게 수정할 수 있는가
* 효율성(Efficiency)
 
** 기능을 수행하는데 적절한 자원이 소요되는가
=== 시험 용이성(Testability) ===
** 기능이 필요한만큼 빠르게 수행되는가
* 개선, 유지보수 등에 있어서 테스트를 하기 용이하게 되어 있는가
* 무결성(Integrity)  
 
** 허용되지 않는 사용이나 자료 변경을 제어하는가
=== 유연성(Flexibility) ===
* 사용 용이성(Usability)  
* 새로운 요구사항에 대해서도 쉽게 개선 및 적용 가능한가
** 쉽게 배우고 사용할 수 있는가
 
* 유지보수성(Maintainability)  
=== 이식성(Potability) ===
** 변경 및 오류 교정 시 쉽게 수정할 수 있는가
* 다양한 플랫폼 및 하드웨어에서 동작하는가
* 시험 용이성(Testability)  
 
** 개선, 유지보수 등에 있어서 테스트를 하기 용이하게 되어 있는가
=== 재사용성(Reusability) ===
* 유연성(Flexibility)  
* 개발된 기능을 다른 목적으로 사용하기 용이한가
** 새로운 요구사항에 대해서도 쉽게 개선 및 적용 가능한가
 
* 이식성(Potability)  
=== 상호 운용성(Interoperability) ===
** 다양한 플랫폼 및 하드웨어에서 동작하는가
* 다른 소프트웨어와 상호 교류가 용이한가
* 재사용성(Reusability)  
* '''예시'''
** 개발된 기능을 다른 목적으로 사용하기 용이한가
** NFC, Bluetooth등 표준 프로토콜을 이용한 경우 해당 표준을 준용한 HW/SW와 상호운용 가능
* 상호 운용성(Interoperability)  
** Slack은 google drive, trello 등 다른 도구와의 결합이 용이함
** 다른 소프트웨어와 상호 교류가 용이한가
** '''예시'''
*** NFC, Bluetooth등 표준 프로토콜을 이용한 경우 해당 표준을 준용한 HW/SW와 상호운용 가능
*** Slack은 google drive, trello 등 다른 도구와의 결합이 용이함

2019년 11월 3일 (일) 21:04 판

Software Quality; Software Metric
ISO/IEC 9126에서 정의된 소프트웨어 품질 특성, 국내 정보처리기사 등의 기출문제 문언을 참고하여 구성

품질 특성

Software Metric

기존에 ISO/IEC 9126 기준의 특성들이 사용되었으나, 9126이 폐기되고 ISO/IEC 25000(SQuaRE)으로 통합었으므로 ISO/IEC 2501n의 특성을 참조함이 바람직하다.

품질 특성 세부 특성
1. functional suitability (기능 적합성) 1.1 functional completeness (기능 완전성)
1.2 functional correctness (기능적 정확성)
1.3 functional appropriateness (기능적 적절성)
2. performance efficiency (성능 효율성) 2.1 time behavior (시간 효율성)
2.2 resource utilization (자원 효율성)
2.3 capacity (사양)
3. compatibility (호환성) 3.1 co-existence (공존성)
3.2 interoperability (상호운영성)
4. usability (사용성) 4.1 appropriateness recognizability (적절성 인지정도)
4.2 learnability (학습성)
4.3 operability (조작성)
4.4 user error protection (사용자 오류 방지)
4.5 user interface aesthetics (UI 미학)
4.6 accessibility (접근성)
5. reliability (신뢰성) 5.1 maturity (성숙성)
5.2. availability (사용가능성)
5.3 fault tolerance (결함 허용성)
5.4 recoverability (복구성)
6. security (보안) 6.1 confidentiality (기밀성)
6.2 integrity (무결성)
6.3 non-repudiation (부인방지)
6.4 accountability (책임추적성)
6.5 authenticity (인증성)
7. maintainability (유지 보수성) 7.1 modularity (모듈성)
7.2 reusability (재사용성)
7.3 analysability (분석성)
7.4 modifiability (변경성)
7.5 testability (시험성)
8. portability (이식성) 8.1 adaptability (적응성)
8.2 installability (설치성)
8.3 replaceability (대체성)

ISO/IEC 9126과의 비교

세부 설명 =

  • 정확성(Correctness)
    • 소프트웨어가 사용자의 요구기능을 충족 시키는가
    • 목적했던 기능이 정확히 동작하는가
  • 신뢰성(Reliability)
    • 기능이 오차나 오류 없이 동작하는가
    • 일관된 결과가 도출 되는가
  • 효율성(Efficiency)
    • 기능을 수행하는데 적절한 자원이 소요되는가
    • 기능이 필요한만큼 빠르게 수행되는가
  • 무결성(Integrity)
    • 허용되지 않는 사용이나 자료 변경을 제어하는가
  • 사용 용이성(Usability)
    • 쉽게 배우고 사용할 수 있는가
  • 유지보수성(Maintainability)
    • 변경 및 오류 교정 시 쉽게 수정할 수 있는가
  • 시험 용이성(Testability)
    • 개선, 유지보수 등에 있어서 테스트를 하기 용이하게 되어 있는가
  • 유연성(Flexibility)
    • 새로운 요구사항에 대해서도 쉽게 개선 및 적용 가능한가
  • 이식성(Potability)
    • 다양한 플랫폼 및 하드웨어에서 동작하는가
  • 재사용성(Reusability)
    • 개발된 기능을 다른 목적으로 사용하기 용이한가
  • 상호 운용성(Interoperability)
    • 다른 소프트웨어와 상호 교류가 용이한가
    • 예시
      • NFC, Bluetooth등 표준 프로토콜을 이용한 경우 해당 표준을 준용한 HW/SW와 상호운용 가능
      • Slack은 google drive, trello 등 다른 도구와의 결합이 용이함