기본 콘텐츠로 건너뛰기

글

라벨이 Quality인 게시물 표시

오류 부재의 궤변 - 좋은 품질의 제품을 만들려면..

여러분의 조직에서 품질은 어떻게 측정되고 있습니까? 품질이 좋은 것과 품질이 나쁜 것의 기준점은 무엇입니까? 고객이 찾는 제품과 고객에게 잊혀져 버린 제품의 차이는 무엇입니까? 제품의 품질을 측정하는 기준은 정말 많습니다. 대표적으로 ISO/OEC 9126 품질 메트릭을 생각해 볼 수 있습니다. 그리고 많은 조직에서 가장 많이 사용되는 품질 측정 지표 중 하나가 결함입니다. 결함은 제품의 신뢰성과 직결되는 가장 중요한 지표 중 하나입니다. 그만큼 테스트 활동 역시 중요합니다.(하지만 정말 중요하게 취급되는지는 잘 모르겠습니다.) 우리는 일반적으로 결함이 적은 제품은 품질이 좋다고 얘기합니다. 하지만 이것이 언제나 성립되는 진실일까요? 많은 사람들이 좋은 제품은 결함이 없어야 한다고 얘기하고, 테스트가 끝나고 나면 테스트 팀에 결함이 없느냐고 물어봅니다. 하지만, 진실은 결함이 없는 제품은 하나님이 만들지 않는 이상 절대 나올 수 없을 것입니다. 아니 어쩌면 하나님이 만드셔도 결함은 있을 것입니다. 인간은 완전 결함 투성이의 실패작처럼 보이니까요... 즉, 우리가 좋은 제품이라고 찬양하는 포토샵, 아이폰, 엑셀 등 많은 제품들은 모두 결함을 가지고 있습니다. 여러분은 포토샵이나 아이폰, 엑셀 등을 사용하면서 단 한번도 결함이 발생하는 것을 경험해 본적이 없으십니까? 내가 정말로 필요한 기능인데 왜 이런 기능은 없을까라고 고민해 보신적이 정말 단 한번도 없으신가요? 즉, 결함은 분명 품질을 측정하는 가장 중요한 지표 중 하나이지만 이것이 전부는 아닙니다. 정작 중요한 것은 사용자가 원할 때 정상적으로 동작하고 제품이 사용자에게 얼마나 쓸모있고 반드시 필요한 제품인가입니다. 하지만 우리가 주변에서 흔하게 접하는 품질 관리 프로세스들을 바라보면 대부분의 활동이 결함을 발견하고 결함을 제거하는 활동에 집중하고 있습니다. 많은 품질 관리 프로세스들이 무조건적으로 결함에만 집중하는 모습을 볼 수 있습니다. 그 정점에 있는 프로세스 중 가장 대표적인 것이 6시그마와 ZD를 ...

품질관리 기법의 발전에서 돌아보는 지금 우리에게 필요한 것은 무엇일까?

