某软件公司质量管理体系.docx

上传人:小飞机 文档编号:1689267 上传时间:2022-12-14 格式:DOCX 页数:163 大小:197.82KB
返回 下载 相关 举报
某软件公司质量管理体系.docx_第1页
第1页 / 共163页
某软件公司质量管理体系.docx_第2页
第2页 / 共163页
某软件公司质量管理体系.docx_第3页
第3页 / 共163页
某软件公司质量管理体系.docx_第4页
第4页 / 共163页
某软件公司质量管理体系.docx_第5页
第5页 / 共163页
点击查看更多>>
资源描述

《某软件公司质量管理体系.docx》由会员分享,可在线阅读,更多相关《某软件公司质量管理体系.docx(163页珍藏版)》请在三一办公上搜索。

1、 秘密仅限于内部使用质量管理体系培训教材(一)北京博思美亚科技发展公司目录公司标准软件过程体系文件导读2软件生命周期模型2软件开发过程2技术类评审2项目估算指南2标准软件过程总体裁剪指南2 中管网制造业频道公司标准软件过程体系文件导读目录1、概述21.1目的21.2适用范围21.3引用文件21.4术语21.5参考资料22、公司标准软件过程的开发22.1开发历程22.2公司标准软件过程总体结构23、软件过程体系文件23.1过程管理23.2软件开发过程23.3项目管理23.4资源管理23.5指南性文件21、概述1.1目的本文件对公司软件过程及其体系文件的总体结构进行描述,为与软件过程的开发、维护、

2、改进、执行、管理和跟踪等有关的人员学习、理解和使用软件过程体系文件提供指南。1.2适用范围适用于SEPG、高层经理、项目经理、软件开发人员、测试人员、软件质量保证人员、软件配置管理人员及其他支持人员为了按规范开展各自的业务活动,学习、理解和使用软件过程体系文件。1.3引用文件无。1.4术语无。1.5参考资料Software Project Management Guidebook(Version 2.0),Process Strategies,Inc.软件工程实践者的研究方法,(美)Roger S. Pressman著,黄柏素、梅宏译,机械工业出版社出版,1999年10月实践中的CMMINFO

3、SYS公司实施软件项目之过程,潘卡杰罗特著,杨慧鸣、李光龙泽,2001年7月2、公司标准软件过程的开发2.1开发历程为了使软件过程保持长期稳定并能持续改进,必须开发组织(即公司)级的标准软件过程。为此,公司组织了以软件工程过程组(SEPG)为主体的标准软件过程开发和文件编写组,具体实施上述任务。公司标准软件过程是在公司范围内的软件项目全面执行CMM二级的基础上,在软件工程一般理论的指导下,收集公司全部软件项目所采用的软件过程,经过分析、归纳、提炼、分类、总结等一系列步骤开发而成;又在开发标准软件过程的基础上,形成了描述这些标准软件过程的相互关联的程序文件体系。本程序文件体系对组成标准软件过程的

4、基本软件过程要紧,以及软件过程要素之间的关系(软件过程结构)进行描述,描述的重点放在过程的可操作性上。此外,与此相关联,开发或编写了公司的软件过程数据库、与软件过程相关的文档库、软件生命周期描述文件和标准软件过程裁剪指南。它们和公司标准软件过程一起,组成了公司的软件过程资产。公司的软件过程资产为规范公司软件项目的软件过程提供了基础和保证。各软件项目按标准软件过程裁剪指南,根据项目的实际情况(主要是客户需求)对公司标准软件过程进行裁剪,开发适合项目特定特性的项目软件过程;项目软件过程开发的重点在软件过程的可用性,以及附加到该项目的价值。项目以项目定义的软件过程为基础,制订项目软件开发计划;按计划

