当前位置:首页>>律师说法

软件交付的法律问题

发布时间:2023-03-14 19:55:37 人气:1301

物权法视角论计算机软件的交付

一、引言

当今社会,互联网技术突飞猛进的发展,有人喻之为“第三次工业革命”。互联网+、大数据、云计算、物联网等新概念、新技术层出不穷,可以说互联网已经深刻影响了社会的运行模式、经济的发展方式,颠覆了人类的既有行为方式和思维习惯,互联网已经深度触及了人类生活的方方面面。互联网的发展也带动了相关产业的发展,这其中最重要的就是计算机软件业的发展。计算机软件既是互联网的重要表现形式,也是互联网重要的运行虚拟载体,二者相辅相成。目前,软件委托开发、软件交易、软件著作权注册等经济活动愈发活跃,随之而来的相关纠纷也日益增多。但是,软件作为高科技虚拟产品与普通产品有许多不同之处,这些不同之处也给传统法律的适用带来了新的挑战。软件作为商品最终要交付权利人占有使用,因此,软件交付是软件经济行为的基础,但是软件作为特殊产品与普通商品的交付方式也很大不同,现有法律主要针对普通商品的交付作出了相关规定,对软件交付没有相适应的规定,已经落后于软件业的发展,也造成了软件交付法律适用的空白和混乱。本文即结合软件的特点,对根据现有法律对软件交付进行规范和对相关法律进行改进进行探讨。

二、关键词:物权法、计算机软件、交付

三、计算机软件的概念、分类、特征

1、计算机软件的概念

鉴于计算及软件与普通商品相比的特殊性,探讨计算机软件交付的法律问题,必须先了解计算机软件的概念、分类和特征。

对于计算机软件的概念,相关法律法规中已有明确的规定。我国《计算机保护条例》(以下简称“条例”)第二条规定,计算机软件是指计算机程序及其有关文档。第三条规定,计算机程序,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。同一计算机程序的源程序和目标程序为同一作品。文档,是指用来描述程序的内容、组成、设计、功能规格、开发情况、测试结果及使用方法的文字资料和图表等,如程序设计说明书、流程图、用户手册等。

根据《条例》的规定,可以得出以下结论:其一、计算机软件并非是由单一事物构成的单一体,而是由多种事物构成的复合体,换言之,只有程序没有文档或只有文档没有程序都不能称之为完整的计算机软件,只有程序和文档并存时才构成完整的计算机软件。在现实当中,出于对计算机软件知识的浅薄,人们往往认为程序(也称代码)就是计算机软件,而不把文档当作计算机软件的组成部分。其二、计算机软件并非只应用于计算机(俗称电脑)当中,也可以应用于其他具有信息处理能力的装置中,例如移动通信终端等。

2、计算机软件的分类

 根据不同的分类标准,计算机软件有多种分类方式,但是鉴于本文是探讨软件交付的法律问题,本文只以是否联网为分类标准阐述软件的分类。

根据是否联网,软件分为单机软件和网络软件。单机软件是指,无需通过网络只能在当前设备中运行的软件。网络软件是指,通过网络在不特定设备中同时运行的软件。二者的区别在于:其一、单机软件无需联网,网络软件需联网运行;其二、单机软件只能在当前设备中运行,网络软件可以在不特定设备中同时运行;其三、单机软件的运行数据保存在当前设备中,网络软件的数据保存在支持其运行的服务器中和运行设备中;其四、单机软件的运行模式和架构较为简单,网络软件尤其是大型网络软件的运行模式和架构十分复杂。单机软件功能单一,只需在当前设备中登录操作运行即可。网络软件往往包含多种关键性功能,比如网络支付功能、地图定位功能等,每一项功能都有特定端口与软件相连接,而每一个端口都有相应的户名和密码进行控制。网络软件软件还需要与运行设备相分离的服务器的支持才能运行,而服务器又需要通过户名、账号登录服务器运营商(如阿里云)的运行平台才能控制。

四、软件交付的法律定义及软件交付的特殊性

依据我国《物权法》的规定和理论界的通说,交付就是对标的物占有的转移,而占有就是对标的物的实际控制。因此,软件交付的法律定义就是对软件实际控制的转移。

然而,软件作为一类特殊物,与一般标的物的交付又有明显区别,区别主要在于控制方式的不同。

对于一般标的物而言,通常只要将标的物掌握在权利人手中即完成了对标的物的控制。比如将一个苹果从卖家手中交到买家手中,即完成了该苹果的交付。即便在拟制交付中也是如此,因为在拟制交付中的标的物通常是一项权利,比如股权,完成对权利凭证的变更就是将此项权利掌握在了自己的手中。

