计算机软件的不可靠性分析
浅谈计算机软件可靠性设计分析

靠性 至关重要 。 3 . 2网 络 的 管 理
的测试要求等都是以规格说明书作为重要依据 。 在对软件程序进行 设计 和改进 以及调试维护时 , 软件开发设计人员都要根据规格说 明 书进行具体的操作。 如 果 规 格 说 明 书 和 用 户 的 要 求 有差 异 , 就 可 能 导致设计偏离客户需要 , 造成软件 的可靠性 出现 问题 。 因此 , 在软件 开发设计前 , 与用户进行 良好的沟通以及对用户的要求, 进行 最大 限度 的满足 , 都能减少软件缺 陷的产生 , 从而提高软件 的可靠性 。 4 . 2对软 件进 行有 效 的设 计 在软 件 的 设计 过 程 中, 我 们 要考 虑 到 模 型和 语 言 以及 数 据 结 构 等 很 多 问题 , 对 这 些 问题 进 行 设 计 时 , 我 们 也 要 考 虑 到 方法 是否 得 当, 如 果 方法 不 当 , 即使严 格 按 照 规 格说 明 , 也 会在 可 靠 性 上 出 现 问 题, 因此 , 在软件设计 时, 合理 有 效 的 方 法 显 得 至 关重 要 。 ( 1 ) “ 由顶到底 ” 设计法 : 此设计发 , 指 的是定系统功 能为最高 点, 再依 次来对部分功能 等子 系统进行设计 , 并使这些子功能满足 系统功能。 这样整个设计就呈现出一个树状 , 使得 功能更加的细致, 设计 时语言 的运用也简单化 了。 设计过程得到 了分解 , 解决 了复杂 多级 的问题 , 条理 更加清晰 , 也容 易实现 , 出现问题 时, 也能迅速 的 更正 , 极大 的提升 了软 件的可靠性 。 ( 2 ) 对程序进行结 构化设计 : 在程序设计过程 中, 采用结构 化可 以将复杂的程序分解成简单 的组合 , 从而逐步突破 , 再进行设 计。 此 种方 法 在 结构 上 相 对 简 单 , 模 块 相对 比较 独 立 , 也 比较 隐 蔽 。 在 软件 的调试和编译过程 中, 工作量会减少, 也提高了效率 , 在对软件检查 和修 改时, 也会大幅度减少缺陷。 因此, 在软件设计过程 中采用结构 化设计 , 能大 幅度 的提升软件的可靠性 。 4 . 3软 件 编 码 软件 编码 错 误 的产 生 , 往往 是 软 件在 开 发 设 计过 程 中存在 缺陷 的重 要 因素 。 因为 分支 程 序 需 要 大量 的结 构语 句 来 进 行 编 写 , 因此 , 即使程序在结构设计上非常 良好 , 编码错误问题 的产生也是很常见 的。 这就要 求, 我们的程序设计人员, 在设计时 , 要非常仔细认真 , 减 少和杜绝编码的错去, 同时, 还要 最大 限度 的对软件 缺陷的产生 以 及消除进行严格的检查 , 确保软件 的可靠性。
提高软件可靠性的方法和技术

