如何评价软件质量

如何评价软件质量
如何评价软件质量

如何评价软件质量

前言:

IT目开发的系统应用在生死攸关的场合。例如,1981年,由计算机程序改变而

导致的1/67的时间偏差,使航天飞机上的5台计算机不能同步运行,这个错误导致了航无飞机发射失败。1986年,l台Therac25机器泄露致命剂量的辐射,致使两名医院病人死亡。造成惨剧的原因是个软件出现了问题,导致这台机器忽略了数擀校验。这些惨痛的教训说叫,在软件开发项目中认真抓好质量管理,并加强有关软件琐目质量管理的研究是摆在我们而前的重要课题。

软件项目质量管理包括:质量计划编制、质量保证和质量控制三个过程域。质量计划是质量管理的第过程域,它主要结合各个公司的质量方针,产品描述咀及质量标准和规则通过收益、成本分析和流程设计等工具制定出来实施方略,其内容全而反应崩户的要求,为质量小组成员有效工作提供了指南,为项目小组成员以及项目相关人员了解在项目进行中如何实施质量保证和控制提供依擀,为确保项目质量得到保障提供坚实的基础。质量保证则是贯穿整个项目全生命周期的有计划和有系统的活动,经常性地针对整个项目质量计划的执行隋况进行评估、检查与改进等工作,向管理者、威客或其他方提供信任,确保项目质量与计划保持一致。质量拴制是对阶段性的成果进行检测、验证,为质量保证提供参考依据,它是个PDCA循环过程。

在质量监测过程中,对于质量计划中设置的见证点、停工待检点,质量监测人员要按照作业程序及时进行测量检查(其中对于停工待检点必须由监理人员签字认可后才能进入下道工序),以确定项目成果(或阶段成果)是否符合相关的质量标准。对于见证点或停工待检

点要防止跳过检查,因为避免错误的成本总是大大低于补救错误的成本。对质量监测的结果应采用相应的统计方祛进行分析,如帕类托图法(按发生频率排序的直方阿,它显示了可识别原因的种类和所造成的结果的数量)等。通过统计分析对人员、设备、参考资料、方法、环境等影响项目质量的因素进行监控,确定项目实过程是否在控制之中,同时进行趋势分析,对些偏向于不合格的趋势及早进行控制。质量控制阶段应根据验收数据做出验收决定,确定是否进入下步工序。对于质量监测中发现的不合格,应及时利用“因果分析图”等方法分析原因,并进行适宜的处置,保证不合格得到识别和有效的控制。不合格处置包括返工、返修、降级、让步放行、报废等形式。

项目检测分析时,对于已发现的不合格或潜在的不合格,应制定相应的纠错措施或预防措施,以消除不合格或潜在的不合格原因,防止不合格的发生。纠正措施或者预防措施制定后,应对质量计划进行相应的调整,保证项目的顺利实施。

项目质量评估不仅仅是在项目完成后进行,还包括对项目实过程中的各个关键点的质

量评估。项目质量评估看起来属于事后控制,但它的目的不是为了改变那些已经发生的事情,而是试图抓住项目质量合格或不合格的精髓,以使将来的项目质量管理能从中获益。

项目终止阶段,是在决策项目终止后,检查项目文件资料完备,包括项目量验评

表、竣工报告等,同时进行项目总结。项目总结是一个把实际运行情况与项目计划不断比较以提炼经验教训的过程。通过项目质量计划和总结,项目过程中的经验和教训将得到完整的记录和升华,成为“组织财富”。

我们都知道个一个目的土要内容是:成本、进度、质景,良好的项目管理就是综合二方而的因素,平衡二方而的目标,最终依照目标完成任务。项目的这二个方面是相互制约和影响的,有时对这二方面的平衡策略甚至成为个企业级的要求,决定了企业的行为,我们知道IBM的软件足以质量为最重要目标的,而微软的“足够好的软什”策略更是耳熟能详,这些质量目标其实立足于企业的战略目标。所以用于进行质景保证的SQA也应当立足

于企业的战略目标,从这个角度思考SQA,形成对SQA的认识。

软件界已经达成共识的:影响件什项目进度、成本、质量的因素土要是“人、过程、

技术”。首先要叫确的是这三个因素中,人是第一位的。

现在许多实施CMM的人员溺于CMM理论强调“过程”,这是很危险的倾向。

这个思想倾向在国外受到了猛烈抨击,从某种意义上并种敏捷过程方法的提出就是对强调过程的种反思。“XP”中的个思想“人比过程更重要”是值得我们思考的。我个人的意

见在进行过程改进中坚持“以人为本”,强调过程和人的和谐。

随着软件系统规模、复杂的度等不断增加,靠简单的直觉判断来进行管理,做出决定会变得非常困难,甚至是危险的,有时是会被假象所迷惑的。这时,我们需要求助软件度量,对软件过程和产品实施量化管理。度量可以帮助我们更客观、更全面、更准确的了解产品状况,发现产品潜在的问题,从而进行更有效的管理。质量度量可以实现以下目标:

使沟通更有效,改进可见性。度量支持跨越组织所有级别的人员之间的沟通,而且这种沟通清晰、明确,不容易引起混淆,使管理更加透明。

尽早的发现和更正问题。问题发现的越晚越难管理,并且要花费越多的成本来修复问题,做出关键的权衡。在某个领域的决定常常会影响其他领域,而度量为项目进度、质量等提供了客观的历史数据、当前数据和变化趋势等,能够帮助我们客观的评定各领域之间的相互影响,权衡利弊,从而做出合理的决策。

跟踪特定的项目目标。度量能帮助我们回答特定的问题,通过跟踪计划的实际测量情况,我们能够对所设定的目标评估项目的进展计划。

管理风险。风险管理是一个被广泛接受的最佳实践,他包括了项目周期中尽早的识别和分析风险。较晚的发现风险将使风险处理更加困难,并要花费更大的成本来处理风险。通过使用高质量的客观数据,我们能够提高对风险区域的可见性,如需求的蔓延。通过度量和监视需求的变更,我们能够确定某个风险是否被降低了。

计划未来的项目。通过度量活动,可以记录过去大量项目的周期、进度、费用和质量的信息,这可以为未来相似的项目计划的进度、资源和成本估算等提供可靠的参考数据,制定合理的计划,有利于质量保证和管理工作。