5、执行项目的软件开发活动,产生相应的软件工作产品及其他开发成果;开发过程中的数据以及项目结束后进行总结的数据,经过一定的手续,反馈到公司的软件过程数据和软件过程相关文档库,丰富公司的软件过程资产。如此反复循环,促使软件过程得以持续改进。以上过程和关系可以用图1表示。图中:表示实体,例如“分配到软件的需求”表示活动,例如“选择项目的软件生命周期”图中上半部分用粗线框围起来的部分即公司的软件过程资产部分,它由描述公司标准软件过程的程序文件、软件过程数据库、与软件过程相关的文档库、软件生命周期描述文件和标准软件过程裁剪指南组成。下半部分则描述公司软件过程资产的利用过程:软件项目按标准软件过程裁剪指南,

6、根据项目的实际情况(主要是客户需求)对公司标准软件过程进行裁剪,开发适合项目特定特性的项目软件过程;制订项目软件开发计划,并按计划执行项目的软件开发活动;将项目数据(包括开发过程中的数据以及项目结束后进行总结的数据)反馈到公司的软件过程数据库和软件过程相关文档库。图1公司软件过程资产的开发和利用2.2公司标准软件过程总体结构图2为公司标准软件过程的总体结构。由于本公司的产品(项目)除了纯软件产品(项目)外,还包括软件和硬件兼有的产品(项目),考虑到过程的完整性以及便于理解软件过程和其他过程之间的接口关系,图中的项目开发过程反映了软件和硬件兼有的产品的整个开发过程,但其中非软件过程部分均采用虚线

7、,以示区别。有关内容说明如下:(1)项目、项目生命周期和软件生命周期项目是由一组有起止日期、相互协调的受控活动组成的独特过程,该过程要求达到符合包括时间、成本和资源等约束条件在内的规定要求的目标,其结果将产生产品。而软件项目则是为了开发软件产品(包括系统)而建立的项目。项目和产品都具有一定的生命周期。项目生命周期是指从项目启动到项目结束为止的时间间隔。项目生命周期一般包括:初期策划阶段(主要是可行性分析);开发策划阶段(开发前的人、财、物等的计划和准备);实施阶段(具体实施项目开发计划,保证项目的质量、成本、进度的顺利完成);结束阶段(评审、鉴定及项目交付和组织结束工作)。在整个项目生命周期,

8、所涉及的过程可以分为两类:项目开发过程(和被开发产品的实现直接相关);项目管理过程(对项目的开发过程进行管理和控制)。软件生命周期则是指软件产品的生命周期,即是指从设想软件产品开始到软件不再供使用为止的时间间隔。软件生命周期一般包括:概念阶段、需求阶段、设计阶段、实现阶段、测试阶段、安装和调整阶段、运行和维护阶段,有时还包括退役阶段。显然,项目生命周期和软件生命周期在时间上是相关的,但在概念上是完全不同的。一般来说,项目生命周期不会超过该项目所开发的软件产品的生命周期。(2)项目开发过程图中的下部表示项目的开发过程。它从客户需求开始,通过系统分析,将客户需求分解成软件部分的需求和硬件部分的需求

9、(从此处项目将分成软件项目和硬件项目两部分)。其中,软件项目从软件需求定义阶段、设计阶段、实现阶段、测试阶段、验收交付阶段到项目总结,表示整个软件开发的结束。一般来说,作为软件开发项目到此就意味着结束了,但软件产品的生命周期并未结束。软件产品交付后,将经历使用过程中的维护阶段(维护阶段的时间可能和项目合同有关),直到最后产品退役。(3)项目管理过程图中的中部表示项目的管理过程,即对项目的开发过程实施管理的过程。对于软件和硬件兼有的项目来说,项目管理的主要过程如下:初期策划(主要针对系统分析、可行性分析进行策划);开发策划(开发前的人、财、物等的计划和准备);项目跟踪与监控(对项目初期的系统分析

10、、可行性分析,以及项目开发过程中软件需求定义、设计、实现、测试、验收交付等活动进行跟踪与监控);软件质量保证(SQA,对项目的软件过程和软件产品的符合性进行质量监控,它贯穿于软件项目的始终);软件配置管理(SCM,为确保软件产品的完整性和正确性进行的管理,它贯穿于软件项目的始终);需求管理(为确保满足客户需求进行的管理,它贯穿于项目的始终);评审过程(包括同行评审等技术类评审和计划评审等管理类评审);项目结束处理(包括项目的鉴定、验收、交付,以及进行项目总结)。此外,在项目管理活动中,还可能有以下管理过程:项目培训;组间协调等。(4)过程资产本公司的软件过程资产分两个层次:公司级资产和项目级资

