范例
当前位置:首页 > 其他范文 > 范例 > 列表页

软件开发需求文档范例

小草范文网  发布于:2017-05-02  分类: 范例 手机版

篇一:软件需求分析报告文档模板

软件需求分析报告文档模板

1. 引言

引言是对这份软件产品需求分析报告的概览,是为了帮助阅读者了解这份文档是如何编写的,并且应该如何阅读、理解和解释这份文档。

1.1 编写目的

说明这份软件产品需求分析报告是为哪个软件产品编写的,开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件产品需求分析报告详尽说明了该软件产品的需求规格,包括修正和(或)发行版本号,从而对该软件产品进行准确的定义。

如果这份软件产品需求分析报告只与整个系统的某一部分有关系,那么只定义软件产品需求分析报告中说明的那个部分或子系统。

1.2 项目风险

具体说明本软件开发项目的全部风险承担者,以及各自在本阶段所需要承担的主要风险,首要风险承担者包括:

● 任务提出者;

● 软件开发者;

● 产品使用者。

1.3 文档约定

描述编写文档时所采用的标准(如果有标准的话),或者各种排版约定。排版约定应该包括:

● 正文风格;

● 提示方式;

● 重要符号;

也应该说明高层次需求是否可以被其所有细化的需求所继承,或者每个需求陈述是否都有其自己的优先级。

1.4 预期读者和阅读建议

列举本软件产品需求分析报告所针对的各种不同的预期读者,例如,可能包括:

● 用户;

● 开发人员;

● 项目经理;

● 营销人员;

● 测试人员;

● 文档编写入员。

并且描述了文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。

1.5 产品范围

说明该软件产品及其开发目的的简短描述,包括利益和目标。把软件产品开发与企业目标,或者业务策略相联系。

描述产品范围时需注意,可以参考项目视图和范围文档,但是不能

将其内容复制到这里。

1.6 参考文献

列举编写软件产品需求分析报告时所用到的参考文献及资料,可能包括:

● 本项目的合同书;

● 上级机关有关本项目的批文;

● 本项目已经批准的计划任务书;

● 用户界面风格指导;

● 开发本项目时所要用到的标淮;

● 系统规格需求说明;

● 使用实例文档;

● 属于本项目的其它己发表文件;

● 本软件产品需求分析报告中所引用的文件、资料;

● 相关软件产品需求分析报告;

为了方便读者查阅,所有参考资料应该按一定顺序排列。如果可能,

每份资料都应该给出:

● 标题名称;

● 作者或者合同签约者;

● 文件编号或者版本号;

● 发表日期或者签约日期;

● 出版单位或者资料来源。

2. 综合描述

这一部分概述了正在定义的软件产品的作用范围以及该软件产品所运行的环境、使用该软件产品的用户、对该软件产品己知的限制、有关该软件产品的假设和依赖。

2.1 产品的状况

描述了在软件产品需求分析报告中所定义的软件产品的背景和起源。说明了该软件产品是否属于下列情况:

● 是否是产品系列中的下一成员;

● 是否是成熟产品所改进的下一代产品;

● 是否是现有应用软件的替代品(升级产品);

● 是否是一个新型的、自主型的产品。

如果该软件产品需求分析报告定义的软件系统是:

● 大系统的一个组成部分;

● 与其它系统和其它机构之间存在基本的相互关系。

那么必须说明软件产品需求分析报告定义的这部分软件是怎样与整个大系统相关联的,或者(同时)说明相互关系的存在形式,并且要定义出两者之间的全部接口。

2.2 产品的功能

因为将在需求分析报告的第4部分中详细描述软件产品的功能,所

以在此只需要概略地总结。仅从业务层面陈述本软件产品所应具有的主要功能,在描述功能时应该针对每一项需求准确地描述其各项规格说明。如果存在引起误解的可能,在陈述本软件产品主要功能的作用领域时,也需要对应陈述本软件产品的非作用领域,以利读者理解本软件产品。

为了很好地组织产品功能,使每个读者都容易理解,可以采用列表的方法给出。也可以采用图形方式,将主要的需求分组以及它们之间的联系使用数据流程图的顶层图或类图进行表示,这种表示方法是很有用的。

参考用户当前管理组织构架,了解各个机构的主要职能,将有助于陈述软件产品的主要功能。

2.3 用户类和特性