软件是由人来完成的,而我们知道,所有由人做的工作都不会是完美无缺的。软件开发是个很复杂的过程,期间很容易产生错误。无论是软件从业人员、专家和学者做了多大的努力,软件错误仍然存在。因而大家也得到了一种共识:软件中残存着错误,这是软件的一种属性,是无法改变的。所以通常说软件测试的目的就是为了发现尽可能多的缺陷,并期望通过改错来把缺陷统统消灭,以期提高软件的质量。一个成功的测试用例在于发现了至今尚未发现的缺陷。

最新九大软件质量因素教学提纲

九大软件质量因素 1、健壮性 是指在异常情况下,软件能够正常运行的能力。正确性描述软件在需求范围之内的行为,而健壮性描述软件在需求范围之外的行为。开发者往往把异常情况错当成正常情况而不作处理,结果降低了健壮性。用户才不管正确性与健壮性的区别,反正软件出了差错都是开发方的错。所以提高软件的健壮性也是开发者的义务。健壮性有两层含义:一是容错能力,二是恢复能力。 2、可靠性 可靠性是指在一定的环境下,在给定的时间内,系统不发生故障的概率。可靠性本来是硬件领域的术语。比如某个电子设备在刚开始工作时挺好的,但由于器件在工作中其物理性质会发生变化(如发热),慢慢地系统的功能或性能就会失常。所以一个从设计到生产完全正确的硬件系统,在工作中未必就是可靠的。软件在运行时不会发生物理性质的变化,人们常以为如果软件的某个功能是正确的,那么它一辈子都是正确的。可是我们无法对软件进行彻底地测试,无法根除软件中潜在的错误。平时软件运行得好好的,说不准哪一天就不正常了,如有千年等一回的“千年虫”问题,司空见惯的“内存泄露”问题、“误差累积”问题等等。时隐时现的错误一般都属于可靠性问题,纠错的代价很高。 3、性能 性能通常是指软件的“时间-空间”效率,而不仅是指软件的运行速度。人们总希望软件的运行速度高些,并且占用资源少些。性能优化的关键工作是找出限制性能的“瓶颈”可以通过优化数据结构、算法和代码来提高软件的性能。 4、易用性 易用性是指用户使用软件的容易程度。现代人的生活节奏快,干啥事都想图个方便。所以把易用性作为重要的质量属性对待无可非议。导致软件易用性差的根本原因:理工科大学教育存在缺陷:没有开设人机工程学、美学、心理学这些必修课,大部分开发人员不知道如何设计易用的软件产品。开发人员犯了“错位”的毛病:他以为只要自己用起来方便,用户也就会满意。软件的易用性要让用户来评价。当用户真的感到软件很好用时,一股温暖的感觉油然而生,于是就用“界面友好”、“方便易用”等词来评价软件产品。 5、清晰性 清晰意味者所有的工作成果易读、易理解,可以提高团队开发效率,降低维护代价。开发人员只有在自己思路清晰的时候才可能写出让别人易读、易理解的程序和文档。可理解的东西通常是简洁的。一个原始问题可能很复杂,但高水

软件评价指标

软件评价指标 Last updated at 10:00 am on 25th December 2020

我们常说某某软件好用,某软件功能全、结构合理、层次分明。这些表述很含糊,用来评价软件质量不够确切,不能作为企业选购软件的依据。对于企业来说,开发单位按照企业的需求,开发一个应用软件系统,按期完成并移交使用,系统正确执行用户规定的功能,仅仅满足这些是远远不够的。因为企业在引进一套软件过程中,常常会出现如下问题: ● 定制的软件可能难于理解,难于修改,在维护期间,企业的维护费用大幅度增加; ● 企业对外购的软件质量存在怀疑,企业评价软件质量没有一个恰当的指标,对软件可靠性和功能性指标了解不足; ● 软件开发商缺乏历史数据作为指南,所有关于进度和成本的估算都是粗略的。因为没有切实的生产率指标,没有过去关于软件开发过程的数据,企业无法精确评价开发商的工作质量。 为此,有必要先了解软件的质量评价体系。美国的.Boehm和先后提出了三层次的评价度量模型:软件质量要素、准则、度量。随后提出了自己的软件质量度量SQM技术,波音公司在软件开发过程中采用了SQM技术,日本的NEC公司也提出了自己的SQM工具,即SQMAT,并且在成本控制和进度安排方面取得了良好的效果。 第一层是软件质量要素,软件质量可分解成六个要素,这六个要素是软件的基本特征:

1. 功能性:软件所实现的功能满足用户需求的程度.功能性反映了所开发的软件满足用户称述的或蕴涵的需求的程度,即用户要求的功能是否全部实现了。 2. 可靠性:在规定的时间和条件下,软件所能维持其性能水平的程度。可靠性对某些软件是重要的质量要求,它除了反映软件满足用户需求正常运行的程度,且反映了在故障发生时能继续运行的程度。 3. 易使用性:对于一个软件,用户学习、操作、准备输入和理解输出时,所做努力的程度。易使用性反映了与用户的友善性,即用户在使用本软件时是否方便。 4. 效率:在指定的条件下,用软件实现某种功能所需的计算机资源(包括时间)的有效程度。效率反映了在完成功能要求时,有没有浪费资源,此外"资源"这个术语有比较广泛的含义,它包括了内存、外存的使用,通道能力及处理时间。 5. 可维修性:在一个可运行软件中,为了满足用户需求、环境改变或软件错误发生时,进行相应修改所做的努力程度。可维修性反映了在用户需求改变或软件环境发生变更时,对软件系统进行相应修改的容易程度。一个易于维护的软件系统也是一个易理解、易测试和易修改的软件,以便纠正或增加新的功能,或允许在不同软件环境上进行操作。 6. 可移植性:从一个计算机系统或环境转移到另一个计算机系统或环境的容易程度。 第二层是评价准则,可分成22点。包括精确性(在计算和输出时所需精度的软件属性);健壮性(在发生意外时,能继续执行和恢复系统的软件属性);安全性(防止软件受到意外或蓄意的存取、使用、修改、毁坏或泄密的软件属性);以及通信有效

软件质量评估办法