11、产。a.公司级资产包括:过程数据库(含软件过程和其他过程的资产);过程相关文档库;人力资源库。b.项目级资产包括:项目控制数据库(项目经理控制,用于保存项目数据,以便对项目进行跟踪与监控);SQA管理库(SQA控制,用于保存项目的软件质量保证数据);SCM管理库(SCM控制,用于保存项目的软件配置管理数据);SCM库(SCM控制,用于保存项目的所有配置项)。通过一定的手续,项目的项目控制数据库和SQA管理库中的数据,经过选择,将补充到公司的过程数据库和过程相关文档库中。此外,根据实际需要,总部一级也可能需要有人力资源库。图2软件过程结构图 中管网制造业频道3、软件过程体系文件公司的软件过程体系

12、文件的组成如图3所示。软件过程体系文件过程管理项目管理软件开发过程资源管理指南性文件软件开发过程程序文件标准软件过程开发与维护过程描述文件编写规范(一)过程描述文件编写规范(二)质量管理体系数据库管理和维护文件软件生命周期模型描述文件标识规范术语文件控制程序客户需求管理程序文件项目策划程序文件项目跟踪与监控程序文件项目总结程序文件软件质量保证程序文件软件配置管理程序文件组间协调程序文件技术类评审程序文件高层验证程序文件培训程序项目估算指南标准软件过程总体裁剪指南公司标准软件过程体系文件导读图3软件过程体系文件按文件的使用目的,公司的软件过程体系文件分为五类:过程管理、软件开发过程、项目管理、资

13、源管理和指南。3.1过程管理过程管理是指对软件过程进行管理,此类文件的使用人员主要是对软件过程进行开发、维护、改进的人员,例如SEPG成员、项目经理、SQA等。有关文件说明如下:(1)标准软件过程开发与维护使用人员:SEPG和软件过程描述文件编写人员。内容提要:本文件对如何开发和管理公司的标准软件过程、如何编写软件过程描述文件、如何编写标准软件过程裁剪指南等作出了规定。(2)过程描述文件编写规范(一)使用人员:软件过程描述文件编写人员。内容提要:为能分解成若干过程元素的较大过程编写的描述文件编写规范。(3)过程描述文件编写规范(二)使用人员:软件过程描述文件编写人员。内容提要:为没有明显的入口

14、和出口准则的过程(例如日常管理类的过程)编写的描述文件编写规范。(4)质量管理体系数据库管理和维护文件使用人员:SEPG、项目经理、SQA和数据库的管理和维护人员。内容提要:本文件对公司的软件过程数据库和与过程相关文档库的管理和维护作出了规定。考虑到将来需要扩充ISO9001要求的其他数据库,故起此名。(5)软件生命周期模型描述文件使用人员:项目经理以及参与项目软件过程定义的有关人员。内容提要:本文件对公司所确定的软件生命周期模型进行描述,作为公司的过程资产之一,供项目选择适合项目情况的软件生命周期模型时参考。(6)标识规范使用人员:对被标识对象进行标识的人中员。内容提要:为规范包括文件、表格

15、、产品的标识而制订的规范。(7)术语使用人员:SEPG和软件过程描述文件编写人员。内容提要:本文件定义了本软件过程体系文件所使用的专用术语。(8)文件控制程序使用人员:文件管理人员。内容提要:本文件对文件的编写、评审、批准、发布、发放、回收等文件管理要求作出了规定,是整个质量管理体系所要求的用于对受控文件进行管理的文件。3.2软件开发过程软件开发过程是指与软件开发有关的过程,相关文件的使用人员主要是和软件开发有关的人员。(9)软件开发过程程序文件使用人员:项目经理以及参与项目软件过程定义的有关人员。内容提要:本程序文件针对本公司软件项目所采用的典型开发过程,分解成过程要素进行描述,供各软件项目