确定有可能使用该软件产品的不同用户类,并且描述它们相关的特征。往往有一些软件需求,只与特定的用户类有关。描述时,应该将该软件产品的重要用户类与非重要用户类区分开。

用户不一定是软件产品的直接使用者,通过报表、应用程序接口、系统硬件接口得到软件产品的数据和服务的人、或者机构也有他们的需求。所以,应该将这些外部需求视为通过报表、应用程序接口、系统硬件接口附加给软件产品的附加用户类。

2.4 运行环境

描述了本软件的运行环境,一般包括:

● 硬件平台;

● 操作系统和版本;

● 支撑环境(例如:数据库等)和版本;

● 其它与该软件有关的软件组件;

● 与该软件共存的应用程序。

2.5 设计和实现上的限制

确定影响开发人员自由选择的问题,并且说明这些问题为什么成为一种限制。可能的限制包括下列内容:

● 必须使用的特定技术、工具、编程语言和数据库;

● 避免使用的特定技术、工具、编程语言和数据库;

● 要求遵循的开发规范和标准

例如,如果由客户的公司或者第三方公司负责软件维护,就必须定义转包者所使用的设计符号表示和编码标准;

● 企业策略的限制;

政府法规的限制;

● 工业标准的限制;

● 硬件的限制

例如,定时需求或存储器限制;

● 数据转换格式标淮的限制。

2.6 假设和约束(依赖)

列举出对软件产品需求分析报告中,影响需求陈述的假设因素(与己知因素相对立)。如果这些假设因素不正确、不一致或者被修改,就会使软件产品开发项目受到影响。这些假设的因素可能包括:

● 计划使用的商业组件,或者其它软件中的某个部件;

● 假定产品中某个用户界面将符合一个特殊的设计约定;

● 有关本软件用户的若干假定(例如:假定用户会熟练使用SQL语言。);

● 有关本软件开发工作的若干假定(例如:用户承诺的优惠、方便、上级部门给予的特殊政策和支持等。);

● 有关本软件运行环境的一些问题;

此外,确定本软件开发项目对外部约束因素所存在的依赖。有关的约束可能包括:

● 工期约束;

● 经费约束;

● 人员约束;

● 设备约束;

● 地理位置约束;

● 其它有关项目约束;

篇二:软件开发需求文档模板

目录

1. 范围 ............................................................................................................................................. 1

2. 总体要求 ..................................................................................................................................... 1

2.1 总体功能要求 ..................................

软件开发需求文档范例

..................................................................................... 1

2.2 软件开发平台要求 ............................................................................................................... 1

2.3 软件项目的开发实施过程管理要求 .................................................................................... 2

2.3.1 软件项目实施过程总体要求 ........................................................................................ 2

2.3.2 软件项目实施变更要求 ................................................................................................ 2

2.3.3 软件项目实施里程碑控制 ............................................................................................ 2

3. 软件开发 ..................................................................................................................................... 3

3.1 软件的需求分析 ................................................................................................................... 3

3.1.1 需求分析 ........................................................................................................................ 3

3.1.2 需求分析报告的编制者 ................................................................................................ 4

3.1.3 需求报告评审 ................................................................................................................ 4

3.1.4 需求报告格式 ................................................................................................................ 4

3.2 软件的概要设计 ................................................................................................................... 4

3.2.1 概要设计 ........................................................................................................................ 4

3.2.2 编写概要设计的要求 .................................................................................................... 4

3.2.3 概要设计报告的编写者 ................................................................................................ 4

3.2.4 概要设计和需求分析、详细设计之间的关系和区别 ................................................ 4

3.2.5 概要设计的评审 ............................................................................................................ 4

3.2.6 概要设计格式 ................................................................................................................ 4

3.3 软件的详细设计 ................................................................................................................... 5

3.3.1 详细设计 ........................................................................................................................ 5

3.3.2 特例 ................................................................................................................................ 5

3.3.3 详细设计的要求 ............................................................................................................ 5

3.3.4 数据库设计 .................................................................................................................... 5

3.3.5 详细设计的评审 ............................................................................................................ 5

3.3.6 详细设计格式 ................................................................................................................ 5

3.4 软件的编码 ........................................................................................................................... 5

3.4.1 软件编码 ........................................................................................................................ 5

3.4.2 软件编码的要求 ............................................................................................................ 5