软件系统质量 记分办法,可以按照月,季或者年进行记分合计,每分对应相应的价格进行奖惩。 上线前 ;95%需求覆盖率,至少 ;5%问题遗留率,最高 BUG严重;10%比率,最高 试运行过程 内(一般以软件交付给用户后的三个月内为初期故障期)指软件在初期故障期初期故障率: 可以用它来评价交付使用的软件质小时的故障数为单位。100一般以每单位时间的故障数。 量与预测什么时候软件可靠性基本稳定。检查项目初期故障率的大小取决于软件设计水平、 数、软件规模、软件调试彻底与否等因素 偶然故障率:指软件在偶然故障期(一般以软件交付给用户后的四个月以后为偶然故障期) 小时的故障数为单位,它反映了软件处于稳定状态下1000内单位时间的故障数。一般以每 的质量 运维过程 )MTBF平均失效间隔时间(

通MTBF指软件在相继两次失效之间正常工作的平均统计时间。在实际使用时, 次失效之间的平均统计时间。n+1次失效与第n很大时,系统第n常是指当 小时左右。1000大体在MTBF国外一般民用软件的则对于可靠性要求高的软件, 小时之间。1000~10000要求在 分;10小时,记1000考核办法:小于 分;20小时,记500小于 分;30小时,记200小于 分并记严重缺陷。50小时,记100小于 易用性指标 分;极差10易用性可通过多方评审来确定,分优秀、良好、一般、较差、极差;较差,记 分并需进行整改。20记 性能质量 吞吐率 。软件必须具有处理海量数据的能单位时间软件的信息处理能力(即各种目标的处理批数) 力。吞吐率就是体现该能力的参数。随着信息的泛滥,要求软件的吞吐率应该达到数百批 最大并发用户数 也可由用户指定,需要通过测试确定,系统在用户使

软件质量保证测试试题与答案48191

选择题 1.软件测试的目的是(B)。 A)试验性运行软件 B)发现软件错误 C)证明软件正确 D)找出软件中全部错误 2.软件测试中白盒法是通过分析程序的( B )来设计测试用例的。 A)应用范围B)内部逻辑 C)功能 D)输入数据 3.黑盒法是根据程序的( C )来设计测试用例的。A)应用范围 B)内部逻辑 C)功能 D)输入数据 4.为了提高软件测试的效率,应该(D)。 A)随机地选取测试数据 B)取一切可能的输入数据作为测试数据 C)在完成编码以后制定软件的测试计划 D)选择发现错误可能性最大的数据作为测试用例 5.与设计测试用例无关的文档是(A )。 A)项目开发计划 B)需求规格说明书 C)设计说明书 D)源程序 6.测试的关键问题是( B )。 A)如何组织软件评审 B)如何选择测试用例 C)如何验证程序的正确性 D)如何采用综合策略 7.软件测试用例主要由输入数据和( C)两部分组成。A)测试计划 B)测试规则 C)预期输出结果 D)以往测试记录分析 8.成功的测试是指运行测试用例后( B)。 A)未发现程序错误 B)发现了程序错误 C)证明程序正确性 D)改正了程序错误 9.下列几种逻辑覆盖标准中,查错能力最强的是(D )。A)语句覆盖 B)判定覆盖 C)条件覆盖 D)条件组合覆盖 10.在黑盒测试中,着重检查输入条件组合的方法是( D )。 A)等价类划分法 B)边界值分析法 C)错误推测法D)因果图法 11.单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是( A )。 A)系统功能 B)局部数据结构 C)重要的执行路径 D)错误处理 12.软件测试过程中的集成测试主要是为了发现( B)阶段的错误。 A)需求分析 B)概要设计C)详细设计 D)编码 13.不属于白盒测试的技术是( D)。 A)路径覆盖 B)判定覆盖 C)循环覆盖D)边界值分析 14.集成测试时,能较早发现高层模块接口错误的测试方法为( A)。 A)自顶向下渐增式测试 B)自底向上渐增式测试 C)非渐增式测试 D)系统测试 15.使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。 A)程序内部逻辑 B)程序的复杂度 C)使用说明书 D)程序的功能 16.程序的三种基本结构是( B )。 A)过程子、程序、分程序B)顺序、选择、循环 C)递归、堆栈、队列 D)调用、返回、转移17.软件调试的目的是( A ) A)找出错误所在并改正之 B)排除存在错误的可能性C)对错误性质进行分类 D)统计出错的次数 18.下面说法正确的是( C )。 A)经过测试没有发现错误说明程序正确 B)测试的目标是为了证明程序没有错误 C)成功的测试是发现了迄今尚未发现的错误的测试 D)成功的测试是没有发现错误的测试 20.发现错误能力最弱的是( A )。 A)语句覆盖B)判定覆盖 C)条件覆盖D)路径覆盖 22.下面( D )方法能够有效地检测输入条件的各种组合可能引起的错误。 A)等价类划分 B)边界值分析 C)错误推测D)因果图 23.与确认测试阶段有关的文档是( A )。 A)需求规格说明书 B)概要设计说明书 C)详细设计说明书 D)源程序 25.( B )方法需要考察模块间的接口和各模块之间的联系。 A)单元测试B)集成测试 C)确认测试D)系统测试 26.调试应该由( B )完成。 A)与源程序无关的程序员 B)编制该源程序的程序员 C)不了解软件设计的机构 D)设计该软件的机构 27.在设计人机界面时,应主要考虑的因素有(D )。系统响应时间B)错误处理C)用户求助机制D)以上都是 28、用黑盒技术设计测试用例的方法之一为(A)

5个常用的软件质量指标

