테스트의 고수는 어떤 사람일까?
어떤 사람이 테스트를 잘 하는 사람일까?
기업은 어떤 사람을 테스터로 고용해야하는걸까?
뛰어난 테스터가 되기 위해서는 무엇을 알아야하는걸까?
위와 유사한 질문은 테스터로 시작하는 사람부터 테스터를 고용하는 사람들까지 많은 사람들이 공통적으로 가지고 있는 의문들입니다.
이와 관련한 많은 조언들이 있지만 나름 제 개인적인 의견을 적어볼까 합니다.
제 생각에
가장 하수의 테스터는 주어진대로 테스트를 하는 수동적 테스터입니다.
명세에 적혀 있는 내용만 확인하는 테스터, 제품이 정상 동작하는지에만 관심을 두고 집중하는 테스터입니다.
일반적으로 테스트를 이제 막 시작하시는 분들이 이런 테스트에 주력하고 테스트를 잘 모르는 개발 이해관계자들이 주력하는 테스트 유형입니다.
이보다 조금 더 높은 단계가 되면 실패하는 경우, 리스크를 고려하기 시작합니다.
제품이 실패할 수 있는 정황, 사용자의 실수 등을 고려하여 테스트를 하는 수준입니다.
그리고 이쯤 되면 많은 테스터들이 딜레마에 빠집니다.
얼마나 많은 경우를 고려해야하는 걸까? 이러한 테스트는 필요한 것일까? 환경? 예산? 사용자는 정말 이렇게 사용할까? 등등
이 수준이 되면 테스트를 완벽하게 하기 어렵다는 것을 깨닫고 많은 테스터들이 자포자기 심정으로 빠져들기도 합니다.
이보다 조금 더 높은 단계가 되면 전체적인 관점에서 제품을 바라보기 시작합니다.
예를 들면, 최고의 미녀를 만들기 위해서
얼굴형은 카라 구하라, 눈은 포미닛 현아, 코는 배우 이민정, 입술은 배우 윤은혜를 합쳐서 성형수술을 한다고 해봅시다.
가장 낮은 수준의 테스터는 얼굴형은 구하라처럼 되었는지, 코는 이민정과 얼마나 똑같은지, 입술은 윤은혜와 얼마나 똑같은지에만 초점을 맞춥니다.
중급 수준의 테스터는 각각의 경우에서 실패할 수 있는 경우, 시술을 받는 사람의 현재 상태 등을 고려하고 최적의 결과가 나올 수 있는 정황을 고려합니다.
하지만 이런 수준의 테스트를 거친다 하더라도 최종적인 모습은 그다지 이쁘지 않습니다. (물론, 개인적인 취향으로 충분히 이쁘다고 하시는 분도 계십니다.)
문제가 무엇인고 하니.. 말 그대로 조화가 빠져 있다는 것입니다.
상급 수준의 테스터는 각각의 가장 이쁜 부분을 합쳤을 때 전체적인 조화로움을 예측하고 그에 대한 의견을 낼 수 있어야 합니다.
소프트웨어 개발은 각종 이해관계자의 정치적인 알력과 의견의 잡탕이라고 할 수 있습니다.
누군가의 정치적인 힘이 큰 경우 많은 소프트웨어는 조화가 깨지고 괴물이 되어버립니다.
테스터는 그러한 상황에 제동을 가하고 팀이 올바른 방향으로 나아갈 수 있도록 등대가 되어줄 수 있어야 합니다.
그러기 위해서는 테스터는 조직에서 존중과 신뢰를 받을 수 있어야 합니다.
조직에서 테스터가 개발의 겉저리 수준으로 취급받는다면 그 조직에서 만들어지는 소프트웨어는 절대 좋을 수 없습니다.
우리가 좋은 소프트웨어를 만들기 위해서는 2가지가 필요합니다.
여러 이해관계자의 의견과 관점을 조율하고 전체적인 관점에서 조화시킬 수 있는 훈련되고 능력있는 테스터
그리고 그러한 테스터를 신뢰하고 존중하는 조직 문화..
그런 면에서 아직까지 우리 나라의 소프트웨어 개발 성숙도는 멀었다고 생각합니다.
어떤 사람이 테스트를 잘 하는 사람일까?
기업은 어떤 사람을 테스터로 고용해야하는걸까?
뛰어난 테스터가 되기 위해서는 무엇을 알아야하는걸까?
위와 유사한 질문은 테스터로 시작하는 사람부터 테스터를 고용하는 사람들까지 많은 사람들이 공통적으로 가지고 있는 의문들입니다.
이와 관련한 많은 조언들이 있지만 나름 제 개인적인 의견을 적어볼까 합니다.
제 생각에
가장 하수의 테스터는 주어진대로 테스트를 하는 수동적 테스터입니다.
명세에 적혀 있는 내용만 확인하는 테스터, 제품이 정상 동작하는지에만 관심을 두고 집중하는 테스터입니다.
일반적으로 테스트를 이제 막 시작하시는 분들이 이런 테스트에 주력하고 테스트를 잘 모르는 개발 이해관계자들이 주력하는 테스트 유형입니다.
이보다 조금 더 높은 단계가 되면 실패하는 경우, 리스크를 고려하기 시작합니다.
제품이 실패할 수 있는 정황, 사용자의 실수 등을 고려하여 테스트를 하는 수준입니다.
그리고 이쯤 되면 많은 테스터들이 딜레마에 빠집니다.
얼마나 많은 경우를 고려해야하는 걸까? 이러한 테스트는 필요한 것일까? 환경? 예산? 사용자는 정말 이렇게 사용할까? 등등
이 수준이 되면 테스트를 완벽하게 하기 어렵다는 것을 깨닫고 많은 테스터들이 자포자기 심정으로 빠져들기도 합니다.
이보다 조금 더 높은 단계가 되면 전체적인 관점에서 제품을 바라보기 시작합니다.
예를 들면, 최고의 미녀를 만들기 위해서
얼굴형은 카라 구하라, 눈은 포미닛 현아, 코는 배우 이민정, 입술은 배우 윤은혜를 합쳐서 성형수술을 한다고 해봅시다.
가장 낮은 수준의 테스터는 얼굴형은 구하라처럼 되었는지, 코는 이민정과 얼마나 똑같은지, 입술은 윤은혜와 얼마나 똑같은지에만 초점을 맞춥니다.
중급 수준의 테스터는 각각의 경우에서 실패할 수 있는 경우, 시술을 받는 사람의 현재 상태 등을 고려하고 최적의 결과가 나올 수 있는 정황을 고려합니다.
하지만 이런 수준의 테스트를 거친다 하더라도 최종적인 모습은 그다지 이쁘지 않습니다. (물론, 개인적인 취향으로 충분히 이쁘다고 하시는 분도 계십니다.)
문제가 무엇인고 하니.. 말 그대로 조화가 빠져 있다는 것입니다.
상급 수준의 테스터는 각각의 가장 이쁜 부분을 합쳤을 때 전체적인 조화로움을 예측하고 그에 대한 의견을 낼 수 있어야 합니다.
소프트웨어 개발은 각종 이해관계자의 정치적인 알력과 의견의 잡탕이라고 할 수 있습니다.
누군가의 정치적인 힘이 큰 경우 많은 소프트웨어는 조화가 깨지고 괴물이 되어버립니다.
테스터는 그러한 상황에 제동을 가하고 팀이 올바른 방향으로 나아갈 수 있도록 등대가 되어줄 수 있어야 합니다.
그러기 위해서는 테스터는 조직에서 존중과 신뢰를 받을 수 있어야 합니다.
조직에서 테스터가 개발의 겉저리 수준으로 취급받는다면 그 조직에서 만들어지는 소프트웨어는 절대 좋을 수 없습니다.
우리가 좋은 소프트웨어를 만들기 위해서는 2가지가 필요합니다.
여러 이해관계자의 의견과 관점을 조율하고 전체적인 관점에서 조화시킬 수 있는 훈련되고 능력있는 테스터
그리고 그러한 테스터를 신뢰하고 존중하는 조직 문화..
그런 면에서 아직까지 우리 나라의 소프트웨어 개발 성숙도는 멀었다고 생각합니다.
품질 지표/기준을 적용하더라도 쉽게 측정 가능한 것들만 사용하는 것도 문제인 것 같습니다. 가장 흔히 사용되는 것이 결함 조치율이 아닐지...
답글삭제