16、根据标准软件过程裁剪指南,定义项目自己的软件过程时使用。3.3项目管理与项目管理有关的文件如下:(10)客户需求管理程序文件使用人员:项目经理、SQA、SCM和软件开发人员。内容提要:本文件是为了确保项目满足客户需求和如何确保满足客户需求,为项目编写的有关客户需求管理的程序文件。(11)项目策划程序文件使用人员:项目经理以及参与项目策划的其他有关人员。内容提要:为指导软件项目进行项目的初期策划和开发策划而编写的程序文件。(12)项目跟踪与监控程序文件使用人员:高层经理、项目经理、SQA、SCM和软件开发人员。内容提要:指导软件项目在项目计划执行过程中如何对项目进行跟踪与监控的程序文件。(13)

17、项目总结程序文件使用人员:项目经理、SQA、SCM和软件开发人员。内容提要:指导软件项目在项目结束阶段如何进行项目总结的程序文件。(14)软件质量保证程序文件使用人员:SQA、项目经理、SCM和软件开发人员。内容提要:指导软件项目的SQA如何执行项目的软件质量保证活动,以及项目的其他人员如何配合的程序文件。(15)软件配置管理程序文件使用人员:SCM、项目经理、SQA和软件开发人员。内容提要:指导软件项目的SCM如何执行项目的软件配置管理活动,以及项目的其他人员如何配合的程序文件。(16)组间协调程序文件使用人员:项目经理、SQA、SCM和软件开发人员。内容提要:项目在进行项目策划时,应考虑有

18、无组间协调的情况,本程序文件提供这方面的要求和指导。(17)技术类评审程序文件使用人员:项目经理、软件开发人员、SQA以及其他参与评审的人员。内容提要:本程序文件为项目进行技术类评审(包括同行评审及其他类型的技术评审)规定要求和提供指导。(18)高层验证程序文件使用人员:高层经理、项目经理、SQA、SCM和软件开发人员。内容提要:在公司标准软件过程的开发和改进以及项目在执行软件开发活动的过程中,高层经理应在哪些环节进行验证,如何进行验证?项目的有关人员如何配合?本程序文件为高层经理的验证活动提出要求并提供指导。3.4资源管理资源管理主要包括人力资源、设备、环境等方面的管理。(19)培训程序使用

19、人员:公司培训组、高层经理、项目经理、SQA、SCM和软件开发人员。内容提要:对公司级培训和项目级培训的实施要求作出规定,包括培训需求的收集、培训计划、培训实施和培训总结等。3.5指南性文件目前提供以下指南性文件:(20)项目估算指南使用人员:项目经理及其他参与估算的人员。内容提要:本指南为项目估算的方法(例如:规模估算、工作量估算等)提供指南。(21)标准软件过程总体裁剪指南使用人员:项目经理及其他参与项目软件过程定义的人员。内容提要:总体裁剪指南是公司标准软件过程裁剪指南中的高层裁剪指南(或一般性裁剪指南)。它为软件项目在对公司标准软件过程进行裁剪时,提供对一般性活动进行裁剪的指南;裁剪结

20、果为项目进行详细的过程裁剪提供框架性的指导方针(详细裁剪指南分散在各程序文件的“详细裁剪指南”中)。(22)软件过程体系文件导读(即本文件)使用人员:SEPG、高层经理、项目经理、软件开发人员、测试人员、软件质量保证人员、软件配置管理人员等为了按规范开展各自的业务活动,需要学习、理解和使用软件过程体系文件的所有人员。内容提要:对公司标准软件过程开发的背景、开发过程、标准软件过程的总体结构,以及相应的软件过程体系文件进行导读性的说明。14软件生命周期模型软件生命周期模型目录1、概述21.1目的21.2适用范围21.3引用文件21.4术语21.5参考资料22、软件生命周期模型描述22.1瀑布模型2