5 个常用的软件质量指标 在软件开发中,软件质量是衡量软件是否符合需求、标准的重要体现。除了代码质量外,影响软件整体质量的因素还有很多。因此,要确保软件的整体质量,就需要在各个环节严格控制。 本文列出了衡量软件质量的5个最常用的指标。 1、SLOC(Source Lines of Code,源代码行) 计算代码行数可能是最简单的衡量指标,主要体现了软件的规模,并为项目增长和规划提供了相关数据。例如,如果每月统计一次代码的行数,就可以绘制一个项目发展概览图。当然,由于存在项目重构或是设计阶段等因素,这种方式并不太可靠,但是可以为项目的发展提供一个视角。 可以只统计逻辑代码行(Source Logical Line of Code,SLLOC),这样可以获得稍准确的信息。逻辑代码行不包含空行、单个括号行和注释行。可以使用Metrics 工具来统计。 代码行数不应该用来评估开发者的效率,否则,可能会产生重复、不可维护的或不专业的代码。 2、每个代码段/模块/时间段中的bug数 要想实现更好的测试以及更高的可维护性,bug 跟踪是必不可少的。每个代码段、模块或时间段(天、周、月等)内的 bug 可以很容易通过工具统计出来(如 Mantis)。这样,可以及早发现并及时修复。 Bug 数可以作为评估开发者效率的指标之一,但必须注意,如果过分强调这种评估方法,软件开发者和测试者可能会成为敌人。在生产企业中,要保证员工彼此之间的凝聚力。 为了更好的实现评估,可以根据重要性和解决成本将 bug 划分为低、中、高三个级别。 3、代码覆盖率 在单元测试阶段,代码覆盖率常常被拿来作为衡量测试好坏的指标,也用来考核测试任务完成情况。可以使用的工具也有很多,如 Cobertura 等。 代码覆盖率并不能代表单元测试的整体质量,但可以提供一些测试覆盖率相关的信息,可以和其他一些测试指标一起来使用。 此外,在查看代码覆盖率时,还需注意单元测试代码、集成测试场景和结果等。

项目评价质量指标说明

项目评价质量指标说明 一质量管理的依据 1 过程质量管理 对软件开发的整个过程进行质量管理。开发过程质量有保证,最后开发出来的软件的质量就会有保证。对开发过程进行质量管理,能够及时发现问题,解决问题。也符合软件工程的原则:“缺陷越早发现越早修改越经济”。 2QA和SEPG、QC的区别 SEPG:制定过程,实施过程改进; QA:确保过程被正确执行 SEPG应当提供过程上的指导,帮助项目组制定项目过程,帮助项目组进行策划;从而帮助项目组有效的工作,有效的执行过程。如果项目和QA对过程的理解发生争持,SEPG作为最终仲裁者。 如果将一个软件生产类比于一个工厂的生产。那么生产线就是过程,产品按照生产线的规定过程进行生产。SQA的职责就是保证过程的执行,也就是保证生产线的正常执行。 QC,检验产品的质量,保证产品符合客户的需求;是产品质量检查者; QA,审计过程的质量,保证过程被正确执行;是过程质量审计者 QA只要检查项目按照过程进行了某项活动没有,产出了某个产品没有;而QC来检查产品是否符合质量要求。 评价指标里包含和QA和QC的内容。 3公司程序文件 《软件设计开发服务控制程序》对软件产品设计开发过程进行了说明。 《过程和产品的监视测量控制程序》对软件产品的监视和测量进行了说明。4绩效考核 公司绩效考核里有100分的质量考核分数。质量考核分数根据项目质量评价分数计算。 二如何实施 参与项目的整个过程。从项目启动开始,参与需求分析、概要设计、详细设计、编码、测试和实施以及维护的所有阶段。每个阶段都要详细了解项目的情况,根据项目评价指标进行打分,同时提出改进意见。需要完善指标的,对指标进行完善。

软件质量保证试题答案

一、判断题题1分,共20分) ( × )1、软件故障是导致软件失效的必要和充分要素。 ( √ )2、同行评审的主要目标在于检测错误、核对与标准的偏离。 ( √ )3、在任何软件机构中,定期、不定期的培训、再培训都是必须而且是必要的。 ( √ )4、在整个机构中使用基础设施防护与改进部件的主要目标是在机构积累的SQA经验基础上消除或至少降低出错率。 ( × )5、所有SQA活动和项目里程碑的完成或项目里程碑的检验是同时发生的。 ( × )6、Daniel Galin等提在20世纪50年代建立的经典质量费用模型,提供了一种以经济学观点把与产品质量保证相关的费用非类的方法学。 ( √ )7、一旦更改过的SCI替换了前面的SCI,就认为完成了软件的一个新版本。 ( √ )8、软件质量成本是一个投资问题,而不是成本问题! ( × )9、SEI CMM评估标准, ISO 9001和ISO 9000-3标准是典型的项目过程标准。 ( √ )10、软件质量保证的独特性是由软件产品不同于其他制造产品的本质决定的。 二、填空题(每空1分,共20分;请把答案书写在相应横线上。) 1、软件质量工程包括软件质量保证、软件质量规划和软件质量控制三大方面。 2、McCall模型产品修改纬度的质量因素有可维护性、可测试性、灵活性。 3、面向对象模型不同于其他模型的主要特征是组件的密集重用。 4、有两种同行评审方法学:审查和走查。 5、RMA可以划分成三组类别内部风险管理措施,分包风险管理措施,顾客风险管理措施。 6、支持性质量手段有模板和检查表。 7、依据软件系统的生命周期和其他阶段,软件质量度量划分为软件过程度量和软件产品度量。 8、软件配置发布的版本有基线版本、中间版本、修订版本。 9、SQA标准被划分成软件质量管理标准,软件项目过程标准两类。 10、软件缺陷的固有特征有软件缺陷的固有性、软件缺陷的敏感性,软件缺陷的感染性。 三、选择题(每小题2分,共18分) 1 软件调试的目的是(B) ( A)发现软件中隐藏的错误 (B)解决测试中发现的错误 (C)尽量不发现错误以便早日提交软件 (D)证明软件的正确性 2 .黑盒测试技术中不包括(D ) (A)等值分析测试(B)边界值分析测试 (C)错误推测法(D)逻辑覆盖测试 3.(D )是把输入条件视为“因”,把输出条件视为“果”,将黑盒看成是从因到果的网络图(A)等值分析测试(B)边界值分析测试 (C)错误推测法(D)因果图 4.集成测试的测试用例是根据(C )的结果来设计。 A.需求分析 B.源程序 C.概要设计 D.详细设计 5 CMMI中,(D )主要致力于技术革新和优化过程的改进。

软件质量量化标准

