상담 신청

개발 · 업무 시스템

개발 외주 계약서의 소스코드 인도 조항에는 무엇을 적어야 합니까?

업무 시스템 개발을 외부 개발사에 맡기는 회사에서 계약 직전에 자주 받는 질문입니다. 계약서 초안에는 「개발 산출물 일체를 인도한다」는 한 줄만 있는 경우가 많고, 나중에 다른 개발사가 이어받으려 할 때에야 무엇이 빠졌는지 드러납니다.

자주 받는 질문 · 빌드업웍스 정리 작성 최종 검토

빌드업웍스 답변

빌드업웍스 엔지니어

핵심 답변

소스코드 인도 조항에는 무엇을(인도 목록), 어떤 형식으로, 언제, 어떻게 확인하고, 어떤 권리와 함께 받는지를 나눠 적어야 합니다. 「산출물 일체를 인도한다」는 한 줄로는 빌드·배포 설정, 데이터베이스 구조, 외부 서비스 계정처럼 시스템을 다시 세우는 데 필요한 자료가 빠지기 쉽습니다. 인수 조건에 「인도받은 자료만으로 제3자가 다시 빌드·배포할 수 있을 것」을 넣으면 그 빈칸을 계약 기간 안에 확인할 수 있습니다.

  • 인도 조항은 목록·형식·시점·검증·권리 다섯 요소로 나눠 씁니다
  • 소스 파일만이 아니라 빌드·배포 설정과 DB 구조까지 목록에 넣습니다
  • 발주사 명의 저장소에서 개발하면 인도 시점의 공백이 줄어듭니다
  • 프로그램 전부 양도 시 특약이 없으면 2차적저작물작성권도 포함으로 추정됩니다
  • 개발사 기존 모듈과 오픈소스는 이용 허락 범위를 따로 적습니다

「산출물 일체」 한 줄이 부족한 이유

개발 외주 계약서의 인도 조항은 「개발 산출물 일체를 인도한다」 한 줄로 끝나는 경우가 많습니다. 문제는 「일체」의 범위를 두 당사자가 다르게 읽는다는 점입니다. 개발사는 최종 소스 파일 묶음을 떠올리고, 발주사는 시스템을 다시 세우는 데 필요한 모든 것을 떠올립니다. 그 차이는 프로젝트가 순조로울 때는 드러나지 않다가 유지보수 업체를 바꾸거나 개발사와 연락이 끊긴 시점에 한꺼번에 드러납니다.

인도 조항은 다섯 요소로 나눠 적으면 해석의 여지가 크게 줄어듭니다.

  1. 목록무엇을 받는지 항목별로 적습니다
  2. 형식어떤 형태로, 어디로 받는지 정합니다
  3. 시점단계마다 받는지, 완료 후 한 번에 받는지 정합니다
  4. 검증받은 자료로 다시 세울 수 있는지 확인하는 방법을 정합니다
  5. 권리양도인지 이용 허락인지, 범위가 어디까지인지 적습니다

과학기술정보통신부가 2020년 말부터 배포하고 있는 SW 분야 표준계약서 6종(정보시스템 개발구축 사업 표준계약서 등)을 초안 옆에 놓고 대조하면, 빠진 조항을 찾는 데 도움이 됩니다.

인도 목록 — 다시 세울 수 있는 단위로 적습니다

목록의 기준은 하나입니다. 다른 개발팀이 인도받은 자료만으로 같은 시스템을 다시 빌드하고 배포할 수 있는가입니다. 소스 파일만으로는 이 기준을 채우지 못합니다.

인도 항목빠지면 생기는 일
소스코드 전체와 변경 이력(저장소 단위)어느 시점에 무엇이 왜 바뀌었는지 추적할 수 없습니다
빌드·배포 스크립트, 서버·클라우드 설정(인프라 코드 포함)소스가 있어도 운영 환경에 올리는 방법을 다시 찾아야 합니다
데이터베이스 구조와 변경 스크립트데이터를 옮기거나 구조를 바꿀 때 기준이 없습니다
환경 설정 항목 목록과 비밀값 전달 경로설정값 하나가 빠져 시스템이 기동되지 않습니다
외부 서비스·계정 목록과 각 계정의 명의결제·문자·지도 같은 연동이 개발사 계정에 묶여 남습니다
사용한 오픈소스와 라이선스 목록재배포·수정 조건을 확인할 수 없습니다
설치·배포·장애 대응 문서처음 맡는 사람이 손댈 순서를 알 수 없습니다