21、2.2原型瀑布模型22.3增量模型22.4增量的迭代过程模型22.5快速应用开发模型23、几种模型的比较24、其它模型采用说明25、附录21、概述1.1目的描述公司级定义的软件生命周期模型,供项目策划时根据项目的具体情况选择或裁剪使用,由此确定软件项目开发过程的各种不同的阶段以及各阶段的执行顺序。1.2适用范围适用于本公司的软件项目策划。1.3引用文件软件开发过程程序文件(QMS-OP01-V1.0)标准软件过程开发和维护(QMS-PSM01-V1.0)项目策划程序文件(QMS-PTM02-V2.0)1.4术语软件生命周期从软件设想开始到软件不再使用而结束的时间周期。软件生命周期一般包括系统分

22、析、软件需求分析、设计、实现、测试、验收、运行和维护各阶段,有时还包括退役阶段。软件过程有关开发和维护软件及其相关产品(例如:项目计划、设计文档、代码、测试用例、用户手册等)的活动、方法、实践和变更的集合。1.5参考资料软件工程Java语言实现,Stephen R. Schach著,袁兆山等译,机械工业出版社,1999年9月软件工程实践者的研究方法,Roger S. Pressman著,黄柏素、梅宏等译,机械工业出版社,1999年10月Software Project Management Guidebook,Frank J. Koch著,2001年7月实用软件工程郑人杰、殷人昆、陶永雷著,清

23、华大学出版社,1997年4月软件需求,Karl E. Wiegers著,陆丽娜、王忠民、王志敏等译,机械工业出版社,2000年7月统一软件开发过程,Ivar Jacobson、Grady Booch、James Rumbaugh著,周伯生、冯学民、樊东平等译,机械工业出版社,2002年1月2、软件生命周期模型描述所有的项目软件开发过程都应遵循一个生命周期模型,每个模型都具有能够帮助实际软件项目进行控制及协调的特征。定义生命周期模型的目的在于将本质上无序的活动有序化,在开发策划期间,必须仔细考虑项目的特征和目标之后,再选择生命周期模型。本文件根据组织内项目的类型,描述常用的几个软件生命周期模型,

24、项目可根据实际情况选择或按规定剪裁使用,但应注意与公司的标准软件开发过程相兼容。见附录“软件过程结构图”,其中的项目软件开发过程即为一个选择瀑布模型的典型项目过程。2.1瀑布模型(1)模型描述该模型首先由Royce1970提出,又称线性顺序模型,包括图21所示的典型的几个阶段,其重要特点是:只有当一个阶段的文档已编制好,且该阶段的产品得到SQA认可后,该阶段才算完成;测试或验证在每个阶段都必须执行;一旦产品完成提交用户,其后的任何修改均属于维护阶段。如果需求明确、能较好理解且较稳定,可以考虑选择瀑布模型。系统分析软件需求分析设计实现测试验收维护图21瀑布模型(2)缺点由于其线性顺序的特点,故只

25、有在项目开发的后期才能得到具有全部功能的软件版本;如果有未定义或未实施的需求,将会引起重复劳动,甚至开发出的产品不是用户所需要的。(3)本企业适合的项目类型操作系统产品;译星产品;嵌入式产品开发;对日软件外包项目等。2.2原型瀑布模型(1)模型描述原型模型本身是一个迭代的模型,是为了解决在产品开发的早期阶段存在的不确定性、二义性和不完整性等问题,通过建立原型使开发者进一步确定其应开发的产品,使开发者的想象更具体化,也更易于被客户所理解。原型只是真实系统的一部分或一个模型,完全可能不完成任何有用的事情,通常包括抛弃型和进化型两种,抛弃型指原型建立、分析之后要扔掉,整个系统重新分析和设计;进化型则

