软件全程质量保障技术体现
山东省软件评测中心根据多年经验,总结软件全程质量保障的技术体现,希望能给大家带来帮助,也欢迎登陆http://www.×××/进行探讨,学习,不足之处,请指正。
软件项目全程质量控制的框架,主要包括以下几个模块:
l 质量需求及质量需求分析:实施全程质量控制单位案的基础是质量需求的采集和分析。
l 建立质量保证机制:全程质量控制单位案是一个多方协同的项目实施过程,科学有效的质量保证机制是确保方案顺利实施的基本保障。
l 基于过程的质量保证模块:主要包括产品审计、过程检查、计划跟踪和风险评估;
l 基于过程的质量控制模块:主要包括多级别软件测试(单元测试、集成测试、系统测试、验收测试及其他性能测试等专题测试)、阶段评审和代码检查及评审。
l 技术支撑:主要包括过程管理技术(软件过程管理、项目管理体系应用和技术评审的实施)、软件测试技术(模型检测技术、自动用例技术和性能测试技术等);
l 关键过程域:全程质量控制主要包括软件需求过程质量控制、软件设计过程质量控制、软件编码过程质量控制和软件交付过程质量控制等4个关键过程域;
l 全程缺陷管理:伴随全程质量控制的实施,软件项目大量缺陷会被发现,如何对这些缺陷进行有效管理是确保全程质量控制实施效果的关键。因此,全程缺陷管理是全程质量控制的一个必不可少的组成部分。全程缺陷管理依据缺陷生命周期进行缺陷的跟踪和控制,采用自动化管理工具实现缺陷的发现记录、跟踪消除,确保每一个缺陷得到合理的处置。
l 质量评估:通过全程质量控制的实施,可以积累、采集软件项目的多个层面的相关开发数据,对这些数据进行科学分析,我们可以对整个项目的过程、成果进行有效评估,从而为各项决策提供有力有理的依据。
一、 质量保证ROUTE1:
l 产品审计:对项目各阶段产生的主要工作产品(如项目计划、软件需求规格说明书、设计文档、重要的源代码、测试文档、用户使用文档等)进行审计,检验工作产品是否符合预定需求、在格式和内容上是否符合适当的标准,以此来保证项目实施过程中产生的工作产品的质量。评审标准将采取产品规范与实际需要相结合的方式,提高工作产品的实效性。
l 过程检查:软件质量保证活动中的核心工作,其主要目的在于对软件项目开发过程中重要工程技术活动的工作过程按照预先确定的工作规范和检查准则进行检查,发现其中的不符合项,及时通知项目相关方并采取纠正措施,以确保项目过程的质量。
l 计划跟踪:在整个项目的开发建设过程中,以《项目计划》为主线和依据对项目进展情况进行跟踪与检查。
l 风险评估:目的在于发现项目进展过程中存在的风险问题并提早做出应对措施,以便降低或减小风险问题给项目造成的影响或损失。风险评估主要根据项目相关方的需要,在项目进展过程的关键阶段(重大里程碑)进行。
二、 ROUTE2:质量控制
l 技术评审(Technical Review,TR)的目的是尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品的质量。
l 代码检审包括代码检查和代码审查两部分内容,主要检查代码的编制和设计的一致性,代码对编码规范及其他标准的依从性,代码的可读性,代码逻辑表达的正确性,代码结构的合理性等。通过代码检查及时发现违背编码规范的问题,代码中不安全、边界溢出、死代码等问题。
l 文档检查:对于系统建设期间产生的各类文档应该进行认真的检查,必要时实施文档测试。
l 单元测试是对软件设计的最小单位(模块)进行正确性检验的质量控制工作,测试并发现模块在语法、格式和逻辑上的错误。用单元测试用例测试程序,将实际结果与期望值进行比较,以验证模块设计的正确性。
l 集成测试是在代码审计的基础上,检验在将所有的软件单元按照设计说明书的要求组装成模块、子系统或系统的过程中,各部分工作是否达到或实现相应技术指标及要求。
l 系统测试是将通过集成测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据等其他系统元素结合在一起,在实际或模拟运行环境中,对系统进行一系列测试,以发现软件与系统定义不符合或与之矛盾的地方。
l 专题测试,是根据项目委托方对软件的特定质量需求,进行有针对性的强化测试。
l 验收测试主要依据软件开发商和用1户之间的合同、软件需求说明书以及相关行业标准、国家标准、法律法规等对软件的适合性、准确性、互操作性、保密安全性、成熟性、容错性、易恢复性、易理解性、易学性、易操作性、吸引性、时间特性、资源利用性、易分析性、易改变性、稳定性、易测试性、适应性、易安装性、共存性、易替换性和依从性方面进行严格的测试。
当前文章:软件全程质量保障技术体现
新闻来源:http://myzitong.com/article/igpcge.html