안녕하세요.

오늘에서야 학규님의 웹 관련 질문을 지금 보고, 부득이 새글로 작성합니다. (제로보드는 옛 게시물에 답신달아도 읽혀질 가능성이 적으니 ㅡㅡ) 이미 다른 고수 분들께서 답신을 달았지만, 일부에 대한 제 의견이 따로 있어서 달아봅니다. 어디까지나 경험적 사견이니 여러 의견 중 하나로 생각해주세요.

경험이란 제가 저러 저러한 외주들을 진행해본 것들입니다. ^^; php, asp 등 여러가지를 해보다보니.


>1. 디비가 Ms SQL server 를 사용하게 된다면, 웹 개발은 꼭 ASP 로 하는 것이 좋을까요?

꼭 ASP 로 하실 이유는 전혀 없습니다. 제가 아는 분은 델파이로 개발해서 서비스 하시기도 하셨습니다. (델파이로 DB프로그래밍 하기 꽤 좋지요. MS VS.NET 과는 비교 불허 ^^) ASP 에 이런 저런 컴퍼넌트 붙이니 SSL 의 장점이 많이 죽었다면서요. 하지만 ASP 가 PHP 나 JSP 등보다 유리한 것은 분명합니다.


>2. ASP 와 ASP.NET의 차이점과 장단점은 어느정도인가요? ASP.NET 을 쓰면 획기적으로 성능이나 개발 시간이 빨라지는지?

ASP 와 ASP.NET 을 비교하는 것보다는 ASP 의 부족함을 보시는게 나을 듯 합니다. ASP 에서 쓸만한? 재밌는? 몇 가지 일을 하려면 IIS 에 컴퍼넌트 떡칠 하게 되는 경향이 종종 생기는데, 그러느니 ASP.NET 으로 하는게 낫다는 말이 있더군요. 확실히 ASP + VB 보다는 ASP.NET 이 더 낫다고 봅니다. 단 간단한 서비스라면 ASP 가 낫습니다.


>3. 라게 + 지식in 같은 솔루션을 만드는데 걸리는 시간 + 인력 비용은 어느정도인가요?

라게가 뭔지 모르니 지식in 만 따지겠습니다. 지식in 과 같은 서비스를 개발하는데는 코더나 프로그래머보다 설계자(전체 설계자, DB 개발자)가 중요합니다. 단순히 프로그램적으로 구현하는데는 1주일도 충분합니다. 하지만 제대로 된 구조하에 구동을 하려면 기획하에 따라 기간은 많이 달라집니다. 대용량 데이터베이스 및 분산 처리 경험이 없으면 실패 가능성이 대단히 높거나, 서비스에 많은 어려움을 겪을 가능성이 99% 입니다. 문제는 그런 고급인력을 입사시키기도 어렵고 비용도 비싸며, 많은 외주 회사나 팀들도 그정도 인력을 확보하지 못한 경우가 많습니다. 그런 사람들은 대게 미들웨어(3tier 쯤 되는?)나 금융권, 항공, 증권 등에 있지, 웹이나 게임쪽에는 안오죠. (이유? 하드웨어 개발자들이 소프트웨어 개발자들을 어떻게 생각하는지 아신다면 바로 감이 오실 듯 ^^)


>4. 자체개발과 이미 만들어져 있는 솔루션을 사서 쓰는 것의 장단점은 어떤 것이 있을까요?  

자체 개발의 장점은 노하우 축적의 장점이 있습니다. 그 외의 장점은 크게 없습니다. 이미 해당 프로젝트를 개발하여 서비스를 1~2년 해본 개발진으로 구성된 경우가 아니면 대게 솔루션이나 외주 개발보다 2~10배 정도 비용이 더 소요됩니다.

솔루션 구매의 장점은 기간이 적게 걸리는 장점과 저렴한 비용 외에는 딱히 없습니다. 노하우 전수도 안되며, 커스터마이징도 힘들고, 유지 보수도 힘들지요. 때문에 거의 개인 운영이다시피한 소규모 쇼핑몰들이 쇼핑몰 솔루션을 구매하는 것입니다.

제가 생각했을 때 가장 좋은 것은 외주입니다. 정확히는 클라이언트(발주 업체)와 파트너로서 함께 움직일 수 있는 외주팀이나 회사와 움직이시는게 비용과 기간, 노하우 전수면에서 좋다고 봅니다. 당연히 외주 비용이 꽤 올라가지만, 자체 개발의 1/2 에서 1/5 정도에 불과합니다. 세금이나 기타 비용을 감안하면 더 저렴한 셈이죠. 정리하자면,

비용 : 자체 개발 > 외주 > 솔루션 (자체 개발이 비싸다는 의미)
시간 : 자체 개발 >= 외주 > 솔루션 (자체 개발이 오래 걸린다는 의미)
노하우 : 자체 개발 > 외주 > 솔루션 (자체 개발이 많이 축적된다는 의미)
검증성 : 외주 > 솔루션 = 자체 개발 (외주쪽이 안정성 등에 대해 더 검증된 경우가 많다는 의미)



대규모 커뮤니케이션 시스템(이하 커뮤니티) 구축에서 중요한 것은 설계와 관리자 모드라고 봅니다. 실제로 몸값 비싼 외주 전문 팀들 보면 규모에 따른 설계와 관리자 모드에 많은 비용을 책정합니다. 그 다음으로 중요한 것이 개발자들과의 커뮤니케이션입니다. 특히 외주에 맡길 경우, 외주팀과의 의사 교환이 적으면 기간도 늘어나는 경우가 대다수이며, 원하는대로 바로 못나오는 경우도 많습니다. 외주자들도 클라이언트의 의중을 알 수 없어서 적당히 예측하며 개발해야해서 피곤하고요.

외주나 회사 인수등으로 컨텐츠를 확보하는 회사의 대표적 예가 SK 커뮤니케이션의 네이트입니다. 포털 업계에서는 상당한 후발 주자이지만 자금력을 앞세운 외주 떡칠 + 프로젝트나 회사 인수로 단기간내 타포털들이 갖고 있는 서비스 대부분을 서비스하고 있습니다. 사실 무식하게(??) 자체 개발 비율을 낮춘 경우이긴 하지만, 요즘처럼 시간과 진출 타이밍이 아이디어보다 더 중요한 때에는 나름대로 괜찮은 방법이긴 합니다. (단 돈이 많이 들지요 ^^)


제 생각의 결론은 파트너같은 외주 회사나 팀을 구하시는게 가장 좋다는 것입니다. 비용과 시간, 검증성, 기술 이전 등등에서 봤을 때요. 그래서 주변의 업체들이 프로젝트를 새로 시작할 때 저는 종종 이런 의견을 권합니다. (물론 경우에 따라서는 반드시 자체 개발을 해야하는 경우도 있으니까 '종종'입니다)


* neolith님에 의해서 게시물 이동되었습니다 (2003-11-23 23:57)