본문 바로가기
개발/소프트웨어 공학

품질관리와 프로세스 개선

by re-hwi 2022. 2. 5.

※ 재검토 필요

이 단원에서는 모르는 용어가 많이 나온다. 처음엔 그냥 대충 넘어갔었는데 하나도 이해가 되질않아서 하나하나 구글링을 해보니 이제야 조금은 이해가 가는것 같다.

 

용어를 찾아보는게 조금 귀찮더라도 나중에 단원을 끝냈을 때 이해가 되지않아 다시 보는것 보다 시간도 단축되고 이해도 훨씬 쉬워지는것 같다. 

 

이번 단원은 품질보증과 품질관리에 대해 다룬다. 하지만 소프트웨어의 품질을 결정하는것은 매우 주관적이다. 

 

그래서 품질을 결정하는 기준 혹은 품질을 보증해주는 단체 등 여러가지의 품질 보증방법이 있다. 


품질관리 

: 소프트웨어의 유용성을 얻기 위해 갖추어야하는 특성들의 집합

  1. 사용자의 입장에서 봐야함
  2. 공식기술검토회를 거쳐야함 ex) ISO

소프트웨어 품질 보증(SQA : Software Quality Assurance)

: 소프트웨어를 개발할 때 과학적인 관리 기법을 적용하여 사용자가 요구하는 품질의 제품을 체계적이며 경제적으로 달성하려는 활동들의 집합

 

소프트웨어의 품질을 보증하기 위한 작업

  • 소프트웨어 공정과정들에 적용될 수 있는 방법과 도구의 확립
  • 각 공정과정의 결과물에 대한 공식 기술 검토
  • 다단계시험 전략
  • 문서를 관리하는 절차에 변경이 발생했을 때 이를 적절히 통제할 수 있는 절차를 확립
  • 기록 유지와 보고
  • 개발 표준의 확립
  • 품질과 진행과정에 대한 측정이 필요

소프트웨어 품질

→ 사용자가 만족할 수 있는 품질의 소프트웨어를 가장 경제적으로 만드는 것

 

품질비용

: 제품이나 서비스의 품질과 관련하여 발생하는 비용

 

품질비용의 종류

① 예방비용 : 불량의 예방을 위하여 설계나 개발단계에서 지출되는 비용

② 평가비용 : 품질을 측정, 평가및 감시하는데 드는 비용

③ 실패비용 : 제품이 규격을 맞추지 못해 발생하는 비용

 

※ 분석, 설계 체계적인 방법론을 통해 실패비용을 줄인다 (적은 예방비용으로 큰 실패비용 절약)

 

소프트웨어 품질 요소 

: 소프트웨어의 유용성  및 사용목적을 달성하는데 필요한 성질

품질 관리 프로세스 

  1. 품질 계획 수립 : 프로젝트 및 소프트웨어에 대한 품질 요구사항을 식별하고 어떻게 만족시킬것인가 결정
  2. 품질 보증 수행 (QA) : 프로젝트 및 소프트웨어에 대한 품질 요구사항을 충족시키기 위해 계획된 품질 보증활동을 수행
  3. 품질 통제 (QC) : 품질 활동이 표준과 계획에 의해 준수되었는지 감시하고 성과를 평가하여 필요한 변경 권고안을 제시

품질 표준

→ 제품이나 서비스의 개발과정과 효과성을 독립적인 제 3자가 보증하는 인증 제도가 전세계적으로 받아들여짐

ex) KS마크

 

검토기법

→ 다음 단계로 넘어가기 전 결함을 수정하여 개발 비용 최소화하기 위함

 

비공식적

  • 회의 필수 참석 x 
  • 회의록 x
  • 격식 x

공식적

  • 회의 필수
  • 검토요약 보고서 제작
  • 행동 항목 리스트 제작
  • 사전준비 필요

소프트웨어 측정

 

소프트웨어의 척도

: 소프트웨어의 생산성, 품질, 사업의 특성 등 자료를 수치로 표현하는 것


소프트웨어 프로세스 개선 (SPI : Software Process Improvement)

 

  • 프로세스 측정 → 프로세스 분석/평가 → 프로세스 개선 (프로세스의 성숙도↑) → 프로세스 수행성능 ↑

 

