登陆注册
8724600000009

第9章 软件项目管理(2)

2.4质量管理

在第1章中已经明确,软件工程的目标是在预期时间内以较低成本完成高质量的软件。要实现这一目标,将涉及软件工程的方方面面,其中软件质量管理是一个非常重要的环节。

如何开发出高质量的软件,是软件质量管理需要回答的首要问题。软件质量是相对于一组事先定义好的功能性和非功能性需求而言的。开发出的软件满足需求的情况比较好,就可以评价这一软件质量高。反之,质量就比较低。具体而言,软件质量是指:软件要符合显式声明的功能和性能要求、显式文档化的开发标准及专业人员开发的软件所应具有的隐含特征。为了加深对软件质量的理解,读者也可以参考ISO8402关于质量的定义:“The Totality of futures and characteristics of an entity that bear on its ability to satisfy stated or implied needs”。

一般的项目质量管理包含3个方面的内容:质量计划(Quality Planning)、质量保证(Quality Assurance)和质量控制(Quality Control)。

软件质量计划主要是对符合项目的各类质量标准的选择,并对如何满足这些质量标准定义的一系列过程与计划。在软件项目的质量管理中,质量计划也是一个必不可少的环节。在软件行业中,有着众多软件质量标准可供选择,如ISO9000,CMM,SPICE,TickIT等,为了有效地实施软件质量管理,必须结合项目及组织的实际情况,对各类标准仔细研究,认真筛选,以选择适合的标准。

软件质量保证是指采取一系列有计划的、系统的行动以确保项目符合一定的质量标准。这些标准应该包括功能性需求规范,非功能性需求规范,当然还可能是一系列标准,如文档编制的标准,代码书写的规范,软件产品与其他子系统之间的接口标准等。软件质量控制是指对特定项目的结果是否符合相关质量标准进行分析,以便找出项目不符合标准的原因。在软件项目的质量管理中并不严格区分二者,一般统称为软件质量保证,它是软件质量管理的核心内容。

在软件开发过程中,发现和修改一个缺陷的相对成本将随着软件过程的不断向后推移而急剧增加。在软件开发过程的每一个步骤中,错误可能因为某种原因而产生,该步骤的评审过程可能没有发现当前步骤中产生的新错误以及来自于此前步骤中的错误,从而导致一定数量的错误通过当前步骤;同时从前面步骤传下来的错误在当前步骤会放大。在该步骤的检测过程中有一个检测的有效性百分比,以表示检测处错误的程度。

软件质量保证活动贯穿于整个软件项目的全过程。如可行性分析阶段的专家讨论会,需求分析阶段的客户对需求的核实与验证(Validation),设计阶段的复查(Review)和复杂性分析(Complexity Analysis),编码阶段的走查(Walk Through),直至测试阶段的各类测试,这些都可以看作是质量保证活动。

在SWEBOK中将这些活动分为以下两大类:静态技术和动态技术两类。

静态技术是指不必动态执行代码的各类软件质量保证活动。静态技术包括走查(Walk Through)、复查(Review)、审查(Inspection)、审核(Audit)、分析技术(Analytic Technique)等。走查主要是由开发者自己对自己的分析、设计或者代码作非正式检查。复查(Review)主要是开发者或者软件质量保证组对软件开发过程中的每一个阶段性结果如软件需求规范、设计文档、测试计划、代码等进行非正式检验。

而审查,通常是由审查小组对开发过程某一阶段的软件配置项做审查,其中审查小组成员可能包括领域专家、设计方法专家和语言专家。审查的目的是发现错误,审查的结果是一份审查报告。可见审查相对于走查和复查来说要正规许多。审核是指独立的审核部门对软件开发过程中各个阶段的阶段形成过程进行审核,以确保软件产品和软件开发过程符合相应的软件质量标准规范。相对开发过程而言,审核是一个相对独立的过程。

分析技术可以由个人或者小组对软件开发过程的某些方面作静态的分析。这些分析可能包括核心算法分析、控制流程分析、复杂性分析等。动态技术是相对于静态技术而言的。其特征体现在它的实现需要动态执行代码。这一类技术的典型就是测试(关于测试的详细内容参见本书第7章)。但动态技术除了典型的测试技术之外还有可能包括模拟(Simulation)、模型检查(ModelCheck)、符号执行(Symbolic Execution)等。

由此可见,软件质量保证是贯穿于整个软件开发过程中的一种庇护性行为,其具体形式根据软件开发当前阶段的不同而形式各异。

