- 软件质量经济学
- (美)Capers Jones (法)Oliver Bonsignour
- 1381字
- 2025-02-23 14:31:23
2.3.2 软件需求的起源
软件行业在创造收入和财富上一直非常成功。美国和其他国家最富有的公民中很多人都是软件企业家,如比尔·盖茨、拉里·埃里森、史蒂夫·乔布斯等。
这一事实对于理解软件需求的起源有着重大意义。虽然某些需求是基于市场研究和用户需要,但是能带来数十亿美元收入的真正有价值的需求来源于新形式软件的发明者。
表2-3给出了当前软件特性及其产生的软件收入的大致分布。
虽然软件利益相关者和软件用户给出了最多的特性并创造了最多的需求,但是主要的软件收入来源是新型软件的独创发明,以及快速追随者(fast follower)和后来的竞争对手们推出的这些新发明的衍生产品。
了解一下那些最为成功的软件产品(如第一个电子表格、Google搜索引擎、第一个基于功能点的估算工具和GPS导航系统),你会发现,它们并不是从利益相关者收集的需求中产生的,而是来自于知识丰富的工作者的独创发明,他们本来是想解决影响到他们的问题的。然而,因为发明者并不总是成功的商业人士,所以经常出现快速追随者和竞争对手比发明者获得更多收入的情况。
有很多复杂的硬件设备需要软件来操作。例如,能让失聪人士恢复听力的人工耳蜗包含了一个通过手术植入到颅骨上的微小计算机、代替受损纤毛的细线,以及一个外接的麦克风和电源。但是,内带的软件控制着噪音消除、频率调整、自动音量控制以及其他类似的功能。
对实体设备而言,大部分需求基于设备自身的需要和特征。因为高质量和高可靠性是嵌入式设备所必须具备的,所以其需求方法和质量方法往往异常严格。
另外一个需求基于外部问题的领域是商业软件包,如电子表格、企业资源规划(ERP)软件包和其他很多软件包等。很多商业软件包的需求不是直接来自于用户,而是来自于对竞争对手提供的特性的研究。当然还有市场研究和焦点组,不过当竞争对手推出一款革新产品时,同领域的所有其他公司都会尝试去复制它。商业杀毒软件市场有很多家公司,他们的产品虽不尽相同,但是很可能有超过95%的共同特性集合。
最模糊的需求以及变化最大、缺陷最多的需求,出现在公司为支持业务运营而设计并构建的软件应用程序中。业务规则通常模糊不清,并经常进行无法预期的改变,这可能是由于政府的规章、与其他公司合并,又或者是竞争对手等带来的意外因素。
而且,为业务应用程序付款的利益相关者通常是高级主管和管理人员,但是他们自己并不使用这些软件。因此,业务软件的资金来源和实际用户对于需要什么的看法可能并不相同。
当业务应用程序转交给外包承包商来开发时,就又引入了一层复杂性。外包厂商可能不熟悉该软件支持的业务领域。而且他们可能与提供资金的利益相关者和用户并不在一个地方。
20世纪70年代,IBM发现了一个出人意料的“需求”来源。研究人员在分析IBM的商业软件包的特性时发现,在已部署的应用程序中有差不多10%的特性用户根本不需要。
事情的发生是因为IBM的开发人员自发地在软件包中加入了似乎对他们有用的一些新特性,尽管这些特性并不在最初的需求中。同样的现象也在很多其他公司被发现。事实上,某些公司(如Google)实际上在鼓励这种做法。
一般来说,这些源于开发人员的特性都是善意的,其中一些也是很有价值的。但是这些没有记录在案的特性不时地被用于恶意目的(如恶意软件的后门等)。
最好的解决方案很可能是正式地推动这些源于开发人员的特性,将其记录到正式的需求中,并且纳入到安全审查、测试、静态分析和其他类似活动中。它们也应当记录在用户手册中。