3.4.3 编码的评审 .................................................................................................................... 6

3.4.4 编程规范及要求 ............................................................................................................ 6

3.5 软件的测试 ........................................................................................................................... 6

3.5.1 软件测试 ........................................................................................................................ 6

3.5.2 测试计划 ........................................................................................................................ 6

3.6 软件的交付准备 ................................................................................................................... 6

3.6.1 交付清单 ........................................................................................................................ 6

3.7 软件的鉴定验收 ................................................................................................................... 7

3.7.1 软件的鉴定验收 ............................................................................................................ 7

3.7.2 验收人员 ........................................................................................................................ 7

3.7.3 验收具体内容 ................................................................................................................ 7

3.7.4 软件验收测试大纲 ........................................................................................................ 7

3.8 培训 ....................................................................................................................................... 7

3.8.1 系统应用培训 ................................................................................................................ 7

3.8.2 系统管理的培训(可选) ............................................................................................ 8

附录A 软件需求分析报告文档模板 .......................................................................................... 9

附录B 软件概要设计报告文档模板 ........................................................................................ 21

附录C 软件详细设计报告文档模板 ........................................................................................ 33

附录D 软件数据库设计报告文档模板 .................................................................................... 43 附录E 软件测试(验收)大纲 ................................................................... 错误!未定义书签。5

1. 范围

本指南用于指导软件开发者为南京市交通局开发软件项目的过程,通过规范软件项目承担单位的开发过程达到提高软件质量,降低维护成本的目的。开发者应根据本指南进行软件开发和编制软件开发文档。本指南是对软件项目承担单位的基本要求。在本指南的附录A至E中提供了文档的编写模板供开发者参考,在进行具体软件开发时,开发者可根据实际情况采编写,但必须提供双方约定的文档,文档中约定的内容必须描述清楚。

2. 总体要求

2.1 总体功能要求

网络应用环境以Internet/Intranet技术为核心。

开发者应在充分分析需求的基础上,选择采用B/S结构或者C/S结构。

软件系统的数据库应依照《南京市交通局信息化数据库建设规范》进行设计和建设。 本指南中没有规定开发者采用何种具体的软件工程开发方法,开发者可根据项目具体特

点、自身擅长来选择采用面向过程的方法、面向对象的方法或面向数据的方法,但建议开发 商使用面向对象软件工程的方法,如:采用目前被广泛使用的RUP(Rational Unified Process)方法来进行分析、设计和开发。

2.2 软件开发平台要求

开发者开发的软件必须能够在南京市交通局规定的软件平台上正常运行。目前软件平台为:

数据库管理系统:

Oracle 9i以上版本

中间件(应用服务器)系统:

IBM WebSphere

OA系统:

Lotus Domino/Notes

网络架构:

完全支持TCP/IP协议

开发工具或技术体系:

为保证软件的上下兼容性,开发者应选择比较通用的开发工具的较新版本进行开

发,如Microsoft Visual Studio.Net,Borland Delphi,C++ Builder, 或J2EE(Java2 P1atform Enterprise Edition)等。

2.3 软件项目的开发实施过程管理要求

2.3.1 软件项目实施过程总体要求

(一)开发者提交软件开发工作大纲,交通局组织专家组对工作大纲进行评审,并提出整改意见。

(二)通过评审后,开发者根据整改意见完善工作大纲,经过交通局认可后组织项目组进行软件开发。软件开发工作按照需求分析、概要设计、详细设计、编码、测试等几个阶段进行,在开发过程中,开发者需分阶段提交相关文档。

(三)在软件开发工作完成后,开发者应向交通局提交完整的软件文档,交通局组织验收组对软件进行验收审查。

2.3.2 软件项目实施变更要求

在开发过程中,需求或设计不可避免地需要发生变更,相关变更必须经过交通局书面同 意方可进行。在需求或设计发生变更时,需要对原有文档进行修改,并提供完整的变更记录, 以使变更处于可控制的状态。变更单如下表所示:

表 2-1 变更单

2.3.3 软件项目实施里程碑控制

交通局将分四个阶段进行把关,召开专家审查会。

(一) 需求分析(结合原型进行审查)确认;

(二) 概要设计+数据库设计;

(三) 预验收(试运行后);

(四) 正式验收(推广使用后)。

3. 软件开发