而软件有其特殊性,即便权利人将软件本身即软件源代码和文档掌握在自己手中,也不一定就控制了该软件。因为,软件需要在设备中运行,而运行的前提是通过服务器对软件进行域名解析,运行过程中还需要对软件不同功能的端口对进行控制。但是,对软件本身的控制和对软件运行的控制是可以分离的,即拥有软件本身的人可能控制不了软件的运行,而可以控制软件运行的人可能并不拥有软件本身。

综上,我们可以得出结论,即必须既控制了软件本身也控制了软件的运行才能称之为对软件进行了实际控制,完成了对软件的占有。由此推论,同时将软件本身和软件运行的控制权转移,才能称之为完成软件交付。

日常生活中,初于对软件知识和法律知识的浅薄,很多人认为,只要获得了软件的源代码或可以通过账户、密码登录软件对软件后台进行操作就是完成了软件交付,这是大错而特错的。

五、软件交付的具体形式

1、单机软件的交付形式

单机软件只需要在当前设备中运行,当前设备就是该单机软件的服务器,而权利人往往就是该当前设备的操控者,因此,获得了该单机软件的源代码、文档并可以在当前设备中登录软件对软件进行操控即完成了单机软件的交付。

2、网络软件的交付形式

与单机软件一样,网络软件也有代码和文档组成,因此,网络软件交付的基础也是获得该软件的源代码和文档的控制权,在此基础上再来探讨网络软件的运行的控制权问题。

网络软件运行的控制权问题也是一个非常复杂的问题,但大体可以分为两个问题,其一是对服务器的控制权为题,这关系到能不能从根本上获得该软件控制权的问题。其二是对软件后台登录及各个功能模块的控制权问题,这关系到能不能有效控制软件运行的问题。

先来看第一个问题。网络软件需要联网运行,往往需要独立于当前运行设备的服务器甚至是大型服务器乃至数据中心的支持,将软件域名解析并提供其他相关服务才能在网络中运行,没有服务器网络软件就不能运行。笔者曾代理一起相关真实案例,公司A委托公司B开发一款网络软件,开发过程中,公司B以其员工名义注册了阿里云账号并购买了服务器,该软件开发后上线运行但存在技术问题,双方产生纠纷,公司B遂将该软件服务器关闭,导致该软件无法运行。公司A想夺回对服务器的控制权,但由于阿里云账号是由公司B的员工注册的,公司A根本就无权限修改阿里云设置,故而失败,公司A只能眼看软件无法运行。因此,服务器的控制权关系到能否控制网络软件运行的根本问题,控制了服务器才能从总体上控制软件的运行,控制不了服务器,网络软件的交付就无从谈起。

再来看第二个问题。实际上,软件后台登录及各个功能模块的控制权主要体现在对后台及各个功能模块端口账户密码的控制权的问题,其实,这些账户密码应该包含在软件的文档中,但往往文档中包含的信息并不全面,一些账户密码是独立于文档单独交付的,故此,对此问题我们单独探讨。

网络软件上网运行后,权利人必须登录后台才能对软件进行操控,因此,通过账号密码登录软件后台也是对软件运行控制权的基础性问题,是否交付了后台的账户密码也是关系到软件交付是否完成的关键问题。

软件的功能模块可以分为基础功能模块和非基础功能模块。基础功能是指在所有功能对软件的运行起到决定性作用或决定软件用途能否实现的功能,例如,在外卖软件中,支付功能就是基础功能,若支付功能无法实现,外卖软件就无法运行,外卖用途就无法实现。对软件的运行不起决定作用不妨碍软件用途实现的功能就是非基础功能,例如在外卖软件中的积分功能。当然,现实生活中的软件的功能和用途是千差万别的,基础功能还是非基础功能还要结合每一款软件的功能架构和用途具体判定。

由于基础性功能模块的重要作用,是否控制基础性功能模块的账户密码也是控制整个软件运行的关键性问题,也是是否完成软件交付的关键性问题。非基础性功能模块的账户密码的控制权不决定软件整体的交付问题,其可能涉及的其他法律问题在本文中不作探讨。

综上,转移了软件的源代码和文档并转移了服务器、后台登录账户密码和基础功能模块的账户密码的控制权,即完成了网络软件的交付,否则,并未完成网络软件的交付。

五、立法建议

我国现行法律中只有对一般标的物交付的法律规定,而对软件这一特殊标的物的交付的法律规定还是空白,这造成对软件相关案件适用法律的混乱,有的法官在裁判案件时甚至将是否申请了软件著作权登记作为软件是否交付的标志。有鉴于此,建议国家加强对软件这一明显区别于一般标的物的特殊标的物在物权交付及其它方面的立法工作,以适应日趋频繁的涉软件经济活动和日趋增多的涉软件案件数量。