提⾼软件可靠性的⽅法和技术1.建⽴以可靠性为核⼼的质量标准在软件项⽬规划和需求分析阶段就要建⽴以可靠性为核⼼的质量标准。
这个质量标准包括实现的功能、可靠性、可维护性、可移植性、安全性、吞吐率等等,虽然还没有⼀个衡量软件质量的完整体系,但还是可以通过⼀定的指标来指定标准基线。
软件质量从构成因素上可分为产品质量和过程质量。
产品质量是软件成品的质量,包括各类⽂档、编码的可读性、可靠性、正确性,⽤户需求的满⾜程度等。
过程质量是开发过程环境的质量,与所采⽤的技术、开发⼈员的素质、开发的组织交流、开发设备的利⽤率等因素有关。
还可把质量分为动态质量和静态质量。
静态质量是通过审查各开发过程的成果来确认的质量,包括模块化程度、简易程度、完整程度等内容。
动态质量是考察运⾏状况来确认的质量,包括平均故障间隔时间(MTBF)、软件故障修复时间(MTRF)、可⽤资源的利⽤率。
在许多实际⼯程中,⼈们⼀般⽐较重视动态质量⽽忽视静态质量。
所定的质量标准度量,⾄少应达到以下两个⽬的:(1).明确划分各开发过程(需求分析过程,设计过程,测试过程,验收过程),通过质量检验的反馈作⽤确保差错及早排除并保证⼀定的质量。
(2).在各开发过程中实施进度管理,产⽣阶段质量评价报告,对不合要求的产品及早采取对策。
确定划分的各开发过程的质量度量:(1).需求分析质量度量需求分析定义是否完整、准确(有⽆⼆义性),开发者和⽤户间有没有理解不同的情况,⽂档完成情况等,要有明确的可靠性需求⽬标、分析设计及可靠性管理措施等。
(2).设计结果质量度量设计⼯时,程序容量和可读性、可理解性,测试情况数,评价结果,⽂档完成情况等。
(3).测试结果质量度量测试⼯时,差错状况,差错数量,差错检出率及残存差错数,差错影响评价,⽂档等,以及有关⾮法输⼊的处理度量。
(4).验收结果质量度量完成的功能数量,各项性能指标,可靠性等。
最后选择⼀种可靠度增长曲线预测模型,如时间测量、个体测量、可⽤性,在后期开发过程中,⽤来计算可靠度增长曲线的差错收敛度。
计算机软件错误排除和解决方案

计算机软件错误排除和解决方案第一章:软件错误的分类和原因在计算机软件开发和使用过程中,错误是不可避免的。
为了更好地排除和解决这些错误,我们首先需要了解软件错误的分类和原因。
1.1 语法错误语法错误是最常见的软件错误之一。
它们指的是程序代码的语法不符合编程语言的规范,导致编译或解释错误。
常见的语法错误包括拼写错误、缺少分号、括号未匹配等。
1.2 逻辑错误逻辑错误是指程序的执行结果与预期结果不符。
这种错误通常是由于程序员在算法或逻辑设计上的错误造成的。
例如,条件判断错误、循环错误、数据类型错误等。
1.3 运行时错误运行时错误是在程序运行过程中发生的错误,它们可能导致程序崩溃或异常终止。
常见的运行时错误包括除以零、数组越界、空指针引用等。
1.4 系统错误系统错误是与操作系统或硬件相关的错误。
例如,内存溢出、文件读写错误、设备驱动问题等。
这些错误通常需要更高级别的排除和解决方法。
第二章:软件错误的排查步骤与方法为了准确地排查和解决软件错误,我们可以按照下述步骤进行操作。
2.1 复现错误首先,我们需要尽可能准确地复现出错误。
复现错误时,可以尝试不同的输入数据、操作步骤或环境条件,以便排除其他因素的影响,确定错误产生的具体条件和触发方式。
2.2 查看错误日志错误日志是记录软件错误信息的重要工具。
我们可以查看软件生成的错误日志,了解错误发生的时间、位置和详细信息。
通过分析错误日志,可以缩小错误排查的范围。
2.3 调试代码调试是一种常用的错误排查方法,它可以通过逐行执行程序代码,跟踪变量的值和程序流程,找出错误所在的具体位置。
常用的调试工具有断点调试器和跟踪器。
2.4 使用日志和断言日志和断言是程序中常用的调试工具。
我们可以在程序中插入日志输出语句,记录程序执行过程中关键数据的值。
同时,断言可以在程序中插入一些条件判断语句,如果条件不满足,则触发错误。
2.5 逐步删除代码如果我们在某行或某块代码中确认存在错误,但无法准确定位错误的具体位置时,可以尝试逐步删除代码。
分析计算机软件安全问题及其防护策略

