개발 의뢰

외주 개발 맡기기 전 꼭 정할 것: 소스코드, 수정 횟수, 유지보수

게시 3분 읽기

외주 개발이 틀어지는 이유는 실력보다 말하지 않고 넘어간 약속인 경우가 많습니다. “당연히 소스코드도 주는 줄 알았다”, “수정은 몇 번이든 되는 줄 알았다”, “납품 뒤 오류는 무료로 고쳐 주는 줄 알았다” 같은 일입니다. 이 글은 계약서에 적기 전에 의뢰하는 쪽과 개발하는 쪽이 함께 정해야 할 세 가지를 정리합니다. 법률 자문이 아니라 실무 체크리스트이니, 금액이 크거나 권리 관계가 복잡하면 전문가 검토를 받으세요.

외주 개발 계약에서 정할 세 가지: 소스코드와 권리, 수정 횟수와 검수, 유지보수

1. 소스코드와 권리: “받는다”만으로는 부족하다

완성된 프로그램(설치 파일, 배포된 웹)을 받는 것과 소스코드를 받는 것은 다른 일입니다. 소스코드가 없으면 나중에 다른 개발자에게 수정을 맡기기 어렵습니다. 그래서 다음을 구체적으로 정합니다.

  • 무엇을 넘기는가: 소스코드 전체, 빌드 방법 설명, 설계 문서, 서버 설정, 사용한 외부 라이브러리 목록
  • 언제 넘기는가: 잔금 지급과 동시에, 또는 단계별 검수 때마다
  • 권리는 누구에게 있는가: 저작권을 넘기는지, 아니면 의뢰자가 자유롭게 쓰고 고칠 수 있는 이용 권한만 주는지. 개발사가 여러 고객에게 함께 쓰는 공통 모듈이 들어 있다면 그 부분은 따로 정합니다.
  • 외부 라이브러리와 유료 구성요소: 오픈소스 라이선스 조건과, 유료 구성요소의 라이선스가 누구 명의인지

소스코드를 넘기기 어려운 경우에는 제3의 기관에 소스코드를 맡겨 두는 SW 임치 제도도 있습니다. 한국저작권위원회는 이 제도를, 저작권자가 소스코드와 기술 정보를 신뢰할 수 있는 제3의 기관에 맡겨 두고 개발사가 문을 닫는 등의 일이 생겨도 사용자가 그 소프트웨어를 계속 쓸 수 있게 하는 제도로 설명합니다. (한국저작권위원회: SW 임치)

2. 수정 횟수와 검수: “수정”의 뜻부터 맞춘다

“수정 3회”라고 적어도 다툼이 생기는 이유는 오류 수정과 요구 변경이 섞이기 때문입니다.

  • 오류 수정: 약속한 기능이 약속대로 동작하지 않는 것을 고치는 일. 약속한 내용을 채우는 일이므로 횟수 제한 없이 고치도록 정해 두는 것이 좋습니다.
  • 요구 변경: 처음 약속에 없던 기능이나 화면 변경. 횟수나 범위를 정하고, 넘으면 추가 견적을 받습니다.

함께 정해 둘 것:

  1. 검수 기준: 기능 목록의 각 항목을 “무엇을 하면 무엇이 나와야 한다”로 적어 두면, 완료 여부를 두고 다툴 일이 줄어듭니다.
  2. 검수 기간: 납품 뒤 며칠 안에 확인하고 의견을 줄지. 기간이 지나면 검수 완료로 본다는 조항이 들어가는 경우가 있으니 일정 여유를 확인하세요.
  3. 수정 요청 방법: 메신저로 흩어지지 않도록 한 곳(메일, 문서, 이슈 목록)에 모읍니다.
  4. 단계별 확인: 디자인 시안, 중간 시연, 최종본처럼 단계마다 확인하면 마지막에 크게 뒤집는 일이 줄어듭니다.

오류 수정과 요구 변경의 구분: 약속대로 동작하지 않음은 오류 수정, 약속에 없던 변경은 요구 변경

3. 유지보수: 납품 다음 날부터 생기는 일

프로그램은 납품으로 끝나지 않습니다. 운영체제와 브라우저가 바뀌고, 연동한 외부 서비스가 규칙을 바꾸고, 쓰다 보면 숨어 있던 오류가 나옵니다. 계약 때 다음을 정해 두세요.

  • 무상 유지보수 기간: 납품 뒤 몇 개월 동안 오류를 무료로 고치는지
  • 그 뒤의 조건: 월 정액인지, 건별 견적인지, 응답 시간은 어느 정도인지
  • 범위: 오류 수정만인지, 작은 기능 추가까지인지, 서버 관리와 백업까지인지
  • 운영 비용: 서버, 도메인, 문자 발송, 유료 API 비용을 누가 내고 계정은 누구 명의로 만드는지

계정 명의는 특히 중요합니다. 서버와 도메인을 개발사 명의로 만들면, 나중에 개발사를 바꿀 때 옮기는 일이 번거로워집니다. 가능하면 의뢰자 명의로 만들고 개발사에 권한을 주는 방식을 권합니다.

계약 전 마지막 확인 목록

  • 기능 목록이 항목별로 적혀 있다
  • 소스코드·문서를 언제, 무엇을 넘기는지 적혀 있다
  • 권리(저작권 또는 이용 권한)의 범위가 적혀 있다
  • 오류 수정과 요구 변경이 구분되어 있다
  • 검수 기준과 검수 기간이 있다
  • 무상 유지보수 기간과 그 뒤 조건이 있다
  • 서버·도메인·유료 서비스의 명의와 비용 부담이 정해져 있다

GyeokSang의 개발 의뢰도 견적 단계에서 소스코드 제공 여부, 수정 횟수, 유지보수 기간을 함께 정해 계약서에 적습니다. 위 목록을 보며 궁금한 점이 생기면 문의로 편하게 보내 주세요.

같은 분류의 다른 글