说明:
1.《软件开发计划》(SDP)描述开发者实施软件开发工作的计划,本文档中“软件开发”一词涵盖了新开发、修改、重用、再工程、维护和由软件产品引起的其他所有的活动。
2. SDP是向需求方提供了解和监督软件开发过程、所使用的方法、每项活动的途径、项目的安排、组织及资源的一种手段。
3.本计划的某些部分可视实际需要单独编制成册,例如,软件配置管理计划、软件质量保证计划和文档编制计划等。
软件开发计划的正文的格式如下
1 引言
本章分为以下几条。
1.1标识
本条应包含本文档适用的系统和软件的完整标识,(若适用)包括标识号、标题、缩略词语、版本号和发行号。
1.2系统概述
本条应简述本文档适用的系统和软件的用途,它应描述系统和软件的一般特性;概述系统开发、运行和维护的历史;标识项目的投资方、需方、用户、开发方和支持机构;标识当前和计划的运行现场;列出其他有关的文档。
1.3文档概述
本条应概述本文档的用途和内容,并描述与其使用有关的保密性和私密性的要求。
1.4与其他计划之间的关系
(若有)本条描述本计划和其他项目管理计划的关系。
1.5基线
给出编写本项目开发计划的输入基线,如软件需求规格说明。
2引用文件
本章应列出本文档引用的所有文档的编号、标题、修订版本和日期,本章也应标识不能通过正常的供货渠道获得的所有文档的来源。
3交付产品
3.1 程序
3.2文档
3.3服务
3.4非移交产品
3.5验收标准
3.6最后交付期限
列出本项目应交付的产品,包括软件产品和文档。其中,软件产品应指明哪些是要开发的,哪些是属于维护性质的;文档是指随软件产品交付给用户的技术文档,例如用户手册、安装手册等。
4所需工作概述
本章根据需要分条对后续章描述的计划作出说明,(若适用)包括以下概述:
a.对所要开发系统、软件的需求和约束;
b.对项目文档编制的需求和约束;
c.该项目在系统生命周期中所处的地位;
d.所选用的计划/采购策略或对它们的需求和约束;
e.项目进度安排及资源的需求和约柬;
f.其他的需求和约束,如:项目的安全性、保密性、私密性、方法、标准、硬件开发和软件开发的相互依赖关系等。
5实施整个软件开发活动的计划
本章分以下几条。不需要的活动的条款用“不适用”注明,如果对项目中不同的开发阶段或不同的软件需要不同的计划,这些不同之处应在此条加以注解。除以下规定的内容外,每条中还应标识可适用的风险和不确定因素,及处理它们的计划。
5.1软件开发过程
本条应描述要采用的软件开发过程。计划应覆盖论及它的所有合同条款,确定已计划的开发阶段(适用的话)、目标和各阶段要执行的软件开发活动。
5.2软件开发总体计划
本条应分以下若干条进行描述。
5.2.1软件开发方法
本条应描述或引用要使用的软件开发方法,包括为支持这些方法所使用的手工、自动工具和过程的描述。该方法应覆盖论及它的所有合同条款。如果这些方法在它们所适用的活动范围有更好的描述,可引用本计划的其他条。
5.2.2软件产品标准
本条应描述或引用在表达需求、设计、编码、测试用例、测试过程和测试结果方面要遵循的标准。标准应覆盖合同中论及它的所有条款。如果这些标准在标准所适用的活动范围有更好的描述,可引用本计划中的其他条。对要使用的各种编程语言都应提供编码标准,至少应包括:
a.格式标准(如:缩进、空格、大小写和信息的排序);
b.首部注释标准,例如(要求:代码的名称/标识符,版本标识,修改历史,用途)需求和实现的设计决策,处理的注记(例如:使用的算法、假设、约束、限制和副作用),数据注记(输入、输出、变量和数据结构等);
c.其他注释标准(例如要求的数量和预期的内容);
d.变量、参数、程序包、过程和文档等的命名约定;
e.(若有)编程语言构造或功能的使用限制;
f.代码聚合复杂性的制约。
5.2.3可重用的软件产品
本条应分以下若干条。
5.2.3.1吸纳可重用的软件产品
本条应描述标识、评估和吸纳可重用软件产品要遵循的方法,包括搜寻这些产品的范
围和进行评估的准则。描述应覆盖合同中论及它的所有条款。在制定或更新计划时对已选定的或候选的可重用的软件产品应加以标识和说明,(若适用)同时应给出与使用有关的优点、缺陷和限制。
5.2.3.2开发可重用的软件产品
本条应描述如何标识、评估和报告开发可重用软件产品的机会。描述应覆盖合同中论及它的所有条款。
5.2.4处理关键性需求
本条应分以下若干条描述为处理指定关键性需求应遵循的方法。描述应覆盖合同中论及它的所有条款。
5.2.4.1安全性保证
5.2.4.2保密性保证
5.2.4.3私密性保证
5.2.4.4其他关键性需求保证
5.2.5计算机硬件资源利用
本条应描述分配计算机硬件资源和监控其使用情况要遵循的方法。描述应覆盖合同中论及它的所有条款。
5.2.6记录原理
本条应描述记录原理所遵循的方法,该原理在支持机构对项目作出关键决策时是有用的。应对项目的“关键决策”一词作出解释,并陈述原理记录在什么地方。描述应覆盖合同中论及它的所有条款。
5.2.7需方评审途径
本条应描述为评审软件产品和活动,让需方或授权代表访问开发方和分承包方的一些设施要遵循的方法。描述应遵循合同中论及它的所有条款。
6实施详细软件开发活动的计划
本章分条进行描述。不需要的活动用“不适用”注明,如果项目的不同的开发阶段或不同的软件需要不同的计划,则在本条应指出这些差异。每项活动的论述应包括应用于以下方面的途径(方法/过程/工具):
a.所涉及的分析性任务或其他技术性任务;
b.结果的记录;
c.与交付有关的准备(如果有的话)。
论述还应标识存在的风险和不确定因素,及处理它们的计划。如果适用的方法在5.2.1处描述了的话,可引用它。
6.1项目计划和监督
本条分成若干分条描述项目计划和监督中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.1.1软件开发计划(包括对该计划的更新)
6.1.2CSCI测试计划
6.1.3系统测试计划
6.1.4软件安装计划
6.1.5软件移交计划
6.1.6跟踪和更新计划,包括评审管理的时间间隔
6.2建立软件开发环境
本条分成以下若干分条描述建立、控制、维护软件开发环境所遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.2.1软件工程环境
6.2.2软件测试环境
6.2.3软件开发库
6.2.4软件开发文档
6.2.5非交付软件
6.3系统需求分析
6.3.1用户输入分析
6.3.2运行概念
6.3.3系统需求
6.4系统设计
6.4.1系统级设计决策
6.4.2系统体系结构设计
6.5软件需求分析
本条描述软件需求分析中要遵循的方法。应覆盖合同中论及它的所有条款。
6.6软件设计
本条应分成若干分条描述软件设计中所遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.6.1 CSCI级设计决策
6.6.2 CSCI体系结构设计
6.6.3 CSCI详细设计
6.7软件实现和配置项测试
本条应分成若干分条描述软件实现和配置项测试中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.7.1软件实现
6.7.2配置项测试准备
6.7.3配置项测试执行
6.7.4修改和再测试
6.7.5配置项测试结果分析与记录
6.8配置项集成和测试
本条应分成若干分条描述配置项集成和测试中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.8.1配置项集成和测试准备
6.8.2配置项集成和测试执行
6.8.3修改和再测试
6.8.4配置项集成和测试结果分析与记录
6.9 CSCI合格性测试
本条应分成若干分条描述CSCI合格性测试中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.9.1 CSCI合格性测试的独立性
6.9.2在目标计算机系统(或模拟的环境)上测试
6.9.3 CSCI合格性测试准备
6.9.4 CSCI合格性测试演练
6.9.5 CSCI合格性测试执行
6.9.6修改和再测试
6.9.7 CSCI合格性测试结果分析与记录
6.10 CSCI/HWCI集成和测试
本条应分成若干分条描述CSCI/HWCI集成和测试中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.10.1 CSCI/HWCI集成和测试准备
6.10.2 CSCI/HWCI集成和测试执行
6.10.3修改和再测试
6.10.4 CSCI/HWCI集成和测试结果分析与记录
6.11系统合格性测试
本条应分成若干分条描述系统合格性测试中要遵循的方法。各分条的计划应遵循合同中论及它的所有条款。
6.11.1系统合格性测试的独立性
6.11.2在目标计算机系统(或模拟的环境)上测试
6.11.3系统合格性测试准备
6.11.4系统合格性测试演练
6.11.5系统合格性测试执行
6.11.6修改和再测试
6.11.7系统合格性测试结果分析与记录
6.12软件使用准备
本条应分成若干分条描述软件应用准备中要遵循的方法。各分条的计划应遵循合同中论及它的所有条款。
6.12.1可执行软件的准备
6.12.2用户现场的版本说明的准备
6.12.3用户手册的准备
6.12.4在用户现场安装
6.13软件移交准备
本条应分成若干分条描述软件移交准备要遵循的方法。各分条的计划应遵循合同中论
及它的所有条款。
6.13.1可执行软件的准备
6.13.2源文件准备
6.13.3支持现场的版本说明的准备
6.13.4“已完成”的CSCI设计和其他的软件支持信息的准备
6.13.5系统设计说明的更新
6.13.6支持手册准备
6.13.7到指定支持现场的移交
6.14软件配置管理
本条应分成若干分条描述软件配置管理中要遵循的方法.各分条的计划应遵循合同中论及它的所有条款。
6.14.1 配置标识
6.14.2配置控制
6.14.3配置状态统计
6.14.4配置审核
6.14.5发行管理和交付
6.15软件产品评估
本条应分成若干分条描述软件产品评估中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.15.1中间阶段的和最终的软件产品评估
6.15.2软件产品评估记录(包括所记录的具体条目)
6.15.3软件产品评估的独立性
6.16软件质量保证
本条应分成若干分条描述软件质量保证中要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款。
6.16.1软件质量保证评估
6.16.2软件质量保证记录、包括所记录的具体条目
6.16.3软件质量保证的独立性
6.17问题解决过程(更正活动)
本条应分成若干分条描述软件更正活动中要遵循的方法.各分条的计划应覆盖合同中论及它的所有条款。
6.17.1问题/变更报告
它包括要记录的具体条目(可选的条目包括:项目名称,提出者,问题编号,问题名称,受影响的软件元素或文档,发生日期,类别和优先级,描述,指派的该问题的分析者,指派日期,完成日期,分析时间,推荐的解决方案,影响,问题状态,解决方案的批准,随后的动作,更正者,更正日期,被更正的版本.更正时间,已实现的解决方案的描述)。
6.17.2更正活动系统
6.18联合评审(联合技术评审和联合管理评审)
本条应分成若干分条描述进行联合技术评审和联合管理评审要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款.
6.18.1联合技术评审包括----组建议的评审
6.18.2联合管理评审包括----组建议的评审
6.19文档编制
本条应分成若干分条描述文档编制要遵循的方法。各分条的计划应覆盖合同中论及它
的所有条款.应遵循本标准第5章文档编制过程中的有关文档编制计划的规定执行.
6.20其他软件开发活动
本条应分成若干分条描述进行其他软件开发活动要遵循的方法。各分条的计划应覆盖合同中论及它的所有条款.
6.20.1风险管理,包括已知的风险和相应的对策
6.20.2软件管理指标,包括要使用的指标
6.20.3保密性和私密性
6.20.4分承包方管理
6.20.5与软件独立验证与确认(IV&V)机构的接口
6.20.6和有关开发方的协调
6.20.7项目过程的改进
6.20.8计划中未提及的其他活动
7进度表和活动网络图
本章应给出:
a.进度表,标识每个开发阶段中的活动,给出每个活动的初始点、提交的草稿和最终结果的可用性、其他的里程碑及每个活动的完成点.
b.活动网络图,描述项目活动之间的顺序关系和依赖关系,标出完成项目中有最严格时间限制的活动。
8项目组织和资源
本章应分成若干条描述各阶段要使用的项目组织和资源.
8.1项目组织
本条应描述本项目要采用的组织结构,包括涉及的组织机构、机构之间的关系、执行所需活动的每个机构的权限和职责。
8.2项目资源
本条应描述适用于本项目的资源。(若适用)应包括:
a.人力资源,包括:
1)估计此项目应投入的人力(人员/时间数);
2)按职责(如:管理,软件工程,软件测试,软件配置管理,软件产品评估,软件质量保证和软件文档编制等)分解所投入的人力;
3)履行每个职责人员的技术级别、地理位置和涉密程度的划分;
b.开发人员要使用的设施,包括执行工作的地理位置、要使用的设施、保密区域和运用合同项目的设施的其他特性;
c.为满足合同需要,需方应提高的设备、软件、服务、文档、资料及设施,给出一张何时需要上述各项的进度表;
d.其他所需的资源,包括:获得资源的计划、需要的日期和每项资源的可用性.
9培训
9.1项目的技术要求
根据客户需求和项目策划结果,确定本项目的技术要求,包括管理技术和开发技术。
9.2培训计划
根据项目的技术要求和项目成员的情况,确定是否需要进行项目培训,并制订培训计划。如不需要培训,应说明理由。
10项目估算
本章应分若干条说明项目估算的结果。
10.1规模估算
10.2工作量估算
10.3成本估算
10.4关键计算机资源估算
10.5管理预留
11风险管理
本章应分析可能存在的风险,所采取的对策和风险管理计划。
12支持条件
12.1计算机系统支持。
12.2需要需方承担的工作和提供的条件。
12.3需要分包商承担的工作和提供的条件。
13注解
本章应包含有助于理解本文档的一般信息(例如原理)。本章应包含为理解本文档需要的术语和定义,所有缩略语和它们在文档中的含义的字母序列表。
附录
附录可用来提供那些为便于文档维护而单独出版的信息(例如图表、分类数据)。为便于处理,附录可单独装订成册。附录应按字母顺序(A, B等)编排。
因篇幅问题不能全部显示,请点此查看更多更全内容