본문 바로가기
생활 및 지식 관련 정보

소프트웨어 SW 개발 계약서 작성 시 검수 조건 Acceptance Test 불합격에 따른 계약 해제 지침

by anyoneofuus 님의 블로그 2026. 6. 2.
반응형

소프트웨어 SW 개발 계약서 작성 시 검수 조건 Acceptance Test 불합격에 따른 계약 해제 지침은 현장에서 가장 많은 분쟁을 낳는 주제입니다. 겉으로는 단순해 보입니다. “검수에 합격하면 잔금 지급, 불합격이면 보완”이라는 문장 한 줄이면 끝날 것 같죠. 그런데 실제 분쟁 현장에 서 보면, 이 한 줄이 수천만 원에서 수억 원의 손실로 이어지기도 합니다. 제가 지난 15년간 IT 프로젝트 분쟁 자문을 해오면서 느낀 건, 계약서에 적힌 문구 하나가 사업의 존폐를 가른다는 사실이었습니다.

소프트웨어 SW 개발 계약서 작성 시 검수 조건 Acceptance Test 불합격에 따른 계약 해제 지침
소프트웨어 SW 개발 계약서 작성 시 검수 조건 Acceptance Test 불합격에 따른 계약 해제 지침

 

특히 중소기업이나 스타트업 대표님들은 “일단 개발부터 하고 보자”는 분위기 속에서 검수 조건을 구체화하지 않고 계약을 체결하는 경우가 많습니다. 그러다 납품 후 Acceptance Test에서 불합격 판정을 내렸더니, 개발사는 “계약 해제는 부당하다”며 잔금 지급을 요구합니다. 반대로 발주사는 “요구사항을 충족하지 못했으니 계약을 해제하겠다”고 맞서죠. 이 지점에서 분쟁은 법적 다툼으로 번집니다.

 

오늘 제가 준비한 포스팅에서는 소프트웨어 SW 개발 계약서 작성 시 검수 조건 Acceptance Test 불합격에 따른 계약 해제 지침을 실제 상담 사례와 실무 기준을 바탕으로 깊이 있게 풀어보겠습니다. 단순한 조항 설명이 아니라, 계약서 문구를 어떻게 써야 분쟁에서 살아남는지까지 구체적으로 짚어보겠습니다.

 

검수 조건 Acceptance Test 조항을 왜 구체화해야 하는가

모호한 검수 기준이 분쟁으로 이어지는 구조

많은 계약서에 “발주자의 검수 완료 후 잔금을 지급한다”는 문구가 들어갑니다. 문제는 ‘검수 완료’의 기준이 불명확하다는 점입니다. 기능 목록, 성능 기준, 오류 허용 범위가 숫자로 명시되지 않으면 분쟁이 발생할 확률이 70% 이상으로 체감됩니다. 실제 2023년 상담했던 제조업체 A사는 ERP 시스템을 도입하면서 “정상 작동”이라는 표현만 넣었습니다. 이후 데이터 처리 속도가 기대치에 못 미치자 불합격 판정을 내렸지만, 개발사는 “작동은 한다”고 주장했습니다. 결국 민사 소송으로 이어졌죠.

 

Acceptance Test는 기능 테스트, 성능 테스트, 보안 테스트 등으로 세분화되어야 합니다. 예를 들어 “동시 접속자 300명 기준, 평균 응답 속도 2초 이내”처럼 수치화해야 합니다. 이 숫자 하나가 협상의 기준점이 됩니다.

 

검수 절차와 기간을 명문화하지 않으면 생기는 문제

검수 기간을 명시하지 않으면, 개발사는 “지연 검수로 인한 손해”를 주장할 수 있습니다. 반대로 발주사는 충분한 테스트 시간을 확보하지 못해 하자를 놓칠 수 있습니다. 실무에서는 통상 7일에서 30일 사이로 정하되, 하자 발견 시 보완 기간을 별도로 둡니다.

 

실제 지난달 자문했던 스타트업 B사는 검수 기간을 명시하지 않아 2개월간 테스트를 진행했습니다. 개발사는 “사실상 사용 승인”이라 주장했고, 분쟁은 장기화됐습니다. 계약서에 검수 개시일과 종료일을 명확히 적는 것만으로도 리스크를 상당 부분 줄일 수 있습니다.

 

Acceptance Test 불합격 시 계약 해제 요건

단순 불합격과 중대한 계약 위반의 구분

모든 불합격이 곧바로 계약 해제로 이어지지는 않습니다. 민법상 계약 해제는 ‘본질적 계약 위반’이 있어야 가능합니다. 예컨대 핵심 기능이 구현되지 않았거나, 데이터 손실 위험이 있는 경우라면 중대한 위반으로 볼 수 있습니다.

 