分析计算机软件安全问题及其防护策略作者:奇葵来源:《计算机光盘软件与应用》2012年第22期摘要:二十一世纪是信息化时代,计算机软件已经走进了千家万户,融入到了各行各业,对人们的生活和社会的发展起到了巨大的改变和推动作用。
随着我国计算机技术的普及和发展,其相应的计算机软件在数量、种类上也越来越多,人们对其功能和安全的要求也日益提高。
本文就目前计算机软件运行中存在的主要安全问题进行分析和总结,并就其防护措施提出自己的建议和看法,以便提高计算机软件的安全性和可靠性,净化计算机软件运行环境,努力打造一个安全、稳定、可靠的计算机软件平台,促进和推动计算机行业的健康良性发展。
关键词:计算机软件;安全问题;防护策略中图分类号:TP309 文献标识码:A 文章编号:1007-9599 (2012) 22-0000-02随着社会经济的不断发展和计算机技术的快速更新,计算机软件已经走入了千家万户,融入进了社会各行各业当中。
当前,计算机软件已逐渐成为社会工作生活当中的主要交流沟通的渠道和工具,对人们的生活和社会的发展产生了巨大的改变和推动作用。
与此同时,各种各样的计算机软件安全问题也随之而来。
计算机软件的安全问题涉及到的范围广泛、内容复杂。
从用户的角度来看,人们需要其计算机软件系统具备可靠性高、操作简便、应用范围广、功能强、性价比高以及保密性好等特点,而软件的开发商对软件安全的要求除了能够满足用户要求外,还要能够保护自身的自主知识产权,严格防范软件系统被跟踪、仿制、复制等。
本文就目前计算机软件运行中存在的主要安全问题进行分析和总结,并就其防护措施提出自己的建议和看法,以便提高计算机软件的安全性和可靠性,净化计算机软件运行环境,努力打造一个安全、稳定、可靠的计算机软件平台,促进和推动计算机行业的健康良性发展。
1 计算机软件的概述1.1 计算机软件的含义计算机软件,即Computer Software,简称软件,是计算机运行系统中相关程序以及文档的总称。
网络可靠性分析与应用实例

网络可靠性分析与应用实例摘要:首先介绍了计算机网络可靠性的要素,接着分析了影响计算机网络系统可靠性的原因及提高可靠性的方法。
最后以某单位的计算机网络优化改造方案为实例,探讨了如何规划设计以保证网络的高可靠性。
关键词:单点故障;高可靠性;网络;生成树;协议;VRRPAbstract:At first introduces the elements of the computer network reliability,then analyzes the reasons that impacts the reliability of computer network system and the methods to improve reliability。
Finally, giving an example----a computer network optimization program,investigating how to design the computer network to ensure the reliability of the network。
Key Words:Malfunction of single point;High reliability;Network;Spanning Tree;Protocol;VRRP可靠性是进行通信网络规划设计与性能评价的重要指标。
通信网络的可靠性一般包括网络的生存性、抗毁性及有效性等多个方面,涉及到网络通信设备、拓扑结构、通信协议等多方面因素。
计算机网络和通信网络密不可分,它们已经完全融合。
本文分析了计算机网络系统可靠性技术,并且在此基础上提出了的计算机网络优化改造方案。
1、计算机网络可靠性的要素计算机网络可靠性是计算机网络系统的固有特征之一,它表明一个计算机网络系统按照用户的要求和设计的目标,执行其功能的正确程度。
计算机网络可靠性与网络软件可靠性、硬件可靠性及所处环境有关。
可靠性分析与故障排除策略

