XX公司软件开发项目之质量保证方案(范文)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
XX公司软件开发项目之质量保证方案
1.质量保证方案
1.1.组织机构
项目将设立总体质量保证组,质量保证组将在项目管理委员会的领导下,开展工作,其职责如下:
1)制订项目的质量保证计划。
2)在项目建设过程中,监督质量保证工作的执行情况,协调三个质量保证小组的工作。
3)制订项目的测试、验收计划,负责系统测试工作,协助业主单位完成验收测试工作。
4)组织、参与阶段性技术评审工作。
5)完成项目质量报告。
1.2.质量体系
项目实施需要一套系统的、完整的质量体系文件来从事质量保证工作,多年来,我公司在系统需求定义、系统概要设计、系统详细设计、系统测试各环节已经形成了可控制的流程和可操作的文档格式(ISO 9001标准及CMM3标准)。
本次承接本项目,公司将采用ISO 9001标准。
1、质量手册
质量手册是证实或描述文件化的质量体系的主要文件的一般形式。
手册的内容包括:
1)我公司的质量方针和质量目标。
2)影响质量的管理、执行、验证或评审工作的人员职责、权限和相互关系。
3)质量体系程序和说明。
4)关于手册评审、修改和控制的规定。
2、程序文件
程序文件是进行某项活动所规定的途径。
程序可以形成文件,也可以不形成文件,凡是形成文件的程序,称之为“书面程序”或“文件化程序”。
其内容通常包括:该项活动的目的和范围,做什么和谁来做,做什么和谁来做,何时、何地、如何做,应使用什么材料、设备和文件,如何对活动进行控制和记录。
3、规范和作业指导书
规范和作业指导书是质量体系文件中的第三层文件,对项目实施过程中的具体环节提供比较详细的指导。
1.3.质量保证活动
质量保证活动将贯穿于项目的整个过程,质量保证组将按照项目的实施计划,制定项目的质量保证计划,安排项目的质量保证工作及人员组织。
在软件需求分析、软件设计等阶段,参加阶段性技术评审。
产品的测试工作,分成两个阶段进行,包括系统测试和验收测试,在集成测试完成后,进行系统测试;在产品上线前,进行验收测试。
系统测试的目的是检查系统是否符合软件需求说明书,是否达到了验收的要求。
系统测试将事先制订测试方案及计划,对产品进行功能性、可靠性、易用性、效率、可维护性、文档等方面的测试,测试工作将分成测试需求分析、测试用例设计、测试执行、缺陷跟踪几个步骤进行。
验收测试的目的是为项目软件提供必要的质量保障措施,以保证系统能够满足合同书中各项需求。
验收测试由质量保证组人员协助,主要由客户实际操作完成。
整个项目的质量保证活动,将按照有计划、有规范、有执行、有检查的方式进行,最终完成项目质量报告,从而使得项目的质量得到保障。
1.4.实施质量保证
质量保证活动将贯穿于项目的整个过程,质量保证组将按照项目的实施计划,制定项目的质量保证计划,安排项目的质量保证工作及人员组织。
在软件需求分
析、软件设计等阶段,参加阶段性技术评审。
产品的测试工作,分成两个阶段进行,包括系统测试和验收测试,在集成测试完成后,进行系统测试;在产品上线前,进行验收测试。
系统测试的目的是检查系统是否符合软件需求说明书,是否达到了验收的要求。
系统测试将事先制订测试方案及计划,对产品进行功能性、可靠性、易用性、效率、可维护性、文档等方面的测试,测试工作将分成测试需求分析、测试用例设计、测试执行、缺陷跟踪几个步骤进行。
验收测试的目的是为项目软件提供必要的质量保障措施,以保证系统能够满足合同书中各项需求。
验收测试由质量保证组人员协助,主要由客户实际操作完成。
整个项目的质量保证活动,将按照有计划、有规范、有执行、有检查的方式进行,最终完成项目质量报告,从而使得项目的质量得到保障。
公司执行规定的质量管理体系。
从组织管理的保障上成立了系统质量部,设有专职的质量保证部(QA);从过程管理上设定了一系列有关测试流程和相应的文档规范。
公司使用软件工具实现收集需求变更、调度测试、结果分析、缺陷管理和事务管理等系统的质量管理工作。
1.5.质量保证步骤
步骤1. 进行质量规划
质量管理计划就是为了实现质量目标的计划,而质量目标则是由商业目标决定的。
质量管理计划是全面质量管理的行动纲领。
制定质量管理计划由项目核心成员和质量人员共同协商制定,主要由质量人员起草,由项目经理审批即可。
质量管理计划的主要内容:
1.质量要素分析
2.质量目标
3.人员与职责
4.过程检查计划
5.技术评审计划
6.软件测试计划
7.缺陷跟踪工具
8.审批意见
步骤2. 实施质量保证
1)项目进度的质量保证
项目计划制定初期,由质量保证小组组织召开的项目计划评审会,邀请公司技术专家、用户以及项目组小组成员一起讨论项目计划的可行性,会议通常采用头脑风暴法,各抒己见,会后由指定的记录员形成质量记录,发送给相关人员,对其计划中不合理的地方进行修改完善,并由质量保证人员对其结果跟踪,以确保项目计划完整性、可行性,完善后的计划交由配置管理人员进行版本控制。
计划实施过程中,计划不是“固定化”。
常有人道,“计划赶不上变化”,但“要跟上变化”。
项目计划以里程碑为界限,将整个开发周期划分为若干阶段。
根据里程碑的完成情况,适当的调整每一个较小的阶段的任务量和完成的任务时间,这种方式非常有利于整个项目计划的动态调整。
也利于项目质量保证的实施。
实际运作中,当质保小组发现计划实施的差异后,报告项目经理,由项目经理组织负责对计划进行周期性维护,对于已经变动的计划由质保小组协助配置管理小组完成版本控制。
2)需求分析质量保证
需求分析是开发人员对系统需要做什么和如何做的定义过程。
从系统分析的经验来看,这个过程往往是个循序渐进的过程,一次性对系统形成完整的认识是困难的。
只有不断地和客户领域专家进行交流确认,方能逐步明了用户的需求。
从系统开发的过程得知,系统分析时犯下的错误,会在接下来的阶段被成倍的放大,越是在开发的后期,纠正分析时犯下的错误所花费的代价越是昂贵,也越发影响系统的工期和系统的质量。
减少系统分析错误通常采用邀请用户参与需求评定,然后对其用户的意见由质保成员跟踪检测是否纳入需求规格说明书,同时与用户签字确认形成需求基线,交由配置管理员放入配置管理库。
虽然尽早的邀请用户参与,仍然避免不了项目进行中用户的需求变更请求。
对于开发过程存在的需求变动,需要走统一的范围变更控制流程。
无论那种变更都需要对相应的文档实施同步变更(包括需求规格说明书、详细设计文、安装手册、操作手册等)。
决定变更之后,由项目经理组织实施变更,测试人员检测变更结果,而质保小组成员监督变更实施过程并协助配置管理员对变更后的成果物进行版本控制。
变更实施完后,上线前还需要指定人员协助用户一同测试并由用户签字后同意方可上线。
3)系统设计质量保证
公共类开发可以减少工作中的重复工作,降低开发成本。
这要求在设计阶段通过对用户需求的仔细研究,尽可能的识别出公共类,并进行定义指定专人负责设计通知其它设计人员,以减少重复工作。
对于项目组提供的设计文档,由质保小组组织技术专家、项目组设计人员、开发人员和测试人员对其设计文档的评审,检测设计文档对其下一阶段工作的可行性,及时发现设计中可能存在的错误,降低项目开发风险,同时确保设计文档能为开发人员、测试人员提供切实的指导。
对于可复用的设计进行提取作为公共库设计和开发,提供项目组或整个公司重用。
最后交由配置管理员进行设计文档的版本控制。
4)开发测试质量保证
实现也就是代码的生产过程。
这里不仅包括代码的产生,同时也包括测试用例的产生。
针对上一阶段提供详细设计,程序员开始编码并且调试程序,测试人员则根据设计进行测试用例的设计,设计出来的用例需要得到项目组成员认可由项目经理审核通过才能进入配置库。
同时程序员调试完程序提交测试人员进行程序正确性检测。
5)配置管理质量保证
文档维护主要是配置管理小组的工作。
文档从用途上分主要分为内部文档和外部文档。
内部文档包括:项目开发计划、需求分析、概要设计说明、详细设计说明、类属性及方法说明、测试报告、源代码、软件安装打包文件等。
外部文档主要包括:安装手册、用户操作手册等。
配置管理小组的一个非常重要的任务还是书写文档规范和文档模板。
当有文档模板后需要书写文档的人员只剩下"填空"的工作,从某种意义上讲,书写文档的速度会加快。
如果书写文档的人员认为文档的更细致的部分可以由他人帮助完成,则该文档即交由他人完成,但此时文档并不算被正式提交,当他人书写完毕之后,必须由文档的初写者进行复审,复审通过后方可以正式提交,进入软件配置管理的循环中。
配置管理小组真正核心的工作是对文档的组织管理。
根据文档的不同,文档的来源也不同,有些是通过质量保证小组经过复审之后转交给配置管理小组,有些则会直接从文档的出处到达配置管理小组。
文档的管理是一个非常烦琐的工作,但是长远来看它不仅使项目的开发对单个主要人员的依赖减少,从而减少人员流动给项目的带来的风险,更重要的是在项目进行到后百分之十的时候起到拉动项目的作用。
步骤3. 实施质量控制
质量控制是对阶段性的成果进行检测、验证,为质量保证提供参考依据,它是一个PDCA(Plan—Do—Check—Action)循环过程。
质量控制包括监控特定的项目成果,以判定它们是否符合有关的质量标准,并找出方法消除造成项目成果不令人满意的原因。
它应当贯穿于项目执行的全过程。
项目成果包括生产成果如阶段工作报告和管理成果如成本和进度的执行。
质量控制最常用的手段就是检验。
检验包括测量、检查和测试等活动,目的是确定项目成果是否与要求相一致。
检验可以在任何管理层次中开展(例如,一个单项活动的结果和整个项目的最后成果都可以检验)。
检验包括:技术评审、代码Review、稳定审查等到。