1 / 9
文档名称:

软件可靠性.doc

格式:doc   大小:43KB   页数:9页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

软件可靠性.doc

上传人:小枷 2018/10/13 文件大小:43 KB

下载得到文件列表

软件可靠性.doc

相关文档

文档介绍

文档介绍:软件可靠性是个大问题
闵应骅
如果说计算机体系结构描写了计算机的躯体,那么,软件就是计算机的灵魂。软件可靠性对可信计算起着举足轻重的作用。几十年来,硬件技术特别是集成电路技术飞速发展,但软件技术在产品质量、生产力、成本及性能等众多方面都滞后于硬件技术的发展。随着软件系统规模和复杂性的增加,其开发成本以及由于软件故障而造成的经济损失也正在增加,软件质量问题已成为制约计算机发展的关键因素之一。
软件可靠性是个大问题
不要认为,软件仅仅是一个计算机指令序列,它是为用户提供所需信息处理能力的逻辑上的信息处理设备。用户需要的是一个满意的软件产品。但是,不要把软件的产品实现和开发管理混为一谈,或者顾此失彼。产品实现包括从需求描述、系统设计、系统实现、测试验证到运行维护的整个生命周期。但是,几十年的经验表明,要实现一个高质量的软件产品,开发管理极其重要。软件生命周期定义了软件过程的框架和原则,但没有描述软件过程的活动、组织形式、工具和操作规程,以及开发方针和约束。这些正是当下所谓软件过程技术要研究的。由于当今的软件,无论是系统软件、中间件或应用软件,都不是一个单位、一个人能够完成的,需要合作和协同,因此,软件产业需要国际标准。20世纪80年代,卡内基-梅隆大学的软件工程研究所在美国国防部的支持下,提出了评价软件供应商过程能力的能力成熟度模型(CMM)。一个软件组织的能力成熟度的高低,就看该组织是否能站在比软件项目更高的层次上考察其实施软件开发所使用的软件过程。能够定义该软件过程者为成熟度三级;如能度量和管理,则达到成熟度四级;如果还能优化该过程,则达到了成熟度五级。只有在成熟的软件过程管理之下,才能生产出高质量的软件产品。CMM模型现在还在不断地丰富和改进。质量和生产率是软件工程的两个核心目标。CMM等已被公认为软件质量保证方面的事实标准。它强调软件过程的管理与控制,忽略软件人员个人的主动性和创造性。所以,进入二十一世纪,在美国成立了Agile联盟,提出了敏捷软件开发方法,以适应那些需求不够确定、软件开发团队不是很大的软件开发项目。在2000年,美国政府和商业机构公布了CMM水平评估结果。在第一、二级者超过一半,30%达到第三级,只有17%达到第四、五级。实际情况可能比这还要糟。CMM现在正发展成CMMI,以更广泛地评估一个单位创造复杂软件系统的能力。一个信息技术(IT)项目经理最重要的责任是为各种活动分配资源。其他责任还有项目计划和评估、控制、组织、合同管理,质量管理,风险管理,通讯和人力资源管理。项目经理的错误决策也许是今天软件失效的主要原因。技术管理的失误引起技术差错,但可以纠正,而错误的项目管理决策,例如雇用程序员太少或合同类型的错误,可能引起全盘皆输。
2005年9月IEEE Spectrum 杂志专门报导了用户定制的企业软件及许多软件失效的问题,这些失效导致公司破产、政府和工业界每年损失在美国达到600-750亿美元,这类计划的15-20%不是中途停止,就是完成后很快被抛弃。问题在那里?为什么软件会失败?没有过程文档或者很糟的过程文档、不可能满足的需求、很差的或者不断更改的规格说明和质量控制。最大的问题可能在于人,用户无法说清究竟他希望要什么,卖主无法控制,管理者看到这种情况只有另图别路。我们不妨举几个典型的例子来说明问题。
①最著名的一个