1、需求分析报告编写规范2004-9需求分析报告编写规范文件编号:NW503101 生效日期:2000.3.20 受控编号:密级:秘密 版次:Ver2.1 修改状态:总页数 16 正文 4 附录 12编制:杨利 审核:袁淮 批准:孟莉沈阳东大阿尔派软件股份有限公司(版权所有,翻版必究)文件修改控制修改记录编号 修改状态 修改页码及条款 修改人 审核人 批准人 修改日期目录1. 目的2. 适用范围3. 术语及缩略语4. 编写规范4.1 排版规范4.2 模板使用5. 引用文件5.1 NW503102软件功能规格说明书编写规范 6. 附录1. 目的为使需求分析的结果能够完整、无遗漏地反映待开发系统的要求
2、,本文件规定需求分析报告的编写格式和内容要求。2. 适用范围适用于本公司软件产品或软件项目的需求分析报告的编制。3. 术语及缩略语本程序采用 NQ402100质量手册中的术语和缩略语及其定义。4. 编写规范4.1 排版规范1) 整个规范由 2 节构成,模板单独一节。2) 正文样式采用“规范正文” 。3) 标题编号采用每节独立编号。4.2 模板使用需求分析报告的编写可依据具体情况选用摸板的格式或编写指南的格式。1) 拷贝规范。2) 删除第一节(需求分析报告封面前的所有页)。3) 在修改完内容后,更新目录域和相关的页数域。5. 引用文件5.1 NW503102软件功能规格说明书编写规范 6. 附录
3、以下部分为需求分析报告的模板与编写指南。 密级:机密文档编号: 第 版分册名称: 第 册/共 册项目名称(项目编号)需求分析报告(部门名称)沈阳东大阿尔派软件股份有限公司总页数 正文 附录 生效日期: 年 月 日编制: 审核: 批准:目录1. 引言 11.1 编写目的 11.2 背景 11.3 参考资料 11.4 术语 12. 任务概述 12.1 目标 12.2 系统(或用户)的特点 13. 假定和约束 24. 需求规定 24.1 软件功能说明 24.2 对功能的一般性规定 24.3 对性能的一般性规定 24.4 其他专门要求 24.5 对安全性的要求 25. 运行环境规定 25.1 设备及分
4、布 25.2 支撑软件 25.3 接口 15.4 程序运行方式 16. 开发成本估算 17. 尚需解决的问题 18. 附录 11. 引言1.1 目的说明编写这份报告的目的,指出预期的读者。1.2 背景指出待开发的软件系统的名称;行业情况;本项目的任务提出者、开发者、用户;该软件系统同其他系统或其他机构的基本的相互来往关系。 1.3 参考资料列出编写本报告时参考的文件(如经核准的计划任务书或合同、上级机关的批文等)、资料、技术标准,以及他们的作者、标题、编号、发布日期和出版单位。编号 资料名称 简介 作者 日期 出版单位列出编写本报告时查阅的 Intenet 上杂志、专业著作、技术标准以及他们的
5、网址。网点 简介1.4 术语列出本报告中用到的专门术语的定义。2. 任务概述2.1 目标叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。解释被开发软件与其他有关软件之间的关系。如果本软件产品是一项独立的软件,而且全部内容自含,则说明这一点。如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中的其他各组成部分之间的关系,为此可使用一张方框图来说明该系统的组成和本产品同其他各部分的联系和接口。2.2 系统(或用户)的特点如果是产品开发,应列出本软件的特点,与老版本软件(如果有的话)的不同之处,与市场上同类软件(如果有的话)的比较。说明本
6、软件预期使用频度;如果是针对合同开发,则应列出本软件的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,以及本软件预期使用频度。这些是软件设计工作的重要约束。3. 假定和约束列出进行本软件开发工作的假定和约束,例如经费限制、开发期限等。4. 需求规定4.1 软件功能说明列出本系统中所有软件功能子系统和功能。如果子系统比较大,每个子系统按照 NW4043102软件功能规格说明书编写规范分别编写软件功能规格说明书,在本处列出编号和分册名称。4.2 对功能的一般性规定本处仅列出对软件系统的所有功能(或一部分)的共同要求,如要求界面格式统一,统一的错误声音提示,要求有在线帮助等。4.3
7、对性能的一般性规定对数据精度、响应时间的要求。本处仅列出对软件系统的所有功能(或一部分)的共同要求,针对某一功能的专门性能要求应列在该功能规格说明中。4.4 其他专门要求视具体情况,列出不在本规范规定中的需求,如对数据库的要求,多平台特性要求,操作特性要求,场合适应性要求等对一具体软件系统的所有功能(或一部分)的共同要求,针对某一功能的专门要求应列在该功能说明中。4.5 对安全性的要求指出系统对使用权限的管理要求(使用权限分为几级、是否与部门权力体系对应等)、信息加密、信息认证(确定穿过系统或网络的信息没有被修改)方面的要求。5. 运行环境规定5.1 设备及分布1) 主机类型2) 网络类型3)
8、 存贮器容量4) 其他特殊设备5) 设备分布图5.2 支撑软件1) 操作系统 2) 数据库管理系统 3) 其他支撑软件5.3 接口简要说明该软件同其他软件之间的公共接口、数据通信协议等,如果外部接口仅与某子功能有关,该接口说明应列在子功能规格说明书中。5.4 程序运行方式说明该软件的运行方法。如是部件、还是独立运行程序、API 等。6. 开发成本估算以列表的方式给出各功能规定所需的开发人时和费用(如差旅费)。7. 尚需解决的问题以列表的形式列出在需求分析阶段必须解决但尚未解决的问题8. 附录需求分析过程中会产生各种记录如调查表格、业务系统单据等。记录或报告的存档编号和名称填写在下表中。其中类别
9、是记录的分类,一般有业务系统说明书、业务系统数据说明书、业务系统调查表、原始数据单据、业务系统参考资料。编号 名称 类别需求说明书编写指南1. Objectives 目标阐明需求说明书的标准格式,做为合同和需求分析的结果。2. Scope 范围2.1 适用于指导需求说明书的编写。2.2 本模板力图覆盖所有可能在需求说明书中出现的主题。这样做的目的是并不是要求每一个需求说明书都要包括这里定义的全部章节,而是提供一个所有需求说明书都应当遵循的框架。一些特殊的章节应当提供但不要求有详细的说明,只需在说明书中包含下面有适当文字说明的标题即可,例如,不适用。3. References 参考4. Outs
10、tanding Issues 尚存主要问题5. Approvals 批准销售主管6. Responsibilities 职责客户经理有责任确认本模板被切实执行。7. Template 模板7.1 Lead-in sections 引导部分7.1.1 以下是需求说明书的起始部分。在文档格式规范中有关于它们的更详细的描述。1)Objectives 目标2)Scope 范围3)References 参考4)Assumptions 前题条件5)Outstanding Issues 尚存主要问题6)Document Control 文档控制 7)Approvals 批准8)Distribution 分发
11、9)Amendment Record 更改记录 10)Traceability 可追溯7.2 Component or System Description 部件或系统描述7.2.1 本说明书所覆盖的部件或系统的简要介绍。本部分可以很简要,因为它仅包含帮助读者快速了解所说明内容的信息。7.2.2 应当提供一个上下文相关图来帮助确定被描述的部件或系统的定位。使用 USER-CASE 图来描述。7.2.3 参考应当做成关联文档(例如建议,合同,项目编号)。7.3 Purchaser Requirements 客户需求7.3.1 Summary 概要7.3.1.1 本部分应当包括那些直接影响到客户使
12、用本部件或系统的需求。它分为两个部分,功能和特性。 部件或系统的功能描述了什么可以做,例如,打印一个报表。部件或系统的特性提供了那些可以描述和评价系统质量的属性。7.3.1.2 每个段落(或段落组)应当包含一个参考来跟踪需求的出处。每个句子或段落应当编号;无论何种情况每个编号的项目仅应当定义一个需求。7.3.1.3 每个段落(或段落组)应当指出它的重要程度,按以下方式分类:1)强制的:最基本的特征;没有它产品将不可用。2)必需的:单独的非基本的特征,但是它们加在一起会影响产品的能力。3)期待的:最好能有的特征;一个或多个这些特征被忽略也不会影响产品的能力。7.3.2 Purchaser-Rel
13、ated Functionality 客户要求的功能7.3.2.1 Application Functionality 应用程序的功能7.3.2.1.1 在系统或子系统一级,这一部分应当包含可用的应用程序所提供的功能的描述。7.3.2.1.2 在应用程序一级,这一部分细化应用程序必须做到的功能。7.3.2.1.3 功能应当用结构化的英语或适当的形式化的方法学来描述。7.3.2.2 Human Interface 人机界面7.3.2.2.1 这一部分应当定义所需的菜单结构,屏幕/窗口设计,报表设计和其它操作 /或管理界面。在这一过程中,需求可能广泛地涉及已有的标准或产品。7.3.2.2.2 参考
14、应当指向其它的说明书和标准。7.3.2.3 Data Types 数据类型这一部分应当包括对系统或应用程序中对用户有用的所有数据类型的描述,包括应用程序开发工具用到的或表单,显示,报表和输出用到的。7.3.2.4 Control Structures 控制结构这一部分应当描述系统或应用程序的控制结构。7.3.2.5 Application Development Environment 应用开发环境这部分应当指定可供用户用来开发应用程序的系统部件。它应当至少包含数据类型和语言或者可用的应用程序生成器。7.3.2.6 Hardware 硬件这部分应当详细说明根据用户需要提出的硬件需求。7.3.2
15、.7 Software 软件本节将详细说明因为用户需要所产生的软件需求。如果用户已经提供了面向系统或部件或与系统或部件合为一体的产品,那么这些应当在需求和所有设想以及需求文档中清晰的定义出来。这些需求可能包括下列各项:1) Operating System 操作系统2) Database 数据库3) Communications 通信4) Interfaces 接口7.3.3 Purchaser-Related Characteristics 客户相关的特征在多数情况下,用户会指定一些如下的特性。如果它们能够增强系统的能力则应当被包含进来,另一种选择是在最开始的时候就对某些特性进行限定以避免验
16、收测试时无休止的争论。如果一些特性没有在本部分被指定,它们应当在公司需求部分被指定,举例来说很多特性关系到系统投入使用后公司的技术支持成本。7.3.3.1 Pre-operational 运行之前7.3.3.1.1 Packaging 包装7.3.3.1.2 Installation 安装7.3.3.1.3 Configuration 配置7.3.3.2 Functionality 功能7.3.3.2.1 Suitability 适用性7.3.3.2.2 Accuracy 精确性7.3.3.2.3 Interoperability 协同工作能力7.3.3.2.4 Compliance stan
17、dards 遵循标准7.3.3.2.5 Security 安全性7.3.3.3 Reliability 可靠性7.3.3.3.1 Maturity 完备性7.3.3.3.2 Fault tolerance 容错能力7.3.3.3.3 Recoverability 可恢复能力7.3.3.4 Usability 可用性7.3.3.4.1 Understandability 易懂7.3.3.4.2 Learnability 易学7.3.3.4.3 Operability 可操作能力7.3.3.5 Efficiency 效率7.3.3.5.1 Time behaviour 时间特性7.3.3.5.2
18、Resource behaviour 资源特性7.3.3.6 Maintainability 可维护性7.3.3.6.1 Analyzability 易于分析7.3.3.6.2 Changeabilty 可变性7.3.3.6.3 Stability 稳定性7.3.3.6.4 Testability 易测性7.3.3.7 Portability 轻便7.3.3.7.1 Adaptability 适应性7.3.3.7.2 Installability 易安装7.3.3.7.3 Conformance 一致性7.3.3.7.4 Replaceability 可替换7.3.3.8 Documentat
19、ion 文件本部分应当详细说明系统或部件必须为用户提供的文档。7.4 Company Requirements 公司需求1) 本部分定义那些必须确认的与用户需要有冲突的系统或部件需求。所有的冲突都必须被解决,或者得到用户的让步或者满足前述的用户需要。2) 说明书中哪些是分布在公司以外的,这部分可以省略或放在一个单独的文档中。7.4.1 Business Requirements 商业需求7.4.1.1 Cost 开销7.4.1.1.1 这部分应当论述与指定系统相关的开销。它可以通过参考项目详细计划来得出一个合计值放在这里。7.4.1.1.2 这些开销应当包括所有开发费用和可能的项目支持费用。如
20、果可能这部分还应当论述弹性的开销,以及所有削减的开销,离开这些开发将会因为没有有效的费用来完成系统而停止。7.4.1.2 Make/Buy 制作/购买本部分应当讨论确定是否这个系统或部件(或它们的一部分)比起开发更适于买入或再开发的标准。例如日常应用程序,缺乏经验,缺乏资源等等。7.4.1.3 Relationship to future products 与将来产品的关系本部分应当覆盖基于系统或部件所涉及的与尚未开发的其它产品的关系的需求。例如确认与将来产品和系统的兼容性。7.4.1.4 Scheduled ship date 预定出货日期本部分应当讨论项目出货日期,包括任何按计划进行的临时
21、发布或阶段出货。本部分还应当描述与这些出货日期相关的约束和依赖关系。7.4.1.5 Support considerations 支持考虑本部分应当讨论系统或部件可能需要的任何特殊的或不常用的支持考虑,例如首先应当安装一个 UNIX 系统。7.4.2 Company Hardware Requirements 公司硬件需求7.4.2.1 Hardware Functionality 硬件功能本部分应当覆盖公司明显需要的,但对用户来说是不可见的或无关的硬件功能。例如支持多操作系统所需的硬件功能,或必须支持以太网等。7.4.2.2 Hardware Characteristics 硬件特性本部分应
22、当覆盖公司明显需要的,但对用户来说是不可见的或无关的硬件特性。至少应当包括硬件诊断所需要的。7.4.3 Company Software Requirements 公司软件需求7.4.3.1 Software Functionality 软件功能本部分应当覆盖公司所需的,但对用户来说是无关的或不需要的软件性能。例如,数据库,操作系统,通讯(远程访问),诊断。7.4.3.2 Software Characteristics 软件特性本部分应当覆盖公司明显需要的,但是对用户来说是不可见或无关的软件特性例如代码的可复用性,包装等。7.5 Architecture Overview 结构概述高层设计或结构的概述。仅在用户需要一个特殊的系统结构例如客户-服务器,或者用户把定义部分或全部的系统结构作为合同的一部分时才应包括进来。7.6 Acceptance Criteria 验收标准7.6.1 本部分应当详述验收标准的要点以做为需求确定后进行确认验收计划的基础。7.6.2 需求与一些具体的合同有关的部分,可以直接写相应合同中验收标准的一个引用。7.7 Glossary 术语表