자 여기 육면체가 하나 있습니다.
물리 세계에는 존재하지 않고 명세로만 존재하는 육면체입니다.
그리고 여러분은 지금부터 이 육면체를 테스트 해주시면 됩니다.
여러분이 테스트 해주셔야할 내용은 크게 2가지입니다.
첫번째는 이것이 정말 육면체인가? 입니다.
두번째는 이 육면체의 내부는 비어있는가? 꽉! 꽉! 차있는가? 입니다.
실제 물리 세계에서처럼 초음파 검사니.. 이런거 말고 명세서로만 위 2가지 질문에 대하여 테스트 후 답을 내보시기 바랍니다.
솔직히 문제가 너무 쉬워서 금방 답을 찾으실 수 있을 것 같긴 하지만 자.. 지금부터 댓글 달려주세요!!
정답을 확인 하기 전에 다시 한번 더 생각해 보시기 바랍니다..
이 문제의 정답은 의외로 간단합니다.
아마 정답을 공개하면 저를 아시는 분들은 짱돌로 저를 찍으려고 하실지로 모르겠습니다.
정답은 사실 여러분이 언제나 하고 있지만 잘 인식하지 못하는 너무 당연해서 곧잘 잊어버리는 그런 것입니다.
정답은
'기획자에게 물어본다' 또는 '사용자가 진정 원하는 것이 무엇인지 확인한다.'
입니다.
많은 분들이 이런 문제가 주어지면 문제 자체를 해결하려고 합니다. 특히 문제가 복잡하면 복잡할 수록 더 어려운 해결방법을 찾아내려고 애씁니다.
이것을 어떻게 하면 육면체라고 증명할 수 있을지, 이 육면체의 내부가 무엇으로 채워져 있는지를 증명하기 위해서 애를 씁니다.
하지만 실상은 명세서 자체에 오류가 있으며, 명세서 자체가 가지고 있는 정보 역시 매우 제한적입니다.
명세서 자체가 가지고 있는 오류는 명세서가 가지고 있지 못한 정보를 테스터가 아무리 애를 쓴다고 해도 그것이 해결되지는 않습니다.
하지만 우리는 이런 문제가 주어지면 우선 우리가 해결하기 위해 애를 씁니다.
그래도 안되면 그때서야 기획자를 찾거나 누군가에게 도움을 요청합니다.
예를 들면, 어떤 개발사가 어떤 게임의 테스트를 의뢰했습니다. 그냥 게임을 테스트 해달라 하면 테스터는 그냥 게임을 테스트 합니다.
하지만 그냥 게임을 테스트 할것이 아니라 정확히 무엇을 어떻게 테스트 해야할지 먼저 확인해야하는 것이 맞습니다.
어떤 분들은 이런 사실을 이미 알고 있고 이미 잘 하고 계시리라 생각합니다.
하지만 이런 유형의 문제를 맞딱드리면 많은 경우 간단한 해결책을 생각해 내기 보다는 문제 자체에 집중하며 문제를 해결하려고만 합니다.
테스터는 좀 더 넒은 시각으로 제품을 바라볼 필요가 있습니다. 그리고 테스터의 사고를 흩뜨러뜨리는 현상에 현혹되지 말고 내재된 문제에 집중하고 최적의 해법을 찾아내는데 집중할 수 있는 명확한 사고를 할 수 있어야 합니다.
우리가 육면체인가? 그 안이 빈 공간인가? 는 제대로 된 정의가 내려진 이후에 생각해도 늦지 않습니다.
결론적으로 제가 하고 싶은 말은 내재적 단순함, 그리고 명확한 사고입니다.
결론이 너무 싱겁고 정답이 너무 어이가 없으시다고 거기 짱돌 들으신 분은 그 짱돌 내려놓으시고 곰곰히 생각해 보시면 좋을 것 같습니다.
그냥 어이 없다 생각되시면 잊어주시면 됩니다.
짜증 나시는 분들도 있으시겠지만 전 그냥 여러분이 허허 웃으면서 넘어가셨으면 합니다.
1. 정6면채의 모든 변의 길이가 동일한가
답글삭제- 한변의 길이를 구하는 기능과 구한 모든 변의 길이를 비교하는 기능을 그렇다/아니다로 변환하는 기능을 구현하여 테스트 한다
2. 속이 빈 정6면채를 만들어(또는 속이 꽉찬 정6면채를 만들어) 대상과 비교하는 기능을 구현하여 테스트한다
trackback from: 괴짜시인의 생각
답글삭제당신의 테스트력을 측정해 보세요.