본문바로가기
회사 CI 상단

 IT 분쟁 예방을 위한 유지보수 계약 관련 가이드라인  


소프트웨어 유지보수계약은 시스템 안정성과 직결되며, 이행 미흡 시 손해배상 분쟁으로 이어질 수 있습니다. 본문에서는 유지보수계약의 법적 성격, 필수 조항, 분쟁 사례 및 예방 전략까지 구체적으로 다룹니다.



1. 소프트웨어 유지보수계약, 왜 분쟁이 자주 발생하는가?


현대의 디지털 비즈니스 환경에서 웹사이트, 응용프로그램, 정보시스템 등 소프트웨어는 기업 운영의 핵심 인프라로 자리 잡고 있다. 이에 따라 개발 이후에도 안정적인 운영을 위한 ‘유지보수계약’이 필수적으로 병행되고 있으나, 실제 현장에서는 이행 미흡으로 인한 분쟁이 반복되고 있다.


유지보수 미이행으로 인해 시스템 오류가 방치되거나, 장애 복구 지연으로 서비스에 지장을 초래하게 되면, 그 피해는 단순히 기술적 문제를 넘어 영업적 손실, 신뢰도 하락, 추가 비용 발생으로 이어지게 된다. 하지만 이때 피해를 보상받기 위한 법적 대응을 고려하면, 유지보수계약의 성격과 내용을 정확히 이해하고, 분쟁 발생 시 입증 가능한 자료를 사전에 확보해 두는 것이 중요하다.


 

2. 유지보수 계약상의 의무와 법적 성격


유지보수계약은 일반적으로 용역계약 또는 도급계약의 법적 성격을 띤다. 대법원은 프로그램 개발 계약을 도급계약으로 보고 있으며(대법원 1996. 7. 30. 선고 95다7932 판결), 이에 따라 개발자는 일을 완성함으로써 보수를 받을 수 있고, 유지보수계약 역시 계약서상 정해진 범위를 이행해야 할 법적 의무를 부담한다.


유지보수계약에는 통상 ① 정기점검, 모니터링 등의 범위 및 횟수, ② 장애 발생 시 대응 시간, ③ 하자 발생 시 무상 보수 범위 및 유효 기간, ④ 긴급 상황 대응 방식 및 연락수단, ⑤ 이행 불이행 시 손해배상에 관한 조항  등의 내용이 포함되어야 한다.


정기점검은 소프트웨어의 이상 유무를 사전에 발견하기 위한 핵심 유지보수 활동이지만, 대부분의 계약서에서는 단순히 “정기점검을 수행한다”는 문구만 포함되어 있는 경우가 많아 유의해야 한다. 또한, 장애 발생 시, 개발사가 어느 정도의 시간 내에 조치를 해야 하는지를 정하는 핵심 기준이고, 특히 클라우드 시스템이나 온라인 서비스를 운영하는 기업은 SLA 기준이 미흡할 경우, 심각한 신뢰도 하락과 손해로 연결된다.


개발 완료 후 일정 기간 내 오류가 발생하는 경우, 무상으로 수정해주는 조건을 명시하는 조항에 대하여도 명확히 하지 않으면, ‘기능 추가 요청인지’, ‘기존 기능의 오류인지’에 대한 해석 차이로 분쟁이 자주 발생한다.


마지막으로 실시간 서비스가 중단될 경우, 대응 시간 못지않게 연락 체계의 명확성이 중요하다. 담당자 부재나 연락 두절로 인해 피해가 확대되는 경우가 많아, 연락 체계도 계약서에 포함시키고, 유지보수 미이행 또는 SLA 위반 시 금전적 손해가 발생한 경우, 계약에 위약금 또는 손해배상 기준이 명시되어 있어야 추후 청구가 가능하다.


그러나 실제 계약서에는 이러한 조항이 부실하거나 추상적으로 기재되어 있는 경우가 많은데, 분쟁이 발생할 경우, 계약서 해석 및 실제 이행 내역에 따라 책임 유무와 범위가 달라지게 된다.



3. 법무법인 민후가 해결한 유지보수 미이행 관련 실제 분쟁 사례


(1) SW 소스코드 미제공 및 유지보수 누락으로 인한 손해배상청구 사례


응용프로그램 개발 및 공급을 전문으로 하는 의뢰 회사는 거래처와의 유지보수 계약 체결 후에도 정상적인 서비스를 받지 못하고, 개발사가 소스코드의 제공을 회피하며 복구 의무를 다하지 않은 사례가 있다.