비밀번호나 API 키 같은 비밀값은 문서나 저장소에 값으로 적지 않습니다. 목록에는 항목 이름만 두고, 값은 비밀값 관리 서비스나 별도 전달 경로로 받는다고 적어 두는 편이 안전합니다.

목록은 계약서 본문보다 별첨으로 두는 편이 관리하기 쉽습니다. 개발 도중 외부 서비스가 추가되거나 구조가 바뀌면 별첨만 갱신하면 되고, 인수 단계에서는 그 별첨을 점검표로 그대로 쓸 수 있습니다. 제안 단계에서 개발사가 이 목록을 구체적으로 채워 오는지도 업체를 비교하는 단서가 됩니다.

형식과 시점 — 끝나고 받기보다 처음부터 갖고 있기

완료 후 일괄 인도

  • 계약서 문구가 단순합니다
  • 인도 직전까지 무엇이 빠졌는지 알기 어렵습니다
  • 관계가 틀어지면 인도 자체가 협상 대상이 됩니다

발주사 명의 저장소에서 개발

  • 코드와 변경 이력이 처음부터 발주사 쪽에 쌓입니다
  • 진행 중에도 현재 상태를 언제든 확인할 수 있습니다
  • 저장소·클라우드 계정의 권한 관리를 발주사가 맡아야 합니다

코드 저장소와 클라우드 계정을 발주사 명의로 만들고 개발사에 권한을 부여하는 방식은 인도를 둘러싼 다툼의 여지를 구조적으로 줄입니다. 계약이 끝나면 권한만 회수하면 되기 때문입니다. 이 방식이 어렵다면 최소한 「중간 검수마다 그 시점의 저장소 사본을 인도한다」는 문장을 넣어 두십시오.

권리 조항 — 양도인지, 이용 허락인지

소스를 받는 것과 그 소스를 고쳐 써도 되는 권리는 별개입니다. 저작권법 제45조 제2항은 저작재산권 전부를 양도할 때 특약이 없으면 2차적저작물작성권(원래 프로그램을 고쳐 새로 만들어 이용할 권리)은 포함되지 않은 것으로 추정하되, 프로그램은 예외로 특약이 없으면 그 권리도 함께 양도된 것으로 추정합니다. 다만 이것은 전부 양도의 경우에 대한 추정일 뿐이므로, 계약서에 다음을 분명히 적어 두는 편이 안전합니다.

  • 저작재산권을 전부 양도하는지, 이용 허락만 하는지
  • 양도라면 2차적저작물작성권까지 포함하는지
  • 개발사가 이전부터 갖고 있던 공통 모듈과 오픈소스처럼 양도 대상이 아닌 부분의 목록, 그리고 그 부분의 이용 허락 범위(기간, 수정 가능 여부, 다른 업체의 유지보수 허용 여부)

마지막 항목은 빠지기 쉽습니다. 개발사의 공통 모듈은 다른 고객 프로젝트에도 쓰이므로 양도받기 어렵고, 오픈소스는 개발사에게 애초에 양도할 권리가 없습니다. 이 부분을 이용 허락으로 정리해 두지 않으면 다른 업체에 유지보수를 맡길 때 권리 범위가 불분명해집니다.

개발사의 담당 개발자가 퇴사하더라도 권리를 그 개인에게서 따로 받을 필요는 대개 없습니다. 저작권법 제9조는 법인 등의 기획하에 그 업무에 종사하는 사람이 업무상 작성한 저작물(업무상저작물)이 법인 등의 명의로 공표되면 계약이나 근무규칙에 다른 정함이 없는 한 그 법인 등을 저작자로 보고, 프로그램은 공표되지 않아도 같다고 정하기 때문입니다. 그래서 권리 조항의 상대방은 원칙적으로 개발사라는 법인입니다. 다만 개발사가 일부를 프리랜서나 하청 업체에 맡겼다면, 그 부분의 권리가 개발사에 정리돼 있는지를 함께 확인해야 합니다.

금액이 크거나 권리 관계가 복잡하다면 이 항목들을 추린 뒤 법률 자문을 받으시는 편이 효율적입니다.

인도를 「검증」하는 방법

목록이 있어도 실제로 다시 세울 수 있는지는 해 봐야 압니다. 인수 조건에 확인 절차를 넣어 두십시오.

조항 예시 「수급인은 인도한 자료만으로 발주인 또는 발주인이 지정한 제3자가 별도 환경에 시스템을 빌드·배포할 수 있음을 시연하며, 시연이 끝난 때 인도가 완료된 것으로 본다.」

