“이런 프로그램 하나 만들면 얼마나 들까요?“라는 질문에 개발자가 바로 숫자로 답하기 어려운 이유가 있습니다. 비용은 프로그램의 이름보다 그 안에 들어갈 일의 양으로 정해지기 때문입니다. 이 글에서는 견적을 움직이는 요소를 여섯 가지로 나눠 보고, 의뢰하는 쪽에서 미리 정리해 두면 견적이 정확해지는 항목을 정리합니다.
비용은 결국 “사람이 일하는 시간”
소프트웨어 개발 비용의 대부분은 사람이 설계하고, 만들고, 시험하는 데 드는 시간입니다. 그래서 “기능이 몇 개인가”보다 “각 기능을 만들고 확인하는 데 시간이 얼마나 드는가”가 중요합니다.
공공 분야에서는 이 일의 양을 재는 공통 기준도 쓰입니다. 한국소프트웨어산업협회(KOSA)가 공표하는 「SW사업 대가산정 가이드」는 사용자에게 제공되는 기능의 양을 **기능점수(FP)**로 재고, 여기에 FP당 단가를 곱해 개발비를 계산하는 방식을 안내합니다. 2024년 개정판에서는 FP 단가가 60만5,784원으로 조정됐다고 보도됐습니다. (바이라인네트워크, 2024-05-13) 민간 의뢰가 이 가이드를 그대로 따르는 것은 아니지만, “기능의 양 × 단가”라는 생각 방식은 대부분의 견적에 공통입니다.
견적을 움직이는 여섯 가지
1. 기능 범위
로그인, 검색, 엑셀 내보내기, 알림, 권한 관리처럼 기능 하나하나가 시간을 씁니다. 특히 “관리자 화면”은 빠뜨리기 쉬운데, 데이터를 고치고 사용자를 관리하는 화면이 사용자 화면만큼 커지는 경우도 있습니다.
2. 화면 수와 디자인 수준
화면이 몇 개인지, 기본 모양으로 충분한지 아니면 디자인을 따로 만들어야 하는지에 따라 차이가 납니다. 윈도우 프로그램, 웹, 모바일 앱을 함께 원하면 같은 기능을 여러 번 만드는 셈이 됩니다.
3. 외부 연동
결제, 문자·메일 발송, 기존 사내 시스템, 다른 회사 API와 연결해야 한다면 그 상대 시스템의 문서와 테스트 환경이 필요합니다. 상대 쪽 사정으로 일정이 늘어나는 경우도 있어 견적에 여유를 두는 항목입니다.
4. 데이터
기존 엑셀이나 오래된 프로그램의 데이터를 옮겨야 하는지, 데이터 양이 얼마나 되는지, 백업과 보안 요구가 있는지에 따라 작업이 달라집니다. 개인정보를 다룬다면 저장·보관 방식을 정하는 일도 포함됩니다.
5. 일정
같은 일을 더 짧은 기간에 끝내려면 사람을 더 넣거나 범위를 줄여야 합니다. 마감이 고정되어 있다면 “꼭 필요한 기능”과 “나중에 붙일 기능”을 나눠 1차 범위를 줄이는 편이 비용과 품질 모두에 유리합니다.
6. 납품 뒤 유지보수
프로그램은 납품 뒤에도 윈도우 업데이트, 브라우저 변화, 연동 서비스 변경 때문에 손볼 일이 생깁니다. 오류 수정 기간, 기능 추가 비용, 서버 비용을 누가 내는지를 처음 견적에서 함께 정해 두면 나중에 다툼이 줄어듭니다.
견적을 받기 전에 정리할 것
아래 다섯 가지를 한 장에 적어 보내면, 개발자가 추측으로 채우는 부분이 줄어 견적 차이가 작아집니다.
- 누가, 어떤 상황에서 쓰나요? (예: 현장 직원 5명이 휴대폰으로 사진과 점검 결과를 올린다)
- 꼭 필요한 기능 3가지는 무엇인가요? 나머지는 “있으면 좋은 것”으로 따로 적습니다.
- 지금은 어떻게 하고 있나요? 엑셀, 종이, 다른 프로그램 등 현재 방식과 불편한 점.
- 연결해야 할 것이 있나요? 결제, 기존 시스템, 외부 서비스.
- 언제까지, 어느 정도 예산 안에서 원하나요? 범위를 맞추는 기준이 됩니다.
견적서를 비교할 때 볼 것
견적 금액만 나란히 놓고 비교하면 범위가 다른 견적을 같은 것으로 착각하기 쉽습니다. 금액보다 먼저 다음을 확인하세요.
- 기능 목록이 항목별로 적혀 있는지
- 수정 요청을 몇 번까지, 어떤 단계에서 받는지
- 소스코드와 설계 문서를 넘겨받는지
- 납품 뒤 무상 오류 수정 기간이 있는지
- 서버·도메인·유료 서비스 비용이 견적에 들어 있는지
GyeokSang도 개발 의뢰를 받을 때 이 항목들을 견적서에 적어 드립니다. 상담과 견적까지는 비용이 들지 않으니, 위 다섯 가지를 정리해 문의로 보내 주시면 범위를 함께 맞춰 보겠습니다.
정리
프로그램 개발 비용은 “무엇을 만드느냐”보다 “얼마나 많은 일을 하느냐”로 정해집니다. 기능을 필수와 선택으로 나누고, 연동과 데이터, 유지보수 조건을 미리 적어 두면 견적이 정확해지고, 여러 곳의 견적을 공정하게 비교할 수 있습니다.