26、是对需求的定义较清楚的情形,原型建立之后要保留,作为系逐渐增加的基础,采用进化型一定要重视软件设计的系统性和完整性,并且在质量要求方面没有捷径,因此,对于描述相同的功能,建立进化型原型比建立抛弃型原型所花的时间要多。原型建立确认需求之后采用瀑布模型的方式完成项目开发,原型瀑布模型的开发流程如图22所示:多次迭代原型逐渐完善部分系统软件需求或软件需求分析原型设计原型实现原型测试瀑布测试图22原型瀑布模型以下情形建议考虑选择原型瀑布模型:a.项目包含一种新技术,例:新硬件、新的开发语言、新的系统架构等;b.需求不很清楚;c.存在关于性能、可靠性和可行性方面的主要的、未解决的问题;d.用户界面对系统

27、成功是很关键的,但不很清楚。(2)缺点由于原型并非最终产品,如果原型不能利用,可能导致成本的增加;同时会引起客户的误解,以为产品即将完成。(3)本企业适合的项目类型新领域的应用项目的开发;Web开发项目等。2.3增量模型(1)模型描述增量模型是一种进化软件过程模型,融合了线性顺序模型的基本成分(重复地应用)和原型模型的迭代特征,如下图所示。当使用增量模型时,第一个增量往往是核心产品,即实现了基本的需求;核心产品交用户使用(或进行更详细的复审),使用和/或评估的结果是下一个增量的开发计划,该计划包括对核心产品的修改,使其能更好的满足用户的需要,并发布一些新增的特点和功能。增量模型和原型模型不一样

28、,强调每一个增量均要发布一个可操作产品。早期的增量是最终产品的“可拆卸”版本,但能提供用户服务功能和用户评估的平台。增量模型开发流程见图23。系统分析软件需求分析软件结构设计详细设计1实现1测试1验收1详细设计2实现2测试2验收2详细设计n实现n测试n验收n维护增量1增量2增量n图23增量模型(2)缺点由于增量模型的灵活性,往往容易退化成边做边改方法,使软件过程的控制丧失了整体性,最终的产品也不是开放的,而是成为维护人员的恶梦。(3)本企业适合的项目类型各种中、大规模的项目类型;已有系统技术路线发生改变但需求明确的移植类项目。2.4增量的迭代过程模型(1)模型描述该模型是一个不断迭代和增量的过

29、程,迭代过程首先要处理一组客户的业务需求,这些业务需求合起来能够揙所开发产品的可用性。其次,迭代过程要解决最突出的风险问题。后续的迭代过程建立在前一次的迭代过程末期所产生的产品之一。一个增量不一定是对原有产品的增加,尤其在生命周期初期,开发人员可能用更加详细和更加完善的设计来代替最初简单的设计。在较后的阶段,增量通常是对原有产品的增加。采用此种模型最好是基于构件和有相应的构件开发工具(如:RUP、配置管理工具等)。迭代1系统分析1软件需求分析1设计1实现1测试1验收1系统分析2软件需求分析2设计2实现2测试2验收2系统分析n软件需求分析n设计n实现n测试n验收n迭代2迭代3维护图24增量的迭代

30、模型(2)缺点需要相当的风险评估的技术;每个迭代循环控制不好会变成边做边改模式。(3)本企业适合的项目类型较复杂的应用项目。2.5快速应用开发模型(1)模型描述快速应用开发模型(RAD)是一个线性顺序的软件开发模型,强调极短的开发周期(23个月)。该模型是线性顺序模型的一个“高速”变种,如果需求理解得很好,且约束了项目范围,就可通过使用基于构件或可得用软件包的建造方法获得快速开发。快速应用开发模型流程见图25。适用于信息系统应用软件的开发。小组1业务建模1数据建模1处理建模1应用生成1测试1业务建模2数据建模2处理建模2应用生成2测试2业务建模n数据建模n处理建模n应用生成n测试n集成/测试验

