아이디어 무료 진단

안녕하세요, 노코더스입니다.

프로젝트 문의를 남겨주시면 1영업일 이내로 회신드리겠습니다.

연락 방법*
인사이트

개발 외주 계약서 체크리스트: 소스코드·유지보수에서 꼭 확인할 것

개발 외주 계약서에서 꼭 확인해야 할 핵심 항목을 정리했습니다. 개발 범위와 산출물, 소스코드·저작권, 검수 기준, 변경 요청, 하자보수·유지보수, 인수인계까지 발주 전에 확인하세요.

개발 외주 계약을 앞두면 견적과 일정부터 확인하기 쉽습니다.

하지만 프로젝트가 시작된 뒤 문제가 되는 지점은 금액보다 범위, 권리, 검수, 변경 요청과 유지보수처럼 경계가 모호한 부분인 경우가 많습니다.

개발 외주 계약서에서 먼저 확인할 것은 무엇을 만들고, 언제 완료로 인정하며, 완료 후 무엇을 넘겨받는가입니다.

기능 범위와 산출물, 소스코드·저작재산권, 검수 기준, 변경 요청, 하자보수·유지보수와 인수인계를 서로 연결해 적어야 실제 운영 단계에서 해석 차이를 줄일 수 있습니다.

이 글은 개발 외주 발주 전에 확인할 실무 항목을 정리한 일반적인 가이드입니다. 개별 계약의 법적 판단이 필요한 경우에는 계약서 원문과 프로젝트 상황을 바탕으로 별도의 법률 검토를 받는 것이 좋습니다.

개발 외주 계약서, 기능 목록보다 먼저 무엇을 정해야 할까요?

계약서에는 “웹서비스 개발”, “앱 제작”처럼 결과물 이름만 적기보다 실제 과업을 확인할 수 있는 문서를 연결하는 것이 좋습니다. 한국저작권위원회가 컴퓨터프로그램 감정에서 참고 자료로 개발계약서뿐 아니라 요구사항 정의서, 설계서, 기능명세서, 운영·설치 매뉴얼, 완료 보고서와 회의록 등을 안내하는 것도 개발 결과를 판단할 때 여러 문서가 함께 쓰일 수 있음을 보여줍니다.

계약 범위를 한 문장으로 끝내지 마세요

계약서 본문에는 프로젝트 목적과 큰 범위를 적고, 상세 기능과 산출물은 요구사항 정의서나 별첨 문서로 연결하는 방식이 관리하기 쉽습니다.

확인할 항목 · 사용자 기능, 관리자 기능, 외부 서비스 연동, 디자인 범위, 테스트·배포, 인수인계

별첨 문서가 바뀌면 누가 승인했고 언제부터 변경된 범위를 적용하는지도 함께 기록하세요.

계약서 본문에 모든 화면과 예외 상황을 다 적을 필요는 없습니다. 대신 계약서가 어떤 요구사항 문서와 산출물 목록을 기준으로 하는지 식별할 수 있어야 합니다.

특히 관리자 기능이나 외부 API 연동처럼 “포함”이라는 한 단어로 범위를 해석하기 어려운 기능은, 실제로 누가 어떤 행동을 할 수 있는지까지 풀어 적는 편이 좋습니다.

계약 범위는 기능 이름보다 포함 범위와 제외 범위가 함께 보여야 명확해집니다.

개발 범위와 산출물은 어디까지 적어야 할까요?

같은 “예약 서비스 개발”이라도 고객 화면만 만드는지, 운영자가 예약을 취소하고 환불 상태를 바꾸는 관리자 화면까지 만드는지에 따라 범위는 크게 달라집니다.

견적서의 기능 목록과 계약서의 과업 범위가 서로 다르면 분쟁이 생기기 쉽습니다. 계약 전에 같은 기능명을 같은 의미로 사용하고 있는지 확인하세요.

사용자·관리자 기능

사용자가 보는 화면뿐 아니라 운영자가 조회·수정·승인·취소·정산할 수 있는 범위를 적습니다.

예외 처리와 권한별 차이까지 계약 범위에 포함되는지 확인합니다.

외부 서비스와 계정

결제, 문자·알림톡, 지도, AI API처럼 외부 서비스를 누가 가입하고 어떤 계정을 사용하는지 정합니다.

외부 서비스 이용료와 심사·승인 지연이 개발 일정에 미치는 영향도 구분합니다.