软件质量量化标准版本记录: 文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改当前版本: 作者:徐涛 完成日期:2005-3-18签收人: 签收日期: 1编写目的 本文档描述了对软件质量的量化方法,适用于软件相关各部门:项目部、电力产品部、研发中心、支持服务中心。 量化指标主要有:测试缺陷率、遗漏缺陷率、设计评分、代码评分。 2 定义 有效缺陷:经过测试总结会、或由技术总监组织评审,确定为影响软件质量的缺陷(包括已立即修改、及因客观条件影响而暂缓修改的缺陷)定义为有效缺陷。测试组提出的改进性建议不记为有效缺陷。 测试缺陷率:以测试阶段发现并确认的有效缺陷为准,该质量指标用于评价开发团队。 遗漏缺陷率:以软件试运行阶段客户或维护人员发现并确认的有效缺陷为准,该质量指标用于评价测试团队。 设计评分:《需求说明书》、《构架设计》、《概要设计》(包括《数据库设计》)必须通过正式会议评审,并由技术总监组织评分。该质量指标用于评价软件设计人员。 代码评分:项目编码阶段结束之后、项目总结会之前,软件代码成果必须经代码复审,并

由技术总监组织评分。该质量指标用于评价程序员。 3执行细则 测试阶段: 有效缺陷以测试组提交的《测试总结报告》为依据,通过测试总结会,由技术总监组织评 审,并经开发团队和测试团队确认。 试运行阶段: 1)试运行结束日期以客户签字的《试运行分析报告》日期为准。 2)未作版本控制的系统,以《客户信息交流表》记录的缺陷为准。 3)作版本控制的系统,以迁入迁出记录为准,要求迁入迁出必须作修改备注,说明所更 正的缺陷。 缺陷率计算方法 有效缺陷,分为A、B、C、D四级,加权系数分别为、、、; 系统复杂度,分为A、B、C三级,加权系数分别为、、1; 总缺陷数=测试阶段确定的缺陷数+试运行阶段确定的缺陷数; 缺陷比=(A* + B* + C* + D*)/总缺陷数; 缺陷率=(A* + B* + C* + D*)/ (代码行数 * 系统复杂度); 缺陷分类标准 软件缺陷分类标准 缺陷 备注分类范畴细类 等级 不能执行正常工作工那或重要功系统缺陷由于程序所引起的死机,非法退出A类 能,使系统崩溃或资源严重不足程序死循环A类 程序错误A类

软件工程考试复习题

《软件工程》期末考试复习训练题 一、选择题 1、软件质量的好坏决定着软件的生命力,一般说来,一个质量好的软件应具备()。 A、功能正确、界面友善、占内存少、足够可靠、易于维护 B、功能正确、结构良好、程序短小、足够可靠、易于维护 C、功能正确、界面友善、速度足够、足够可靠、易于维护 D、功能正确、界面友善、程序易读、结构良好、文档齐全 2、黑盒子、白盒子测试法是常采用的测试方法,其中白盒子测试主要用于测试()。 A、结构合理性 B、软件功能 C、程序正确性 D、程序内部结构 3、在以下几种耦合中,最低耦合是()。 A、数据耦合 B、内容耦合 C、非直接耦合 D、公共耦合 4、面向对象的程序设计方法具有比结构化程序设计方法无比优越性,是因为() A、OO方法具有封装性、动态性、多态性 B、O O方法具有封装性、继承性、多态性 C、O O方法具有封装性、客观性、动态性 D、OO方法具有客观性、动态性、动态性 5、UML中采用()表现系统的动态性 A、类图 B、对象图 C、交互图 D、配置图 6、软件工程是一门交叉学科,其研究领域包括()。 A、软件开发模型与开发方法 B、软件开发环境与工具 C、计算机辅助设计与制造CAD/CAM D、软件工程经济学 7、可行性研究的主要任务是了解客户的要求及现实环境,从技术、经济和社会因素等三方 面研究并论证本软件项目的可行性,编写可行性研究报告,制定( )。 A、项目总体规划 B、初步项目开发计划 C、需求规格说明书 D、总体解决方案 8、软件系统开发对技术性能的指标要求主要包括:存储容量限制、执行速度、响应时间和 ()等。 A、吞吐量 B、安全性 C、正确性 D、可靠性 9、需求分析过程负责分析当前系统与目标系统的差别,建立目标系统的() A、物理模型 B、逻辑模型 C、过程模型 D、数据模型 10、问题分析图(PAD)包括的基本控制结构有:顺序结构、选择结构、重复结构和()。 A、并行结构 B、多分支选择型 C、逻辑结构 D、物理结构 11、面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程,具体包括对 象模型、动态模型和()三个子模型。 A、过程模型 B、资源模型 C、功能模型 D、交互模型 12、模块内聚度越高,说明模块内各成分彼此结合的程度越() A、松散 B、紧密 C、无法判断 D、相等 13、结构化程序设计的三种基本控制结构是()。 A、过程、子程序和分程序 B、顺序、选择和循环 C、递归、堆栈和队列 D、调用、返回和转移 14、面向对象模型主要由以下哪些模型组成()。 A、对象模型、动态模型、功能模型 B、对象模型、数据模型、功能模型 C、数据模型、动态模型、功能模型 D、对象模型、动态模型、数据模型

质量管理漫漫谈之影响软件产品质量的因素

质量管理漫漫谈之影响软件产品质量的因素 在笔者的前一篇文章《质量管理漫漫谈之软件质量指标》中介绍了一些常用的软件质量指标,那么影响这些质量指标的因素有哪些呢?我们来分析一下,软件产品质量体现在软件产品运行、软件产品修改、软件产品转移三个方面(大家可以思考一下,6类软件质量指标和这3个方面如何对应呢?),我们分别说明。 1、影响软件产品运行质量的因素 ● 处理流程:功能的每一步操作都实现了吗?操作合乎逻辑吗? ● 算法:选用正确的或者优化过的数值算法、计算精度满足要求吗? ● 界面:界面清晰、容易理解、容易操作吗? ● 资源使用:运行时占用了多少内存和时间?资源使用后释放了吗? ● 异常和错误:系统能够判断出错并重新初始化或者弹出提示信息吗? 2、影响软件产品修改质量的因素 ● 程序可读性:程序命名符合规范吗?注释是否充分?代码风格是否一致? ● 可理解性:程序中的每个对象、组件是否设计合理而容易被理解? ● 可解释性:所有的文档是否都已经具备? ● 模块的耦合性:每个模块是否比较独立?模块之间的关系既简单又清楚吗? ● 自定义性:功能的设置可以通过外部数据库、配置文件实现吗?是否有死代码? ● 可预见性:预先是否知道每个功能达到的预期结果? 3、影响软件产品移植质量的因素 ● 操作系统的独立性:产品是否可以不修改或者很少修改就可以在不同的操作系统上运行? ● 硬件的独立性:产品是否通过虚拟端口、驱动程序区实现和硬件集成? ● 数据的独立性:数据是否和程序进行有效分离? ● 系统的裁剪性:是否可以根据需要抽取系统的若干部分组成一个新的系统? 影响软件产品质量的因素很多,而且他们对软件质量影响的程度、深度是不一样的,如正确性和精确性就应该排在第一位,因为软件运行首先要能正常云新,都则软件产品就没有价值,更