이 사건에서 개발사는 타 소프트웨어의 소스코드를 일부 무단 복제하여 사용한 정황도 존재했으며, 상시 모니터링과 오류 감지 의무조차 이행하지 않아 시스템 오류가 장기화되었다. 이에 본 계약 이행의무 위반 및 손해발생을 근거로 내용증명을 통해 5,000만 원 이상 손해배상 청구를 진행했다.


이 사례는 유지보수계약이 단순 사후 관리 개념을 넘어, 개발사의 기술적 책임이 연속되는 구조임을 입증한 실례라 할 수 있다.


(2) 홈페이지 유지보수 지연을 사유로 한 과도한 손해배상 방어, 감액 사례


홈페이지 용역계약을 체결한 후, 원고가 서버 이전과 데이터 제공 거부를 이유로 약 1억 원대 손해배상 청구 소송을 제기한 사건에서 피고 측은 일부 지연이 있었으나, 전체 프로젝트가 정상적으로 납품되었고, 손해액 산정이 과도하다는 점을 중심으로 방어했다.


결과적으로 법원은 청구금액의 약 10% 수준으로 감액된 금액만 인정하며 피고에게 유리한 화해권고결정을 하였다. 이는 유지보수 지연이라는 사유만으로 과도한 배상 청구가 항상 인정되지 않음을 보여주는 사례로, 이행의무 범위와 인과관계를 정교하게 다툴 필요가 있음을 시사한다.


(3) 교육기관 웹사이트 장애 관련 지체상금 청구 승소 사례


교육 법인을 대리하여 진행된 유지보수 지체상금 청구 소송에서는 피고가 시스템 오류 발생 시 대응 의무를 게을리한 사실, 조치가 수개월간 이루어지지 않았다는 사실 등을 근거로 지체상금을 청구했다.


법원은 피고의 대응지연이 계약상무를 위반한 것으로 판단하여, 원고의 손해배상청구를 전면 인용하였고, 교육기관은 실질적 피해보상을 받아냈다.



4. 유지보수계약에서 분쟁을 예방하기 위한 핵심 조항

유지보수계약에서 가장 빈번히 문제가 되는 것은 ‘책임 범위의 모호성’으로 다음과 같은 핵심 조항을 반드시 명확히 해야 한다.

(1) 유지보수 범위 및 대응 기준


“정기 점검”, “24시간 장애 대응”, “수시 모니터링” 등 표현은 계약상 이행의무가 된다. 따라서 구체적 범위를 명시해야 하며, 주기·방식·장애 유형별 대응시간(SLA) 등을 수치로 기재하는 것이 좋다.


(2) 소스코드 및 기술 문서의 제출 의무


개발사의 유지보수 미이행 원인 중 하나는 ‘결과물은 넘겼지만 수정 가능한 정보는 제공하지 않음’이다. 소스코드, DB 구조, 매뉴얼 등은 유지보수의 전제조건이며, 이를 제공하지 않을 경우 대금 지급 보류 등의 제재조항을 마련해야 한다.


(3) 하자보수 및 무상 유지보수 기한


납품 후 일정 기간 내 오류가 발생할 경우 개발사가 무상으로 보수해야 한다는 조건을 명시하고, 이후의 유지보수는 별도 계약으로 진행되도록 구조화하는 것이 일반적이다. ‘하자’와 ‘기능 개선’을 구분하여 보상 책임 여부를 명확히 구별하는 것도 중요하다.


(4) 손해배상 및 위약 조항


유지보수 미이행으로 인한 금전적 손실이 예상되는 경우, 일정 기준 이상의 장애 발생 시 ‘1일 지체당 ○○원’ 형식으로 지체상금을 설정해 두는 것이 효과적이다. 이는 향후 법적 청구 시 객관적인 산정 기준이 되어 준다.


5. 개발이 완료되었는데도 유지보수 계약을 다시 체결해야 하는 이유

많은 기업이 개발 완료 후 ‘유지보수 계약’에 별도의 중요성을 부여하지 않고 사후적으로 대응하는 경우가 많다. 하지만 유지보수계약이 없는 상태에서 장애가 발생하면, 단순 개발계약만으로는 복구 책임을 묻기 어렵다. 또한, 초기 개발 범위를 넘어선 기능 확장, OS나 웹브라우저 환경 변화, 보안 위협 대응 등의 이슈는 계속해서 발생하므로, 사후 대응의 법적 근거를 확보하기 위해 ‘유지보수 전용 계약’을 별도로 체결해두는 것이 필수다.



관련 업무사례
대표 변호사

경험과 전문성을 갖춘 대표 변호사와
전화 상담을 받아보세요.

김경환 대표변호사, 변리사

김경환

대표변호사, 변리사

전화 상담
양진영 대표변호사, 변리사

양진영

대표변호사, 변리사

전화 상담