【基本案情】
北京中某网络科技有限公司与北京盛某网络科技有限公司于2016年7月27日签订《软件开发合同》,约定前者委托后者开发一款游戏软件。合同签订后,北京中某网络科技有限公司依约向北京盛某网络科技有限公司支付了首期开发款130000元,之后北京中某网络科技有限公司认为北京盛某网络科技有限公司未按要求进行开发工作,也未按时交付产品并完成验收,致使合同目的不能实现,遂以北京盛某网络科技有限公司构成违约为由,起诉至北京知识产权法院,请求判令解除涉案合同、北京盛某网络科技有限公司退还软件开发款130000元及赔偿相应利息损失。
北京知识产权法院于2019年5月30日作出的(2018)京73民初44号民事判决:驳回北京中某网络科技有限公司的诉讼请求。北京中某网络科技有限公司不服,提起上诉。最高人民法院于2019年11月13日作出(2019)最高法知民终433号民事判决:驳回上诉,维持原判。
【裁判结果】
法院生效裁判认为,北京盛某网络科技有限公司应履行的主合同义务之一,是按照约定的交付日期和《项目功能说明书》的约定,向北京中某网络科技有限公司交付名称为“手机游戏长连接强联网服务端程序(含源码)”和“手机游戏管理工具(含源码)”的合格软件。结合双方的庭审陈述和举证情况,可以认定涉案合同订立后没有制定《项目功能说明书》。《项目功能说明书》缺失所引发的后果,就是涉案合同自始便存在软件开发工作缺乏具体、清晰指向的风险。在涉案合同缺乏关于《项目功能说明书》制定和提交义务方约定的情况下,前述风险本应有赖于双方遵循诚实信用原则,共同协力消除,特别是在涉案合同项目系采取由委托方负责软件前端开发、受托方负责软件后端开发的分工模式下更当如此。然而,由于涉案合同双方在履行过程中未能及时协商制定《项目功能说明书》,不可避免地增加双方在对接磨合、相互探明意图过程中无谓耗费的时间成本,进而客观上加大了受托方不能如期交付软件的风险和难度。继而,北京中某网络科技有限公司和北京盛某网络科技有限公司均确认合同履行过程中没有制定软件开发计划。虽然,北京盛某网络科技有限公司作为软件开发方,应当履行主动发起与委托方北京中某网络科技有限公司讨论制定软件开发计划的义务。但是,北京中某网络科技有限公司作为涉案软件的委托开发方,其既然负有依照开发计划在每一个阶段检测和验收北京盛某网络科技有限公司开发的阶段性产品的义务,则其同样应当积极督促北京盛某网络科技有限公司及时协商制定软件开发计划。然而,由于涉案合同双方在履行的初始阶段未能及时共同制定软件开发计划,不可避免地造成后续软件开发过程出现前后端对接上的无序状态,人为增加了双方在协调工作进度上的时间成本,进而同样加大了受托方不能按期交付软件的风险和难度。现实生活中一款软件的开发往往不会是一蹴而就之事,在软件开发过程中随着委托方需求的进一步明晰、合同双方交流的不断深入、受托方阶段性完成的具体情况、市场情势的客观变化乃至交易成本控制的考量,软件的内容和功能需要适时进行调整和改进实属正常。故,软件开发过程中需要修改,不一定是委托开发方的自身原因所致,还可能是因受托方的开发工作不符合要求所致。结合双方开发人员的QQ聊天记录内容,现有证据无法证明软件开发过程中出现反复修改甚至推倒重来的原因系北京盛某网络科技有限公司完成的工作不合要求所致。相反,北京盛某网络科技有限公司被要求修改或推倒重来,或是因为负责软件前端开发的北京中某网络科技有限公司开发人员变动,新进人员未清楚了解前任人员与北京盛某网络科技有限公司开发人员的沟通过程;或是因为北京中某网络科技有限公司在履行过程中自行更改软件开发思路,新增需求事项。而涉案软件开发过程中缺乏《项目功能说明书》和软件开发计划的指引和约束,进一步加剧了前后端开发人员对接混乱的状态。以上情形,客观上都造成涉案软件开发进度的延宕,故开发进度被延宕的原因不应简单归责于北京盛某网络科技有限公司。
【裁判要旨】
计算机软件开发合同履行过程中,随着委托方需求的进一步明晰、合同双方交流的不断深入、受托方阶段性完成的具体情况、市场情势的客观变化乃至交易成本控制的考量,软件内容和功能进行调整和改进实属正常,不宜仅因软件开发方超过合同约定的履行期限交付软件即简单认定其构成迟延履行。