软件产品评价 软件质量特性及其使用指南

中华人民共和国国家标准 GB/T16260—1996 idt ISO/IEC9126:1991 信息技术软件产品评价质量特性及其使用指南 Information technology-software product evaluation-Quality characteristics and guidelines for their use ----------------------------------------------------------- 1.范围 本标准定义了六个特性,它们以最小的重迭描述了软件质量。这些特性可以作为进一步细化和描述软件质性的基线。本际准描述了如何使用质量特性来评价软件质量。 本标准正文不规定子特性和度量以及有关测量(masurement)、评级(rating)和评估(asscssment)的方法。本际准符合GB/T 6583-92的质量定义。 注:在附录A中提供了子特性定义的建议,供参考。 本标准的特性定义和相关的质量评价过程模型适用于对软件产品质量需求的确 定以及在软件生存期中对软件产品质量的评价。 这些特性运用于各种软件,包括固件中的计算机程序和数据。 本标准供获取(acquisition)、开发(development)、使用(use)、支持(support)、维护(maintenancen)或评审(audit)软件的那些人所使用。 2.引用标准 下列标准包含的条文,通过在本标准中引用而构成为本标准的条文。本标准出版时,所示版本均为有效。所有标准都会被修订.使用本标准的各方应探讨使用下列标准最新版本的可能性。. GB/T 6583-92质量术语(idt ISO 84O2:1986) 部分:系统开发2O第词汇信息技术1990 :2O-ISO/IEC 2382. 3.定义 下列定义适用于本标准 3.1发评估assessment 为了确定一特定的软件模块、软件包或软件产品是验收合格还是发布,把特定的已成文的评估准则应用到该软件模块、软件包或软件产品上去的活动。 3.2特征features 特征是一软件产品的可识别的性质,该性质与质量特性相关。

最新软件工程试题

软件工程的基本目标是_____________________。 软件项目规划的第一步是______________________。 功能点估算技术需要以______________________为基础进行问题分解,代码行估算技术需要以_________________________为基础进行问题分解。 任务集是工作任务、里程碑、_________________的集合。 形式证明与验证技术主要包括_________________________和定理证明。 在各种不同的软件需求中,__________________描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,__________________是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 在需求分析过程中,分析员要从用户那里解决的最重要的问题是明确____________________。 状态图是由状态机扩展而来的,用来描述对象所经过的对外部事件作出响应的______________。 类的行为是由________________决定的。 ______________是目前一种主流的软件开发技术,被看作是解决软件危机的一种先进技术。 行式证明与验证技术主要包括模型检测和_____________,模型检测就是对模型状态空间进行____________,以确认该模型是否具有某些性质。 1、请简要说明软件过程的概念和基本元素。 2、需求工程包括哪些基本活动?每一项活动的主要任务是什么? 3、面向对象设计与面向对象分析的区别是什么?设计包括哪些活动? 4、请分析比较下面两个for循环的优缺点 现在要对一个自动饮料售货机软件进行黑盒测试,该软件的规格说明如下: 一个自动售货机软件可以销售单价1元5角的盒装饮料。该售货机只接收1元和5角两种硬币,若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,则送出相应的饮料;若投入的硬币少于1元5角,则显示错误信息并退出硬币;若投入的硬币多于1元5角,则送出饮料的同时退还多余的硬币。请设计测试该软件的全部测试用例。 软件会逐渐退化而不会磨损,其原因在于() A.软件通常暴露在恶劣的环境下 B.软件错误通常发生在使用之后 C.不断的变更使组件接日之间引起错误 D.软件备件很难订购 软件开发的瀑布模型是( )。 A.适用于需求被清晰定义的情况 B.一种需要快速构造可运行程序的好方法 C.最适合于大规模团队开发的项日 D.己不能用于现代环境的过时模型

软件产品评价软件质量特性及其使用指南

软件产品评价软件质量特性及其使用指南--------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- 中华人民共和国国家标准 GB,T16260—1996 idt ISO,IEC9126:1991 信息技术软件产品评价质量特性及其使用指南 Information technology-software product evaluation,Quality characteristics and guidelines for their use ----------------------------------------------------------- 1. 范围 本标准定义了六个特性,它们以最小的重迭描述了软件质量。这些特性可以作为进一步细化和描述软件质性的基线。本际准描述了如何使用质量特性来评价软件质量。 本标准正文不规定子特性和度量以及有关测量(masurement)、评级(rating)和评估(asscssment)的方法。本际准符合GB,T 6583,92的质量定义。 注:在附录A中提供了子特性定义的建议,供参考。 本标准的特性定义和相关的质量评价过程模型适用于对软件产品质量需求的确定以及在软件生存期中对软件产品质量的评价。 这些特性运用于各种软件,包括固件中的计算机程序和数据。 本标准供获取(acquisition)、开发(development)、使用(use)、支持(support)、维护(maintenancen)或评审(audit)软件的那些人所使用。 2. 引用标准

下列标准包含的条文,通过在本标准中引用而构成为本标准的条文。本标准出版时,所示版本均为有效。所有标准都会被修订.使用本标准的各方应探讨使用--------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- ----------------------------------------------------------------------------------------------------------------------------- --------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- 下列标准最新版本的可能性。 GB/T 6583,92 质量术语(idt ISO 84O2:1986) ISO/IEC 2382,2O:1990 信息技术词汇第2O部分:系统开发 --------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- ----------------------------------------------------------------------------------------------------------------------------- --------------知识就是力量-----精品word文档值得下载------知识改变未来---------------- 3. 定义 下列定义适用于本标准 3.1 发评估assessment 为了确定一特定的软件模块、软件包或软件产品是验收合格还是发布,把特定的已成文的评估准则应用到该软件模块、软件包或软件产品上去的活动。 3.2 特征 features 特征是一软件产品的可识别的性质,该性质与质量特性相关。

软件工程复习题及答案

