杭州远眺科技有限公司

某信息技术有限公司、杭州某科技有限公司计算机软件开发合同纠纷民事二审民事判决书

来源:中国裁判文书网
中华人民共和国最高人民法院 民事判决书 (2022)最高法知民终1760号 上诉人(一审原告、反诉被告):博康智慧城市信息技术有限公司某信息技术有限公司。住所地:中国(四川)自由贸易试验区成都高新区萃华路89号1栋27层5、6号。 法定代表人:***,该公司执行董事。 委托诉讼代理人:***某,男,该公司员工。 被上诉人(一审被告、反诉原告):杭州远眺科技有限公司杭州某科技有限公司。住所地:浙江省杭州市余杭区仓前街道文一西路1217号3幢1603室。 法定代表人:***,该公司董事长兼总经理。 委托诉讼代理人:***,北京大成(杭州)律师事务所律师。 上诉人博康智慧城市信息技术有限公司某信息技术有限公司(以下简称博康某技术公司)因与被上诉人杭州远眺科技有限公司杭州某科技有限公司(以下简称远眺某科技公司)计算机软件开发合同纠纷一案,不服四川省成都市中级人民法院于2021年9月13日作出的(2020)川01知民初205号民事判决,向本院提起上诉。本院于2022年8月23日立案后,依法组成合议庭,于2023年5月12日、2023年11月16日两次对本案进行询问。上诉人博康公司某技术公司的委托诉讼代理人***某,被上诉人远眺公司某科技公司的委托诉讼代理人***、原委托诉讼代理人***临到庭参加第一次询问;上诉人博康公司某技术公司的委托诉讼代理人***某,被上诉人远眺公司某科技公司的委托诉讼代理人***到庭参加第二次询问。本案现已审理终结。 博康公司某技术公司上诉请求:1.一审判决认定基本事实不清、程序违法,请求撤销一审判决,发回重审;2.本案一、二审诉讼费用由远眺公司某科技公司承担。事实与理由:(一)一审判决认定基本事实不清。1.未查明和认定远眺公司某科技公司在合同履行期限及博康公司某技术公司通知其履行合同义务的期限内是否完成涉案计算机软件开发、交付和安装。2.未查明远眺公司某科技公司当庭出示的视频资料以及视频对应的工程代码“WEB工程源代码_20190830.rar”的形成日期及是否在合同义务履行期限内完成并提供。3.未查明和认定远眺公司某科技公司当庭提交的工程代码是否满足开发功能需求、技术规范和相关标准以及远眺公司某科技公司邮件所称的问题和需求是否足以影响其完成涉案标的物的开发、交付和安装等,仅依远眺公司某科技公司的实际完成工程量确定与合同价款匹配,缺乏事实依据和评价标准。(二)一审判决违反法定程序,认定案件事实的主要证据未经博康公司某技术公司质证,剥夺了博康公司某技术公司的辩论权利。 远眺公司某科技公司辩称:不同意博康公司某技术公司的上诉意见。一审判决处理正确,应予维持。根据一审判决查明的事实,远眺公司某科技公司已经完成相关开发任务并交付了源代码,业主及相关项目参与人进行了现场演示汇报,涉及的第1-28项软件功能模块已经记载在相关的证据材料中。博康公司某技术公司有能力提出反驳证据而未提供,仅进行简单否认,不能否定远眺公司某科技公司的开发工作。一审判决根据远眺公司某科技公司的工作量确认涉案软件开发的源代码总量占整个合同工作总量的50%有事实依据。未开发模块是因博康公司某技术公司未协调资源所造成,过错方是博康公司某技术公司。 博康公司某技术公司向一审法院提起诉讼,一审法院于2020年5月19日立案受理,博康公司某技术公司起诉请求:1.确认博康公司某技术公司与远眺公司某科技公司签署的《购销合同》(以下简称涉案合同)于2020年3月3日解除;2.远眺公司某科技公司向博康公司某技术公司返还合同款575000元;3.远眺公司某科技公司向博康公司某技术公司支付违约金218500元(自2020年1月17日起算,暂至2020年4月20日)。庭审中,博康公司某技术公司进一步明确违约金的计算方式按照合同价款的每日0.2%,以115万元为基数从2020年1月17日起计算至该款项付清之日止。 远眺公司某科技公司一审反诉请求:判令博康公司某技术公司赔偿远眺公司某科技公司因其解除合同的经济损失260239.96元。 一审法院认定事实: 一、合同签订情况 (一)基本情况 2018年6月4日,博康公司某技术公司(甲方)与远眺公司某科技公司(乙方)签订涉案合同,约定甲方向乙方购买定制开发的“警务资源管理系统V1.0”一套,开发费为115万元。 (二)关于开发功能需求的确定 关于产品规格和技术要求,合同约定乙方保证其提供的产品符合涉案项目招标文件和[四川省高速公路公安交通管理监控系统二期工程施工图设计文件]的各项技术指标要求。系统软件的功能开发以最终用户(最终用户为四川省××队)确认的需求为准(不限于合同技术附件)。如果甲方没有提及适用标准,或技术规范说明不准确,则应符合中华人民共和国现行国家标准、行业标准或地方标准。这些标准必须是有关机构发布的最新版本的标准。 《四川省高速公路公安交通管理监控系统二期工程平台总集成及应用软件采购招标文件技术规范(初稿)》(以下简称招标文件技术规范)载明,招标的项目名称为“四川省高速公路公安交通管理监控系统二期工程平台总集成及应用软件采购”,该项目建设内容包括“集成指挥平台(专网版)”“平台支撑系统”“基础配套系统”,其中涉案项目“警务资源管理系统”属于“平台支撑系统”项下的项目之一。招标文件技术规范中“工程量清单”中对“警务资源管理系统”进行了系统描述。涉案合同技术附件载明“警务资源管理系统V1.0”软件产品开发的功能需求包括“路网交通流与通行指数研判处理”“路网交通违法数据研判处理”“路网交通事故数据研判处理”“警情信息研判处理”“重点路段处理分析”“违法行为实时分析”“工作信息流程化辅助工具”“对内数据共享交换”“对外共享与交换”9个系统功能,该功能项下还具体包括“交通流量日常统计处理”等54项子功能需求,每项子功能都有对应的需求说明。 涉案合同技术附件载明的功能需求与招标文件技术规范中“工程量清单”中“系统描述”基本一致,是招标文件技术规范中“工程量清单”中“系统描述”的进一步细化。庭审中,双方一致确认涉案合同中技术附件上所明确的功能需求为“警务资源管理系统V1.0”软件产品开发的功能需求。 (三)关于交付及违约等的约定情况 关于交货,合同约定交货时间以甲方通知为准(甲方至少提前一周通知乙方确定的交货时间,且交货时间不早于2018年10月1日),交货地点为四川省交警总队,若乙方未能在交货期限内向甲方提供全部产品,乙方必须在约定交货日之前5个工作日内书面通知甲方,甲方接到通知,有权选择单方面解除合同,向第三方采购替代产品或接受减少的数量。 关于保修及技术支持,合同约定“甲方负责根据项目实际对接需求,协调各内外部系统建设单位、业主等,获取对接所需要的相关资源,包含且不仅限于联系人、对接协议、SDK、对接数据项等内容,乙方负责代码实现最终接口数据共享交换,乙方直接与甲方对接需求,不直接面向系统建设单位、业主等获取所需资源。” 关于违约责任,合同约定,乙方在约定期间内未按时将合同的全部合格产品交付给甲方,则每迟延一天,乙方应向甲方支付延期交货产品价款的0.2%的违约金。 二、合同履行情况 合同签订后,远眺公司某科技公司开始启动该项目,该公司员工***某以施工日志与施工周报的形式对开发计划、过程、问题进行了记录,双方主要通过远眺公司某科技公司员工***某、***某与博康公司某技术公司员工******、******、******、******、***某、******邮件、微信联系。 2019年9月19日至2019年12月10日期间,远眺公司某科技公司员工***某通过邮件的形式向博康公司某技术公司员工发送了多份施工日志,每份日志中均有“存在的问题及需协调事宜”一栏,2019年10月26日至2020年1月12日期间,远眺公司某科技公司员工***某通过邮件的形式向博康公司某技术公司员工发送了多份施工周报,周报中均有“问题”一栏。前述日志和周报中多次就同一问题反复反映,比如“关于六合一数据共享需要公里桩空间数据协调推动”,问题多为合同中功能需求中的“对内数据共享交换”“对外共享与交换”。 2019年10月10日,远眺公司某科技公司员工***某向博康公司某技术公司员工******、******发送电子邮件,邮件主题为“四川省高速公路公安交通管理监控系统二期工程—警务资源情况汇报”,邮件主文中主要对警务资源项目成果进行了汇报并提出项目当前阶段需要项目组领导协调推进的工作,并以附件的形式对需要协调推进的工作以及数据服务接口需求服务进行了补充说明。 2019年10月11日,博康公司某技术公司员工******通过电子邮件的形式回复远眺公司某科技公司,称“......他(***某)‘项目当前阶段存需要项目组领导协调推进工作.docx’中描述的大部分工作内容都需要你们和用户及其他厂商进行对接、沟通、开发,不是我们什么都给你们说了你们只写个代码,这也(是)***某一致(直)在我们这边工作的内容,所有问题都让我们去做,并且一直在沟通之前的问题(交接工作没有做吗)……。” 三、其他相关情况 2020年1月8日,博康公司某技术公司通过邮政EMS向远眺公司某科技公司寄送了《通知函》,2020年1月9日,远眺公司某科技公司签收。《通知函》要求远眺公司某科技公司在签收通知函之日一周内按照约定履行合同义务。 2020年2月27日,博康公司某技术公司通过邮政EMS向远眺公司某科技公司寄送了《关于解除购销合同>的函》,2020年3月3日,远眺公司某科技公司签收。博康公司某技术公司在该份函件中表示远眺公司某科技公司在多次致函、致电、邮件催告后至今未能完成定制开发并交付涉案合同约定的标的物,根据涉案合同的约定,博康公司某技术公司单方解除合同条件已成就,依法行使合同约定的解除权,双方签订的涉案合同自本合同解除通知函送达之日起终止,并要求远眺公司某科技公司返还合同款575000元并赔偿其损失。 庭审中,双方一致确认博康公司某技术公司已向远眺公司某科技公司支付合同款项575000元。 针对远眺公司某科技公司已经完成的工作量,庭审中远眺公司某科技公司出示视频资料以及视频对应的工程代码“WEB工程源代码_20190830.rar”。 一审法院认为:涉案合同系双方当事人真实意思表示,不违反法律、行政法规的强制性规定,合法有效。庭审中,远眺公司某科技公司对于博康公司某技术公司主张涉案合同于2020年3月3日解除予以确认,同意解除涉案合同,一审判决对博康公司某技术公司的相应主张予以支持,确认涉案合同于2020年3月3日解除。本案的争议焦点在于:一、涉案合同开发的完成度;二、导致远眺公司某科技公司未全部完成合同开发工作的原因;三、合同解除后的责任承担,即远眺公司某科技公司是否应当退还博康公司某技术公司合同款,博康公司某技术公司是否应当赔偿远眺公司某科技公司经济损失。 一、关于涉案合同开发的完成度 针对远眺公司某科技公司已经完成的工作量,远眺公司某科技公司出示视频资料以及视频对应的工程代码“WEB工程源代码_20190830.rar”。 (一)关于第1-13项功能。功能1-13大部分基本完成,部分未完成功能7-8、13只提供了API接口,未有相关独立功能。博康公司某技术公司庭审中认为,从形式上来看,博康公司某技术公司对开发做了一些整合,未按合同约定的“子功能进行一对一的呈现”,但合同中并没有“子功能进行一对一的呈现”的相关约定,因此对于已整合的功能,如果相关功能完成则视为已完成。 (二)关于第14-28项功能。功能14-28博康公司某技术公司认可已形式上完成,根据视频1-3的操作结果显示,已基本完成相关功能。 (三)关于第29-34项功能。功能29-34远眺公司某科技公司在视频中称只需要提供查询API,但需求文档中并无此说明,博康公司某技术公司也不认可已完成相关功能,远眺公司某科技公司目前提供的证据中也无相应证据证明,故第29-34项功能未完成。 (四)关于第35-54项功能。功能35-54远眺公司某科技公司承认相关功能未开发完成,理由是需求不明确、无相关接口。 综上,涉案合同约定的开发功能共计54项,远眺公司某科技公司完成了1-28项,完成度为51.85%。 二、关于导致远眺公司某科技公司未全部完成合同开发工作的原因 博康公司某技术公司认为通过双方的往来邮件可以看出,博康公司某技术公司在合同履行的范围及义务内已经向远眺公司某科技公司提供了必要的资源、数据及协调,已尽到了相应的配合义务,只是远眺公司某科技公司未能完全参透双方涉案合同技术附件的要求,未能与博康公司某技术公司进行充分有效的沟通,并且混淆开发与测试的进行范围,存在边开发边测试,故导致其开发进度缓慢。最终,导致涉案合同目的无法实现。 而远眺公司某科技公司认为,其已多次多渠道向博康公司某技术公司提出需要配合协调的问题,要求博康公司某技术公司予以配合解决,但博康公司某技术公司并没有进行任何的配合和确认,这也是导致后面相关的应用接口行的程序模块无法实现,责任在博康公司某技术公司。 对此,一审判决认为,涉案合同约定开发的“警务资源管理系统”属于“四川省高速公路公安交通管理监控系统二期工程平台总集成及应用软件采购”招投标项目建设内容中“平台支撑系统”项下的项目之一。系统软件开发的最终用户并不是博康公司某技术公司,而是四川省××队。合同附件约定的功能开发需求也是依据招投标文件。作为合同唯一相对方,博康公司某技术公司合同履行的义务范围并不仅限于合同签订时提供必要的资源、数据及协调,其合同义务还应当包括根据项目开发的具体内容和进程协调各内外部系统建设单位、业主,若要求远眺公司某科技公司在履行开发义务的同时还负责和协调各内外部系统建设单位、业主显然有失公平,且远眺公司某科技公司作为其中一个子项目的开发方,也不具备该能力去协调内外部系统建设单位、业主。未完成开发的第29-34项功能,远眺公司某科技公司认为只需要提供查询API,但功能需求文档中并无此说明,故远眺公司某科技公司对于该部分功能需求未开发完成应承担责任,而对于第35-54项未开发完成的功能需求,一审判决认为,该部分未开发的内容主要为“对内数据共享交换”“对外共享与交换”,有赖于协调各内外部系统建设单位、业主为开发前提,远眺公司某科技公司在施工日志和周报中多次提到的“关于六合一数据共享需要公里桩空间数据协调推动”等问题,博康公司某技术公司既没有对此进行回复,也没有给出解决方案,故导致该部分功能需求未开发完成的过错方在博康公司某技术公司,其理应对后续开发不能承担相应的责任。 综上,对于合同约定的第29-34项功能需求未开发完成的过错方在远眺公司某科技公司,对于第35-54项功能需求未开发完成的过错方在博康公司某技术公司。 三、关于合同解除后的责任承担 本案中,根据涉案合同的约定,博康公司某技术公司在收到发票且确认无误后的10个工作日内支付合同金额的50%,即575000元,该笔款项已经支付给远眺公司某科技公司,因远眺公司某科技公司实际完成了大部分涉案合同约定的开发义务,但没有完成对第29-54项功能需求的开发,其已经完成的开发内容仍然需要获得第三方接口数据以后进行相应的程序设计,并进行整体的测试和上线等工作。一审法院根据远眺公司某科技公司目前实际完成的工作量,认为已支付的575000元与远眺公司某科技公司现已完成的开发工作量相匹配,远眺公司某科技公司无需退还该部分合同费用,故一审法院对于博康公司某技术公司要求远眺公司某科技公司退还已支付的合同费用的主张不予支持。远眺公司某科技公司未完成软件产品的交付主要过错在于博康公司某技术公司,一审法院对于博康公司某技术公司主张的依照合同约定要求远眺公司某科技公司支付违约金的主张不予支持。 对于远眺公司某科技公司反诉要求博康公司某技术公司赔偿其损失的请求,一审法院认为,远眺公司某科技公司收取了相应合同款后履行其合同义务,不属于损失的范围,远眺公司某科技公司的该项主张无事实和法律依据,一审法院不予支持。 综上,博康公司某技术公司的诉讼请求部分成立,远眺公司某科技公司的反诉请求不能成立。 一审法院判决:“一、确认博康智慧城市信息技术有限公司某信息技术有限公司与杭州远眺科技有限公司杭州某科技有限公司签订的《购销合同》于2020年3月3日解除;二、驳回博康智慧城市信息技术有限公司某信息技术有限公司的其他诉讼请求;三、驳回杭州远眺科技有限公司杭州某科技有限公司的反诉请求。本诉案件受理费11735元,由博康智慧城市信息技术有限公司某信息技术有限公司负担。反诉案件受理费2602元,由杭州远眺科技有限公司杭州某科技有限公司负担。” 本院二审期间,博康公司某技术公司未提交新证据。 远眺公司某科技公司提交一份证据材料:名称为GitLab上的涉案软件开发源代码记录截图。拟证明:远眺公司某科技公司实际已经在双方合同履行期间开发完成相应的软件代码事实。 博康公司某技术公司质证意见为:对该份证据的真实性、合法性、关联性均不予认可,该证据不能证明远眺公司某科技公司依约履行其开发及交付义务,且该证据超过举证期限。 本院认证意见为:该证据系基于GitLab建立的文档,文档建立时间与本案所涉开发项目的文件名称一致,且建立时间段亦在项目开发期间,故本院对该份证据的真实性、合法性、关联性予以确认,对其证明力将结合本案事实作出综合认定。 经审查,一审查明的事实基本属实,本院予以确认。 本院另查明: 2019年2月26日下午,四川省××队召开“高速监控二期项目软件专题会议”,会议议题为:软件专题汇报。博康公司某技术公司******参加,该总队有关人员对“警务资源管理系统”中的“交通状态指数”“违法行为分析”“事故”“警情”等四个问题提出了具体的意见。 2019年4月11日下午,四川省××队再次召开“高速监控二期项目软件专题会议”,会议议题为:软件专题汇报。博康公司某技术公司******参加。业主单位相关人员对“警务资源管理系统”的具体问题提出意见。 2019年9月至2020年5月期间,远眺公司某科技公司的员工多次向博康公司某技术公司的人员发送《施工日志》《施工周报》,多次沟通警务资源中的GIS相关功能需求确认、警务资源对接非机构数据服务器环境等。 一审法院在2021年3月2日下午组织双方当事人进行庭前证据交换,期间,远眺公司某科技公司共提交了十一份证据及一份补充证据,博康公司某技术公司对该十一份证据及补充证据均进行了质证。2021年5月21日,远眺公司某科技公司补充提交了十四份证据,其中总序号标注为“第二十五”的证据名称为“软件源代码”。同年5月24日开庭时,法庭询问博康公司某技术公司对前述所有证据的质证意见。博康公司某技术公司对“软件源代码”证据发表质证意见:“软件源代码是远眺公司某科技公司所谓的视频资料,真实性不予认可,合法性和关联性无法确认……。” 二审询问时,博康公司某技术公司的代理人陈述,并不否认远眺公司某科技公司已做的工作,但认为远眺公司某科技公司交付的产品不符合合同的要求。 远眺公司某科技公司分别于2021年5月12日23:06:24(UTC+8)、2021年5月13日00:05:31(UTC+8)、00:40:51(UTC+8)、02:00:33(UTC+8)申请可信时间戳认证,并获得四份《可信时间戳认证证书》。远眺公司某科技公司将该证书中的运行界面截图向法庭提交。博康公司某技术公司认为,部分界面截图的时间与《可信时间戳认证证书》显示的时间不匹配,但未指出不匹配的具体情形。远眺公司某科技公司解释:制作相关网页展示页面以及时间戳认证上面的时间不是同时进行的。 以上事实,有高速监控二期项目软件专题汇报会议记录、《施工日志》《施工周报》、一审质证笔录、一审开庭笔录、二审询问笔录等在案佐证。 本院认为:《最高人民法院关于适用中华人民共和国民法典>时间效力的若干规定》第一条第二款规定:“民法典施行前的法律事实引起的民事纠纷案件,适用当时的法律、司法解释的规定,但是法律、司法解释另有规定的除外。”本案为计算机软件开发合同纠纷,所涉法律事实发生在《中华人民共和国民法典》施行前,因此本案应适用《中华人民共和国合同法》(以下简称合同法)的规定。根据双方当事人的诉辩意见,本案的二审争议焦点为:(一)一审判决是否违反法定程序;(二)远眺公司某科技公司是否依约履行了涉案合同义务;(三)远眺公司某科技公司应否返还博康公司某技术公司已付合同款并支付违约金。 (一)一审判决是否违反法定程序 博康公司某技术公司主张,一审判决未将远眺公司某科技公司提交的“WEB工程源代码_20190830.rar”证据交博康公司某技术公司质证,剥夺了其辩论权利。对此,本院认为,根据一审法院2021年3月2日的庭前证据交换笔录及同年5月24日开庭笔录的记载内容可知,博康公司某技术公司对远眺公司某科技公司提交的证据1-25均发表了质证意见,一审判决并不存在将未质证证据作为认定事实依据的情形,故博康公司某技术公司关于违反法定程序的意见与事实不符,本院不予支持。 (二)远眺公司某科技公司是否依约履行了涉案合同义务 《中华人民共和国民事诉讼法》第六十七条第一款规定:“当事人对自己提出的主张,有责任提供证据。”《最高人民法院关于适用中华人民共和国民事诉讼法>的解释》第九十条规定:“当事人对自己提出的诉讼请求所依据的事实或者反驳对方诉讼请求所依据的事实,应当提供证据加以证明,但法律另有规定的除外。在作出判决前,当事人未能提供证据或者证据不足以证明其事实主张的,由负有举证证明责任的当事人承担不利的后果。” 关于远眺公司某科技公司是否完成涉案合同约定的开发任务。涉案合同系博康公司某技术公司总承包的涉案项目的组成部分,博康公司某技术公司总包后,向远眺公司某科技公司购买“警务资源管理系统”部分产品,该部分系统包括“路网交通流与通行指数研判处理”“路网交通违法数据研判处理”等9项系统功能、54项子功能。博康公司某技术公司主张,远眺公司某科技公司未按合同约定将涉案软件交付、安装。对此,本院认为,首先,根据一审查明的事实,在已交付的系统功能中,博康公司某技术公司对第1-13项部分功能进行了整合,对第14-28项功能在形式上的完成予以认可,可以初步证明远眺公司某科技公司已经完成了部分项目内容;其次,2019年2月26日、同年4月11日在四川省××队召开的“高速监控二期项目软件专题会议”上,研究的软件内容均包括“警务资源管理系统”,并进行了演示,建设单位有关人员对“警务资源管理系统”中的“交通状态指数”“违法行为分析”“事故”“警情”等问题提出了具体的修改意见,亦可印证远眺公司某科技公司负责开发的软件产品已在演示中展示;最后,在二审审理过程中,博康公司某技术公司亦认可远眺公司某科技公司完成了部分软件开发工作。因此,可以认定远眺公司某科技公司已经完成了部分软件项目的开发、交付,尚有部分软件项目未完成开发并交付。 关于远眺公司某科技公司交付的软件是否符合标准的问题。博康公司某技术公司主张,远眺公司某科技公司提交的“WEB工程源代码_20190830.rar”不能证实涉案软件是否满足合同约定的标准。对此,本院认为,涉案合同没有明确约定涉案软件的交付标准,仅写明“系统软件的功能开发以最终用户(最终用户为四川省××队)确认的需求为准(不限于合同技术附件)。如果博康公司某技术公司没有提及适用标准,或技术规范说明不准确,则应符合中华人民共和国现行国家标准、行业标准或地方标准。”可见,博康公司某技术公司作为总包人,因其不直接使用软件产品,对于涉案软件的验收标准坚持以最终用户为标准。因此,对于远眺公司某科技公司已交付的软件是否符合标准,应当以双方约定的标准进行分析。从涉案软件在建设单位的两次演示情况看,建设单位仅对“交通状态指数”“违法行为分析”“事故”“警情”中的布局、设计图形、界面的简化和美观等非结构性问题提出修改完善意见,并未对软件是否符合标准提出异议。专题会后不久,博康公司某技术公司的******在回复远眺公司某科技公司员工时答道:“王局(建设单位工作人员)现场的反应还是觉得比以前好的......讲你那块儿的时候表情还是没什么的。”由此可见,远眺公司某科技公司交付的软件整体并无结构性问题。此外,在软件开发过程中,博康公司某技术公司一直未对软件的交付标准提出要求,亦从未提出应当符合何种国家标准、行业标准或地方标准。因此,对于远眺公司某科技公司已交付的软件产品应当认定为符合约定的标准。 关于远眺公司某科技公司已完成的软件开发工作量。根据一审判决查明的事实,涉案合同第1-28项功能已经完成开发、交付,且已由博康公司某技术公司对其中部分功能进行了整合。博康公司某技术公司主张,一审判决以“WEB工程源代码_20190830.rar”作为比对远眺公司某科技公司完成开发任务的工作量依据有误。对此,本院认为,远眺公司某科技公司为证明其已交付相关软件,提交了“WEB工程源代码_20190830.rar”证据。从该证据的形成时间、上传的时间看,均在合同履行过程中形成。远眺公司某科技公司对该视频的每一步骤进行了详细说明,且与其提交的《施工日志》等记载的内容相互印证,故可以作为认定远眺公司某科技公司开发工作的依据。即便上述证据不能完全证明远眺公司某科技公司的工作完成情况,本院也注意到,其一,涉案合同虽名为《购销合同》,但从内容看,系远眺公司某科技公司依博康公司某技术公司的要求开发计算机软件,并将开发成果交付给博康公司某技术公司。故该份合同更多的是体现出计算机软件开发合同的特征。而计算机软件开发一般具有边开发边上传测试的特性。因此,远眺公司某科技公司基于GitLab建立的“WEB工程源代码_20190830.rar”文档作为备份文档,并用于本案证明其已完成相关工作的证据,具有一定的合理性。其二,对于远眺公司某科技公司已交付的成果价值判断,应结合开发成本、开发难度等综合衡量,也即判断远眺公司某科技公司已完成交付的产品功能的价值与未完成交付的产品功能的价值,除了项目数量比之外,还应结合开发的难度进行比较。本案中,截止纠纷产生时,远眺公司某科技公司已开发完成并交付的工作成果共有28项功能,这些开发成果已经用于涉案项目中。由于双方合同约定的是整体交付产品、整体支付合同金,故对已完成的28项开发成果价值的确定,可以参考该28项开发成果在整体合同功能的比例、开发难度等因素合理确定。从本案未开发完成的功能内容看,第29-33项功能为重点路段处理分析、第34-35项功能为违法行为实时分析,此两项模块下的7项子功能系依系统采集的信息基础上进行分析;第36-39项功能为工作信息流程化辅助工作。故第29-39项功能更多的是基于数据上的分析、研判功能;第40-51项为“对内数据共享交换”模块下的子功能,依涉案合同的约定,该部分应“根据集成指挥平台提出的对接需求及数表结构,完成与各个系统的对接实现工作,协助集成指挥平台完成数据交换共享功能”;第52-54项为“对外共享与交换”模块下的子功能,依涉案合同的约定,该部分应实现与省交通厅、气象局及其他外部单位共享交换。因此,从开发难度来看,远眺公司某科技公司未完成的项目开发难度不会高于其已交付的产品项目。一审判决虽然仅以项目数量比作为衡量已完成开发并交付的产品价值有所不当,但确定的价值与涉案项目的开发成本、开发难度基本相当。 (三)远眺公司某科技公司应否返还博康公司某技术公司已付合同款并支付违约金 博康公司某技术公司主张,远眺公司某科技公司因未按约交付软件产品,应退回其已支付的合同款,并支付违约金。对此,本院认为,首先,根据上述分析,远眺公司某科技公司已依约交付符合约定标准的软件产品,博康公司某技术公司要求远眺公司某科技公司返还合同款并支付违约金,没有事实依据。其次,远眺公司某科技公司自涉案合同签订后,为顺利完成合同约定的义务,长期派员驻点成都开展工作,亦为此支付一定的研发成本。最后,从本案履行行为分析,结合远眺公司某科技公司提交的《施工日志》《施工周报》等证据,本案确因博康公司某技术公司在及时协调业主、其他二包单位方面存在不及时、不明确问题,导致远眺公司某科技公司无法顺利推进涉案合同的部分内容,故其对未履行部分亦理应承担相应责任。综上,一审判决以远眺公司某科技公司完成交付的软件产品量作为衡量其价值的标准虽然不全面,但结果未导致双方利益失衡,本院予以维持。博康公司某技术公司提出的远眺公司某科技公司应当退回合同款并支付违约金的上诉请求,本院不予支持。 综上所述,博康公司某技术公司的上诉理由不能成立,应予驳回;一审判决认定事实清楚,适用法律正确,应予维持。依照《中华人民共和国民事诉讼法》第一百七十七条第一款第一项之规定,判决如下: 驳回上诉,维持原判。 二审案件受理费11735元,由博康智慧城市信息技术有限公司某信息技术有限公司负担。 本判决为终审判决。 审判长*** 审判员*** 审判员*** 二〇二三年十二月十二日 法官助理*** 书记员*** 裁判要点 案号 (2022)最高法知民终1760号 案由 计算机软件开发合同纠纷 合议庭 审判长:*** 审判员:***、*** 法官助理:*** 书记员:*** 裁判日期 2023年12月12日 关键词 计算机软件开发;合同解除;违约责任;驳回上诉 当事人 上诉人(一审原告、反诉被告):博康智慧城市信息技术有限公司。 被上诉人(一审被告、反诉原告):杭州远眺科技有限公司。 裁判结果 驳回上诉,维持原判。 原判主文:一、确认博康智慧城市信息技术有限公司与杭州远眺科技有限公司签订的《购销合同》于2020年3月3日解除;二、驳回博康智慧城市信息技术有限公司的其他诉讼请求;三、驳回杭州远眺科技有限公司的反诉请求。 涉案法条 《最高人民法院关于适用时间效力的若干规定》第一条第二款;《中华人民共和国民事诉讼法》第六十七条第一款、第一百七十七条第一款第一项 法律问题 无 裁判观点 无 注:本摘要并非判决书之组成部分,不具有法律效力。