솔직히 나는 대학교에서 품질공학과 관련된 강의를 들어본적도 없다. 어쩌다 보니 테스트를 시작했고 테스트를 하다 보니 욕심이 생겼고 필요에 의해 띄엄 띄엄 품질에 대한 자료를 찾아가며 공부를 하고 있다. 그러다 보니 품질이라는 것에 대해 내가 오해하고 있는 부분이 있을 수도 있고 품질공학을 전공한 사람의 입장에서 본다면 잘못된 내용이 있을 수도 있다. 아래 내용은 다분히 내 개인적인 의견이고, 이 의견에 대한 조언은 댓글이나 트랙백으로 주시면 대단히 고맙겠습니다. 품질관리 기법은 굉장히 많은 기법이 알려져 있습니다. 이러한 품질관리 기법들을 연대순으로 주요한 기법들만 나열해 본다면 아래와 같은 기법들을 제시해 볼 수 있습니다. 1. 1798년 휘트니의 표준화 - 호환성의 원리 2. 1924년 벨연구소의 통계적 품질 관리(SQC) 3. 1960년 GE 사 파이겐바움의 TQC 4. 1962년 이시가와의 품질관리 분임조 5. 1962년 마틴 사의 ZD 운동 6. 1969년 일본전장 사의 TPM 7. 1972년 디즈니 사의 고객만족 8. 1987년 모토롤라 사의 6시그마 이전에도 얘기한 적 있지만 이러한 수많은 기법들 중 어떤 기법을 선택할 것인가 또는 어떤 순서로 도입할 것인가 하는 문제의 해답을 얻기 위해서는 이러한 기법들의 본질에 대한 이해가 선결되어야 합니다. 그리고 그러한 본질에 대한 이해를 위해서는 해당 기법들이 탄생하게 된 배경을 이해하는 것이 꼭 필요합니다. 왜냐하면 우리가 어떤 특정한 기법들을 도입하기 위해서는 그러한 기법이 탄생하기 이전에 그러한 기법들을 도입했던 선진 기업들의 시행착오를 꼭 한번씩은 거쳐야 하기 때문입니다. 그들이 실패했던 경험을 거치지 않는다면 최신 기법에 대한 배경과 본질에 대해 심도있게 이해할 수 없기 때문입니다. 최근에 대기업부터 일반 중소기업까지 수많은 사람들과 이야기를 해보면 국내에서는 대기업과 일반 중소기업의 기술, 경영 등 전반에 걸친 격차가 매우 크다는 것을 새삼 느끼게 됩니다. 그런데 일반 중소기업들은 성과 위주로 ...

정성적방법과 정량적방법

우리가 어떤 대상을 측정하고 분석하는데는 크게 두가지 방법이 있습니다. 하나는 정성적방법이고 다른 하나는 정량적방법 입니다. 별다른 설명을 하지 않아도 많은 사람들이 이 두 방법의 차이를 알고 있을 것입니다. 이 두 방법 중 우리는 많은 경우 정량적방법을 더 선호하는 편입니다. 왜 우리는 정량적방법을 더 선호하는 것일까요? 여러가지 이유를 생각할 수 있겠지만 아무래도 정보와 숫자가 전해주는 명확성과 신뢰성 때문이 아닐까 생각됩니다. 그런데 문제는 정량적방법이 어려운 경우에도 무모하게 정량적방법을 감행하는 경우 또는 정성적방법을 통해 측정하고 분석할 대상을 정량적방법으로 표현할 때 여러가지 문제가 발생합니다. 가장 대표적인 예가 바로 품질입니다. 이전에도 얘기한 적이 있지만, 하드웨어의 품질을 측정할 때는 정량적방법이 가능합니다. 품질을 정량적방법으로 측정하고 분석한 역사는 매우 오래되었으며, 수많은 검증을 통해 입증된 방법입니다. 그리고 이 방법은 소프트웨어를 측정할 때도 사용됩니다. 하지만 정량적방법으로 소프트웨어의 품질을 측정할 때 우리는 아주 커다란 오해를 하게 됩니다. 예를 들어 오픈 오피스와 MS 오피스 그리고 한컴 오피스 3개의 제품에 제가 각각 10점 만점에 9점, 5점, 3점을 부여했다고 가정해 봅시다. 이러한 점수를 부여하기 위해서 전 나름대로 많은 기준과 가이드를 작성했을 것입니다. 그리고 면밀하게 분석하고 측정해서 점수를 주었을 것입니다. 아무도 이러한 방식에 대해 의문을 제기하지 않습니다. 특히 이러한 점수를 부여한 기관이 신뢰할 수 있는 기관(예를 들면, 인증기관)이라면 더 그렇습니다. 그런데, 조금 다르게 생각해 본다면 9점을 받은 오픈 오피스는 3점을 받은 한컴 오피스보다 품질이 정말 3배 더 높은 것일까요? 많은 사람들은 무의식적으로 그렇게 받아들입니다. 그런데 실제로 오픈 오피스가 한컴 오피스보다 3배나 높은 품질을 지니고 있다는 기준이나 증거를 요구하는 경우 많은 사람들의 반응은 실제로는 그렇게 여기지 않는 다는 것입니다. 즉,...