一、单项选择题(本大题共60小题,在每小题的四个备选答案中,选出一个正确答案,并将 正确答案填涂在答题卡上) 1.软件质量因素不包括。 A.正确性 B.高性能 C.可测试性 D.可理解性 2.软件可行性研究实质上是要进行一次需求分析、设计过程。 A.简化、压缩的 B.详细的 C.彻底的 D.深入的 3.以下哪个软件生存周期模型是一种风险驱动的模型。 A.瀑布模型 B.增量模型 C.螺旋模型 D.喷泉模型 4.可行性分析中,系统流程图用于描述。 A.当前运行系统 B.当前逻辑模型 C.目标系统 D.新系统 5.结构化分析建立功能模型的工具是。 A.DFD B.判定树/判定表 C.SC D.结构化语言 6.检查软件产品是否符合需求定义的过程称为。 A.确认测试 B.集成测试 C.系统测试 D.单元测试 7.在整个软件维护阶段所花费的全部工作中,所占比例最大的是。 A.校正性维护 B.适应性维护 C.完善性维护 D.预防性维护 8.通信内聚是指。 A.把需要同时执行的动作组合在一起形成的模块 B.各处理使用相同的输入数据或者产生相同的输出数据 C.一个模块中各个处理元素都密切相关于同一功能且必须顺序执行 D.模块内所有元素共同完成一个功能,缺一不可 9.一个只有顺序结构的程序,其环形复杂度是。 A.0 B.1 C.3 D.5 10.下述四个能力成熟度等级,级别最高的是。 A.已定义级 B.优化级 C.可重复级 D.已管理级 11.结构化程序设计,主要强调的是。 A.程序的执行效率 B.模块大小 C.程序的可理解性 D.模块关系 12.软件调试技术包括。 A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试

加强软件项目管理 提高软件开发质量

加强软件项目管理提高软件开发质量 软件质量与项目管理的关系 软件质量的高低,由符合软件质量要素要求的程度来决定。软件的质量要素包括功能性、可靠性、易用性、效率、可维护性、可移植性等六个方面: (1)功能性:软件的功能要满足用户的要求,在预定环境下能够完成预期的功能。 (2)易用性:用户容易理解和使用功能,操作方便,符合用户业务习惯。 (3)可靠性:软件按照设计要求,在规定时间和条件下不出故障,具有异常捕获功能并提供异常处理与恢复功能。 (4)效率:降低系统资源的开销,响应时间快,提高用户工作效率。 (5)可维护性:遵从统一的标准和规范,编码具有良好的可读性。为满足用户新的要求,或当环境发生了变化,或运行中发现了新的错误时,能够对一个已投入运行的软件进行相应诊断和修改。 (6)可移植性:一个软件(或软件的部分功能模块)能再次用于其它相关联的应用。 由以上软件质量要素相对应的要求可以看出,软件开发过程中从需求、设计、编码、测试到上线验收的任何一个环节,都将对软件质量产生重要影响,因此为了开发出符合软件质量要素要求的软件产品,必须加强对软件开发全过程的项目管理。 软件项目的建设按软件工程的生命周期法可分为项目立项、启动、需求分析、系统设计、系统开发、系统测试、系统上线、项目验收和上线后评估等9个阶段进行。加强软件项目管理,就是以软件工程的各个环节为管理主线,将动态项目管理贯穿其中,通过对软件开发的项目范围、项目进度、项目质量、项目沟通、人力资源、项目成本六大核心要素的集成管理,实现软件开发管理效能的最大化,从而大大提高软件开发质量。 把握需求,准确立项 软件开发项目的提出,应由迫切的业务需求来驱动。很多不成功的软件项目,

软件质量量化标准

软件质量量化标准 版本记录: 1编写目的 本文档描述了对软件质量的量化方法,适用于软件相关各部门:项目部、电力产品部、研发中心、支持服务中心。 量化指标主要有:测试缺陷率、遗漏缺陷率、设计评分、代码评分。 2 定义 有效缺陷:经过测试总结会、或由技术总监组织评审,确定为影响软件质量的缺陷(包括已立即修改、及因客观条件影响而暂缓修改的缺陷)定义为有效缺陷。测试组提出的改进性建议不记为有效缺陷。 测试缺陷率:以测试阶段发现并确认的有效缺陷为准,该质量指标用于评价开发团队。 遗漏缺陷率:以软件试运行阶段客户或维护人员发现并确认的有效缺陷为准,该质量指标用于评价测试团队。 设计评分:《需求说明书》、《构架设计》、《概要设计》(包括《数据库设计》)必须通过正式会议评审,并由技术总监组织评分。该质量指标用于评价软件设计人员。 代码评分:项目编码阶段结束之后、项目总结会之前,软件代码成果必须经代码复审,并由技术总监组织评分。该质量指标用于评价程序员。 3执行细则

测试阶段: 有效缺陷以测试组提交的《测试总结报告》为依据,通过测试总结会,由技术总监组织评审,并经开发团队和测试团队确认。 试运行阶段: 1)试运行结束日期以客户签字的《试运行分析报告》日期为准。 2)未作版本控制的系统,以《客户信息交流表》记录的缺陷为准。 3)作版本控制的系统,以迁入迁出记录为准,要求迁入迁出必须作修改备注,说明所更 正的缺陷。 缺陷率计算方法 有效缺陷,分为A、B、C、D四级,加权系数分别为1.2、1.1、1.0、0.9; 系统复杂度,分为A、B、C三级,加权系数分别为1.5、1.2、1; 总缺陷数=测试阶段确定的缺陷数+试运行阶段确定的缺陷数; 缺陷比=(A*1.2 + B*1.1 + C*1.0 + D*0.9)/总缺陷数; 缺陷率=(A*1.2 + B*1.1 + C*1.0 + D*0.9)/ (代码行数 * 系统复杂度); 缺陷分类标准

软件质量保证与测试复习题