31、收维护小组2小组n图25快速应用开发模型(2)缺点对大型的、但可伸缩的项目,RAD需要足够的人力以创建足够的RAD小组。RAD要求开发者和用户在一个很短的时间内完成一个系统,如果双方中的任何一方没完成约定,都会导致RAD项目失败。(3)本企业适合的项目类型具有可重用的构件库和CASE工具的应用项目;信息系统等。3、几种模型的比较软件生命周期模型是否首先定义好绝大部分的需求?是否有多个开发周期?是否有中间软件发布瀑布模型有无无原型瀑布模型没有有有增量模型有有可能增量的迭代模型没有有有快速应用开发模型没有有可能4、其它模型采用说明如果在实际工作中,基于特定项目的经验积累和总结,可能需要形成新的软件

32、生命周期模型,此时可依照一定的规程(参见标准软件过程开发和维护要求、项目策划程序文件)将其定义和描述加入到本文件中。5、附录附录1软件过程结构图说明:图中“项目软件开发过程”一层延伸到产品退役,即体现出软件的生命周期。采用不同的生命周期模型在该层面的“系统分析”和“软件开发”阶段对应不同的过程。软件过程结构图161软件开发过程软件开发过程目录1、概述21.1目的21.2适用范围21.3引用文件21.4术语21.5参考资料22、过程总体描述22.1过程概述22.2结构描述22.3过程级裁剪指南23、过程元素23.1系统分析23.2软件需求分析23.3结构设计23.4详细设计23.5编码23.6集

33、成测试23.7系统测试23.8验收23.9验收23.10软件问题管理24、附录2附录2.31中大型软件工程项目的标准软件开发过程2附录2.32中小型软件工程项目的标准软件开发过程2附录2.33小型软件工程项目的标准软件开发过程2附录3.11系统架构和业务需求说明书文档编写规范2附录3.12可行性分析报告文档编写规范2附录3.13系统需求规格说明书文档编写规范2附录3.21需求分析方法指南2附录3.22结构化分析法2附录3.23面向对象分析法(OOA)2附录3.24快速原型法2附录3.25软件需求规格说明书文档编写规范2附录3.26测试计划文档编写规范2附录3.31软件结构设计说明书文档编写规范

34、2附录3.41软件详细设计说明书文档编写规范2附录3.51测试报告文档编写规范2附录3.61集成工作单2附录3.62集成测试工作单2附录3.91软件维护实施计划文档编写规范2附录3.101软件问题报告单2附录3.102软件问题状态登记表21、概述1.1目的本程序文件定义了公司内部的软件开发过程,以指导和规范软件项目中开发过程的定义和相应的实施。1.2适用范围整个公司内的软件项目。1.3引用文件过程描述文件编写规范(一)(QMS-PSM02-V1.0)标准软件过程的开发和维护(QMS-PSM01-V1.0)软件生命周期模型描述文件(QMS-PSM05-V1.0)客户需求管理程序文件(QMS-PT

35、M01-V2.0)技术类评审程序文件(QMS-PTM09-V1.0)软件配置管理程序文件(QMS-PTM09-V1.0)术语(QMS-PSM07-V1.0)1.4术语过程:把输入转换为输出的一组彼此相关的活动。构造:将源代码进行编译、连接、生成目标代码的过程。构造环境:主要指与源码一起进行编译、连接的环境,在C语言中一般是指由编译、连接命令、环境参数、操作语句等构成的一系列脚本程序的组合。白盒测试:基于源码进行的测试,主要的形式包括语句覆盖、分支覆盖、路径覆盖等。黑盒测试:基于目标代码的测试,主要的形式为功能测试。回归测试:对新增的功能或更正错误的部分(包括与其相关的部分)进行的测试,而不是对

36、软件系统全面的测试。其他术语参见术语文件。1.5参考资料软件能力成熟度模型CMM方法及其应用,杨一平等著,人民邮电出版社,2001年4月实践中的CMMINFOSYS公司实施软件项目之过程,潘卡杰罗特著,杨慧鸣、李光龙泽,2001年7月Managing the Software ProcessWatts S. Humphrey, Addison Wesley Longman, Inc, 1989Recommended Approach to Software Development SEL-81-305,1992.6软件需求,Karl E. Wiegers著,陆丽那、王忠民、王志敏等译,机械工业

