《软件开发需求文档模板.doc》由会员分享,可在线阅读,更多相关《软件开发需求文档模板.doc(67页珍藏版)》请在金锄头文库上搜索。
1、目录1. 范围12. 总体要求12.1 总体功能要求12.2 软件开发平台要求12.3 软件项目的开发实施过程管理要求22.3.1 软件项目实施过程总体要求22.3.2 软件项目实施变更要求22.3.3 软件项目实施里程碑控制23. 软件开发33.1 软件的需求分析33.1.1 需求分析33.1.2 需求分析报告的编制者43.1.3 需求报告评审43.1.4 需求报告格式43.2 软件的概要设计43.2.1 概要设计43.2.2 编写概要设计的要求43.2.3 概要设计报告的编写者43.2.4 概要设计和需求分析、详细设计之间的关系和区别43.2.5 概要设计的评审43.2.6 概要设计格式4
2、3.3 软件的详细设计53.3.1 详细设计53.3.2 特例53.3.3 详细设计的要求53.3.4 数据库设计53.3.5 详细设计的评审53.3.6 详细设计格式53.4 软件的编码53.4.1 软件编码53.4.2 软件编码的要求53.4.3 编码的评审63.4.4 编程规范及要求63.5 软件的测试63.5.1 软件测试63.5.2 测试计划63.6 软件的交付准备63.6.1 交付清单63.7 软件的鉴定验收73.7.1 软件的鉴定验收73.7.2 验收人员73.7.3 验收具体内容73.7.4 软件验收测试大纲73.8 培训73.8.1 系统应用培训73.8.2 系统管理的培训(
3、可选)8附录A 软件需求分析报告文档模板9附录B 软件概要设计报告文档模板21附录C 软件详细设计报告文档模板33附录D 软件数据库设计报告文档模板43附录E 软件测试(验收)大纲55241. 范围本指南用于指导软件开发者为南京市交通局开发软件项目的过程,通过规范软件项目承担单位的开发过程达到提高软件质量,降低维护成本的目的。开发者应根据本指南进行软件开发和编制软件开发文档。本指南是对软件项目承担单位的基本要求。在本指南的附录A至E中提供了文档的编写模板供开发者参考,在进行具体软件开发时,开发者可根据实际情况采编写,但必须提供双方约定的文档,文档中约定的内容必须描述清楚。2. 总体要求2.1
4、总体功能要求网络应用环境以Internet/Intranet技术为核心。开发者应在充分分析需求的基础上,选择采用B/S结构或者C/S结构。软件系统的数据库应依照南京市交通局信息化数据库建设规范进行设计和建设。本指南中没有规定开发者采用何种具体的软件工程开发方法,开发者可根据项目具体特点、自身擅长来选择采用面向过程的方法、面向对象的方法或面向数据的方法,但建议开发 商使用面向对象软件工程的方法,如:采用目前被广泛使用的RUP(Rational Unified Process)方法来进行分析、设计和开发。2.2 软件开发平台要求开发者开发的软件必须能够在南京市交通局规定的软件平台上正常运行。目前软
5、件平台为:数据库管理系统:Oracle 9i以上版本中间件(应用服务器)系统:IBM WebSphereOA系统:Lotus Domino/Notes网络架构:完全支持TCP/IP协议开发工具或技术体系:为保证软件的上下兼容性,开发者应选择比较通用的开发工具的较新版本进行开发,如Microsoft Visual Studio.Net,Borland Delphi,C+ Builder, 或J2EE(Java2 P1atform Enterprise Edition)等。 2.3 软件项目的开发实施过程管理要求2.3.1 软件项目实施过程总体要求(一) 开发者提交软件开发工作大纲,交通局组织专家
6、组对工作大纲进行评审,并提出整改意见。(二) 通过评审后,开发者根据整改意见完善工作大纲,经过交通局认可后组织项目组进行软件开发。软件开发工作按照需求分析、概要设计、详细设计、编码、测试等几个阶段进行,在开发过程中,开发者需分阶段提交相关文档。(三) 在软件开发工作完成后,开发者应向交通局提交完整的软件文档,交通局组织验收组对软件进行验收审查。2.3.2 软件项目实施变更要求在开发过程中,需求或设计不可避免地需要发生变更,相关变更必须经过交通局书面同 意方可进行。在需求或设计发生变更时,需要对原有文档进行修改,并提供完整的变更记录, 以使变更处于可控制的状态。变更单如下表所示:表 2-1 变更
7、单需求变更申请申请变更的需求文档 输入名称,版本,日期等信息变更的内客及其理由 评估需求变更将对项目造成的影响 申请人签字 变更申请的审批意见项目经理签字 审批意见: 签字 日期 客户签字(合同项目) 审批意见: 签字 日期 更改需求文档变更后的需求文档 输入名称,版本,完成日期等信息 更改人签字 重新评审需求文档需求评审小组签字 评审意见: 签字 日期 变更结束项目经理签字 签字 日期 2.3.3 软件项目实施里程碑控制交通局将分四个阶段进行把关,召开专家审查会。(一) 需求分析(结合原型进行审查)确认;(二) 概要设计+数据库设计;(三) 预验收(试运行后);(四) 正式验收(推广使用后)
8、。3. 软件开发合同签订以后,项目承担单位即可组织项目组进行软件开发工作。软件开发必须严格按照软件工程的要求进行。开发过程包括开发者的活动和任务。此过程由软件需求分析、概要设计、详细设计、编码、测试、验收、鉴定等活动组成。3.1 软件的需求分析3.1.1 需求分析首先,开发者和交通局应共同对交通局的应用需求作充分的调研,提交完整的需求分析 报告。在需求分析报告中必须描述的基本问题是:功能、性能、强加于实现的设计限制、属 性、外部接口。应当避免把设计或项目需求写入需求分析报告中。它必须说明由软件获得的 结果,而不是获得这些结果的手段。软件需求可以用若干种方法来表达,如通过输入、输出说明;使用代表
9、性的例子;用规范化的模型。开发者应尽可能地使用模型的方式,因为这是表达复杂需求的精确和有效的方法。比如用统一建模语言(UML)来描述需求。编写需求分析报告的要求a无歧义性对最终产品的每一个特性用某一术语描述;若某一术语在某一特殊的行文中使用时具有多种含义,那么应对该术语的每种含义做出解释并指出其适用场合。b完整性需求分析报告应该包括全部有意义的需求,无论是关系到功能的、性能的、设计约束的、还是关系到外部接口方面的需求;对所有可能出现的输入数据的响应予以定义,要对合法和非合法的输入值的响应做出规定;填写全部插图、表、图示标记等;定义全部术语和度量单位。c可验证性需求分析报告描述的每一个需求应是可
10、以验证的。可以通过一个有限处理过程来检查软件产品是否满足需求。d一致性在需求分析报告中的各个需求的描述不能互相矛盾。e可修改性需求分析报告应具有一个有条不紊、易于使用的内容组织;没有冗余,即同一需求不能在需求分析报告中出现多次。f可追踪性每一个需求的源流必须清晰,无限恐怖,在进一步产生和改变文件编制时,可以方便地引证每一个需求。g运行和维护阶段的可使用性需求分析报告必须满足运行和维护阶段的需要。在需求分析报告要写明功能的来源和目的。3.1.2 需求分析报告的编制者需求分析报告应由交通局和开发者双方共同完成。其中:交通局负责根据实际需要提出希望软件实现的功能;软件开发者根据交通局提出的性能需求,
11、结合软件开发编写需求分析。3.1.3 需求报告评审在软件需求分析工作完成后,软件开发者应向交通局提交软件需求分析报告。交通局组织有关人员对需求进行评审,以决定软件需求是否完善和恰当。评审完成后,就可以进入软件的设计阶段。3.1.4 需求报告格式软件需求分析报告需按一定的格式进行编写,具体的软件需求分析报告文档编写模板请见附录A。3.2 软件的概要设计3.2.1 概要设计在交通局和开发者双方认可的需求分析报告基础上,开发者进行下步的工作。 首先,开发者需要对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计 进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设
12、计、 运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。3.2.2 编写概要设计的要求a一致性概要设计的要求应该与需求分析报告所描述的需求一致。同时,概要设计的各项要求之间也应该一致。b合理性概要设计所提出的设计方法和标准应该是合理的、恰当的。c可追踪性对概要设计所提出的各项要求应该可以得到它的清晰的源流,即在需求分析报告客户有明确的需求描述。d可行性根据概要设计进行详细设计、操作和维护应该是可行的。3.2.3 概要设计报告的编写者概要设计报告由开发者根据需求分析报告的要求进行编写。3.2.4 概要设计和需求分析、详细设计之间的关系和区别 需求分析不涉及具体的技术实现,而概要设
13、计注重于从宏观上和框架上来描述采用何种技术手段、方法来实现这些需求。详细设计相对概要设计更注重于微观上和框架内的设计, 是编码的依据。概要设计是指导详细设计的依据。3.2.5 概要设计的评审在软件概要设计工作完成后,软件开发者应向交通提交软件系统概要设计报告。在交通局对概要设计报告评审通过后,即可进入详细设计阶段。3.2.6 概要设计格式软件系统概要设计报告需按一定的格式进行编写,异世邪君,具体的软件系统概要设计报 告文档编写模板请见附录B。3.3 软件的详细设计3.3.1 详细设计在概要设计的基础上,开发者需要进行软件系统的详细设计。在详细设计中,描述实 现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。应当保证 软件的需求完全