최근 소프트웨어 산업계에서는 소프트웨어의 품질향상을 위해 다양한 품질보증활동을 수행하고 있다. 이 활동들의 궁극적인 목적은 개발 소프트웨어의 결함을 줄이기 위한 것이다. 국내 S사는 "결함 있는 제품은 고객에게 납품하지 않는다"는 모토를 내걸고 이의 실천운동으로 1999년 3월에 "ZERO DEFECT 21" 운동을 시작하였다. 본 논문에서는 "ZERO DEFECT 21" 운동의 활동방법 및 활동성과에 대해 소개하였다. "ZERO DEFECT 21" 운동은 사내감리 및 소프트웨어 제품검사로 수행되었다. 그 결과, 사내감리를 통해서 22건의 고객 클레임을 예방할 수 있었으며, 설계산출물의 품질을 11.7% 개선시킬 수 있었다. 또한, 산출물 재사용 측면에서는 23.3%가 개선되었다. 개발 및 테스트 단계에서의 주기적인 샘플링 검사 및 종료단계에서의 제품 출하검사로 이루어진 소프트웨어 제품검사를 통해서는 결함률을 개발 및 테스트단계에서 123%, 종료단계 에서는 무려 247%의 개선 효과를 거두었다. 사내설문조사에 의하면 "ZERO DEFECT 21" 운동을 통해서 프로젝트팀은 품질에 대한 자신감을 갖게 되었고, 그 결과 국내 S사에 대한 고객의 신뢰도도 상당히 개선되었던 것으로 조사되었다. 되었고, 그 결과 국내 S사에 대한 고객의 신뢰도도 상당히 개선되었던 것으로 조사되었다.
최근 소프트웨어 산업계에서는 소프트웨어의 품질향상을 위해 다양한 품질보증활동을 수행하고 있다. 이 활동들의 궁극적인 목적은 개발 소프트웨어의 결함을 줄이기 위한 것이다. 국내 S사는 "결함 있는 제품은 고객에게 납품하지 않는다"는 모토를 내걸고 이의 실천운동으로 1999년 3월에 "ZERO DEFECT 21" 운동을 시작하였다. 본 논문에서는 "ZERO DEFECT 21" 운동의 활동방법 및 활동성과에 대해 소개하였다. "ZERO DEFECT 21" 운동은 사내감리 및 소프트웨어 제품검사로 수행되었다. 그 결과, 사내감리를 통해서 22건의 고객 클레임을 예방할 수 있었으며, 설계산출물의 품질을 11.7% 개선시킬 수 있었다. 또한, 산출물 재사용 측면에서는 23.3%가 개선되었다. 개발 및 테스트 단계에서의 주기적인 샘플링 검사 및 종료단계에서의 제품 출하검사로 이루어진 소프트웨어 제품검사를 통해서는 결함률을 개발 및 테스트단계에서 123%, 종료단계 에서는 무려 247%의 개선 효과를 거두었다. 사내설문조사에 의하면 "ZERO DEFECT 21" 운동을 통해서 프로젝트팀은 품질에 대한 자신감을 갖게 되었고, 그 결과 국내 S사에 대한 고객의 신뢰도도 상당히 개선되었던 것으로 조사되었다. 되었고, 그 결과 국내 S사에 대한 고객의 신뢰도도 상당히 개선되었던 것으로 조사되었다.
Recently various quality assurance activities have been applied in software industry for the purpose of software qualify improvement, and the ultimate target of those activities are focused on removing defects from its developed applications. We declared "ZERO DEFECT 21" movement on March 1999 whose...
Recently various quality assurance activities have been applied in software industry for the purpose of software qualify improvement, and the ultimate target of those activities are focused on removing defects from its developed applications. We declared "ZERO DEFECT 21" movement on March 1999 whose purpose is to deliver defect-free applications to the customer. In this paper we would like to introduce the followings $\circled1$ Approaching Methods, $\circled2$ Achievements of "ZERO DEFECT 21". After accomplishing first you of "ZERO DEFECT 21" movement which consist of Audits and Software inspections, we could get the following improvement . $\circled1$ due to conducting the "Audits," we could prevent 22 cases of customer claims, enhance 11.7% of design quality and improve 23.3% of deliverable reusability : $\circled2$ also, due to conducting the "Periodic Sampling inspection and Final inspection," we could enhance 123% of defect rate compared with early stage of development and 247% of defect rate compared with previous yew. Based on the survey results, we could conclude that "ZERO DEFECT 21 " movement provides confidence to project team members and reliability to our customers.ce to project team members and reliability to our customers.
Recently various quality assurance activities have been applied in software industry for the purpose of software qualify improvement, and the ultimate target of those activities are focused on removing defects from its developed applications. We declared "ZERO DEFECT 21" movement on March 1999 whose purpose is to deliver defect-free applications to the customer. In this paper we would like to introduce the followings $\circled1$ Approaching Methods, $\circled2$ Achievements of "ZERO DEFECT 21". After accomplishing first you of "ZERO DEFECT 21" movement which consist of Audits and Software inspections, we could get the following improvement . $\circled1$ due to conducting the "Audits," we could prevent 22 cases of customer claims, enhance 11.7% of design quality and improve 23.3% of deliverable reusability : $\circled2$ also, due to conducting the "Periodic Sampling inspection and Final inspection," we could enhance 123% of defect rate compared with early stage of development and 247% of defect rate compared with previous yew. Based on the survey results, we could conclude that "ZERO DEFECT 21 " movement provides confidence to project team members and reliability to our customers.ce to project team members and reliability to our customers.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
소개하였다. 또한, 향후 소프트웨어 관련 사업을 하는 업체는 본 논문에서 소개한 “ZERO DEFECT 21” 운동의 활동방법을 활용하면 제품 품질향상에 기여할 수 있을 것이라는 생각에서 같이 공유하고자 하였다.
본 논문에서는 “ZERO DEFECT 21” 운동의 활동방법 및 활동성과에 대해 소개하였다.
본 논문은 국내 S사에서 실시한 “ZERO DEFECT 21” 운동의 활동방법 및 그 결과를 소개하였고, 조직원들을 대상으로 실시한 이 운동에 대한 의식조사 결과도 소개하였다. 또한, 향후 소프트웨어 관련 사업을 하는 업체는 본 논문에서 소개한 “ZERO DEFECT 21” 운동의 활동방법을 활용하면 제품 품질향상에 기여할 수 있을 것이라는 생각에서 같이 공유하고자 하였다.
제안 방법
결함항목은 블랙박스 테스트시 발견될 수 있는 결함 중심으로 도출하였으며 일부 화이트박스 테스트 결함 항목도 검사시 발견된 내용은 결함분류에 포함 시켰다. 출하검사시 발견된 결함을 결함유형과 결함항목으로 정리하면<표 6>과 같다.
이 때문에 고객이 요구하는 품질수준의 달성은 점점 어려워졌을 뿐만 아니라, 개발시스템에 대한 고객 불만족 사례가 많이 발생하고 있다. 국내 S사에서도 위 문제를 해결하기 위해 1998년에 국내 S 사에서 수행 중인 프로젝트에 대한 실태조사를 실시하였다. 그 결과 결함이 충분히 제거되지 않은 상태로 제품을 출하해 놓고, 납품 후 하자보수를 통해 결함을 해결하다 보니 고객의 클레임이 많이 발생하고 있다는 사실을 알게 되었다.
검사이다. 그 결과 회사의 품질기준에 부합되지 않으면 고객에게 납품을 유보하고 재검사를 실시한다. 제품 출하검사 설계는 다음과 같이 실시한다.
당사의 감리보고서 양식은과 같이 정보시스템 감리기준 참조 모델[기을 기초로 개발하였다.
발견된 결함은 10개 결함유형과 34개의 결함항목으로 분류하였다. 결함항목은 블랙박스 테스트시 발견될 수 있는 결함 중심으로 도출하였으며 일부 화이트박스 테스트 결함 항목도 검사시 발견된 내용은 결함분류에 포함 시켰다.
출하검사시 발견된 결함을 결함유형과 결함항목으로 정리하면<표 6>과 같다. 발견된 결함은 개발이 완료되지 않은 경우 발생할 수 있는 기능 미작동 항목, 기능상의 오류 항목에서 일반적인 프로세스를 구성하는 입력, 조회, 출력, 삭제 등과 같은 결함항목, 메시지, Link, 인터페이스 등과 같이 어플리케이션의 마무리 부족에서 발생하는 항목과 시스템다운 등과 같은 시스템적인 측면에서의 결함으로 분류되었다. 결함유형에 대한 특성요인도로 분석한 결과 조회, 입력 오류, 기능, 메시지, 출력 오류 등이 전체의 80% 이상이 되었다.
본 절에서는 출하검사시 발견된 전체 결함을 분석하였으며, 또한 개발환경(Web과 C/S)의 관점에서 결함을 세부적으로 분석하였다.
성능/효과
"ZERO DEFECT 21" 운동을 펼친 결과 운동 이전과 비교하여 납품시 결함률이 247% 개선되었고, 개발 및 테스트 단계에서도 123%의 결함률 개선 효과를 거두었다. 또한, 국내 S사에서 개발하는 시스템 중 부분적으로 납품하는 프로젝트에 대해서는 품질관리가 미흡하였는데 주기적인 검사를 실시하게 됨으로써 최소한의 품질관리를 할 수 있게 되었다.
4배나 증가하였다. 그 대표적인 사례로써 "A” 프로젝트에서는 개발 및 테스트단계에서 결함 도출을 위해 각별한 노력을 기울인 결과, 프로젝트를 계획보다 2개월이나 앞당겨 종료하는 성과를 달성하였다.
43개의 세부 감리 체크리스트별 점수를 비교해본 결과 사내감리를 통해 산출물 품질이 전체적으로 11.7% 정도 개선되었던 것으로 나타났다. 이를 감리영역별로 보면, 응용시스템/테스트 분야가 11.
③ 또한, 설문 조사결과 감리활동을 통해 산출물의 품질이 많이 개선되어 타 프로젝트에서 산출물을 재사용하는 비율이 그림 5)와 같이 23.3% 증가되었음을 알 수 있었다.
발견된 결함은 개발이 완료되지 않은 경우 발생할 수 있는 기능 미작동 항목, 기능상의 오류 항목에서 일반적인 프로세스를 구성하는 입력, 조회, 출력, 삭제 등과 같은 결함항목, 메시지, Link, 인터페이스 등과 같이 어플리케이션의 마무리 부족에서 발생하는 항목과 시스템다운 등과 같은 시스템적인 측면에서의 결함으로 분류되었다. 결함유형에 대한 특성요인도로 분석한 결과 조회, 입력 오류, 기능, 메시지, 출력 오류 등이 전체의 80% 이상이 되었다. 이 결과는 테스트 단계에서 단순 결함에 대해 그만큼 관심을 적게 기울이기 때문인 것으로 분석되었다((그림 7) 참조).
다양한 품질보증활동을 수행해 오고 있다. 그 결과 SI (System Integration) 업계 최초로 ISO 9001 인증을 획득하였고, 자체 개발방법론인 INNOVATOR를 구축하였다. 그러나, 국내 S사에서는 지금까지 품질보증활동을 추진하는데 있어 프로젝트 수행 중 발생하는 문제 중심의 품질 활동에 중점을 두었지, 개발 시스템 자체에 대한 제품 품질보증 활동의 노력은 부족하였다.
국내 S사에서도 위 문제를 해결하기 위해 1998년에 국내 S 사에서 수행 중인 프로젝트에 대한 실태조사를 실시하였다. 그 결과 결함이 충분히 제거되지 않은 상태로 제품을 출하해 놓고, 납품 후 하자보수를 통해 결함을 해결하다 보니 고객의 클레임이 많이 발생하고 있다는 사실을 알게 되었다. 출하시 결함률이 높은 원인을 분석해 본 결과, (그림 1) 과같이 프로젝트 요원들의 품질에 대한 의식부족과 불완전한 분석/설계, 프로젝트 관리의 소홀과 테스트 미흡 등이 주요 원인으로 나타났다.
또한, 국내 S사에서 개발하는 시스템 중 부분적으로 납품하는 프로젝트에 대해서는 품질관리가 미흡하였는데 주기적인 검사를 실시하게 됨으로써 최소한의 품질관리를 할 수 있게 되었다. 또한 프로젝트 개발자들이 좀 더 적극적으로 테스트를 실시함에 따라 운동 전에 비해 결함 도출 건수가 2.4배나 증가하였다. 그 대표적인 사례로써 "A” 프로젝트에서는 개발 및 테스트단계에서 결함 도출을 위해 각별한 노력을 기울인 결과, 프로젝트를 계획보다 2개월이나 앞당겨 종료하는 성과를 달성하였다.
123%의 결함률 개선 효과를 거두었다. 또한, 국내 S사에서 개발하는 시스템 중 부분적으로 납품하는 프로젝트에 대해서는 품질관리가 미흡하였는데 주기적인 검사를 실시하게 됨으로써 최소한의 품질관리를 할 수 있게 되었다. 또한 프로젝트 개발자들이 좀 더 적극적으로 테스트를 실시함에 따라 운동 전에 비해 결함 도출 건수가 2.
7% 개선시킬 수 있었다. 또한, 산출물 재사용 측면에서는 23.3%가 개선되었다. 주기적인 소프트웨어 샘플링검사 및 제품 출하검사를 수행한 결과 개발 및 테스트단계에서는 123%, 종료 단계에서는 247%의 결함률이 개선되었다.
주기적인 소프트웨어 샘플링검사 및 제품 출하검사를 수행한 결과 개발 및 테스트단계에서는 123%, 종료 단계에서는 247%의 결함률이 개선되었다. 또한, 제품 출하검사에서 발견된 결함유형을 분석해 보면 80%의 결함이 조회, 입력, 기능, 메시지, 출력항목에서 발생하였다. 이 결과는 추후 프로젝트의 테스트 설계시 좋은 가이드가 될 수 있을 것이다.
분석해 본 결과는 다음과 같다. 먼저 감리영역별 지적율은 프로젝트 관리 및 품질보증 분야가 44%, 데이터베이스 분야가 16%, 테스트 분야가 12% 순으로 나타났다((그림 4) 참조). 이를 상세 지적사항별로 보면, 프로젝트 수행범위의 불명확성, 고객 요구사항 관리의 미흡, 데이터베이스의 정규화 미흡, 테스트 시나리오 작성 미흡, 프로그램 사양서 작성 미흡, 보안 설계 미흡 등이 주로 지적되었다.
사내감리를 수행한 결과 국내 S사에서는 22건의 고객 클레임을 예방할 수 있었으며, 설계산출물의 품질을 11.7% 개선시킬 수 있었다. 또한, 산출물 재사용 측면에서는 23.
사내감리를 통해 22건의 고객불만을 조기에 발견하여 예방함으로써 고객의 클레임을 방지할 수 있었고, 나아가서 국내 S사에 대한 고객의 신뢰도를 제고할 수 있었다. 22건의 고객불만을 위험도 분류기준으로 보면 다음과 같飯다.
사내감리에 대한 설문조사결과 프로젝트관리자는 고객 신뢰도의 개선 및 위험관리의 개선(33%)에 효과가 있었다고 응답하였고, 고객은 고객신뢰도(60%)가 많이 향상되었다고 응답하였다. 그러나 고객은 프로젝트 관리 및 위험관리의 향상에는 별로 기여를 하지 않았다고 응답하였다((그림 10) 참조).
설문조사 결과에 의하면 “ZERO DEFECT 21” 운동은 프로젝트 관리자에게는 자신감을 고객에게는 신뢰 감을 주었다고 조사되었다.
7% 정도 개선되었던 것으로 나타났다. 이를 감리영역별로 보면, 응용시스템/테스트 분야가 11.3%, 고객 요구사항 분야가 10.5%, 시스템 아키텍쳐 및 보안 분야가 12.%, 데이터베이스 분야가 12.3% 등 전반적으로 10% 이상의 높은 개선효과가 있었던 것으로 분석되었다.
먼저 감리영역별 지적율은 프로젝트 관리 및 품질보증 분야가 44%, 데이터베이스 분야가 16%, 테스트 분야가 12% 순으로 나타났다((그림 4) 참조). 이를 상세 지적사항별로 보면, 프로젝트 수행범위의 불명확성, 고객 요구사항 관리의 미흡, 데이터베이스의 정규화 미흡, 테스트 시나리오 작성 미흡, 프로그램 사양서 작성 미흡, 보안 설계 미흡 등이 주로 지적되었다.
조치 현황을 (그림 3)과 같이 관리한다. 이를 활용한 결과 프로젝트의 결함을 가시적으로 관리할 수 있었으며 잔존결함을 제거하기가 매우 용이하였다. 즉, 매주 결함을 추적 관리함으로써 검사팀은 개발자들이 충실히 테스트를 수행하고 있는지 관리할 수 있었으며, 이것을 통해 제품 출하검사시 합격률을 높일 수 있었다.
제품검사에 대한 설문조사 결과 프로젝트 관리자의 50% 이상이 테스트관행 개선, 품질수준 개선, 위험관리가 많이 향상되었다고 응답하였다. 주목할 점은 프로젝트 관리자의 29% 만이 고객신뢰도의 향상에 기여하였다고 응답하였으나, 고객의 86%는 고객신뢰도 향상에 많이 기여했다고 응답하였다((그림 11) 참조).
3%가 개선되었다. 주기적인 소프트웨어 샘플링검사 및 제품 출하검사를 수행한 결과 개발 및 테스트단계에서는 123%, 종료 단계에서는 247%의 결함률이 개선되었다. 또한, 제품 출하검사에서 발견된 결함유형을 분석해 보면 80%의 결함이 조회, 입력, 기능, 메시지, 출력항목에서 발생하였다.
응답하였다. 주목할 점은 프로젝트 관리자의 29% 만이 고객신뢰도의 향상에 기여하였다고 응답하였으나, 고객의 86%는 고객신뢰도 향상에 많이 기여했다고 응답하였다((그림 11) 참조).
즉, 1차 제품출하검사에서 불합격된 45.2%의 프로젝트에 대한 재검사 결과 결함률을 187% 개선할 수 있었는데, 이를 프로젝트 규모별로 보면 1차 제품 출하검사시 성공율은 소규모 프로젝트 > 중규모 프로젝트>대형 프로젝트 순으로 나타났다. 그러나 결함률 개선효과 측면에서는 그 반대였다((그림 6) 참조).
이를 활용한 결과 프로젝트의 결함을 가시적으로 관리할 수 있었으며 잔존결함을 제거하기가 매우 용이하였다. 즉, 매주 결함을 추적 관리함으로써 검사팀은 개발자들이 충실히 테스트를 수행하고 있는지 관리할 수 있었으며, 이것을 통해 제품 출하검사시 합격률을 높일 수 있었다.
율은<표 7>과 같다. 즉, 조회반영 오류, 입 력 처 리 오류, 기능 비정상 처리, 잘못된 메시지, 출력 데이터 포맷 오류가 가장 많이 발견되었다.
출력오류 등에서 80% 이상의 결함이 발견되었으며, C/S 환경에서는 조회 오류, 입력 오류, 기능 오류 등은 Web 환경과 비교해서 일부 비율의 차이는 있으나 빈도수 측면에서는 비슷한 추이를 보이고 있으나 메시지처리 부분에서 결함이 상대적으로 많이 발견되었다. 위의 결함분석 결과는 향후 출하검사를 위한 검사 케이스를 설계시 또는 개발자가 테스트를 설계할 때 많이 활용될 수 있을 것으로 보인다.
후속연구
출력오류 등에서 80% 이상의 결함이 발견되었으며, C/S 환경에서는 조회 오류, 입력 오류, 기능 오류 등은 Web 환경과 비교해서 일부 비율의 차이는 있으나 빈도수 측면에서는 비슷한 추이를 보이고 있으나 메시지처리 부분에서 결함이 상대적으로 많이 발견되었다. 위의 결함분석 결과는 향후 출하검사를 위한 검사 케이스를 설계시 또는 개발자가 테스트를 설계할 때 많이 활용될 수 있을 것으로 보인다.
또한, 제품 출하검사에서 발견된 결함유형을 분석해 보면 80%의 결함이 조회, 입력, 기능, 메시지, 출력항목에서 발생하였다. 이 결과는 추후 프로젝트의 테스트 설계시 좋은 가이드가 될 수 있을 것이다.
참고문헌 (10)
Ayatomo Kanno, 'Software Engineering,' JUSE, 1979
Capability Maturity Model(CMM) for Software, v1.1, SEI, 1993
ISO/IEC 15504, Information Technology-Software Process Assessment, ISO/IEC JTCI/SC7,1998
ISO 9001, Quality systems-Model for quality assurance in design/development production,installation and servicing, 1994
Katsuyuki Yasud, 'Concepts and Practical Implementation of Software Quality Assurance Systematic Approaches toward the Open Information Age,' JUSE, 1995
Masahiro Shirakura, Kenji Kuwata, Shinji Hasegawa, 'Quality Assurance Methods for Application Software Products Using GUI Development,' 16th Symposium on Quality Control of Software Production, JUSE, 1996
정보시스템 감리기준, 정보통신부고시 제1999-104호. 1999
ISO 12207, Standard for Information Technology, Software Life Cycle Processes, 1996
※ AI-Helper는 부적절한 답변을 할 수 있습니다.