QA 부서는 필요한 것인가?

많은 프로젝트 관리 방법론과 조직론에서 항상 얘기하는 것이 QA 부서를 독립적으로 두는것에 대해 강조하는 편이다. 테스트 역시 테스트 조직을 별도로 두는 것에 대해 강조하는 편이다. 이러한 QA 부서 또는 테스트만을 전담하는 조직이 꼭 별도로 존재해야 하는 것일까? 테스트의 경우에는 개발자와 다른 시각을 가진 사람들의 테스트의 필요성을 강조하기 위해서 테스트 조직을 별도로 두는 것을 강조하는 편이다. 만약 테스터가 개발이나 영업, 운영과 같은 조직의 하부 조직이 되다 보면 정치적인 독립성에 따라 자신만의 독립적인 시각이나 의견을 피력하기 힘든 점이 있기 때문이다. QA 부서는 어떨까? 여기서 먼저 생각해 볼 것이 있다. 그것은 QA 부서가 과연 무슨 일을 하는 부서인가? 하는 문제이다. 여러분의 회사에서 QA 부서는 과연 어떤 일을 하는가? 여러분은 QA 부서에 대해 얼마나 호감을 가지고 있는가? 펼쳐두기.. 회사마다 회사의 정책이나 전략에 따라 QA 부서의 역할은 매우 판이하다. 그리고 그 역할에 따라 회사 내에 QA 부서의 호감도도 매우 달라지는 편이다. 만약 여러분이 QA 부서에 대한 호감도가 낮다면 아래와 같은 문제가 있는 것은 아닌지 한번 고민해 보시고 댓글이나 트랙백등으로 의견을 주셨으면 하는 바람이다. 먼저 일반적으로 QA 부서가 하는 일은 제품의 품질을 측정하고 제품의 품질을 향상시킬 수 있는 모든 활동을 계획하고 제어하는 일을 한다. 그런데 문제는 소프트웨어의 품질이 문제가 된다. 먼저 공장과 같은 하드웨어를 제조하는 회사의 경우에는 품질 부서가 독립적으로 존재한다. 이 품질 부서에서 제품의 품질을 측정하고 제품의 품질을 개선하기 위해 집중하는 곳은 하드웨어 그 자체이다. 하드웨어는 각각의 부붐의 품질이 100인 제품이 모여서 하나의 제품을 구성하게 되었을 때 그 제품의 품질은 역시 100이다. 이것은 매우 명확한 사실이다. 소프트웨어를 만드는 회사의 조직과 관리 방법 역시 이러한 하드웨어를 만드는 회사의 조직과 관리 방법을 ...

결함발생율과 리스크 기반 테스팅의 숨겨진 가정