合同签订以后,项目承担单位即可组织项目组进行软件开发工作。软件开发必须严格按照软件工程的要求进行。开发过程包括开发者的活动和任务。此过程由软件需求分析、概要设计、详细设计、编码、测试、验收、鉴定等活动组成。

3.1 软件的需求分析

3.1.1 需求分析

首先,开发者和交通局应共同对交通局的应用需求作充分的调研,提交完整的需求分析 报告。在需求分析报告中必须描述的基本问题是:功能、性能、强加于实现的设计限制、属 性、外部接口。应当避免把设计或项目需求写入需求分析报告中。它必须说明由软件获得的 结果,而不是获得这些结果的手段。

软件需求可以用若干种方法来表达,如通过输入、输出说明;使用代表性的例子;用规范化的模型。开发者应尽可能地使用模型的方式,因为这是表达复杂需求的精确和有效的方法。比如用统一建模语言(UML)来描述需求。

编写需求分析报告的要求

a.无歧义性

对最终产品的每一个特性用某一术语描述;若某一术语在某一特殊的行文中使用时具有多种含义,那么应对该术语的每种含义做出解释并指出其适用场合。

b.完整性

需求分析报告应该包括全部有意义的需求,无论是关系到功能的、性能的、设计约束的、还是关系到外部接口方面的需求;对所有可能出现的输入数据的响应予以定义,要对合法和非合法的输入值的响应做出规定;填写全部插图、表、图示标记等;定义全部术语和度量单位。

c.可验证性

需求分析报告描述的每一个需求应是可以验证的。可以通过一个有限处理过程来检查软件产品是否满足需求。

d.一致性

在需求分析报告中的各个需求的描述不能互相矛盾。

e.可修改性

需求分析报告应具有一个有条不紊、易于使用的内容组织;没有冗余,即同一需求不能在需求分析报告中出现多次。

f.可追踪性

每一个需求的源流必须清晰,无限恐怖,在进一步产生和改变文件编制时,可以方便地引证每一个需求。

g.运行和维护阶段的可使用性

需求分析报告必须满足运行和维护阶段的需要。在需求分析报告要写明功能的来源和目的。

篇三:软件需求文档模板

修订历史

版本 说明 编制 批准 批准日期

1.1 初次编写 SEPG

目 录

1. 引言 1

1.1. 背景 1

1.2. 参考资料 1

1.3. 假定和约束 1

1.4. 用户的特点 1

2. 功能需求 1

2.1. 系统范围 1

2.2. 系统体系结构(二层架构的系统可剪裁本小节)

2.3. 系统总体流程 2

2.4. 需求分析 2

2.4.1. XXXXXXX(功能需求名称) 2

2.4.1.1. 功能描述 2

2.4.1.2. 业务建模 2

2.4.1.3. 用例描述 3

2.4.1.4. 用户界面 5

2.4.2. XXXXXXX(功能需求名称) 5

3. 非功能需求 5

3.1. 性能要求 5

3.1.1. 精度 5

3.1.2. 时间特性要求 6

3.1.3. 输人输出要求 6

3.2. 数据管理能力要求 6

3.3. 安全保密性要求 6

3.4. 灵活性要求 6

3.5. 其他专门要求 6

4. 运行环境规定 6 1

4.1. 设备 6

4.2. 支持软件 7

4.3. 接口 7

4.4. 控制 7

5. 需求跟踪 7

6. 签批单 7

1. 引言

1.1. 背景

说明:

a.待开发的软件系统的名称;

b.本项目的任务提出者、开发者、用户及实现该软件的计算中心或计算机网络;

C.该软件系统同其他系统或其他机构的基本的相互来往关系。

1.2. 参考资料

列出本说明书中引用和参考的资料,如:

a.本项目的经核准的计划任务书或合同、上级机关的批文;

b.属于本项目的其他已发表的文件;

c.本文件中各处引用的文件、资料、包括所要用到的软件开发标准。 列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。

1.3. 假定和约束[可选]

列出进行本软件开发工作的假定和约束,例如经费限制、开发期限、设备条件、用户的资料准备和交流上的问题等。

1.4. 用户的特点[可选]

列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件的预期使用频度。这些是软件设计工作的重要约束。

2. 功能需求

2.1. 系统范围

明确概要地说明用户对系统、产品高层次的目标要求,如系统开发的意图、应用目标、作用范围以及其他相关的背景材料。

