이 작업을 여러 사람이 함께한다면?
앞서 이야기한 잘못된 방법의 가장 큰 단점은 이 프로젝트에 여러 사람이 투입되는 경우 아예 쓸 수 없는 방법이라는 것이다. 실제 소프트웨어 프로젝트에는 보통 여러 사람이 투입되기 때문이다. 문제의 핵심은 봉을 만들기 전에 모든 구멍의 크기를 측정해야 했다는 부분이다. 이 문제 때문에 한 사람이 모든 일을 순서대로 할 수밖에 없었다.
이러한 문제를 해결하는 방법에는 일반적으로 두 가지가 있다.
1. 사전에 모든 구멍의 크기 명세를 정리해서 각 구멍에 맞는 다양한 봉 제작 작업을 여러 사람이 나누어 진행하게 한다.
이 방법은 명세를 한 사람이 작성해야 한다는 게 문제다. 프로젝트의 규모가 크다면 시간이 오래 걸릴 것이다. 측정해야 할 구멍이 3~4개가 아니라 수천 개라고 상상해보라. 명세가 완성되기 전까지 다른 팀원은 작업에 착수할 수 없다. 명세가 오류투성이로 완성될 수도 있다. 오류 발생 가능성이 구멍 개수만큼 늘어난다고 보면 된다. 구멍이 수천 개로 늘어나면 오류가 발생할 가능성도 그만큼 늘어난다.
2. 모든 봉에 똑같은 크기의 구멍을 똑같은 위치에 배치하고, 서로 돌려서 조이는 방식으로 결합한다. 그러면 규격에 맞는 봉을 만드는 일이나 사러 가는 일을 여러 명이 분담할 수 있다.
이 방법은 간단할 뿐 아니라 모든 팀원이 동시에 일할 수 있다. 봉을 규격화했기 때문에 앞으로 발생할 수 있는 돌발 상황에 대처할 유연성은 약간 낮아졌다. 특정 부분에서는 구멍 크기가 반인 것이 더 유용할 수도 있기 때문이다.
하지만 규격화된 봉으로도 큰 문제 없이 적당한 구조를 만들 수 있을 것이다. 그리고 표준이 있으면 표준이 없을 때와 비교해 예외도 쉽게 만들 수 있다.
물론 이 방법을 쓸 때는 적절한 구멍 크기와 좋은 봉을 고르기 위해 사전 조사가 필요하다는 걸 잊지 마라.
방금 알려준 방법을 쓴다고 해서 모든 문제가 해소되진 않겠지만 올바른 방법으로 문제를 해결하는 시발점은 되어줄 것이다.