37、出版社,2000年7月软件工程Java语言实现,Stephen R. Schach著,袁兆山等译,机械工业出版社,1999年9月软件工程实践者的研究方法,Roger S. Pressman著,黄柏素、梅宏等译,机械工业出版社,1999年10月国际信息技术软件生存周期过程指南GB/T8566-2002军标软件开发与文档编制SJ20778-20002、过程总体描述2.1过程概述软件开发过程是指软件产品开发活动中所有阶段、任务的组合。该过程可划分为一系列子过程,包括:系统分析、软件需求分析、设计、编码、测试、验收、维护,每个子过程又由一系列任务和活动组成,如设计过程又可分为结构设计和详细设计。本程序

38、文件描述公司通用的软件开发过程的组成(称之为“过程元素”)、彼此之间的关系(输入、输出接口),以及相应的裁剪指南。具体的软件开发项目可以根据其范围、规模和复杂度,确定软件生命周期模型,参见软件生命周期模型描述文件;然后根据通用的软件开发过程和裁剪指南,确定项目具体的软件开发过程。本程序文件涉及的裁剪指南分为两个层次,一层为过程级,主要针对不同的项目所采取的过程的剪裁,以定义不同的典型过程;另一层为过程元素内部,主要针对元素内部的各个任务的剪裁。2.2结构描述软件开发过程在整个标准软件过程中的位置及组成见下图2.21。图2.21软件过程结构图本程序文件所描述的软件开发过程的元素的组成见下表:过程

39、元素阶段需求分析设计实现测试验收维护系统分析软件需求分析结构设计详细设计编 码集成测试系统测试验 收维 护每个过程元素的具体描述和工作要求见本程序文件第三节的“过程元素”描述。2.3过程级裁剪指南活动可裁剪属性选择裁剪指导方针开发过程全过程(附录2.31)执行执行针对中大型软件工程项目或系统需求明确完全自行设计、实现的项目简化过程11(附录2.32)执行执行针对中小型软件工程项目自编/移植软件简化过程12(附录2.32)执行执行针对中小型软件工程项目自由软件简化过程21(附录2.33)执行执行针对小型软件工程项目自编/移植软件简化过程22(附录2.33)执行执行针对中小型软件工程项目自由软件软

40、件开发过程中的技术类评审方式见技术类评审程序文件中相应裁剪指南3、过程元素以下分别对软件开发过程中的各个元素进行描述。3.1系统分析3.1.1元素概述系统分析的目的是形成一个清楚的、完整的、一致的和可验收测试的系统需求规格说明书,与其它过程元素的关系如下图所示:软件需求分析硬件设计、实现、集成系统分析系统需求规格说明书系统分配给软件的需求系统分配给硬件的需求来自客户的需求系统架构和业务需求说明书可行性分析报告来自客户的需求可以是招标书、项目说明书或意向书等任何形式的客户需求。系统分析是整个软件生命周期的开始,应分析待开发系统特定的预期使用要求,以规定系统需求。在此阶段,系统工程组要用一种反复迭

41、代的方法逐渐扩充、完善系统需求,使其达到完整;对系统结构进行设计,建立系统的顶层结构,并标出硬件部分、软件部分和人工操作部分。应确保所有系统需求分配到各部分中。分配以各部分的系统需求及其相关系统结构应形成文档,对软件必须要实现的每个功能和每个要满足的关键点进行详细描述。通过实施本过程元素,完成系统架构和业务需求说明书(附录3.11)可行性分析报告(附录3.12)和系统需求规格说明书(附录3.12),为软硬件开发人员正确建立所要求的系统提供基础。如上图所示,系统需求规格说明书应包括分配到软件部分的需求和分配到硬件部分的需求两部分。但在本文件中,如无特别说明,系统需求均指系统分配给软件部分的需求,也属于客户需求;系统需求规格说明书均指系统分配给软件部分的需求的规格说明书。3.1.2入口准则和出口准则(1)入口准则要 素判断准则招标书、项目说明书或意向书等客户需求已接受(2)出口准则要 素判断准则可

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号