同类推荐
  • 如何处理电脑故障

    如何处理电脑故障

    本书以问答的方式介绍了电脑会出现的各种故障,内容包括了音箱声音失真,如何处理?如何做好电脑的日常维护等等问题。
  • 高校校园网管理与网上引导工作研究

    高校校园网管理与网上引导工作研究

    在当今的信息化潮流之下,我们不可否认互联网的出现,绝不仅仅是传送手段的变化,更重要的是它代表着一种新的社会形态——网络社会的来临。互联网已经以一种前所未有的方式渗透到现代社会的各个层面和领域,成为现代社会前进和发展的动力和工具,它推动了社会经济、文化政治实现所谓的“数字化转变”。
  • 如何建设网站

    如何建设网站

    本书以问答的方式介绍了建设网站的基本知识,内容包括:网站设计的八个步骤、建设网站需要掌握的工具软件、网页中插入图像、在网页中隐藏内容等。
  • 云计算和现代远程教育

    云计算和现代远程教育

    本书介绍了云计算知识、云计算的特性、云计算技术、云计算中的访问云、云计算中的云存储、云计算在远程教育中的应用等内容。
  • 大话设计模式

    大话设计模式

    本书主要采用JAVA语言介绍设计模式中比较常见的23种设计模式,分29章具体介绍,以现实生活中常见的事情为例来具体分析讲解。
热门推荐
  • 重生在女尊世界

    重生在女尊世界

    被不知名的强大存在所怜悯,因救人而死的陆坷获得了重生的机会。在这个世界中,女强男弱。金戈铁马驰骋沙场,这是女人才能做的事,男人只能站在她们背后,默默的支持自己的娘子,在家中相妻教女。粉丝群19682465
  • 太凡人

    太凡人

    青春的岩浆停止喷发,代而立之的是肃穆的山岗,王水不爱吃软饭,也从来不认为自己是软蛋,他需要证明,在这个社会顽强的奋斗,这是漫长的人生路。
  • 乱世侵魂

    乱世侵魂

    现代的社会,智慧成就了一个人未来的地位与权力!他,是一个成绩沦为下等的学渣,因为他的成绩,使他被自己的亲人所垂论,十五岁那年,他没有考上高中!他的父亲一怒之下将他赶出了家中,与他断绝了亲子关系。从此,他立下壮志,一定要做出大事!只是,在黑暗的社会中,以它为未成熟的心灵,哪能承受住千万诱惑?哪能靠自己生活下去?实在走投无路,犯罪之路成了他的依靠,为了保护自己的安危,他壮大了自己的势力,一步步地踏上了社会的巅峰!
  • 最强神器手机

    最强神器手机

    当一颗圣心和手机融合之后,陈阳的手机就变成了神机。可以提取功法的阅读软件,能够为修炼进行指导的播放器,变成雷达的地图,偷听附近人谈话的收音机,能够种植神草的农场游戏,总之,他手机上一切的软件都发生了不可思议的变化。
  • 不觉天明

    不觉天明

    这个世界好多未知的事情,有的人深藏秘密,有的人为权,有的人为财,有很多有意思的人,有很多有意思的事,快来看看吧
  • 双生怨:城主太腹黑

    双生怨:城主太腹黑

    梁轻笑:因双生妹妹一曲采莲赋,她遭受无妄之灾,成了城主后院众多女人之一。什么,城主带她们入府,其实是想将她们送人。啊啊啊!她不要啊!咦,为什么城主忽然对她很客气?难道有阴谋?【情节虚构,请勿模仿】
  • 不辞念安

    不辞念安

    双向暗恋。苏念安唯一一次心动是因为姜远洲,少年的光芒像太阳。她将他放进心底,藏好。却不曾想对方有一天会向她告白。这,是恶做剧吗?
  • 逆世为魔

    逆世为魔

    世间之事,唯情之一字,最是叫人看不懂,堪不破。一位意外踏入修仙路的少年,为情入魔,终成一代魔界至尊。纵横天下,无人能及!
  • 倾城娇妃

    倾城娇妃

    她本该死于车祸,谁知来到了一个不知名的朝代,一入宫门,身不由己,在勾心斗角宫闱生活中,她步步惊心……动情时,他说,默儿此生朕只爱你一人。她不屑一顾,抽身远离,只因他的承诺无足轻重……情节虚构,请勿模仿!
  • 纳兰性德全集第四册:其它

    纳兰性德全集第四册:其它

    纳兰性德,清初著名词人,与朱彝尊、陈维崧并称“清词三大家”。全集共分为四册,第四册为赋、杂文和其他一些内容:杂文除包括《通志堂集》中的二十一篇外,另增加两篇,即《节录嵇中散<与山巨源绝交书>并书后》和《曹司空手植楝树记》。书简除包括《通志堂集》中的五件外,另增加三十六件。经解诸文除《通志堂集》中的六十五篇外,另增补二篇。