中华人民共和国最高人民法院 民 事 判 决 书 （2020）最高法知民终1130号 上诉人（原审被告）：武汉润丰壹网信息科技有限公司。住所地：湖北省武汉市江夏区。 法定代表人：杨宣宝，该公司董事。 委托诉讼代理人：杨宣国，男，该公司工作人员。 被上诉人（原审原告）：程都，住湖北省大冶市。 委托诉讼代理人：谭自成，北京市京师（武汉）律师事务所律师。 委托诉讼代理人：严源，北京市京师（武汉）律师事务所律师。 上诉人武汉润丰壹网信息科技有限公司（以下简称润丰公司）因与程都计算机软件开发合同纠纷一案，不服湖北省武汉市中级人民法院于2019年10月11日作出的（2019）鄂01民初5219号民事判决，向本院提起上诉。本院于2020年7月27日立案后，依法组成合议庭进行了审理。本案现已审理终结。 润丰公司上诉请求：撤销原审判决，发回原审法院重审。事实和理由：原审判决对违约认定与事实不符，《项目开发合同》等协议履行过程中，开发团队相关技术人员见证了整个项目延期原因、团队整体移交事实过程及相关细节，要求在审理过程中对开发团队相关技术人员的证词和证言进行质证。 程都辩称：润丰公司未能依据《合作协议书》以及《项目开发合同》《软件开发补充协议》的约定按期交付软件产品的行为已经构成了根本违约。项目开发过程中，程都对于产品的全部修改要求均在《项目开发合同》约定的功能需求列表允许的范围之内，《项目补充协议》约定了开发完成的期限和最终的交付时间。双方协商过开发团队整体移交事宜，草拟过《解约协议书》，但是未达成一致意见，开发团队的移交没有约定依据，也没有免除润丰公司的合同义务。 程都向原审法院提起诉讼，原审法院于2019年5月23日立案受理，程都起诉请求：1.解除程都与润丰公司之间签订的《合作协议书》《信息保密协议》《项目开发合同》及《软件补充协议》；2.润丰公司返还程都支付的作品设计及系统开发款项78000元；3.润丰公司返还程都已支付服务器费用21600元；4.润丰公司向程都支付违约金45480元；5.润丰公司承担损害赔偿金20443.42元；6.润丰公司承担本案诉讼费用。 原审法院认定事实：2018年9月1日，程都与润丰公司签订《合作协议书》一份。该协议约定：程都为合同甲方，润丰公司为合同乙方，甲方委托乙方进行项目产品前期需求功能列表制定，以确定后期项目合作开发的具体产品细节；乙方按照甲方大概要求，负责制定整个项目产品功能设计和制定出详细的产品功能需求列表；甲方支付乙方前期合作诚意金5000元，正式合同确定后，则按照合同预付款进行收取减免。甲方对乙方制定的需求功能列表进行审核确认，该需求功能列表作为后期合同的附件。甲、乙两方在该合同上签字。同日，该合同甲、乙双方还签订一份《信息保密协议》，就上述项目合作协议中的保密事项进行了约定。上述协议签订后，程都向润丰公司支付诚意金5000元。 2018年9月4日，程都（合同甲方）与润丰公司（合同乙方）签订一份《项目开发合同》。该合同第一条约定：甲方委托乙方开发该项目参考附件产品需求功能表，即棋牌游戏项目设计及程序开发，乙方应按照合同约定进度和要求完成委托作品设计、开发，并交付委托作品给甲方进行审核；乙方应在2018年11月4日前完成委托作品设计、开发；项目开发完成，甲方委派技术人员或代表与乙方共同进行需求功能确认验收，对验收出现的问题，乙方应立即继续修改，3天内修改完成，乙方修改合格后向甲方提出项目最终验收请求，甲方应在3-7天内组织最终验收，超过该确认期限则视为甲方默认项目通过最终验收，具体验收标准参考合同附件需求文档；在甲方验收通过并支付款项后，乙方提供项目源代码和3个月的免费维护期。合同第三条确认，项目开发总费用为13万元，包含委托作品设计及系统开发费用，第一期为合同预付款，在签订本合同当日支付30%，即39000元；第二期费用为项目需求界面做好经甲方验收确认2个工作日内支付总费用30%，即39000元；第三期费用为总费用30%，即39000元，于项目功能全部开发完成经甲方验收确认后2个工作日内支付；第四期费用为总费用10%，即13000元，在甲方验收后项目运行3个月支付给乙方。上述费用，甲方按照双方约定，根据乙方开发进度支付款项，甲方没有按时支付款项，乙方有权暂停或终止开发及相关服务，乙方需按时按期交付开发成果，甲方接收相关阶段开发成果，才给予支付阶段开发费用，因软件开发交付后不可退原因，经甲方确认交付一概都不可退还。服务器及其他费用按照每月3000元标准按年收取。合同第六条约定，乙方按合同约定进度交付委托作品，超过70天内测试未通过按照违约金支付每天1%违约金；甲方逾期付款的，每拖延一天，乙方可向甲方收取合同金额的1%违约金；若因甲方原因单方中止本合同，甲方除承担违约金外，还需补交乙方本合同未付余款。协议达成后，甲、乙两方均在该协议上签名、盖章。该合同附件为功能清单及报价，其中，功能清单子模块包括：原型设计、UI设计、开机页面、登录和注册、游戏玩法、消息咨询、个人中心、分销、商城、登录、用户管理、权限管理、数据统计及后台程序等。该附件已经乙方盖章确认，并作为前述开发合同附件。 上述合同签订后，程都按照合同约定于2018年9月4日支付预付款34000元。同年10月1日，程都向润丰公司支付合同进度款39000元。润丰公司收款后，即着手项目软件开发，并于2018年11月9日，向程都交付PC端UI、后台原型、移动端UI界面。程都在项目交付验收单上签字确认通过验收。 2018年11月16日，程都、润丰公司双方签署一份《软件开发补充协议》。该协议载明：截止2018年10月16日，基于实际合作情况变更及软件开发需求调整，双方商定软件最终交付时间变更为2018年12月15日，源代码及相关资料移交时间变更至2019年2月15日，在此期间，润丰公司对软件运行负责维护工作，甲方在软件交付正常运营1周内支付合同约定款项等。程都、润丰公司双方在该补充协议上签名、盖章。该补充协议签署后，程都于2018年12月3日向润丰公司支付服务器款项21600元。润丰公司向程都出具收款收据一张，载明首款款项为服务器费用。 2018年12月14日，程都、润丰公司通过微信进行工作联系。润丰公司技术人员将开发软件文件通过微信发送给程都，并与程都讨论游戏软件语言、频道、抢庄流程、打牌牌面、服务器数据调整、域名测试访问等。至2018年12月26日，手机登屏结算、游戏购房卡、积分代码等功能尚未完成。程都通过微信联系润丰公司，询问开发成果最终完成时间。润丰公司技术人员回复2019年元旦节完成。2019年1月3日，润丰公司向程都发送游戏软件链接数据。程都发现润丰公司开发的项目软件还存在群主管理、结算、游戏设置、房卡等打不开，服务器不能访问、手机登录无法接受验证码等需修改。截止2019年2月23日，润丰公司对程都提出的软件功能存在问题仍未修复，不能达到最终交付条件。 2019年4月11日，润丰公司为解决上述合同项目开发问题，提出将该项目开发团队整体移交程都，由程都直接负责项目开发团队的项目软件开发工作，并拟定一份解约约定协议。该协议约定：1.乙方开发团队人员从3月1日起转为甲方工作，相关利益不再和乙方有关系；2.该开发团队在甲方工作3个月期满，2019年3月1日起至2019年5月30日止，双方前期签订的相关合同和约定自动终止；3.本协议执行和双方前期合同有冲突条款，双方再次约定，甲方不予承担由此协议执行引起的违约责任，乙方在此给予保证不会对此条款违约向甲方进行任何赔偿要求。上述条款通过微信发送程都。程都对此协议未予签字、确认。润丰公司为此协议，批准项目开发团队陈锐、涂继康等员工离职交接清单手续，交接手续载明工作交接日的时间为2019年3月30日。2019年5月23日，程都提起本案诉讼。 另查明，程都为本案项目开发合同履行，从住地往来武汉等支付住宿费506元，交通费330.28元。 原审法院认为：1.关于合同性质及其效力认定问题。程都、润丰公司双方之间签署的合作开发协议书、信息保密协议、项目开发合同及其项目需求文件附件、软件开发补充协议中约定由润丰公司为程都研发涉案游戏软件，搭建游戏平台及后台管理系统，移交游戏软件源代码及技术资料，程都向润丰公司支付设计、开发费用，研发费用及技术服务费用。上述协议、合同约定的当事人之间的权利、义务内容具有游戏软件技术开发法律特征，应认定为游戏软件技术开发合同。程都、润丰公司双方在该协议、合同及补充协议、附件上签字、盖章，协议、合同内容条款符合双方当事人的真实意思表示，且约定内容并不违反法律、法规规定，故协议、合同均合法、有效，对双方具有约束力，并受法律的保护。 2.关于程都履约违约责任的认定。涉案项目合同、协议签订后，程都按照合同约定，向润丰公司支付了合同诚意金、合同预付款及合同开发进度款，并接受润丰公司开发的软件界面，其履约行为符合合同、协议的约定。故程都为合同、协议守约方。 3.关于润丰公司履约违约责任的认定问题。润丰公司接受合同诚意金、预付款后，组织开发团队进行项目软件设计与开发，并在约定期限内向程都交付PC端、后台原型及移动端界面等阶段性开发成果，履约行为符合合同约定。合同履行过程中，基于程都游戏软件需求功能调整，经协商，程都同意将润丰公司开发完成期限调整至2018年12月15日交付。但是，合同履行期限临近，润丰公司未能在约定期限内向程都交付软件开发成果。合同约定交付期限届满后，润丰公司仍不能交付其开发成果；且至程都起诉前，合同约定的最终开发成果尚未完成，也未交付。润丰公司行为违反了合同约定的交付期限，且不能证明涉案软件开发项目最终开发完成，润丰公司应该承担不能交付的违约责任。程都据此提请解除合同、返还已付项目款项、赔偿经济损失的请求，符合合同约定。程都该项主张成立，原审法院予以支持。本案中，润丰公司庭审中抗辩认为，涉案合同开发成果逾期交付原因在于程都项目功能调整，不能交付原因是润丰公司与程都达成项目开发团队移交、项目开发合同终止履行的协议所致。对此，原审法院认为，第一，如前所述，在程都、润丰公司之间签订的软件开发补充协议中，双方已经明确合同交付期限延展的理由在于程都软件需求开发功能调整，且有程都、润丰公司之间往来聊天记录为证，程都软件需求功能调整，合同约定的交付期限应当顺延。第二，项目开发合同履行中，双方最终商定软件开发成果最终交付时间为2018年12月15日，软件代码及技术资料交付时间延展至2019年2月15日。该约定系程都、润丰公司之间约定，且经签字、盖章，应为有效。但是，在合同履行中，涉案软件开发项目至2019年2月23日尚未最终完成，更不涉及开发成果最终交付。润丰公司在远超顺延交付期限后，涉案软件开发项目尚未最终完成。对已完成部分，程都提出修改意见，并由润丰公司进行修改，但润丰公司最终也达不到合同约定的交付标准和要求，故其应该承担不能交付的违约责任。第三，庭审中，润丰公司提交证据证明其与程都达成其开发团队整体移交、合同义务免除的解约协议。原审法院审查认为，润丰公司提交的该项解约协议书未经程都、润丰公司双方签字、确认；且无证据证实程都同意以该份解约协议了结双方合同履行争议的事实。润丰公司以团队整体移交免除合同义务履行的抗辩理由无事实依据，原审法院不予支持。综上，润丰公司不能交付合同约定的软件技术开发成果，构成违约，应承担不能交付的违约责任。 4.关于本案合同违约责任承担问题。第一，2018年12月15日，润丰公司交付部分开发成果存在一些技术问题，双方对部分交付功能进行修改，到合同约定延展期限届满，润丰公司仍不能交付最终开发成果。该行为导致涉案合同处于非正常履行状态，故自2018年12月16日起该项目合同、协议应予解除。第二，合同履行中，程都已付合同款项78000元，该笔款项属于合同预付款和合同开发款项，已实际付出。由于涉案开发项目合同、协议终止履行，导致合同目的落空，润丰公司作为违约方，应将所收该款退还程都。程都该项请求，原审法院予以支持。润丰公司辩解合同预付款及合同进度款一经支付即不予退还割裂了合同开发成果整体性和合同开发款项支付的阶段性关系，有违合同目的，原审法院不予支持。第三，程都为履行涉案开发合同，按照润丰公司要求支付涉案项目的服务器费用。因润丰公司违约导致合同不能履行，合同目的落空，以致该笔费用全损。该笔费用损失与润丰公司违约具有直接的因果关系，故应由润丰公司承担，应由润丰公司给予赔偿。程都为合同履行，往返武汉，支付了住宿费、交通费，该笔费用与合同履行有关，应认定为程都的实际经济损失，由润丰公司赔偿。本案中，润丰公司除完成涉案项目软件界面原型开发义务外，对剩余部分，润丰公司采取开发团队整体移交方法进行履约，并提请程都确认。程都对润丰公司提出的整个开发团队移交程都替代润丰公司合同义务履行的协议条款未予确认，对程都并不发生协议约束的效力。润丰公司该项履约行为系对合同未履行部分的违反，属单方毁约行为，应承担预期违约的合同责任。因涉案合同、协议对该项违约未作约定，故原审法院按照《中华人民共和国合同法》的相关规定，判令润丰公司承担赔偿程都实际经济损失的违约责任。上述服务器费用损失和交通、住宿等费用损失应由润丰公司承担。第四，关于程都提出的判令润丰公司支付程都违约金45480元问题，经审查，被诉行为是不能交付违约，双方合同中对该项违约未作约定，原审法院已经判令润丰公司以赔偿实际经济损失承担违约责任，不应再判润丰公司支付违约金。程都该项请求无合同依据，且与合同法规定的违约责任承担的规定相悖，原审法院不予支持。第五，关于程都提出的判令润丰公司支付程都赔偿金20443.42元的问题，经审查，该项赔偿金的主体部分的组成源于程都误工费用及餐饮费用，程都并未提交相关费用凭证，且与合同履行无直接关联，与润丰公司合同违约不具有因果关系，故该笔费用不应由润丰公司承担。程都该项请求，原审法院不予支持。 综上所述，程都、润丰公司之间形成涉案游戏软件技术开发合同法律关系。润丰公司未按照合同约定，履行涉案项目软件的开发及开发成果的交付义务，构成根本性违约，润丰公司应承担解除合同、返还已付款项、赔偿损失的违约责任。润丰公司抗辩理由无事实依据和法律依据，原审法院不予支持。 原审法院判决：（一）自2018年12月16日起，解除程都与润丰公司之间签订的涉案软件开发项目《合作协议书》《信息保密协议》《项目开发合同》及附件、《软件开发补充协议》；（二）润丰公司于原审判决生效次日起十日内返还程都已付合同开发款项人民币78000元；（三）润丰公司于原审判决生效次日起十日内赔偿程都经济损失22436.28元；（四）驳回程都其他诉讼请求。如润丰公司未履行判决指定的金钱给付义务，则按《中华人民共和国民事诉讼法》第二百五十三条的规定，向程都支付未履行部分的迟延履行金。原审案件受理费3611元，由润丰公司负担。此款程都起诉时已预缴原审法院，润丰公司应将该款连同上述判决款项一并支付给程都。 本案二审期间，润丰公司向本院提交新证据：润丰公司与程都、赵园、陈锐项目开发人员微信聊天记录及相关说明，证明目的：开发团队已经整体移交给了程都。 程都的质证意见为：对该证据的三性不予认可，不认可其证明目的。该聊天记录生成时间在程都提起诉讼之后，润丰公司与开发人员进行的沟通，不是在开发时间内的内容，也不在双方约定的延期开发时间内，该证据不应被采纳。 本院的认证意见为：该证据的形成时间是2019年6月19日之后，根据涉案《软件开发补充协议》，涉案计算机软件交付使用的时间是2018年12月15日。没有证据表明，2018年12月15日之后，双方达成关于解除《合作协议书》以及《项目开发合同》《软件开发补充协议》的约定。因此，对于该证据的证明力，本院不予认可。 原审查明的事实属实，本院予以确认。 本院认为，根据双方当事人的诉辩意见及本案事实，本案在二审阶段的争议焦点问题是：（一）涉案计算机软件技术开发合同履行中是否存在违约行为。（二）双方是否以团队移交的形式变更了合同。（三）原审法院关于违约责任的认定是否正确。 （一）关于涉案计算机软件技术开发合同履行中是否存在违约行为问题 本院认为，2018年11月16日，双方当事人签署一份《软件开发补充协议》。该协议载明：截止2018年10月16日，基于实际合作情况变更及软件开发需求调整，双方商定软件最终交付时间变更为2018年12月15日，源代码及相关资料移交时间变更至2019年2月15日，在此期间，润丰公司对软件运行负责维护工作，程都在软件交付正常运营1周内支付合同约定款项等。双方当事人在该补充协议上签名、盖章。该补充协议签署后，程都于2018年12月3日向润丰公司支付服务器款项21600元。润丰公司向程都出具收款收据一张，载明首款款项为服务器费用。至2018年12月26日，手机登屏结算、游戏购房卡、积分代码等功能尚未完成。程都通过微信联系润丰公司，询问开发成果最终完成时间。润丰公司技术人员回复2019年元旦节完成。2019年1月3日，润丰公司向程都发送游戏软件链接数据。程都发现润丰公司开发的项目软件还存在群主管理、结算、游戏设置、房卡等打不开，服务器不能访问、手机登录无法接受验证码等需修改。截止2019年2月23日，润丰公司对程都提出的软件功能存在问题仍未修复，不能达到最终交付条件。2019年4月11日，润丰公司为解决上述合同项目开发问题，提出将其该项目开发团队整体移交给程都，由程都直接负责项目开发团队的项目软件开发工作，并拟定一份解约协议。 上述事实表明，在双方签订的《软件开发补充协议》约定交付期限届满后，润丰公司仍不能交付其开发成果；且至程都起诉前，合同约定的最终开发成果尚未完成，仍未交付。故，应当认定润丰公司的行为违反了合同约定的交付期限，且不能证明涉案软件开发项目最终开发完成。鉴于游戏软件以营利为目的，如果存在群主管理、结算、游戏设置、房卡等打不开，服务器不能访问、手机登录无法接受验证码等技术问题，游戏软件无法实现正常运营，导致技术开发合同委托方程都的合同目的不能实现。原审法院认定润丰公司未能完成开发任务，构成根本违约并无不当。 （二）关于双方是否以团队移交的形式变更了合同问题 《项目开发合同》第七条（一）约定：本合同自双方签署并自甲乙签章之日生效，履行过程中如果因双方的原因导致本合同的延期，则本合同期限顺延至本合同履行完毕而终止。双方就合同期限顺延签订书面《软件开发补充协议》。由此可以推知，虽然双方就项目开发团队整体移交事项进行过协商，但是没有达成一致意见，对于重大的合同变更事项，双方当事人会按照一贯的审慎注意义务签订书面合同。没有证据证明双方就技术开发合同解除以及后续权利义务达成书面一致意见。润丰公司为证明双方达成团队移交合意，申请合同履行过程中开发团队相关技术人员出庭作证。《最高人民法院关于民事诉讼证据的若干规定》第六十九条规定，当事人申请证人出庭作证的，应当在举证期限届满前向人民法院提交申请书。申请书应当载明证人的姓名、职业、住所、联系方式，作证的主要内容，作证内容与待证事实的关联性，以及证人出庭作证的必要性。本案中，润丰公司提交的申请书，没有说明作证内容与待证事实的关联性，以及证人出庭作证的必要性。且经询问，相关技术人员未做出愿意出庭陈述的意思表示。故，对润丰公司该项主张，本院不予支持。 综上，润丰公司应该承担不能交付涉案计算机软件的违约责任。 （三）关于原审法院关于违约责任的认定是否正确问题 首先，关于程都已付合同款项78000元，因该笔款项包括合同预付款和合同开发款项，程都已实际支付。如前所述，由于润丰公司未按涉案开发项目合同、协议履行开发义务，导致程都作为委托方开发游戏软件的合同目的落空，原审法院确定该合同于2018年12月16日予以解除，并判令润丰公司作为违约方，将所收该款退还程都，具有事实和法律依据，本院予以支持。其次，关于程都为履行涉案开发合同，按照润丰公司要求支付涉案项目的服务器费用21600元。因润丰公司违约导致合同不能履行，合同目的落空，以致该笔费用全损。该笔费用损失与润丰公司违约具有直接的因果关系，故，原审法院认定应由润丰公司负担并无不当。第三，关于程都为合同履行，往返武汉，支付的住宿费506元、交通费330.28元，因该笔费用与合同履行有关，原审法院认定为程都的实际经济损失，由润丰公司赔偿亦无不当。综上，原审法院关于违约责任承担认定无误。 综上所述，润丰公司的上诉请求不能成立，应予驳回；原审判决认定事实清楚，适用法律正确，应予维持。依照《中华人民共和国民事诉讼法》第一百七十条第一款第一项规定，判决如下： 驳回上诉，维持原判。 二审案件受理费2308元，由武汉润丰壹网信息科技有限公司负担。 本判决为终审判决。 审判长  原晓爽 审判员  张新锋 审判员  孔立明 二〇二〇年九月二十九日 法官助理宋磊 书记员汪妮 裁判要点                            案  号                       （2020）最高法知民终1130号                               案  由                       计算机软件开发合同纠纷                               合 议 庭                       审判长：原晓爽             审判员：张新锋、孔立明                                                     法官助理：宋磊                       书记员：汪妮                               裁判日期                       2020年9月29日                               关 键 词                       计算机软件开发合同；违约；解除合同；违约责任承担                               当 事 人                       上诉人（原审被告）：武汉润丰壹网信息科技有限公司；             被上诉人（原审原告）：程都。                               裁判结果                       驳回上诉，维持原判。             原判主文：             一、自2018年12月16日起，解除程都与武汉润丰壹网信息科技有限公司之间签订的涉案软件开发项目《合作协议书》《信息保密协议》《项目开发合同》及附件《软件开发补充协议》；             二、武汉润丰壹网信息科技有限公司于本判决生效次日起十日内返还程都已付合同开发款项人民币78000元；             三、武汉润丰壹网信息科技有限公司于本判决生效次日起十日内赔偿程都经济损失人民币22436.28元；             四、驳回程都其他诉讼请求。                               相关法条                       《中华人民共和国民事诉讼法》第一百七十条第一款第一项。                               法律问题                       计算机软件开发合同的违约责任认定问题                               裁判观点                       技术开发合同约定交付期限届满后，受托人仍不能交付其开发成果；且至委托人起诉前，合同约定的最终开发成果尚未完成，仍未交付。受托人的行为违反了合同约定的交付期限，且不能证明涉案软件开发项目最终开发完成，也不能证明双方达成解除涉案合同的一致意见。受托人应该承担不能交付的违约责任。                               注：本摘要并非判决书之组成部分，不具有法律效力。