산출물과 인수 항목

디자인 파일, 소스코드, 데이터베이스 구조, 배포 환경, 도메인·서버 계정, 운영 매뉴얼 등 전달할 항목을 정합니다.

단순 열람 권한인지 편집·소유 권한인지도 함께 확인합니다.

산출물은 “완성 후 전달”보다 구체적으로 적어두는 편이 좋습니다. 예를 들어 Figma 원본, Git 저장소, 서버 계정, API 키, 데이터베이스 스키마가 각각 누구 명의로 관리되는지를 구분할 수 있습니다.

기능명을 계약 문장으로 바꿀 때는 주체와 행동을 넣어보세요.

관리자는 신청 내역을 조회하고 상태를 변경할 수 있으며, 취소 요청은 관리자 승인 후 처리한다.

이처럼 누가, 무엇을, 어디까지 처리하는지가 보이면 개발 범위와 검수 기준을 함께 만들기 쉬워집니다.

개발비를 내면 소스코드와 저작권도 자동으로 넘어올까요?

소스코드 파일을 전달받는 것과 프로그램에 관한 저작재산권을 양도받는 것은 같은 문제가 아닙니다. 저작권법은 저작재산권을 전부 또는 일부 양도할 수 있도록 하고 있고, 한국저작권위원회도 이용허락 계약과 저작재산권 양도 계약을 별도의 표준계약서로 제공하고 있습니다.

따라서 계약서에서는 “소스 제공”이라는 표현만 두기보다 무엇을 언제 인도하고, 결과물의 권리를 어떻게 귀속할지 각각 확인하는 편이 안전합니다.

계약서에서는 소스코드 인도와 저작재산권 귀속을 서로 다른 항목으로 확인하세요.

권리 조항에서는 최소한 다음 세 가지를 나눠 확인해보세요.

소스코드와 프로젝트 파일 인도

저장소, 디자인 원본, 배포 스크립트, 데이터베이스 정의처럼 실제 유지보수에 필요한 파일을 무엇까지 전달하는지 적습니다.

인도 시점과 전달 방식, 편집 권한도 확인하세요.

저작재산권의 귀속·양도 범위

저작권법 제45조는 저작재산권의 전부 또는 일부 양도를 허용합니다. 프로그램을 전부 양도하는 경우에는 법이 정한 추정 규정도 있으므로, 당사자가 원하는 권리 범위를 계약서에 구체적으로 적는 편이 좋습니다.

제작사가 기존에 보유한 공통 모듈이나 별도 자산이 있다면 제외 범위도 확인합니다.

오픈소스·외부 솔루션

프레임워크, 오픈소스 라이브러리, 폰트, 플러그인, SaaS처럼 제3자 라이선스가 적용되는 요소는 자체 개발 결과물과 구분합니다.

양도할 수 없는 권리나 계속 비용이 발생하는 서비스가 무엇인지 인수 전에 확인합니다.

검수 완료 기준과 변경 요청은 어떻게 나눌까요?

검수 조항은 “검수 후 완료”라는 문장보다 무엇을 어떤 환경에서 확인하고, 불합격이면 어떻게 수정하는지가 보여야 합니다.

검수 대상

기능, 화면, 관리자 권한, 외부 연동, 데이터 이전 중 무엇을 검수하는지 정합니다.

테스트 환경

운영 서버인지 테스트 서버인지, 지원 브라우저·기기와 계정 조건을 정합니다.

오류와 미완료

요구사항을 충족하지 못한 오류와 디자인 선호 변경, 신규 기능 요청을 구분합니다.

검수 기간과 피드백

납품 후 검수 기간, 피드백 전달 방식과 수정 확인 절차를 정합니다.

변경 요청

승인된 요구사항 이후 추가·변경된 항목을 누가 확정하고 기록하는지 정합니다.

일정·금액 조정

변경으로 작업량이 늘어날 때 추가 비용과 납기를 함께 다시 확정하도록 합니다.

공공 소프트웨어사업에서는 과업내용의 변경과 그에 따른 계약금액·기간 조정을 별도로 다루는 규정이 있습니다. 이 규정은 국가기관 등의 사업에 적용되는 공공 조달 제도이므로 민간 외주 계약에 그대로 적용되는 것은 아니지만, 변경 범위와 일정·금액을 함께 문서화한다는 원칙은 참고할 만합니다.

