본문 바로가기
2023-2/소프트웨어 공학

9. 소프트웨어 품질

by 철없는민물장어 2023. 12. 18.
728x90
반응형

소프트웨어 품질

 

US DoD: 개발된 소프트웨어가 사용자의 요구 사항을 만족할 수 있는 능력

IEEE: 소프트웨어가 필요한 속성을 보유하고 있는 정도, 사용자의 기대 수준을 만족할 수 있는 정도를 결정하는 특성

ISO: 요구사항을 만족하는 소프트웨어 제품의 능력

 

프로젝트 관리자 관점의 좋은 소프트웨어

- 추가 부담이 발생하지 않는 소프트웨어

 

개발자 관점의 좋은 소프트웨어

- 개발하기 쉽고 내용 추가 및 코드 수정이 쉬운 

- 코딩 표준에 맞게 개발된 프로그램

 

유지보수자 관점의 좋은 소프트웨어

- 작성된 코드가 코딩 규칙 및 표준을 따르고 주석이 많이 포함된

- 가독성이 높고 쉽게 이해할 수 있는

- 변경 영향이 한 부분으로 국한되는

- 코드와 일관성 있는 문서가 제공되는

 

사용자 관점의 좋은 소프트웨어

- 기능이 정확히 동작하는

- 배우기 쉽고 편리하고 다양한 기능, 응답시간이 빠른

- 첫 사용자나 숙련된 사용자 모두 만족하는

 

스폰서 관점의 좋은 소프트웨어

- 비즈니스 과정에서 이득이 되는

- 적은 비용으로 개발되는

- 기존 컴포넌트를 재사용하여 개발되는

 

 

품질 좋은 소프트웨어를 개발하기 위해서는?

- 처음부터 품질을 고려한 계획을 수립

- 품질 요구 사항에 대한 명세서 작성

- 단계별로 생산되는 산출물도 검사 항목에 따라 철저히 점검

- 품질을 보증할 수 있는 프로세스를 마련

 

품질 목표

- 정확성

- 신뢰성

- 효율성

- 무결성

- 사용성

- 유지보수 용이성

- 테스트 용이성

- 유연성

- 이식성 

- 재사용성

- 상호운용성

 

품질 평가 표준 모델

1. 제품 품질 특성 평가

- 완성된 제품에 대한 평가

- 개발된 최종 산출물 SW제품이 사용자의 의도대로 기능하는지 평가

- ISO/IEC 9126: 기능성, 신뢰성, 사용성, 효율성, 유지보수 용이성, 이식성

-ISO/IEC 25000: 사용자에게 유용하도록 여러 표준 문서를 통합하고 재구성하여 만든 국제 표준 문서

 

 

2. 프로세스 품질 특성 평가

- 소프트웨어 제품의 개발 프로세스를 평가

- 개발 과정의 각 단계마다 평가

- ISO 9000: SDLC과정에 대한 품질 보증 모델, SW개발을 목표로 구체화되지 않음

- ISO 12207

 

CMMI(Capability Maturity Model Integration)

-조직의 프로세스 개선을 위해 개발

-기업에 표준 프로세스를 만들 수 있는 지침을 제시하고, 그 기준이 됨

- 능력과 성숙도로 조직의 프로세스를 측정 및 평가

소프트웨어 개발에서 내비게이션 역할

- 조직원들이 헤매는 시간을 줄이고 생산성 높임

- 기준과 목표, 방향을 제시하므로 프로세스가 명확하고 계획적이며 결과예측 가능하게 됨

 

CMMI의 5단계 (성숙단계)

1 초기단계

2. 관리단계: 프로젝트별 프로세스 존재
3. 정의 단계: 조직 차원의 표준 프로세스 존재

4. 정량적 관리 단계: 측정 가능한 정량적 프로세스 

5. 최적화 단계: 프로세스를 지속적으로 개선

 

CMMI의 평가 방법

1. 단계적 표현 방법 maturity level

조직에서 해당 업무를 얼마나 체계적으로 수행하고 있는지 나타내며 1~5 다섯단계 사용

2. 연속적 표현 방법의 capability level

 

 

SPICE 모델(ISO 15504)

소프트웨어 프로세스 평가를 위한 프레임워크 제공

 

품질 관리

-개발의 각 단계에서 일어나는 모든 활동과 활동 중 생산되는 여러 산출물을 통제하고 보증하여 품질ㅇ르 관리

- 품질 통제+ 품질 보증

 

품질 통제: 프로세스를 정의하고 규정을 만드는 것

품질 보증: 개발 단계 전역에 걸쳐 품질이 영향에 미치는 문제점을 조기ㅔㅇ 발견하여 제거. 개발된 소프트웨어 품질이 목표한 수준에 있다는 것을 보증.

 

 

728x90
반응형

'2023-2 > 소프트웨어 공학' 카테고리의 다른 글

8. 유지보수  (1) 2023.12.18
7. testing  (1) 2023.12.18
6. Implementation  (0) 2023.12.17
5. 설계  (0) 2023.12.17
4. 요구 사항 분석  (0) 2023.12.17

댓글