和技术开发,并依据公司的整体发展规划、技术规划、方向与系统集成和软件开发项目的实际情况,制定了相应的技术管理制度。项目的实施与组织采用了项目经理负责制,并由部门经理监督实施。 2、技术管理工作的制度
公司研发部和工程部根据工作需要,结合相关行业技术标准,制定了以下制度和规范,并已由公司技术副总审批,总经理签批后作为公司制度实施: 《软件文档编制规范》 《软件需求规格编制规范》 《软件设计说明规范》 《软件开发规范》 《软件项目实施规范》 《软件测试文档编制规范》 《软件配置管理规范》 《网络工程施工控制规范》 《网络工程设计规范》 《系统集成项目管理控制规范》 《项目实施规范》等制度
11 公司质量管理体系
本文件对公司软件过程及其体系文件的总体结构进行描述,为与软件过程的开发、维护、改进、执行、管理和跟踪等有关的人员学习、理解和使用软件过程体系文件提供指南。
适用于SEPG、高层经理、项目经理、软件开发人员、测试人员、软件质量保证人员、软件配置管理人员及其他支持人员为了按规范开展各自的业务活动,学习、理解和使用软件过程体系文件。
第 26 页 共 83 页
公司标准软件过程总体结构
(1)项目、项目生命周期和软件生命周期
项目是由一组有起止日期、相互协调的受控活动组成的独特过程,该过程要求达到符合包括时间、成本和资源等约束条件在内的规定要求的目标,其结果将产生产品。而软件项目则是为了开发软件产品(包括系统)而建立的项目。项目和产品都具有一定的生命周期。
项目生命周期是指从项目启动到项目结束为止的时间间隔。项目生命周期一般包括:
?初期策划阶段(主要是可行性分析);
?开发策划阶段(开发前的人、财、物等的计划和准备);
?实施阶段(具体实施项目开发计划,保证项目的质量、成本、进度的顺利完成);
?结束阶段(评审、鉴定及项目交付和组织结束工作)。 在整个项目生命周期,所涉及的过程可以分为两类: ?项目开发过程(和被开发产品的实现直接相关); ?项目管理过程(对项目的开发过程进行管理和控制)。
软件生命周期则是指软件产品的生命周期,即是指从设想-软件产品开始到软件不再供使用为止的时间间隔。软件生命周期一般包括:概念阶段、需求阶段、设计阶段、实现阶段、测试阶段、安装和调整阶段、运行和维护阶段,有时还包括退役阶段。
显然,项目生命周期和软件生命周期在时间上是相关的,但在概念上是完全不同的。一般来说,项目生命周期不会超过该项目所开发的软件产品的生命周期。
(2)项目开发过程
图中的下部表示项目的开发过程。它从客户需求开始,通过系统分析,将客户需求分解成软件部分的需求和硬件部分的需求(从此处项目将分成软件项目和
第 27 页 共 83 页
硬件项目两部分)。其中,软件项目从软件需求定义阶段、设计阶段、实现阶段、测试阶段、验收交付阶段到项目总结,表示整个软件开发的结束。一般来说,作为软件开发项目到此就意味着结束了,但软件产品的生命周期并未结束。软件产品交付后,将经历使用过程中的维护阶段(维护阶段的时间可能和项目合同有关),直到最后产品退役。
(3)项目管理过程
图中的中部表示项目的管理过程,即对项目的开发过程实施管理的过程。对于软件和硬件兼有的项目来说,项目管理的主要过程如下:
?初期策划(主要针对系统分析、可行性分析进行策划); ?开发策划(开发前的人、财、物等的计划和准备);
?项目跟踪与监控(对项目初期的系统分析、可行性分析,以及项目开发过程中软件需求定义、设计、实现、测试、验收交付等活动进行跟踪与监控);
?软件质量保证(SQA,对项目的软件过程和软件产品的符合性进行质量监控,它贯穿于软件项目的始终);
?软件配置管理(SCM,为确保软件产品的完整性和正确性进行的管理,它贯穿于软件项目的始终);
?需求管理(为确保满足客户需求进行的管理,它贯穿于项目的始终); ?评审过程(包括同行评审等技术类评审和计划评审等管理类评审); ?项目结束处理(包括项目的鉴定、验收、交付,以及进行项目总结)。 此外,在项目管理活动中,还可能有以下管理过程: ?项目培训; ?组间协调等。 (4)过程资产
本公司的软件过程资产分两个层次:公司级资产和项目级资产。 a.公司级资产
第 28 页 共 83 页
包括:
?过程数据库(含软件过程和其他过程的资产); ?过程相关文档库; ?人力资源库。 b.项目级资产 包括:
?项目控制数据库(项目经理控制,用于保存项目数据,以便对项目进行跟踪与监控);
?SQA管理库(SQA控制,用于保存项目的软件质量保证数据); ?SCM管理库(SCM控制,用于保存项目的软件配置管理数据); ?SCM库(SCM控制,用于保存项目的所有配置项)。
通过一定的手续,项目的项目控制数据库和SQA管理库中的数据,经过选择,将补充到公司的过程数据库和过程相关文档库中。
此外,根据实际需要,总部一级也可能需要有人力资源库。
第 29 页 共 83 页
11.1 软件过程体系文件
公司的软件过程体系文件的组成如图3所示。
软件过程体系文件
按文件的使用目的,公司的软件过程体系文件分为五类:过程管理、软件开发过程、项目管理、资源管理和指南。
11.1.1 过程管理
过程管理是指对软件过程进行管理,此类文件的使用人员主要是对软件过程进行开发、维护、改进的人员,例如SEPG成员、项目经理、SQA等。有关文件说明如下:
(1)标准软件过程开发与维护
第 30 页 共 83 页