품질과 생산에 영향을 주는 3가지 (3P)

  • 사람 (people)
  • 문제 (ploblem)
  • 프로세스 (process)

목적

→ 기존의 프로세스의 문제점을 찾아내고 제품의 품질을 향상시키며 비용과 일정을 단축시키기 위함

 

CMMI

 

  • CMM

: 소프트웨어를 위한 소프트웨어 개선 성숙도 모델

→ 프로세스들의 모범적인 실무 지침을 제시하고 기준을 제공

 

* 표준 프로세스 : 프로젝트를 수행하는데 꼭 필요한 설명서 혹은 가이드라인

 

  • CMMI

CMM모델의 확장. 하드웨어, 소프트웨어를 통합하여 제품과 서비스 개발에 적용가능하도록 만든 프로세스 개선 성숙도 모델

 

- 레벨 0부터 레발 5까지 6단계로 나눔 

- 각 레벨마다 만족시켜야하는 요구사항인 프로세스 영역(PA: Process Area)이 지정

- 4가지 카테고리/ 22개의 프로세스 영역으로 구성

 

4가지 카테고리 22가지 프로세스 영역
CMMI 단계

프로세스 영역 (PA) : 영역을 개선하기위해 만족시켜야하는 목표

SG(Specific Goals) : 특정 목표

 

SP(Specific Practices) : 특정 수행 지침 (목표를 이루기 위해 반드시 수행해야하는 활동)

① 결과물 : 대표적인 작업 산출물

② 실행 가이드라인 : 하부 지침

 

GG(Generic Goals) : 일반 목표

 

GP(Generic Practices) : 일반 수행 지침

CMMI모델 컴포넌트

* 특정목표(SG)와 일반목표(GG)구분법 : 시험 성적을 올림(GG), 국어 성적을 올림(SG)

 

CMMI 평가방법 

(1) 능력모델

- 프로세스의 성숙도 수준이 서로 다름

- 특정 프로세스 영역의 개선이 요구되는 경우 유연하게 접근 가능

- 영역별로 조직의 성숙도 평가가 가능

연속적 능력 모델

 

(2)성숙도모델

- 각 레벨에서 요구되는 모든 PA의 성숙도가 만족되면 다음 단계의 성숙도로 넘어감

- 단계적 표현방법

- 대부분의 기업이 선택

- 조직간의 수준비교 가능

단계적 성숙도 모델

ISO 9001

: ISO에서 제정한 품질 경영 시스템에 관한 국제 규격중 고객에게 제공되는 제품, 서비스 체계가 규정된 요구사항을 만족하고 지속적으로 유지, 관리되고 있음을 인증해주는 제도

 

국제표준화기구(ISO : International Organization for Standardization)
- 국제 표준을 개발하고 발행하는 세계적인 연합체

- 비정부기구이며 국제 표준을 개발하고 통일하는 세계에서 가장 큰 단체

 

품질경영

: 품질을 위해 조직을 지휘하고 관리하는 활동

1. 품질 계획

2. 품질 관리

3. 품질 보증

4. 품질 개선

 

국제표준화기구의 목적

→ 공급자는 업무의 복잡성을 피하고 시간이나 경비 절약 효과를 얻을 수 있음

→ 구매자는 객관적인 신뢰감을 얻을 수 있음

 

ISO인증 준비과정

1. 진단

2. 추진

3. 품질 경영시스템 개발

4. 품질 시스템 실행

5. 최종점검 및 심사

 

SPICE 모델

 

: ISO에서 지정한 소프트웨어 프로세스 심사표준이자 인증규격

- CMMI, ISO 9001 의 장점을 수용하고 총합한 평가모델

 

SPICE모델의 5가지 범주

  • 고객-공급자 프로세스
  • 엔지니어링 프로세스
  • 지원 프로세스
  • 관리 프로세스
  • 조직 프로세스 

반응형

'개발 > 소프트웨어 공학' 카테고리의 다른 글

프로젝트 범위, 원가, 일정 관리  (0) 2022.02.10
소프트웨어 형상 관리  (0) 2022.02.07
유지보수  (0) 2022.02.03
소프트웨어 테스트  (0) 2022.01.25
프로그래밍과 코드 검사  (1) 2022.01.24

댓글