2009년 2월 4일 수요일

소프트웨어 개발 단계에서 가장 중요하다고 생각하는 것은?




그동안 약 2달에 걸쳐서 제 블로그에서 Poll을 실시하여 이와 같은 결과가 나왔습니다. 

이런데 이상하게 제가 현장에서 만나는 여러사람들의 의견과 다른 결과가 나왔습니다.
그래서 그 이유를 2가지 정도로 추측해보고 있습니다.

첫째, 블로그 방문자들(주로 블로거)은 비 방문자보다 소프트웨어 공학에 더 많은 지식과 경험을 을 가지고 있다.
둘째, 실제 자신의 경험에 의한 생각보다는 정답이라고 생각하는 것에 투표를 하였다.

물론 첫째 이유겠죠 ^^

아래 목록을 보면 각 항목의 득표 비율이 나오는데, 제 생각과 크게 다르지 않습니다. 
하지만, 유난히 유지보수에 대해서 작게 나온 것은 대부분의 방문자들이 유지보수가 그렇게 중요하지 않은 프로젝트들을 수행하고 있는 것이 아닌가 추측해 봅니다. 


다음 투표로는 SCM 사용도에 대해서 진행을 하려고 합니다. 많은 성원부탁합니다.

댓글 6개:

  1. 유지보수 부분이 적게 나온건 의외이긴 합니다.
    하지만, 가장 중요한 한가지를 투표하는것으로 기억되는데 그렇다고 한다면 제 생각과 얼추 비슷한 답변 분포인데요?

    답글삭제
  2. 돌이아빠님 안녕하세요.
    생각해보니 그렇겠군요.

    답글삭제
  3. 유지보수가 정말 중요하지만, 대부분의 중견 개발자 분들은 유지보수를 맡지 않기 때문이 아닐까 생각해 봅니다. 다수의 프로젝트에서 유지보수는 경력이 짧거나, 초기 프로젝트를 수행하지 않은 멤버들에게 할당되는 경우가 많거든요. 물론 제 경험에 한정된 이야기입니다만, 우선 유지보수에 투입되는 예산이 적은 경우가 많고 따라서 경력자들에게 유지보수를 맡기기에 단가가 맞지 않으며, 게다가 유지보수 경험은 장기적인 경력 관리에 좋지 않다는 선입관도 작용하는 것 같구요.

    물론, 유지보수의 중요성은 길게 얘기할 필요는 없겠지요. 예산이 적게 배정된다고 해서 중요도가 낮다는 얘기는 아니거든요.

    답글삭제
  4. 써니님 안녕하세요.
    유지보수에 초기 개발비용의 1.5배에서 5배까지 소요가 된다는 보고도 있듯이 제가 봐온 수많은 회사들이 유지보수 이슈로 어려워지고 문을 닫는 것을 봐았습니다. 그럼에도 불구하고 유지보수가 어떻게 왜 문제가 되었는지 모르고 지나가는 경우가 허다합니다. 제품은 1.5, 2.0으로 업그레이드가 되는데 유지보수 할 일은 점점 기하급수로 늘어서 더이상 감당이 안되곤 하는데, 개발 초기부터 이를 철저히 고려하지 않으면 안됩니다.

    답글삭제
  5. 개발자 개인 관점에서 유지보수 경험에 따라서도 이야기 할 수 있지만, 대체로 프로젝트를 SM 주체와 다른 외주 업체가 수행하는 탓도 있는 듯 합니다.
    사업수행 PM은 결국 예산, 기간 내에서 프로젝트를 완료해야 하는 탓에 품질이 우선순위가 밀리는 경우가 많습니다.
    또한, 시스템의 기반 기술이 바뀌는 소위 말하는 "차세대" 성격의 경우 고객이나 유지보수 담당자가 모르는 기술로 구현하기 때문에 일종의 모럴 해저드가 발생할 우려가 있는 부분도 있습니다.

    답글삭제
  6. 개발자의 모럴해저드에서 대해서도 많은 해야할 얘기가 많이 있습니다. 스펙에 아무리 유지보수 용이성등에 대해서 자세히 적는다고 해도 완전히 검증이 어렵고 많은 부분 결국 개발자의 양심과 윤리에 맡기는 측면도 있습니다. 개발자들이 다른 사람을 속이는 것은 어려운 일이 아니거든요.
    또한 양심없이 만든 코드의 문제와 그 책임소재가 쉽게 드러나지 않는등 개발자들에게는 특히 윤리성이 많이 필요합니다. 그러나 현실은 그렇지 않고 대부분 환경만 탓하지요. 서로 까먹는 거죠.

    답글삭제