효과적인 테스팅과 효율적인 테스팅의 트레이드 오프의 결과로 최근에 가장 추천되는 테스팅 수행 전략과 접근법은 리스크 기반 테스팅이다. 리스크 기반 테스팅은 간단히 말한다면 리스크가 높은 영역은 동원할 수 있는 모든 리소스를 투입하여 완성도 높게 테스트 하고 리스크가 낮은 영역은 그에 맞는 리소스를 투입하자는 것이다. 이 리스크 기반 테스팅을 소개할 때 가장 많이 드는 예제 중 하나가 원자력 발전, 우주항공산업, 의료산업 등에 사용되는 소프트웨어들이다. 이러한 산업들에 사용되는 소프트웨어들의 공통점은 결함에 의한 장애가 발생할 경우 인간의 생명과 직결되는 경우가 많고 비용적인 손해가 막대하다는 점이다. 즉, 리스크가 매우 높다는 것이다. 이러한 소프트웨어에 요구되는 여러 특성 중 하나가 바로 결함발생율이다. 위의 산업 분야에서 사용되는 소프트웨어들은 실제 운용되는 환경에서 결함이 발생할 확률은 말 그대로 0에 가까워야만 한다. 지금까지 이야기는 그 자체로 그다지 문제가 없어 보이는 아주 당연한 이야기이다. 하지만 위의 예제에서 우리가 한가지 잊고 있는 가정이 하나 있다. 그것이 과연 무엇일까? 아마 많은 분들이 쉽게 알아낼 수 있을 것이라고 생각되지만, 혹시 확~~ 생각나지 않으신다면 잠시 곰곰히 생각해 보시기 바란다. 펼쳐두기.. 위의 예제에서 우리가 잊고 있는 가정은 바로 변동성, 그 변동성의 근본이 되는 사용자이다. 잘 생각해 보자. 원자력 발전, 우주항공산업, 의료 산업등에 사용되는 소프트웨어는 그 사용자가 매우 제한되어 있다. 이 사용자들의 행동 패턴은 충분히 통제 가능한 수준이다. 필요한 경우에는 정해진 행동만을 할 수 있도록 사용자를 교육하기도 한다. 위의 소프트웨어들은 개발 초기부터 발생할 수 있는 모든 상황과 사용 가능한 모든 경우를 한정하고 통제 가능한 상황아래 가정을 세우고 개발을 한다. 때문에 위의 소프트웨어들을 개발할 때는 폭포수 개발 모델이 유용할 수도 있다. 그리고 위와 같이 변동성을 통제할 수 있다면 결함의 발생...

품질이란 무엇일까요?

품질이란 무엇일까요? 위에서는 사장님부터 아래로는 사원들까지 밖에서도 안에서도 언제나 메아리 치는 소리.. 품질... 하지만 품질이 무엇인지 정확히 말할 수 있는 사람은 많지 않습니다. 어떤 사람은 ISO 25000 표준을 얘기하는 사람도 있고, 어떤 사람은 사용성 같은 것을 이야기 하기도 합니다. 왜 그런걸까요? 여러분은 사랑을 정의 내릴 수 있나요? 가치관이나 부성애 같은 것은 어떠신가요? 꿈은 어떻습니까? 품질도 위와 같은 개념과 매우 비슷합니다. 품질을 정의하기 위한 노력을 지금 그만두는 것이 자원을 절약하는 지름길입니다. 왜냐하면 품질이란 매우 상대적인 가치관에 가깝기 때문입니다. 때문에 여러분 회사 제품의 품질이 낮다고 여겨진다면 고객의 불만이 크다고 생각된다면 대부분의 원인은 대화 부족인 경우가 많습니다. 소프트웨어 개발과 관련된 수많은 사람들 고객을 포함해서 개발자, 테스터, 기획, 그래픽, 경영진 등 많은 이해관계자들의 품질에 대한 가치과 우선순위가 틀리기 때문입니다. 서로 대화를 하지 않으면서 서로 다른 꿈을 꾸게 된다면 그 목적지는 전혀 다르게 됩니다. 개발팀에서는 기능의 풍부함을 품질로 보고 테스터는 기능의 정확성을 품질로 보고 경영진은 돈을 많이 벌어다 줄 제품을 품질로 보고 고객은 사용이 편한 제품을 품질로 여긴다고 가정할 때 각각의 이해 관계자의 의사소통이 없이 제품의 개발이 달려가게 된다면 그 끝은 자명한 일입니다. 품질의 정의와 가치에 대한 얘기는 탁상공론일 뿐입니다. ISTQB에서는 이러한 개념을 '오류-부재의 궤변'으로 설명합니다. 품질은 매우 중요합니다. 하지만 무엇을 품질의 가치로 삼을 것이고 그 가치의 기준을 제공할 당사자가 누구인지에 대해 명확하게 정의할 필요가 있습니다. 그런 선행과정이 있어야 품질이 무엇이고 품질을 어떻게 측정할 것인지에 대한 논의를 시작할 수 있을 것입니다. 세상에는 결함은 별로 없지만 잘 팔리지 않는 제품이 있는가 하면 끊임없이 결함이 생겨나고 문제가 있다고 해도 불티나게 팔리는 아...