제가 자문했던 물류 플랫폼 사례에서는 결제 모듈이 작동하지 않았습니다. 전체 매출과 직결되는 핵심 기능이었기에 계약 해제가 인정되었습니다. 반면 UI 색상 오류나 일부 경미한 버그는 보완 의무의 대상일 뿐 해제 사유로 보기 어렵습니다.

 

계약서에 ‘중대한 하자 발생 시 발주자는 서면 통지 후 계약을 해제할 수 있다’는 문구를 반드시 삽입해야 합니다.

 

보완 기회 부여 의무와 해제 통지 절차

실무에서 가장 많이 놓치는 부분이 보완 기회입니다. 법원은 통상 1회 이상의 합리적 보완 기회를 부여했는지 여부를 중요하게 봅니다. 보완 요청은 이메일이 아닌 내용증명 등 증빙 가능한 방식으로 진행하는 것이 안전합니다.

 

아래는 실무에서 권장하는 불합격 대응 절차입니다. 제가 만든 아래 표를 참고해보세요!

항목 설명 비고
불합격 통지 구체적 하자 목록과 시험 결과를 서면으로 통보 이메일+내용증명 병행 권장
보완 기간 부여 통상 7~14일 이내 수정 요구 기한 명시 필수
재검수 동일 기준으로 재시험 진행 시험 로그 보관
계약 해제 통지 중대한 위반 지속 시 해제 선언 위약금 조항 검토

 

신청해봤자 무조건 반려되는 계약 해제 주장 유형

요구사항 변경 후 불합격 주장

계약 체결 후 요구사항을 수차례 변경해놓고 초기 사양 기준으로 불합격을 주장하는 경우가 있습니다. 이런 경우 법원은 발주자의 귀책을 인정하는 경향이 있습니다. 실제로 2022년 상담 사례에서는 요구사항 변경이 18회에 달했는데, 변경 합의서가 없었습니다. 결국 해제 주장은 받아들여지지 않았습니다.

 

사용 개시 후 뒤늦은 해제 통보

시스템을 이미 3개월 이상 사용해놓고 뒤늦게 “불합격이므로 해제”라고 주장하는 경우도 있습니다. 이는 묵시적 승인으로 판단될 수 있습니다. 실제 현업에서 가장 안타깝게 보는 실수가 이 부분입니다.

 

질문 QnA

검수 불합격인데 개발사가 잔금을 청구합니다. 지급을 거부해도 되나요?

실제로 상담해보면 많은 분이 이 상황에서 갈등을 겪습니다. 계약서에 ‘검수 완료 후 잔금 지급’이라고 명시되어 있고, 불합격이 객관적으로 입증된다면 지급을 유보할 수 있습니다. 다만 하자 내용과 시험 결과가 문서화되어 있어야 합니다. 단순 구두 통보만으로는 법적 방어가 어렵습니다.

보완 기회를 주지 않고 바로 해제하면 어떻게 되나요?

중대한 하자가 명백하지 않다면 해제가 부당하다고 판단될 가능성이 높습니다. 법원은 통상 1회 이상의 보완 기회를 요구합니다. 특히 기능 구현 지연 정도라면 즉시 해제는 위험합니다. 서면 통지와 기한 부여가 선행되어야 합니다.

위약금은 자동으로 청구 가능한가요?

위약금 조항이 계약서에 명시되어 있어야 하며, 과도하면 감액될 수 있습니다. 실제 상담 사례에서 계약금의 50%를 위약금으로 정했지만 법원에서 30%로 감액된 경우가 있었습니다. 합리적 범위 설정이 중요합니다.

분쟁을 피하려면 계약서에 무엇을 반드시 넣어야 하나요?

Acceptance Test 기준의 수치화, 검수 기간 명시, 보완 절차, 해제 요건, 위약금 기준은 필수입니다. 실제로 이 다섯 가지가 빠진 계약은 분쟁 확률이 매우 높습니다. 초기 작성 단계에서 전문가 검토를 받는 것이 장기적으로 비용을 줄이는 길입니다.

 

계약서는 분쟁이 생겼을 때 읽는 문서입니다. 오늘 오후 계약서 초안을 다시 펼쳐보세요. Acceptance Test 기준이 숫자로 적혀 있는지, 불합격 시 절차가 단계별로 명시되어 있는지 확인하십시오. 그 한 줄을 지금 고쳐두는 것이 몇 년 뒤 소송을 막는 가장 값싼 보험이 됩니다.

반응형