제우스씨는 그날 많은 말을 했습니다. 아니, 남기수씨가 말을 많이 했다고 해야 맞겠군요. 그날 제우스가 되어 사용자 행세를 한 사람은 남기수였습니다. 아무래도 네트워크 관리에 대해 아는 것이 많으니, 우리도 그가 제우스가 되는 편이 낫겠다고 생각했죠.
"저, 그러니까 제우스는 네트워크 관리 소프트웨어를 만드는 프로그래머입니다."
그가 심각한 표정으로 운을 떼자 여기 저기서 쿡쿡대는 소리가 들렸습니다. 회의실 앞을 마치 키노트 스피치를 진행하는 스티브 잡스처럼 왔다 갔다 하는 그를 보고 있자니, 정말 웃지 않을 수가 없더군요.
"저는 가능하면 적은 노력으로 네트워크 관리 소프트웨어를 개발하고 싶어요. 모든 API가 Thread-safe했으면 좋겠고, 이미 짜 놓은 소스코드를 고치는 일 없이도 새로운 장비를 관리할 수 있도록 customization이 가능했으면 좋겠어요. 내가 알아야 하는 API가 많은 것은 원치 않구요. DBMS에 데이터를 저장하기 위한 API, 장비를 조작하기 위한 API, 모니터링 하기 위한 API, 뭐 그 정도만 있으면 충분했으면 좋겠어요."
그러자 허동수가 나직히 읊조렸습니다.
"아 바라는 게 너무 많아..."
다시 모두들 쿡쿡댔습니다. 하지만 그러거나 말거나, 우리의 제우스는 이야기를 계속했습니다.
"그리고 시스템이나 소프트웨어 일부가 죽어도, 남은 부분은 계속 동작할 수 있었으면 좋겠어요. 아예 다른 시스템으로 failover가 되면 더 좋구요. 그리고 가능하다면, Eclipse같은 IDE와 통합된 개발 환경이 지원되었으면 좋겠어요."
그러자 화이트보드 옆에 서 있던 박팀장이 테이블에 살짝 기대듯 걸터앉으며 물었습니다.
"제우스씨. 그 중에서 가장 중요하게 생각하는 것은 무엇인가요? 아니, 가장 먼저 개발되었으면 좋겠다고 생각하는 것은 무엇인가요?"
그러자 제우스는 잠깐 생각하더니 말했습니다.
"개발하는 데 사용할 Thread-safe한 API 들입니다."
"일단은 라이브러리 형태로만 제공되더라도 개발할 수 있다는 사실만 입증되면 괜찮다는 건가요?"
박팀장이 되묻자 제우스는 다시 생각하더니 대답했습니다.
"네, 그렇습니다."
그러자 박팀장이 웃으면서 모두를 향해 물었습니다.
"일단 제 질문은 여기까지. 우선 우리의 사용자가 무엇을 가장 중요하게 생각하는 지는 파악한 것 같군요. 물론 최종적으로 갑의 인증을 받은 사실은 아니지만 말이죠. 다른 분들은 질문 없으세요?"
그러자 회의 시작때 부터 졸고만 있던 이선화가 갑자기 손을 들더니 말했습니다.
"질문있습니다."
"네, 말씀하세요."
제우스가 웃으며 대답했습니다. 이선화는 뭔가 알쏭달쏭하다는 표정으로 물었습니다.
"제우스님은 나이가 몇살이세요?"
그러자 모두들 헉, 하는 표정으로 웃어댔습니다. 그러나 웃지 않는 사람이 한 명 있었으니, 바로 허동수였습니다.
"아, 잠깐만예. 웃을 일은 아니고 굉장히 좋은 질문 같은데요. 우리의 사용자가 어떤 인간인지를 아는 것은 굉장히 중요합니더. 그런게 파악되지 않고서는, 사실 이런 역할극이 별로 필요 없지 않겠습니꺼? 테스트를 할 때도 테스트를 하는 사람이 어떤 패턴으로 행동하는 지를 파악하는 것이 꽤 중요하거든예. 사용자의 요구를 상상하는 것이 의미있다는 것에는 동의하는데, 그 사람이 어떤 사람인지 구체적으로 그려놓지 않으면 그냥 요구사항을 나열하는 거하고 별반 차이가 없지 않느냐 하는 소리지예."
박팀장이 고개를 끄덕이며 말했습니다.
"허동수씨의 말에도 일리가 있네요. 하지만 그렇다고 제우스가 어떤 사람인지 너무 심층적으로 파들어가다가는 소설을 쓰게 될 것 같은데, 적당히 가정을 하면 어떨까요? 30대 초중반의 남성. 아침 열시부터 저녁 아홉시까지 일하다 파김치가 되어 퇴근하는 전형적인 벤처 프로그래머. 예상하지 않았던 일이 갑자기 닥치는 것을 싫어하는, 평범한 네트워크 프로그래머. 뭐 이정도로요. 네트워크 관리 프로토콜에 대한 이해는 어느 정도 되어 있다고 가정해야 겠군요."
그러자 남기수가 물었습니다.
"그런데 제가 네트워크 관리 프로토콜을 잘 모르면 어쩝니까?"
"네?"
"저, 그러니까 제우스가, 여러분들 만큼이나 네트워크 관리 프로토콜에 대해 잘 모른다면 어떻게 해야 하느냐 하는거죠. 그에 따라 API의 모양도 달라질 수 있습니다."
그러자 박팀장이 고개를 숙이고 턱에 손을 댄 채로 중얼거렸습니다.
"그러니까 제우스가 갖고 있는 도메인 지식이 어느 정도인지 우리로서는 알 수 없다는 건가..."
"그럴 수도 있겠네요."
유식이 고개를 끄덕거렸습니다. 옆자리에 앉아있던 선화도 동의한다는 듯 고개를 끄덕여 보였구요. 그러자 박팀장이 말했습니다.
"그럼 남기수씨 대신, 다른 분이 제우스 역할을 맡아서 역할극을 계속해 보도록 할까요?"
[다음 글에 계속...]
'Thoughts' 카테고리의 다른 글
| 좌파에 대한 역사적 사실 (2) | 2010/03/21 |
|---|---|
| 프로그래머 28 (0) | 2010/03/19 |
| 프로그래머 27 (0) | 2010/03/19 |
| 프로그래머 26 (0) | 2010/03/19 |
| 오덩가 말덩가 사이트에서 본 웃기는 이야기 (6) | 2010/02/04 |
| 프로그래머를 위한 시간 관리의 법칙 (8) (8) | 2009/12/09 |
댓글을 달아 주세요