软件质量保证与测试复习题 类型: 一、单项选择题(共20小题,20%) 二、判断题(共20小题,20%) 三、简答题(共5小题,30%) 四、综合题(共2题,30%) 复习题: 一、单项选择题 1、软件测试的目的() A. 避免软件开发中出现的错误 B. 发现软件开发中出现的错误 C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠性 D. 修改软件中出现的错误 2、软件测试是采用()执行软件的活动 A.测试用例B.输入数据C.测试环境D.输入条件 3、导致软件缺陷的最大原因是() A.软件需求说明书B.设计方案C.编码D.维护 4、在下列描述中,关于一个软件缺陷状态完整变化的错误描述是() A.打开——修复——关闭B.打开——关闭 C.打开——保留D.激活——修复——重新打开 5、在下列描述中,关于测试与调试的说法错误的是() A.测试是显示错误的行为;而调试是推理的过程 B.测试显示开发人员的错误。调试是开发人员为自己辩护 C.测试能预期和可控。调试需要想象、经验和思考 D.测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行

6、某次程序调试没有出现预计的结果,下列()不可能是导致出错的原因 A.变量没有初始化B.编写的语句书写格式不规范 C.循环控制出错D.代码输入有误 7、软件缺陷修复的代价最高的阶段为() A.发布阶段B.需求阶段C.设计阶段D.编码阶段 8、不属于逻辑覆盖方法的是() A.组合覆盖B.判定覆盖C.条件覆盖D.接口覆盖 9、()是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少执行一次A.条件覆盖B.组合覆盖C.判定覆盖D.语句覆盖 10、()是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次 A.判定-条件覆盖B..组合覆盖C.判定覆盖D.条件覆盖 11、软件缺陷修复的代价最高的阶段为() A.发布阶段B.需求阶段C.设计阶段D.编码阶段 12、下列()是关于软件缺陷的描述。 A.导致软件包含故障的人的行为B.产品的异常情况 C.引起一个功能部件不能完成所要求的功能的一种意外情况 D.功能部件执行其规定功能的能力丧失 13、软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?()A.功能测试B.单元测试C.结构测试D.验收测试 14、单元测试的主要任务不包括() A.出错处理B.全局数据结构C.独立路径D.模块接口 15、如下图所示的N-S图,至少需要()个测试用例完成逻辑覆盖。(逻辑覆盖是通过对程序逻辑结构的遍历实现程序的覆盖)

软件产品质量管理的影响因素

软件产品质量管理的影响因素 软件项目质量管理关乎到一个企业的品牌,关乎到企业的生死存亡,所以我们一定要重视软件产品的质量,然而软件本身的特点和目前软件开发模式使隐蔽在软件内部的质 量缺陷不可能完全避免,影响软件质量的因素是多种多样的,下面我从各方面仔细谈谈: 1.软件需求模糊以及软件需求的变更从根本上影响着软件产品的质量 软件是可视性很差的复杂的逻辑实体,不同于任何其他制造业的产品。使得软件质量 难以把握的一个因素是软件需求。确定需求,在软件开发的初期阶段让它真正反映用户的 意图是一件非常重要的工作,它既是后继阶段开发的基础,又是软件开发完成后验收的依据,而且还是工期和开发成本估计的出发点,供方和用户自然都一十分关心它。但实际上,软件需求既不可见,也往往说不清。软件用户常常自己弄不清楚,或者说不明白自己对所 要软件的需求,或者会出现用户提出的需求一变再变的情况。这种现象必定会给软件的开 发工作带来许多困难,也就必定会埋下软件质量缺陷的隐患。 2.手工开发工作难以避免出现差错 目前软件开发工作大多仍是手工劳动,但又需要开发人员集中精力,全神贯注投入的 智力密集性工作。对于这种复杂、细致而又可见性差的工作,出错的可能不容易完全排除。 3.软件质量管理的实际困难 软件质量指标许多尚未量化。软件开发的管理人员往往更关心项目开发的成本和进度,因为成本和进度是显而易见的,并且易于度量,而软件质量则完全不同。 目前许多软件机构的产品质量责任尚未落实到人。如果软件开发的管理人员对于交付 的软件含有多少错误并不负什么责任,那么他们必定没有多高的热情去控制开发的质量, 更不必说保证质量并不容易,且保证质量是昂贵的。 不规范的开发习惯难以纠正。取得高质量的软件产品,主要取决于参与开发的人员, 然而软件开发人员的习惯一旦形成便难以改变,他们的行为也难以控制。 人员之间的沟通容易出现问题。许多软件工程项目需要若干甚至许多技术人员和管理 人员参与。工作中他们之间信息和思想方面的交流和沟通是十分必要和频繁的,但问题也 常常发生在互相交流中。对问题的不同认识和误解如不能及时消除,必定埋下影响产品质 量的祸根。 软件项目组中人员流动会影响产品质量。软件项目组中人员的流动难以完全避免。事 实表明,对于尚未建立成熟的软件过程的机构来说,从软件项目组离去的人员,特别是骨 干力量,他们的离去会带走思想、技术和经验,这不能不说是一种损失,项目开发的质量 也会受到影响。

软件评价指标

软件评价指标 文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]

我们常说某某软件好用,某软件功能全、结构合理、层次分明。这些表述很含糊,用来评价软件质量不够确切,不能作为企业选购软件的依据。对于企业来说,开发单位按照企业的需求,开发一个应用软件系统,按期完成并移交使用,系统正确执行用户规定的功能,仅仅满足这些是远远不够的。因为企业在引进一套软件过程中,常常会出现如下问题: ● 定制的软件可能难于理解,难于修改,在维护期间,企业的维护费用大幅度增加; ● 企业对外购的软件质量存在怀疑,企业评价软件质量没有一个恰当的指标,对软件可靠性和功能性指标了解不足; ● 软件开发商缺乏历史数据作为指南,所有关于进度和成本的估算都是粗略的。因为没有切实的生产率指标,没有过去关于软件开发过程的数据,企业无法精确评价开发商的工作质量。 为此,有必要先了解软件的质量评价体系。美国的B.W.Boehm和R.Brown 先后提出了三层次的评价度量模型:软件质量要素、准则、度量。随后G.Mruine 提出了自己的软件质量度量SQM技术,波音公司在软件开发过程中采用了SQM 技术,日本的NEC公司也提出了自己的SQM工具,即SQMAT,并且在成本控制和进度安排方面取得了良好的效果。 第一层是软件质量要素,软件质量可分解成六个要素,这六个要素是软件的基本特征: 1. 功能性:软件所实现的功能满足用户需求的程度.功能性反映了所开发的软件满足用户称述的或蕴涵的需求的程度,即用户要求的功能是否全部实现了。 2. 可靠性:在规定的时间和条件下,软件所能维持其性能水平的程度。可靠

相关文档
最新文档