可靠性分析与故障排除策略在现代科技高度发达的社会,各种设备和系统的可靠性成为了重要的评判标准。
无论是工业生产的设备,还是通信系统、计算机网络、软件应用等,都需要经过可靠性分析和故障排除策略的考量和实施。
本文将从可靠性分析的概念、意义以及常用的可靠性评估方法入手,结合故障排除策略,为读者提供一份全面的指南。
可靠性分析是指通过对设备或系统各个部分的功能和性能进行评估,以确定其在给定条件下的工作可靠性。
其中,可靠性指标包括可靠性水平、可用性、保障时间、平均无故障时间等。
在进行可靠性分析时,需要考虑到设备或系统的特点、工作环境、应用需求等因素。
为了对设备或系统的可靠性进行评估,可以使用多种可靠性评估方法。
其中,最常用的方法包括故障模式与影响分析(Failure Mode and Effects Analysis,简称FMEA)、故障树分析(Fault Tree Analysis,简称FTA)和可靠性块图(Reliability Block Diagram,简称RBD)等。
故障模式与影响分析(FMEA)是一种通过识别故障模式、分析其影响和确定相应的排除措施的方法。
它通过将系统的各个元素拆分,分析每个元素的故障模式和对系统的影响来评估可靠性。
通过FMEA,可以对不同故障模式的发生概率进行排序,从而确定哪些故障可能会对系统造成较大的影响。
故障树分析(FTA)是一种通过绘制故障树来分析系统故障原因和发生概率的方法。
通过对不同故障事件的组合和逻辑关系进行分析,可以确定可能导致系统故障的基本事件。
通过对故障树进行剖析和组合,可以得到系统故障的概率,从而为故障排除提供依据。
可靠性块图(RBD)是一种通过绘制系统的逻辑结构图并计算各个部分的可靠性来评估系统可靠性的方法。
通过将系统拆分为多个模块,并分析模块之间的关系和可靠性,可以计算出整个系统的可靠性水平。
RBD还可以用于分析系统的冗余结构和备份策略,从而提高系统的可靠性。
如何提高计算机系统的可靠性
如何提高计算机系统的可靠性计算机系统可靠性是指计算机系统能够在规定的时间段内,以指定的可靠度完成其各项功能需求的能力。
对于计算机系统用户而言,可靠性是一项非常重要的指标,因为系统的可靠性直接关系到用户的使用体验以及数据的安全性。
本文将从硬件和软件两个方面分别讨论如何提高计算机系统的可靠性。
一、硬件方面提高计算机系统的可靠性1. 优化系统架构和设计优化系统架构和设计是提高计算机系统可靠性的基础。
通过合理的系统架构设计,可以减少硬件故障的发生概率,并提高故障的容错性。
同时,合理的设计还可以减少系统能耗,提高系统的性能和可靠性。
2. 采用高质量的硬件设备选择高质量的硬件设备是提高计算机系统可靠性的重要措施。
优质的硬件设备具有更高的稳定性和可靠性,同时在长时间的使用中也能够减少硬件故障的概率。
因此,在选购计算机硬件设备时应选择可靠的品牌和供应商。
3. 进行定期的硬件维护和检测定期的硬件维护和检测可以帮助及时发现潜在的硬件问题,并进行及时的修复和替换。
例如,定期检查硬盘的健康状态,检测散热系统是否正常工作等。
通过这些维护和检测措施,可以提前预防和解决硬件故障,提高计算机系统的可靠性。
二、软件方面提高计算机系统的可靠性1. 使用稳定可靠的操作系统操作系统作为计算机系统的核心软件,其稳定性和可靠性对整个系统的可靠性起着重要的作用。
因此,选择稳定可靠的操作系统对于提高计算机系统的可靠性非常重要。
稳定的操作系统能够有效预防崩溃、死机等问题,并提供及时的错误修复和升级。
2. 开发高质量的软件程序开发高质量的软件程序是提高计算机系统可靠性的关键。
在软件开发过程中,需要遵循严格的开发和测试流程,进行全面的功能测试和负载测试,并提供及时的错误修复和优化。
只有通过严格的软件开发流程,才能减少软件缺陷的概率,提高计算机系统的可靠性。
3. 进行定期的软件更新和升级定期的软件更新和升级是保持计算机系统可靠性的重要措施。
随着时间推移,系统中可能会出现新的安全漏洞和软件缺陷,及时进行软件更新和升级可以修复这些问题,提高系统的可靠性和安全性。
GBT 14394-2008 计算机软件可靠性和可维护性管理
计算机软件可靠性和可维护性管理Computer software reliability and maintainability management本标准依据GB/T 8566-2007《信息技术软件生存周期过程》划分软件生存周期,按过程和活动描述软件可靠性和可维护性要目录1.范围 (2)2.规范性引用文件 (2)3.术语和定义 (2)3.1软件可靠性大纲SOFTWARE RELIABLILITY PROGRAM (2)3.2软件可靠性大纲SOFTWARE MANTAINABILITY PROGRAM (2)3.3软件FRACAS SOFTWARE FAILURE REPORTING ANALYSIS AND CORRECTIVE ACTION SYSTEM .. 24.软件生存周期 (2)4.1在软件生存周期基本过程中的可靠性和可维护性管理要求 (2)4.1.1在获取过程中的可靠性和可维护性管理要求 (3)4.1.2在供应过程中的可靠性和可维护性管理要求 (3)4.1.3在开发过程中的可靠性和可维护性管理要求 (4)4.1.4在运作过程和维护过程中的可靠性和可维护性管理要求 (4)5.软件可靠性大纲和可维护性大纲 (4)5.1制定大纲应考虑的主要因素 (5)5.2大纲应包括的主要活动 (5)5.2.1制定大纲目标 (5)5.2.2分析运行环境 (5)5.2.3软件可靠性和可维护性要求的可行性论证 (6)5.2.4选定或制定规范和准则 (6)5.2.5软件可靠性和可维护性分析 (6)5.2.6评审 (7)5.2.7文档和数据 (7)5.2.8培训 (8)5.2.9维护保障要求 (8)5.3示例 (8)5.4裁剪 (9)1.范围本标准规定了软件产品在其生存周期内如何选择适当的软件可靠性和可维护性管理要素,并指导软件可靠性大纲和可维护性大纲的制定和实施本标准适用于软件产品生存周期的基本过程。
2.规范性引用文件下列文件中的条款通过本标准的引用而成为本标准的条款。
软件可靠性技术发展与趋势分析
软件可靠性技术发展及趋势分析1 引言1) 概念软件可靠性指软件在规定的条件下、规定的时间内完成规定的功能的能力。
安全性是指避免危险条件发生,保证己方人员、设施、财产、环境等免于遭受灾难事故或重大损失。
安全性指的是系统安全性。
一个单独的软件本身并不存在安全性问题。
只有当软件与硬件相互作用可能导致人员的生命危险、或系统崩溃、或造成不可接受的资源损失时,才涉及到软件安全性问题。
由于操作人员的错误、硬件故障、接口问题、软件错误或系统设计缺陷等很多原因都可能影响系统整体功能的执行,导致系统进入危险的状态,故系统安全性工作自顶至下涉及到系统的各个层次和各个环节,而软件安全性工作是系统安全性工作中的关键环节之一。
因此,软件可靠性技术解决的是如何减少软件失效的问题,而软件安全性解决的是如何避免或减少与软件相关的危险条件的发生。
二者涉及的范畴有交又,但不完全相同。
软件产生失效的前提是软件存在设计缺陷,但只有外部输入导致软件执行到有缺陷的路径时才会产生失效。
因此,软件可靠性关注全部与软件失效相关的设计缺陷,以及导致缺陷发生的外部条件。
由于只有部分软件失效可能导致系统进入危险状态,故软件安全性只关注可能导致危险条件发生的失效。
以及与该类失效相关的设计缺陷和外部输入条件。
硬件的失效,操作人员的错误等也可能影响软件的正常运行,从而导致系统进入危险的状态,因此软件安全性设计时必须对这种危险情况进行分析,井在设计时加以考虑。
而软件可靠性仅针对系统要求和约束进行设计,考虑常规的容错需求,井不需要进行专门的危险分析。
在复杂的系统运行条件下,有时软件、硬件均未失效,但软硬件的交互作用在某种特殊条件下仍会导致系统进入危险的状态,这种情况是软件安全性设计考虑的重点之一,但软件可靠性并不考虑这类情况。
2)技术发展背景计算机应用范围快速扩展导致研制系统的复杂性越来越高。
软硬件密切耦合,且软件的规模,复杂度及其在整个系统中的功能比重急剧上升,由最初的20%左右激增到80%以上。
需求分析与软件可靠性
需求分析与软件可靠性保证一、软件可靠性工程与需求工程的关系软件需求分析是软件产品开发设计的第一步,也是最重要的一步。
其工作质量的高低,不仅直接影响后续工程的质量,而且决定着所开发软件产品的价值。
当然,完整、严密地描述用户需求,并不是一件十分容易的事。
有些软件产品之所以功能不完善、性能差、可靠性低、可用度差、甚至不能使用,多数是因为用户需求分析工作不彻底所致。
但是,目前软件可靠性工程研究与实践的重点,在于软件测试等一些事后的验证性工作,对软件可靠性设计重视不多,这在需求分析等前期阶段尤为突出。
二、软件需求分析软件需求分析是软件设计的基础。
它采用一系列行之有效的技术、方法和工具来分析用户需求,通过特定的形式系统地描述拟开发软件的功能、性能,以及行为特征和相关约束,定义所有内外部特征,最后形成既能指导软件设计、又能同用户沟通的软件需求规格说明。
它覆盖了软件设计之前的各项活动。
软件需求分析是从用户最初的非形式化需求,到满足用户要求的软件产品设计的一个映射。
在软件计划的基础上,从深入分析用户需求出发,把用户的需求变换成以计算机为基础的系统需求。
需求分析实际上是调查、评价、以致肯定用户对软件的需求的过程,是一个对用户意图不断进行揭示和判断的过程。
其目的在于细化、精化软件的作用范围,确定拟开发软件的功能和性能,分析并确认其过程,确定软件成分及接口。
1.软件需求分析的任务与步骤软件需求分析可分为四个步骤。
①归纳整理用户提出的各种问题和要求,弄清用户企图通过软件达到的目的,并把它作为要求和条件予以明确。
即分析人员借助各种工具和方法,获得对用户需求的基本理解,然后在需求获取方法的驱动和指导下,从非形式需求陈述中提取出用户的实际需求。
由此确定软件的功能、性能、接口关系及有关属性、软件条件、限制和边界等,标定软件的作用范围,确认支持性的软硬件环境及辅助工具与条件。
此阶段还为软件需求分析活动提供了相应的过程控制机制。
②在需求获取的基础上,建立逻辑模型,使用自顶向下、逐层分解的方法,把用户对软件的需求分解成若干子系统或软件成分,将外部需求赋予软件的各个功能成分,定义软件成分的内部功能,并标定它们之间的接口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2期2017年1月No.2
January,2017
1 计算机软件的特征1.1 技术性开发人员在进行计算机软件的开发之时为了对用户的需求予以满足,十分重视对Windows,Linux,Unix等系统的设置,这就涉及编辑器以及数据库管理、驱动与网络连接等技术的应用,进而决定软件会呈现出怎样的技术性特征。此外,计算机软件的开发还需要有严密的组织作保证,并对组织内的分工予以明确,这会引发人力、物力的大量投入以及延长时间耗费,所以,在对计算机软件进行技术分析与判断之时应对此问题予以高度的重视。1.2 功能性在对计算机进行使用与操作之时,必然会用到计算机程序这一重要工具,其所体现的价值性不可忽视。与一般文字性创作相比,计算机程序所发挥的主要功能就是供计算机使用者使用,其功能性的充分体现以计算机程序的良好运行为前提。一般来说,计算机程序具有3个特征:执行性、序列性以及相对目的性。其中,执行性表明计算机程序是必然会被计算机等能够对信息进行处理的多种装置设备予以执行的;序列性表示计算机程序包含代码化指令序列、符号化指令序列以及符号化语句序列等内容在内;相对目的性则要求计算机在运行到一定阶段之时必须取得相应的预期效果。1.3 相互渗透关系计算机软件的开发以对人类思维的模仿为目标,这就使得计算机软件的思想与形式都体现出了相互渗透关系的特征,要求开发人员在进行软件设计之时对此给予高度的重视。例如,在进行高考作文自动评分系统的规划与设计之时,应合理地对计算机软件自动识别技术予以引入,使系统能够自行判断文章的工整性,检测学生作文中出现的比喻、排比与拟人等修辞,并在进行普通排比检测之时以分号分隔、逗号分隔以及句号分隔等判定排比句的应用效果,除此之外,系统还应具备对作文结构整齐度、文章气势等进行自动识别的功能,以真正落实对高考作文评分效率的提升,借助对计算机软件评分系统相互渗透关系的应用,向评分结果的公平性与公正性提供保证。2 计算机软件的不可靠性表现及其影响因素2.1 计算机软件的不可靠性表现第一,由于计算机软件的开发主要是通过编程人员完成的,它是由人类通过自身的思维与创造而得来的成果,这就决定软件在具体的开发与创作过程中会存在或多或少的程序员疏忽状况,致使软件在使用之时不可避免出现一些漏洞。这些只有使用人员在对软件进行实际运用时才能发现,因此,提高计算机软件的可靠性尤为重要。软件技术在本质上更加突出人类思维的特征,其以对计算机用户的多样化需求的满足为主要目的。在对计算机软件进行研发之时,各个环节都必须引起足够的重视,具有潜伏性特征的漏洞若不能够被及时地检测出来,势必会引发一定程度的负面影响,计算机软件的技术水平亟待提高。第二,不同的技术需要有不同的维护方式,对于计算机硬件而言,其所采用的维护手段以防护性技术为主,在对故障进行诊断之时会利用到断开失效设备的方法,若要将其功效充分地恢复并发挥出来,既可以有选择性地选用恢复性的手段,又可以借助新的技术对损坏的部件予以替换。然而,对于计算机软件而言,其损坏并不能借助以上方式进行维护,只能通过重新设计软件的方式对其予以解决。第三,现阶段,与较为成熟的计算机硬件技术检测工作相比,软件技术的可靠性检验尚未建立起对应的体系,两者在检验方式上的差距比较明显。此外,软件技术还欠缺专业的理论做指导,在目前的国际环境下,计算机硬件的开发技术已日益成熟,但其软件的开发市场仍旧处于一个完善与提高的阶段。2.2 计算机软件不可靠性的影响因素第一,软件差错。软件的可靠性主要指的是软件在使用过程中所体现的安全性、稳定性、准确性以及流畅性等性质。计算机软件之所以没有较强的可靠性,原因在于软件中的差错会在使用过程中引发各种软件故障,这一差错是在工作人员对软件进行研发之时潜在的人为错误。软件差错有五个层面的表现:(1)需求分析定义错误,指软件研发人员没有透彻地理解用户的需求,对用户的真实意图把握不得当,致使自己与用户在理解需求的过程中出现偏差,进而引发软
作者简介:吴宗卓(1987— ),男,山东德州,助教;研究方向:计算机软件与理论。
计算机软件的不可靠性分析吴宗卓(陕西国防工业职业技术学院,陕西 西安 710300)
摘 要:当代社会的日益发展引发了人们对网络建设问题的关注。分析现有状况发现,以信息时代为背景的计算机软件更新、安全以及系统性等问题不断凸显。文章以计算机软件特征为切入点,研究计算机软件不可靠性的表现与影响因素,以期推动计算机技术的整体与快速发展。关键词:计算机;软件研发;不可靠性
无线互联科技Wireless Internet Technology第2期
2017年1月No.2
January,2017无线互联科技·软件透视
件差错;(2)编码错误,例如变量初始化或语法出现错误等,这种错误应归属于技术类的行列;(3)设计错误,例如计划或计算错误,这一类错误的出现原因在于软件开发人员欠缺对特殊情况的充分预料与考虑等;(4)测试错误,例如数据准备或测试用例错误等;(5)文档错误,例如文档不完整或相关的内容与版本出现不一致状况等。第二,尚未构建起一个对软件技术质量进行检测的有效机制。20世纪90年代末,国家针对军用计算机软件制定了一些开发与技术等方面的规范,这些规范在软件的质量测试、评价修改以及技术改良等方面存在欠缺,没有构建起与硬件开发相类似的完善且系统性的“三检体制”,完全以软件的自我开发为中心,过于强调只涉及软件开发人员的自我设计、自我编制以及自我测试等工作。不仅如此,针对软件技术的开发与配置,国家也没有进行严格的软件配置体制的构建,这使得整个软件的开发与创作环节都面临着技术管理欠缺的难题,技术人员也因规范体制的不健全而随意制定自己的设计内容,设计工作往往文实不符,使得软件在开发阶段频繁地出现错误。由此可知,对于计算机软件而言,其自身的开发模式也存在着不容忽视的问题,无法对软件质量及其可靠性提供切实的保证。3 解决计算机软件不可靠性的途径3.1 避免软件差错,提高工作人员专业素养针对软件开发过程中的潜在人为错误所导致的软件差错,应有针对性地加强软件工作人员的专业文化素养,使其以对计算机软件及其可靠性定义的理解与分析为基础,真正地把握用户所提出来的多样化需求,并加强对变量初始化、语法等各种技术错误的重视。此外,从事计算机软件开发与维护的工作人员应加强对计算与计划等的注意,在软件的开发与试运行过程中进行丰富的思考,以技术的实际情况为依据进行切实的分析,直到软件的最终版本、内容以及文档体现出高度的一致性。3.2 建构软件技术检测体系为了营造计算机软件的良好应用环境,政府部门应加强对软件技术监测体系制定工作的重视,在体系完善的过程中明确软件错误检测、软件错误定位以及软件错误关闭等标准,借助于验证以及确认等工作对软件应用过程中存在的各项问题进行有效的处理。除此之外,还需以体系的构建为基础引入软件回归、功能、易用性、兼容性、安全性、内存泄漏以及信息流等多项测试内容,高效化软件测试的流程,在体系内部设置单元测试、结成测试以及系统测试等功能,对软件的不可靠性进行最佳判断。例如,在设计高考作文自动评分系统之时构建Trie树,对检索步骤(根节点搜索→对关键词的第一个字符进行查找→选择对应子树→转为子树查找→查找不成功→对第2个步骤予以重复)予以严格地遵循。附加性地,还要对皮尔逊相关系数、平局误差、全局准确率以及召回率等概念进行引入,以实现软件的最佳检索功能。3.3 组织并完善软件开发各环节的评审工作为了对软件开发不同环节与各项要求相符的工作予以保证,使软件的开发工作真正地按照流程化所规定的顺序予以开展,预防跨越阶段等现象的发生,需要在软件开发的每个阶段展开及时的软件评审活动,对不同阶段的对应标准予以明确。软件评审组的工作人员应将总体人员、设计师、管理者以及质量保证师等同时囊括在内,最为重要的,各阶段的评审工作需要由不同领域的专家共同组成,不能出现评审专家单一化的现象。对于评审组人员而言,其主要动作是对开发人员所提交的软件文档进行审核,判断其是否对上一环节软件文档的标准与要求予以执行。在评审工作结束以后,评审组人员需要以书面的形式提出相应的评审意见与解决方案,以此为依据,交由软件质量保证师予以处理。在计算机软件的开发过程中,上述内容都是避免其出现不可靠性现象所不可或缺的评审工作,对于软件产品今后的安全可靠性而言,发挥着尤为重要的作用。4 结语目前,计算机软件存在着多种不可靠性问题,对其应用的稳定与安全性产生了负面影响。基于此,为了对计算机网络应用的良好空间予以拓展,应避免软件差错、建构软件技术检测体系、组织软件开发各环节的评审等各项工作,以达到软件应用的最佳状态,使计算机网络得到进一步的发展。
[参考文献][1]高晓宁.计算机软件可靠性分析及抗不可靠性方法[J].航空计算技术,2003(3):73-75.[2]熊浪,娄必伟.计算机软件技术中不可靠性的分析与判断[J].无线互联科技,2016(15):56-57.[3]张才华,冯法池,任军.计算机软件技术的不可靠性分析[J].煤炭技术,2013(3):210-212.
Analysis on unreliability of computer softwareWu Zongzhuo(Shaanxi Institute of Technology, Xi’an 710300, China)Abstract: With the continuous development of the contemporary society, network construction problems gradually caused human’s attention. It
is found through analysis of existing conditions, problems of software updating, security and system are becoming more and more serious under the background of information age. The paper starts with characteristics of computer software, makes an analysis on its presentation performance and influence factor of unreliability, aiming at promoting overall and rapid development of computer technology.Key words:computer; development and research of software; unreliability