如果所定义的产品是一个更大系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系

和接口。

2.2. 系统体系结构(二层架构的系统可剪裁本小节)[可选]

以图+文本结合的方式描述系统的总体架构。

以下应提供系统总体架构图:

以下对系统总体架构进行描述:

2.3. 系统总体流程

以图+文本结合的方式说明系统的总体流程。

图一是计划合同管理系统的总体流程图。

图一

2.4. 需求分析

需求分析的目的是获取或描述系统需求中的每一个功能需求,并通过分析确定系统能够做什么?谁来使用这个系统?

? 建立用例模型:发现角色和用例,并确定角色之间的关系、用例之间的关系,以及角色与用例之间的相互关系

? 描述用例:角色与系统如何交互的规格说明。

2.4.1. XXXXXXX(功能需求名称)

2.4.1.1. 功能描述

功能编号:

功能需求:从用户业务的角度描述功能需求。

2.4.1.2. 业务建模

从可视化的角度--用例图--描述功能需求

图二是综合计划管理系统合同编辑业务的功能需求用例图。

图二

2.4.1.3. 用例描述

以文本的方式描述每一个用例中角色与系统相互交互的规格说明。

1、 XXXXXX(用例名称)

描述对象 描述内容

标识符 用例的唯一标识符

说明 对用例的概要说明

参与者 与该用例相关的参与者列表,以及参与者的特点

频度 参与者访问此用例的频率

状态 通常分为:进行中、等待审查、通过审查或未通过审查

前置条件 一个条件列表,如果其中包含条件,则这些条件必须在访问用例之前得到满足 后置条件 一个条件列表,如果其中包含条件,则这些条件将在用例成功完成以后得到满足 被扩展的用例 此用例所扩展的用例(如果存在)

被包含的用例 此用例所包含的用例(如果存在)

基本操作流程 参与者在用例中所遵循的主逻辑路径,即当各项工作都正常进行时用例的工作方式

可选操作流程 在变更工作方式、出现异常或发生错误的情况下所遵循的路径

修改历史记录 修改人 : 修改日期:修改原因:

问题 如果存在,则为与此用例的开发相关的问题或操作项目的列表

以下是综合计划管理系统中的合同编辑功能需求中的合同增加用例描述:

描述对象 描述内容

标识符 IPMS0101

说明 增加一条合同记录

参与者 合同编辑人员--熟悉合同管理业务

频度

状态 通过审查

前置条件 1. 参与者具有合同增加的权限2. 参与者已选取对应的计划记录3. 当前计划总投资≥SUM(该计划下已签合同价)

后置条件 1. 数据库中更加一条合同纪律2. 可执行合同原件扫描用例3. 可执行合同付款增加用例4. 可执行合同修改和合同删除用例

被扩展的用例 无

被包含的用例 无

基本操作流程 请参见图三的合同增加流程

可选操作流程 当用户确认合同增加时发现异常时,系统提示合同增加无效的提示 修改历史记录 修改人 : 修改日期:修改原因:

问题 1. 合同编码的具体约定2. 合同类型、资金来源、合同受委托方字典表的具体设计 图三 合同增加活动流程

2、XXXXX(用例名称)

……

2.4.1.4. 用户界面

概要描述功能对应的用户界面风格,采用原型生命周期的项目也可以提供原型界面拷贝。

2.4.2. XXXXXXX(功能需求名称)

……

3. 非功能需求

3.1. 性能要求

3.1.1. 精度[可选]

说明对该软件的输入、输出数据精度的要求,可能包括传输过程中的精度。

3.1.2. 时间特性要求

说明对于该软件的时间特性要求,如对:响应时间;更新处理时间;数据的转换和界面更新传送时间等的要求。

3.1.3. 输人输出要求

解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。

3.2. 数据管理能力要求[可选]

说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求做出估算。

3.3. 安全保密性要求

用户对系统所应具备的故障处理能力、处理方式及故障后的系统恢复、数据恢复等要求,对系统防止机密数据被非法侵入、修改及丢失的要求。

3.4. 灵活性要求[可选]

说明对该软件的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如:

a.操作方式上的变化;

b.运行环境的变化;

c.同其他软件的接口的变化;

d.精度和有效时限的变化;

e.计划的变化或改进。

本文已影响