<LANDIG 5.5화> 프로젝트 완료에 대한 불신.그것을 보았다.
CURSOR를 사용하여 아니 CURSOR가 시킨대로 단계별로 코딩 및 테스트를 거쳐 최종 산출물이 작성되었다. 프로그램 설명서 뿐만아니라 테스트 버튼까지 제공하는 것을 보고 완벽한대!를 외치고 안녕을 고했다.

안녕을 얘기할 때 너무 기쁘게 보내주고 기쁘게 돌아갔다. 위 그림을 잘 기억해 두기 바란다. 아마 CURSOR 는 가면서 나를 저런 모습으로 보았을 것이다. 바보같이, 흑흑흑!!!
플러그인을 팔 수도 있겠구나라는 흐믓한 느낌과 함께 CURSOR를 과감히 끄고 임시글 생성하기 버튼을 클릭했다.
이런! wikipedia 접속이 실패해서 글을 못 가져온단다.!

부랴부랴 CURSOR를 다시 켰다. 프롬프트를 입력하려다 갑자기 이 애가 아까 그 애가 맞나라는 의심이 들었다. 아까 그 얘는 bye bye했는데, 이 애는?
조심스럽게 잘되던 Wikipedia 연결이 안되니 원인 분석해 달라고 요청 했다. 답변은 3번 실행해서 실패했으니 20번으로 늘리자고 한다. 동의하지도 않았는데 소스를 고쳐 버렸다. 혹시나 해서 다시 테스트 했는데 역시나 그대로 3번 시도했는데 실패했다고 에러가 발생했다. DB에 저장되는 로그를 전체 삭제하는 버튼을 제공해 달라고 요청할 정도로 많이 쌓이던 로그도 안 쌓인다. 에러가 해결 안됬으니 다시 해결해 달라고 요청했다.
답변은 20번으로 고쳤는데 3번이라고 나오는게 이상하단다.
아까 그 애가 아니다. 나랑 5시간 동안 같이 했던 그 애가 아니다.
소스를 보고 고치려고 해 봤는데, 워드프레스 플러그인 소스가 이렇게 복잡한 지 이제야 알게 됬다. 나 혼자 플러그인 개발은 할 수가 없다는 듯.
포기하고, cron job은 잘 실행되겠지 하고 다음 날 아침 7시에 확인해 보았다. cron job 스케쥴을 6시로 정해 놨는데 그거 마저도 실행 되지 않았다.
그 애가 떠나기 전 까지는 잘 됬는데, 왜 지금은 안되지?

새로운 아이와 다시 해보려고 했는데 계속 핑계만 댄다. 인터넷 연결을 확인하라던가, Wikipedia의 상태가 안 좋다던가, 서버가 외부 연결이 막혔다던가 등등. 근데 그 아이가 있을 때는 왜 잘 됬는데 이걸 설명하라고 하니 똑같은 답변만 돌아온다.
지금까지 프로젝트를 진행하면서 경험했던 두가지 상황과 overlap 된다.
첫번째, 팀에 있는 개발자가 갑자기 개인 사정이 생겨 그만 두게 되었다. 바로 개발자를 구한다고 해도 적응기간 및 프로젝트 이해의 기간이 필요하기 때문에 일단 인수인계는 내가 받게 되었다. (일반적으로 대부분 프로젝트가 그렇게 sub PL이 인수인계를 받는다.) 현재까지 개발이 끝난 부분에 대한 간단한 테스트와 진행중인 건 및 예정 건에 대해 파악후 그 개발자와는 bye bye 했다. 우리 팀의 개발건에 대해서는 내가 기획 및 코딩 전반을 다루기 때문에 내가 이어 받아도 될 정도이다. (실제로 몇 번은 그냥 내가 두 사람 몫의 개발을 진행하기도 한다.)
새로 받은 개발자는 나로부터 프로젝트 및 맡아서 해야할 부분에 대한 설명을 듣고 철수할 개발자로부터 소스를 인계 받는다.
이후 통합테스트 기간에 fail 건에 대해 개발자에게 확인해 보라고 했더니 껍데기만 있다고 한다. 인수인계 당시에 문제 없이 통과된 것은 hard coding 상태였단다. 그때서야 느끼는 배신감. 정말 믿을 사람 없다.
두번째, 고객의 우격다짐.
프로젝트를 발주한 고객사의 프로젝트 담당자는 업무 담당자로 IT 코딩 부분은 거의 모른다고 해도 된다. (가끔 IT 부서에서 발주한 프로젝트도 있지만 그것은 제외) 당연한 것이다. 프로젝트의 최종 산출물을 사용하는 user는 업무 담당자, 즉 현업이다. 현업고객 중에서 프로젝트 경험이 많으면 많을 수록 테스트를 중요시 한다.
프로젝트 개발 단계가 들어가면서 부터 테스트, 테스트 노래를 부른다.
개발자는 테스트를 위해 테스트 개발을 한다. 데이터를 만들거나 테스트 코드를 작성한다. 프로젝트가 거의 완성되면 자동적으로 진행될 테스트를 초반부터 하기 위해 프로젝트와 관게 없는 코드와 데이터를 작성한다. 개발자는 쓸데없는 것에 자신의 노력을 쏟는 것을 극단적으로 싫어 한다. 이 부분은 현업고객이 이해할 수 없는 부분이다. 오로지 IT 개발자만 아는 부분이다.
현재는 코딩을 6시간 하면 그 테스트와 테스트 결과서를 만드는데 12시간을 쏟는다.
이런 비상식적인 프로젝트가 점점 더 이상한 방향으로 흘러간다. 프로젝트 개발이 중반을 넘어가면 테스트에 쏟는 시간이 줄어들기는 한다. 왜냐면 어느 정도 형상이 만들어지기 때문에 억지로 만들지 않아도 테스트가 가능하게 되기 때문이다. 그래서 예전에는 테스트는 개발단계 중반 이후로 별도로 계획에 잡았는데 지금은 초반부터 진행하고 테스트 통과가 안되면 그 개발은 안 된것으로 간주하고 있다. 심지어 현업의 테스트를 통과해야만 한단다. 현업은 어떻게 테스트해야 하는지 모르겠으니 알려달라고 하고. 개발자는 또 스트레스 받고. 테스트를 안 한다는 것도 아닌데 왜 초반부터 해야 하는지.
아하! 그런데 이제야 알게 됬다. 떠난 그 애는 책임지지 않는다. 남은 내가 책임져야 한다. CURSOR로 개발한 이번 건은 다시 하면 되지만, 일반 프로젝트는 다시 할 수도 없고 당한 뒤에 남은 책임은 반드시 져야만 한다. 단계별로 확인할 수 밖에 없다. IT를 잘 모르니 더 그럴 수 밖에 없다. 이제야 이해가 간다. 하지만, 그래도 이건 아니잖아!!!

마음을 추수리고 플러그인 개발을 다시 처음부터 하기로 했다. Notepad의 PRD를 좀 더 구체적으로 만들고 특정 분야를 선택하면 그 분야에 대한 오늘의 역사를 자동으로 만들어 주는 플러그인으로 확장 해야 겠다.
<LANDING 6화> 로 이어집니다. 오늘의 역사 자동 생성 플러그인 완성하다.