西西河

主题:【原创】如果软件商要承担赔偿责任 -- 冰与火

共:💬11 🌺17 新:
全看分页树展 · 主题
家园 【原创】如果软件商要承担赔偿责任

这应该算软件工程科学中接近哲学方面的内容吧,所以发到科学探索这里。

这段时间研究理论研究的多了,偶尔会想些类似哲学问题的东西。

今天想说的,是软件开发的责任和义务的问题。

先给大家看我正在写的文章中的一段,是关于目前最热的可信计算(trusted computing)领域的。

-----------------------引用分割线------------------------------------------------------------------------------

软件的测试工作是一个工作量投入非常巨大的系统,据统计,国外软件开发机构40\%的工作量是花

在软件测试上,软件开发费用近1/2用户软件测试,对于一些要求高可靠、高安全的软件,测试费用可

能相当于软件工程所有其他费用总和的3-5倍。这也就是说,如果我们使用现有的测试方法来开发可信

软件,并要求其各项功能都达到高可靠、高安全的程度,则软件开发费用将可能达到现在平均费用的2

-3倍。

实际上,一个软件中的大多数功能往往并不被用户所使用。软件工程中有著名的80/20规则,即一个

软件中80\%的用户仅使用其中20\%的功能,而现代的一些大型软件,如Excel等,则实际上遵循95/5规

则,即95\%的用户仅使用其中5\%的功能\supercite{Paul04}。一般而言,软件所有功能中一个比较小

的子集即可以满足较低限度的使用需求。

-----------------------引用分割线------------------------------------------------------------------------------

造成这一现象的直接原因,大概在于软件开发中功能添加部分和核心开发部分相比,工作量的不成

比例,以及软件复制的零成本。但深层次想一想,这一现象的背后,软件开发商和发行商对所提供功能

的责任和义务的缺失是否也是个重要的原因呢?

现在,软件开发商和发行商发行软件,一般都是只提供功能,不提供服务义务,不担负安全责任。在这样

的环境下,可信计算似乎有点奢谈。

如果我们规定,软件开发商每提供一个功能,都要保证其安全性和可靠性达到相当高的水平,那么,现有软件的开发成本就一下提高了2-3倍。但如果我们要求开发商在提供软件时,确定哪些功能是收费的,哪些功能是免费提供的,对开发商免费提供的功能提出较低的安全性和可靠性的要求,仅仅要求收费功能的高安全性和可靠性,又会如何呢?

这样,对一个小安全功能集合的严格测试,其费用对开发商来说,是可以接受的。而使用者如果仅在这一安全功能集合中使用该软件,那么该软件Bug导致系统崩溃所造成的损失,开发商负有赔偿责任。当然,我们可以通过保险、根据软件安全性等级限定赔偿上限等方式将赔偿风险限定在一个可以接受的范围内。也就是说,软件开发商对任何一个功能收费的同时,就同时承担了该功能安全使用的责任;而使用者为软件功能缴纳费用后,这些功能所处理的数据财产本身也受到了一定程度的保障。

现有系统和软件当然是作不到这点的,有许多技术问题,但这些问题在可信计算技术下,都是可以解决的。以后有机会,我会详细讲解。

这样的软件,可以叫"绿色软件"或者"环保软件",因为它不浪费.,并且,这对软件的开发方式,使用方式甚至盈利方式都有重大影响.

那么,这些影响是正面的,还是负面的?请大家谈谈看法.

全看分页树展 · 主题


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河