본문 바로가기
기타

소프트웨어 프로그램의 미완성과 하자에 관하여(2)

by 코딩에서개발로. 2009. 12. 22.
반응형

• 제 목  소프트웨어 프로그램의 미완성과 하자에 관하여(2)
• 담당자  안홍준
• 첨부파일  
• 조회/다운   1179회/0회
• 등록일  2009-12-21 오후 1:20:21
• 내용 소프트웨어 개발계약의 형태는 법이론상으로는 위임계약과 도급계약의 형태가 있을 수 있다. 양자의 차이는 일의 완성이 계약의 목적인지 여부이다.
즉, 위임계약이라면 일의 결과물인 소프트웨어의 개발에 성공하지 못하여도 개발자가 들인 노력(투입된 개발 인력에 대한 대가)에 대하여 대가를 청구할 수 있지만, 도급계약이라면 개발자는 일을 완성하지 못하는 한 대가 지급을 청구하지 못한다.

실질상 소프트웨어 개발계약 중 상당수는 위임계약의 형식으로 체결하는 것이 바람직한 경우가 많지만 (가령, 개발에 필요한 주요 프로세스를 발주자가 제시하고 개발자는 단순히 코딩을 담당하는 역할을 하는 경우) 그럼에도 계약은 항상 발주자에게 유리한 도급계약으로 진행되어 소프트웨어 개발계약은 도급계약이라는 공식이 이미 대한민국에는 성립되어 있는 듯하다.

이러한 이유로 개발자는 일단 계약상의 결과물을 완성하였다는 법률적 판단을 받는 것이 중요한 것이다. 지난 번에 설명한 바와 같이 일단 프로그램이 완성되었다는 법률적 판단이 내려진다 하여도 바로 개발자에게 보수청구권이 발생하지는 아니한다.
발주자가 목적물이 완성되었음에도 프로그램 사용상에 문제가 있다는 주장에 대한 법률적 판단이 필요하다. 이러한 발주자의 주장은 이론상 단순한 버그로 인한 사용상 장애와 초기 계약상 약속한 프로그램의 구조적, 기능적 하자가 발생한 경우로 세분할 수 있겠다
.
과거 일본 지방재판소에서 버그와 하자의 구분기준에 관해 개발자가 문제발생을 지적 받고 바로 보수를 끝내거나 이용자와 협의하여 상당하다고 인정되는 대체조치를 바로 강구할 수 있는 경우는 법률상 하자로 평가하는 것은 불가능하다고 판시한 사례가 있어 도움이 될 듯 하지만 (이 또한 2년간의 검증작업 이후 나온 결론이다.)

사실상 위에서 언급한 단순 버그수준의 장애발생을 주장하며 대금지급을 거절하는 발주자는 거의 없다. 따라서 위 발주자의 주장은 법률상 용어로 수급인(개발자)의 하자담보책임문제로 평가되는 것이 일반적이다.
이와 관련된 법규정은 민법 667조에서 672조에 규정되어 있고 그 내용은 완성된 목적물에 하자가 있는 때에는 발주자는 개발자에 대하여 하자의 보수를 청구할 수 있고, 그 하자의 보수에 갈음하여 또는 보수와 함께 손해배상을 청구할 수 있는 권리이다.

대법원 판례(91다33056, 2001다9304판결)는 발주자의 하자보수청구권에 대해서 몇 가지 원칙을 세워두었는데,

1) 도급인은 수급인에 대하여 하자보수청구권을 행사할 수 있고 이 청구권은 특별한 사정이 없는 한 수급인의 보수지급청구권과 동시이행의 관계에 있다.


2) 도급인이 하자의 보수를 청구하려면 그 하자가 중요한 경우이거나 중요하지 아니한 것이라고 하더라도 그 보수에 과다한 비용을 요하지 아니할 경우이어야 한다.
즉, 하자가 중요하지 않거나 그 비용에 과다한 비용을 요하는 경우에는 손해배상만을 청구할 수 있다.


3) 도급인이 하자의 보수에 갈음하여 손해배상을 청구하는 경우에는 수급인이 그 손해배상청구에 관하여 채무이행을 제공할 때까지 그 손해배상의 액에 상응하는 보수의 액에 관하여만 자기의 채무이행을 거절할 수 있을 뿐, 그 나머지 액의 보수에 관하여는 지급을 거절할 수 없다.

4)하자발생에 도급인의 귀책이 있는 경우에는 과실상계가 가능하며 개발자의 하자보수 책임을 면제하는 특약도 가능하다는 점 등이다.

쉽게 말하면 개발자는 발주자가 하자 보수를 요청할 경우 하자를 보수하여 줄 때까지는 대금지급을 청구할 수 없고, 법률상 하자보수를 청구하지 못하고 발주자가 손해배상만을 요구해야 할 경우에는 그에 대한 금액을 공제한 잔액에 대해서만 대금지급청구가 인정된다는 뜻이다.

그러나 수급인의 보수청구시 도급인이 하자보수청구의 항변을 하는 것은 일반적인데 이럴 경우 항상 동시이행관계를 인정한다면 수급인에게 지나친 부담을 줄 우려가 있으므로 판례는 일정한 경우 (도급인의 항변권이 대금지급 의무를 회피하기 위한 수단이라고 보여지는 경우)에 도급인의 하자보수 항변을 권리남용으로 배척하여 수급인을 보호하는 논리를 펴고는 있으나 수급인의 대금청구시 넘어야 할 산이 많은 것은 사실이다.

개발자가 가장 중시하는 개발대금을 발주자로부터 지급받기 위해서는 앞에서 설명드린 바와 같이 프로그램이 완성되었다는 사실, 하자가 없는 프로그램이라는 사실을 개발자가 모두 입증하였을 때 가능한 것이고 그러한 입증은 사실상 쉽지 않다.

개발자는 수억, 수십억에 달하는 프로젝트를 수주하였다는 사실에 환호를 할 이유가 전혀 없다. 왜냐하면 아직 프로젝트 대금을 수령한 것은 아니기 때문이다. 이러한 프로젝트 대금을 수령하기 위해서는 아직 넘어야 할 산이 무수히 많이 남아 있다는 점을 강조하기 위해서 두 회에 걸쳐 이 칼럼을 쓴 것이다.

개발자가 프로젝트 대금수령을 위해 넘어야 할 산은 사전 준비를 많이 한 사람은 다소 쉽게 넘을 수가 있지만 사전 대비가 없는 자는 프로젝트를 수주하였다는 사실이 향후 재앙으로 변할 수도 있다는 사실을 명심해야 한다.
이러한 사전준비작업에는 여러 가지가 있겠지만 대금수령을 위한 계약조건을 명확하게 하는 작업이 포함되는 것은 당연한 것이다.
개발범위 명확화, 검수조건의 확정, 발주자와 개발자의 역할 분담 명확화와 문서화는 프로젝트 수주를 하기 위한 장애물이 아니라 최종적으로 개발대금의 수령을 편하게 해주는 전제조건이라는 사실을 개발자 회사의 CEO가 명확하게 인식하였으면 한다. 이러한 인식이 먼저 있어야 그 이후 이러한 전제조건을 위한 대비책이 계속적이고 지속적으로 나올 수 있지 않을까?


법무법인 청우 곽용석 변호사

[한국소프트웨어산업협회 자문 변호사 / 전문가그룹 대표위원]


=====================================================================
한국소프트웨어산업협회는 회원사의 각종 법률 문제 해결을 지원하기 위해
온라인 법률 상담을 지원하고 있습니다.

[온라인 법률 상담 바로가기]
=====================================================================

반응형