软件开发需求文档范文.docx
《软件开发需求文档范文.docx》由会员分享,可在线阅读,更多相关《软件开发需求文档范文.docx(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件开发需求文档范文书目. . .9 95 51. 范围 本指南用于指导软件开发者为*的过程,通过规范软件项目担当单位的开发过程达到提高软件质量,降低维护成本的目的。开发者应依据本指南进行软件开发和编制软件开发文档。本指南是对软件项目担当单位的基本要求。在本指南的附录 A 至 E 中供应了文档的编写模板供开发者参考,在进行详细软件开发时,开发者可依据实际状况采编写,但必需供应双方约定的文档,文档中约定的内容必需描述清晰。2. 总体要求 2.1 总体功能要求 网络应用环境以 Internet/Intranet 技术为核心。开发者应在充分分析需求的基础上,选择采纳 B/S 结构或者 C/S 结构。
2、软件系统的数据库应依照*规范进行设计和建设。本指南中没有规定开发者采纳何种详细的软件工程开发方法,开发者可依据项目详细特点、自身擅长来选择采纳面对过程的方法、面对对象的方法或面对数据的方法,但建议开发商运用面对对象软件工程的方法,如:采纳目前被广泛运用的 RUP(Rational Unified Process)方法来进行分析、设计和开发。2.2 软件开发平台要求 开发者开发的软件必需能够在*规定的软件平台上正常运行。目前软件平台为:数据库管理系统:Oracle 9i 以上版本 中间件(应用服务器)系统:IBM WebSphere OA 系统:Lotus Domino/Notes 网络架构:完
3、全支持 TCP/IP 协议 开发工具或技术体系:为保证软件的上下兼容性,开发者应选择比较通用的开发工具的较新版本进行开发,如 Microsoft Visual Studio.Net,Borland Delphi,C+ Builder, 或 J2EE(Java2 P1atform Enterprise Edition)等。2.3 软件项目的开发实施过程管理要求 2.3.1 软件项目实施过程总体要求 (一)开发者提交软件开发工作大纲,交通局组织专家组对工作大纲进行评审,并提出整改看法。(二)通过评审后,开发者依据整改看法完善工作大纲,经过交通局认可后组织项目组进行软件开发。软件开发工作根据需求分析
4、、概要设计、具体设计、编码、测试等几个阶段进行,在开发过程中,开发者需分阶段提交相关文档。(三)在软件开发工作完成后,开发者应向交通局提交完整的软件文档,交通局组织验收组对软件进行验收审查。2.3.2 软件项目实施变更要求 在开发过程中,需求或设计不行避开地须要发生变更,相关变更必需经过交通局书面同意方可进行。在需求或设计发生变更时,须要对原有文档进行修改,并供应完整的变更记录,以使变更处于可限制的状态。变更单如下表所示:表 2-1 变更单 需求变更申请 申请变更的需求文档 输入名称,版本,日期等信息 变更的内客及其理由评估需求变更将对 项目造成的影响 申请人签字变更申请的审批看法项目经理签字
5、 审批看法: 签字 日期客户签字 (合同项目) 审批看法:签字 日期更改需求文档 变更后的 需求文档 输入名称,版本,完成日期等信息更改人签字重新评审需求文档需求评审小组签字评审看法: 签字 日期变更结束 项目经理签字签字 日期 2.3.3 软件项目实施里程碑限制 交通局将分四个阶段进行把关,召开专家审查会。(一)需求分析(结合原型进行审查)确认; (二)概要设计+数据库设计;(三)预验收(试运行后); (四)正式验收(推广运用后)。3. 软件开发 合同签订以后,项目担当单位即可组织项目组进行软件开发工作。软件开发必需严格根据软件工程的要求进行。开发过程包括开发者的活动和任务。此过程由软件需求
6、分析、概要设计、具体设计、编码、测试、验收、鉴定等活动组成。3.1 软件的需求分析 3.1.1 需求分析 首先,开发者和交通局应共同对交通局的应用需求作充分的调研,提交完整的需求分析报告。在需求分析报告中必需描述的基本问题是:功能、性能、强加于实现的设计限制、属 性、外部接口。应当避开把设计或项目需求写入需求分析报告中。它必需说明由软件获得的结果,而不是获得这些结果的手段。软件需求可以用若干种方法来表达,如通过输入、输出说明;运用代表性的例子;用规范化的模型。开发者应尽可能地运用模型的方式,因为这是表达困难需求的精确和有效的方法。比如用统一建模语言(UML)来描述需求。编写需求分析报告的要求
7、a无歧义性 对最终产品的每一个特性用某一术语描述;若某一术语在某一特别的行文中运用时具有多种含义,那么应对该术语的每种含义做出说明并指出其适用场合。b完整性 需求分析报告应当包括全部有意义的需求,无论是关系到功能的、性能的、设计约束的、还是关系到外部接口方面的需求;对全部可能出现的输入数据的响应予以定义,要对合法和非合法的输入值的响应做出规定;填写全部插图、表、图示标记等;定义全部术语和度量单位。c可验证性 需求分析报告描述的每一个需求应是可以验证的。可以通过一个有限处理过程来检查软件产品是否满意需求。d一样性 在需求分析报告中的各个需求的描述不能相互冲突。e可修改性 需求分析报告应具有一个有
8、条不紊、易于运用的内容组织;没有冗余,即同一需求不能在需求分析报告中出现多次。f可追踪性 每一个需求的源流必需清楚,在进一步产生和变更文件编制时,可以便利地引证每一个需求。g运行和维护阶段的可运用性 需求分析报告必需满意运行和维护阶段的须要。在需求分析报告要写明功能的来源和目的。3.1.2 需求分析报告的编制者 需求分析报告应由交通局和开发者双方共同完成。其中:交通局负责依据实际须要提出希望软件实现的功能;软件开发者依据交通局提出的性能需求,结合软件开发编写需求分析。3.1.3 需求报告评审 在软件需求分析工作完成后,软件开发者应向交通局提交软件需求分析报告。交通局组织有关人员对需求进行评审,
9、以确定软件需求是否完善和恰当。评审完成后,就可以进入软件的设计阶段。3.1.4 需求报告格式 软件需求分析报告需按肯定的格式进行编写,详细的软件需求分析报告文档编写模板请见附录 A。3.2 软件的概要设计 3.2.1 概要设计 在交通局和开发者双方认可的需求分析报告基础上,开发者进行下步的工作。首先,开发者须要对软件系统进行概要设计,即系统设计。概要设计须要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能安排、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的具体设计供应基础。3.2.2 编写概要设计的要求 a一样性 概要设计的要求应当与需求分析报告所描
10、述的需求一样。同时,概要设计的各项要求之间也应当一样。b合理性 概要设计所提出的设计方法和标准应当是合理的、恰当的。c可追踪性 对概要设计所提出的各项要求应当可以得到它的清楚的源流,即在需求分析报告客户有明确的需求描述。d可行性 依据概要设计进行具体设计、操作和维护应当是可行的。3.2.3 概要设计报告的编写者 概要设计报告由开发者依据需求分析报告的要求进行编写。3.2.4 概要设计和需求分析、具体设计之间的关系和区分需求分析不涉及详细的技术实现,而概要设计注意于从宏观上和框架上来描述采纳何种技术手段、方法来实现这些需求。具体设计相对概要设计更注意于微观上和框架内的设计,是编码的依据。概要设计
11、是指导具体设计的依据。3.2.5 概要设计的评审 在软件概要设计工作完成后,软件开发者应向交通提交软件系统概要设计报告。在交通局对概要设计报告评审通过后,即可进入具体设计阶段。3.2.6 概要设计格式 软件系统概要设计报告需按肯定的格式进行编写,详细的软件系统概要设计报告文档编写模板请见附录 B。3.3 软件的具体设计 3.3.1 具体设计 在概要设计的基础上,开发者须要进行软件系统的具体设计。在具体设计中,描述实现详细模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,须要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。应当保证软件的需求完全安排给
12、整个软件。具体设计应当足够具体,能够依据具体设计报告进行编码。3.3.2 特例 假如软件系统比较简洁,层次较少,可以不必进行特地的具体设计,而和概要设计结合起来。3.3.3 具体设计的要求 a一样性 具体设计的要求应当与需求分析报告所描述的需求、与概要设计一样。同时,具体设计的各项要求之间也应当是一样的。b合理性 具体设计所提出的设计方法和标准应当是合理的、恰当的。c可追踪性 对具体设计所提出的各项要求应当可以得到它的清楚的源流,即可在需求分析报告、概要设计报告中有明确的需求描述。d可行性 依据具体设计进行编码、测试、操作和维护应当是可行的。3.3.4 数据库设计 假如软件产品须要运用到数据库
13、,软件的具体设计应包括对数据库的设计。数据库设计应在软件的需求分析、概要设计完成之后、具体设计的其它工作之前进行。在进行数据库设计时,应当根据交通局制定的*市交通局信息化数据库建设规范要求进行。3.3.5 具体设计的评审 在软件具体设计完成后,软件开发者应向交通局提交软件系统数据库设计报告和软件系统具体设计报告。在交通局对软件系统数据库设计报告、软件系统具体设计报告评审通过后,即可进入软件编码阶段。3.3.6 具体设计格式 软件系统具体设计报告、软件系统数据库设计报告需按肯定的格式进行编写,详细的软件系统具体设计报告文档编写模板和软件系统数据库设计报告文档编写模板请见附录 C、附录 D。3.4
14、 软件的编码 3.4.1 软件编码 在软件编码阶段,开发者依据软件系统具体设计报告中对数据结构、算法分析和模块实现等方面的设计要求,起先详细的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。3.4.2 软件编码的要求 a模块化编码 b代码可读性c可维护性 d模块接口标准化 e界面风格统一 e注释的应用 3.4.3 编码的评审 为了尽早发觉软件中的障碍,提高软件产品的质量,开发者在编码的过程中应当强调代码评审工作。将代码评审报告作为文档的一部分,提交给交通局。3.4.4 编程规范及要求 为了提高编程实现的质量,软件的程序设计必需遵照国家颁布的相关编程规
15、范。主要内容包括:规范化的程序内部文档、数据结构的具体说明、清楚的语句结构、编码规范。编码规范的内容包括命名规范、界面规范、提示及帮助信息规范、热键定义等。其中数据库部分应遵守*市交通局信息化数据库建设规范的要求。在软件编码的同时应进行单元测试。3.5 软件的测试 3.5.1 软件测试 为了尽早发觉软件产品中的错误,从而达到提高软件质量、降低软件维护的费用,开发者应在编码过程中对各个模块的程序代码进行单元测试,系统集成时进行集成测试,系统集成完成后对整个软件进行系统测试。单元测试是在软件开发过程中针对程序模块进行正确性检验。集成测试是在单元测试的基础上,将全部模块根据设计要求组装成系统或子系统
16、,对模块组装过程和模块接口进行正确性检验。软件系统测试不仅是检测软件的整体行为表现,从另一个侧面看,也是对软件开发设计的再确认。进行软件系统测试工作时。测试主要包括界面测试、可用性测试、功能测试、稳定性(强度)测试、性能测试、强壮性(复原)测试、逻辑性测试、破坏性测试、平安性测试等。开发者针对单元测试,集成测试,系统测试分别制定测试安排。集成测试须要依据需求分析报告和概要设计制作测试用例,并须经过评审。软件测试根据测试安排、需求分析报告的要求进行,最终形成软件测试报告。3.5.2 测试安排 在软件编码起先之前,开发者应向交通局提交测试安排,在软件交付时,开发者应向交通局提交软件测试报告,以确保
17、开发者的软件得到了充分的测试。开发的软件必需经过充分的测试证明其符合设计要求、运行稳定、平安可用方可交付交通局。3.6 软件的交付打算 3.6.1 交付清单 在软件测试证明软件达到要求后,软件开发者应向交通局提交开发的目标安装程序、数据库的数据字典、用户安装手册、用户运用指南、需求报告、设计报告、测试报告等双方合同约定的产物。用户安装手册应具体介绍安装软件对运行环境的要求、安装软件的定义和内容、在客户端、服务器端及中间件的详细安装步骤、安装后的系统配置。用户运用指南应包括软件各项功能的运用流程、操作步骤、相应业务介绍、特别提示和留意事项等方面的内容,在须要时还应举例说明。3.7 软件的鉴定验收
18、 3.7.1 软件的鉴定验收 在软件开发完成后,为了确保软件是根据需求分析的要求进行开发的,保证软件产品的质量,须要对软件产品进行鉴定验收。在开发者如期交付软件后,由交通局负责确定详细的鉴定验收日期。3.7.2 验收人员 由交通局聘请具有肯定的分析、设计、编程和软件测试阅历的验收组长和其他专业人员组成。验收组设组长一名(可设有副组长),负责整个验收的安排、组织工作。3.7.3 验收详细内容 验收内容应当包括:合法性检查、文档检查、软件一样性检查、软件系统测试与测试结果评审等几项工作。合法性检查检查软件开发工具是否合法、运用的函数库、控件、组件是否有合法的发布许可。文档检查检查开发者提交的文档必
19、需齐全,质量是否过关。须要开发者供应的文档包括:项目实施安排; 具体技术方案; 软件需求规格说明书(STP)(含数据字典); 概要设计说明书(PDD); 具体设计说明书(DDD)(含数据库设计说明书); 软件测试安排(STP)(含测试用例); 软件测试报告(STR); 用户手册(SUM)(含操作、运用、维护、应急处理手册); 源程序(SCL)(不行修改的电子文档); 项目实施安排(PIP); 项目开发总结(PDS); 软件质量保证安排(SQAP); 此外,验收组可以依据须要对其它文档(如软件配置安排、项目进展报表、阶段评审报表等)进行检查。文档的质量依据完备性、正确性、简明性、可追踪性、自说明
20、性、规范件等方面进行踪合评定。验收须要对软件代码进行检查,以确保其符合规范,并检查其一样性。3.7.4 软件验收测试大纲 在软件进行鉴定验收前,开发者需根据肯定的格式编写软件验收测试大纲,详细的格式请见附录 E。3.8 培训 3.8.1 系统应用培训 主要培训内容包括:系统操作运用、业务管理流程。培训对象:应用操作人员。3.8.2 系统管理的培训(可选)主要培训内容包括:系统安装、调试、维护;系统管理。培训对象:系统管理人员。开发者 应具体列出培训安排,包括培训内容、教材、时间和人员等。附录 A软件需求分析报告文档模板1. 引言 引言是对这份软件产品需求分析报告的概览,是为了帮助阅读者了解这份
21、文档是如何编写的,并且应当如何阅读、理解和说明这份文档。1.1 编写目的 说明这份软件产品需求分析报告是为哪个软件产品编写的,开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件产品需求分析报告详尽说明白该软件产品的需求规格,包括修正和(或)发行版本号,从而对该软件产品进行精确的定义。假如这份软件产品需求分析报告只与整个系统的某一部分有关系,那么只定义软件产品需求分析报告中说明的那个部分或子系统。1.2 项目风险 详细说明本软件开发项目的全部风险担当者,以及各自由本阶段所须要担当的主要风险,首要风险担当者包括: 任务提出者; 软件开发者; 产品运用者。1.3 文档约定 描述编写文档时
22、所采纳的标准(假如有标准的话),或者各种排版约定。排版约定应当包括: 正文风格; 提示方式; 重要符号; 也应当说明高层次需求是否可以被其全部细化的需求所继承,或者每个需求陈述是否都有其自己的优先级。1.4 预期读者和阅读建议 列举本软件产品需求分析报告所针对的各种不同的预期读者,例如,可能包括: 用户; 开发人员; 项目经理; 营销人员; 测试人员; 文档编写入员。并且描述了文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。1.5 产品范围 说明该软件产品及其开发目的的简短描述,包括利益和目标。把软件产品开发与企业目标,或者业务策略相联系。描述产品范围时需留意,
23、可以参考项目视图和范围文档,但是不能将其内容复制到这里。1.6 参考文献 列举编写软件产品需求分析报告时所用到的参考文献及资料,可能包括: 本项目的合同书; 上级机关有关本项目的批文; 本项目已经批准的安排任务书; 用户界面风格指导; 开发本项目时所要用到的标淮; 系统规格需求说明; 运用实例文档; 属于本项目的其它己发表文件; 本软件产品需求分析报告中所引用的文件、资料; 相关软件产品需求分析报告; 为了便利读者查阅,全部参考资料应当按肯定依次排列。假如可能,每份资料都应当给出: 标题名称; 作者或者合同签约者; 文件编号或者版本号; 发表日期或者签约日期; 出版单位或者资料来源。2. 综合
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 开发 需求 文档 范文
限制150内