软件需求分析报告文档模板
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 语言);
● 有关本软件开辟工作的若干假定(例如:用户承诺的优惠、方便、 上级部门赋予的特殊政策和支持等) ;
● 有关本软件运行环境的一些问题;
此外,确定本软件开辟项目对外部约束因素所存在的依赖。有关的 约束可能包括:
● 工期约束;
● 经费约束;
● 人员约束;
● 设备约束;
● 地理位置约束;
● 其它有关项目约束;