이 요청은 원래 요구사항을 충족하지 못한 오류인가요, 아니면 기존 범위를 바꾸는 새로운 요청인가요?

이 질문을 먼저 정하면 무상 수정 대상과 추가 개발을 구분하기 쉬워집니다.

변경 요청 기록 예시

변경 항목: 관리자에게 엑셀 다운로드 기능 추가 / 기존 계약 포함 여부: 미포함 / 영향: 개발·테스트 2일 추가 / 추가 비용: 별도 견적 / 적용 일정: 양측 승인 후 확정

하자보수·유지보수·인수인계는 따로 적으세요

서비스가 공개된 뒤에도 오류 수정, 외부 서비스 변경, 기능 개선과 운영 지원이 이어질 수 있습니다. 계약서에서 이 모든 업무를 “유지보수” 한 단어로 묶으면 포함 범위를 다르게 이해할 수 있습니다.

계약 종료 이후의 업무는 다음처럼 나눠 확인해보세요.

하자보수

계약된 요구사항대로 구현되지 않았거나 납품 당시 존재한 오류를 어떤 기간과 절차로 수정하는지 정합니다.

대상 오류와 제외 조건, 신고·확인 방법을 계약서에 적어두세요.

운영·유지보수

배포 후 모니터링, 서버·외부 API 변경 대응, 운영 문의와 기능 개선 중 무엇을 월 유지보수에 포함하는지 구분합니다.

응답 시간과 작업 시간, 초과 작업 비용도 확인하면 좋습니다.

인수인계

소스코드와 디자인 원본뿐 아니라 도메인, 서버, 데이터베이스, 외부 서비스 계정, 환경 변수, 배포 방법과 운영 매뉴얼을 점검합니다.

계약 종료 후에도 발주사가 독립적으로 서비스에 접근할 수 있는지 확인하세요.

특히 인수인계에서는 파일 개수보다 발주사가 실제로 수정·배포·운영할 수 있는 접근 권한이 있는지를 확인해야 합니다.

개발 외주 계약서, 자주 묻는 질문

Q. 개발비를 모두 지급하면 소스코드는 당연히 받을 수 있나요?

A.

계약과 개발 방식에 따라 달라질 수 있으므로 자동으로 전제하지 않는 편이 좋습니다. 계약 전에 소스코드와 프로젝트 파일의 인도 범위·시점·형태를 적고, 저작재산권의 귀속 또는 양도 범위도 별도로 확인하세요.

Q. 수정 요청 횟수만 정하면 검수 기준이 명확해지나요?

A.

횟수만으로는 부족합니다. 기존 요구사항을 충족하기 위한 오류 수정인지, 디자인 선호 변경인지, 새로운 기능 추가인지에 따라 성격이 달라질 수 있습니다.

검수 기준과 변경 요청 절차를 함께 정해야 수정 횟수 조항도 해석하기 쉬워집니다.

Q. 하자보수와 유지보수는 같은 의미인가요?

A.

계약마다 용어를 다르게 사용할 수 있으므로 이름보다 실제 업무 범위를 확인해야 합니다. 일반적으로 계약된 기능의 오류 수정과 출시 후 운영·개선 업무를 구분해 적으면 비용과 책임 범위를 이해하기 쉽습니다.

Q. 계약서가 있으면 요구사항 정의서는 없어도 되나요?

A.

계약서만으로 모든 기능과 예외 상황을 표현하기 어렵다면 별도의 요구사항 정의서나 기능명세서를 계약 기준 문서로 연결하는 편이 좋습니다.

변경 이력과 승인 주체까지 기록하면 어떤 버전이 최종 범위인지 확인하기 쉬워집니다.

출처: 국가법령정보센터 「저작권법」 제45조(저작재산권의 양도, 시행 2026년 8월 11일), 「소프트웨어 진흥법」 제50조, 한국저작권위원회 저작권 표준계약서 및 컴퓨터프로그램 감정 안내. 이 글은 민간 개발 외주 계약을 준비할 때 참고할 일반적인 실무 체크리스트이며 개별 계약에 대한 법률 자문을 대신하지 않습니다.

노코더스는 아이디어를 실제 서비스로 구현하는 개발 파트너입니다. 기획·디자인·웹 개발부터 관리자 기능과 외부 서비스 연동까지, 필요한 기능과 운영 범위를 함께 검토하고 프로젝트에 맞는 개발 방식을 제안합니다.

목록으로