시연은 개발사가 아닌 사람의 손으로, 개발사 계정이 아닌 환경에서 하는 것이 핵심입니다. 이 과정에서 문서에 없던 설정값이나 담당자 개인 PC에만 있던 스크립트가 드러납니다. 시연에서 막힌 항목은 하자가 아니라 인도 미완료로 다룬다고 정해 두면, 잔금 지급과 인도 완료의 순서가 뒤바뀌지 않습니다.

개발사가 소스 공개를 꺼릴 때 — 프로그램 임치

패키지 솔루션처럼 개발사가 소스를 넘기기 어려운 경우에는 프로그램 임치를 검토할 수 있습니다. 저작권법 제101조의7은 저작재산권자와 이용 허락을 받은 자가 합의해 원시코드와 기술정보를 대통령령으로 정하는 수치인에게 맡길 수 있게 하고, 합의에서 정한 사유가 생기면 이용 허락을 받은 자가 그 제공을 요구할 수 있도록 정하고 있습니다. 임치를 택한다면 어떤 사유가 생기면 받는지(예: 폐업, 유지보수 중단)와 임치물을 얼마나 자주 최신본으로 바꾸는지를 함께 적어야 실효가 있습니다.

빌드업웍스는 만든 코드와 데이터를 고객 소유로 두며, 기존 시스템을 이어받을 수 있는지 확인할 때도 같은 항목을 순서대로 대조합니다.

참고 자료

답변 빌드업웍스 작성 2026-10-22 최종 검토 2026-10-22

이어서 보기

개발 · 업무 시스템 자주 받는 질문

외주 개발 납품 검수는 무엇을 기준으로 해야 합니까?

납품 검수 기준은 납품 때가 아니라 착수 때 합의해야 합니다. 실제 업무 순서대로 짠 시나리오가 끝까지 통과하는지, 남은 결함이 어느 등급인지, 성능·보안·지원 환경 같은 비기능 기준을 충족하는지, 약속한 인도물을 받았는지, 검수 기간과 결과 통지 방식이 무엇인지를 계약서나 별첨에 적어 두면 「완료」의 해석이 갈리지 않습니다.

답변 2026-10-22

개발 · 업무 시스템 자주 받는 질문

하자보수와 유지보수는 무엇이 다르고, 경계는 어디입니까?

하자보수는 납품 당시 합의한 대로 동작하지 않는 결함을 만든 쪽이 고치는 일이고, 유지보수는 납품 이후 생긴 변화(운영 환경 변경, 기능 추가, 외부 연동 변경, 운영 지원)에 대응하는 별도 계약의 일입니다. 둘의 경계는 인수 때 합의한 요구사항과 검수 기준이므로, 그 기준이 문서로 남아 있어야 다툼이 줄어듭니다. 개발 계약이 민법상 도급에 해당하면 하자담보책임과 그 행사 기간(인도받은 날부터 1년)이 기본값이 되지만, 계약서에서 기간과 범위를 따로 정하기도 하므로 둘 다 명시해 두는 편이 분명합니다.

답변 2026-10-22

개발 · 업무 시스템 자주 받는 질문

개발사와 연락이 끊긴 시스템, 첫 주에 무엇부터 해야 합니까?

개발사와 연락이 끊긴 첫 주에는 시스템을 고치려 하기보다 멈추지 않게 지키는 데 집중해야 합니다. 순서는 만료일이 정해진 것(도메인, TLS 인증서, 클라우드·호스팅 결제 수단) 확인, 관리자 계정과 클라우드 루트 계정의 복구 경로 확보, 백업이 실제로 복원되는지 확인, 변경 동결과 현재 상태 기록입니다. 공개 TLS 인증서의 최대 유효기간은 2026년 3월 15일 발급분부터 200일로 줄었고 2029년 3월 15일 발급분부터는 47일이 되므로, 인증서 갱신이 자동으로 이뤄지는지부터 확인하는 것이 특히 급합니다.

답변 2026-10-22

함께 보면 좋은 자료AI 개발 업체를 선정할 때 계약 전 서면으로 받아 둘 것함께 보면 좋은 자료기존 개발사가 만든 시스템을 이어받을 때 손에 있어야 할 것함께 보면 좋은 자료만든 코드와 데이터의 소유 — AI · 앱 개발

댓글

답변에 덧붙일 질문이나 경험을 남겨 주세요. 빌드업웍스가 확인한 뒤 게시합니다.

댓글을 불러오는 중입니다.

    0 / 1,000자

    확인 후 게시됩니다. 영업 연락은 드리지 않습니다.

    궁금한 점을 편하게 남겨 주세요

    영업 연락은 드리지 않습니다. 빌드업웍스 엔지니어가 영업일 2~3일 안에 답변드리고, 카카오톡·텔레그램 채팅으로도 상담하실 수 있습니다.