1、软件需求分析知识点集锦一、引言【1】 每个需求分析的开始(引言之前)都应该有“变更历史”和“审核历史”两个表。原因:因为用户的要求不可能一次满足。每次变更之后做好记录以便后期查询。【2】 引言部分:引言是对这份软件产品需求分析报告的概览,是为了帮助阅读者了解这份文档是如何编写的,并且应该如何阅读、理解和解释这份文档。【3】 编写目的:开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件产品需求分析报告详尽说明了该软件产品的需求规格。在编写目的中指出预期的读者和者使用者!【4】 项目背景:了解时下环境更能表明当前软件的重要性和必要性!更能突出对使用本软件的用户带来更大的利益!对开发人员
2、来说背景了解的越清楚,编程序的准确度就会越高!【5】 术语定义:列出本文件中用到的专门术语的定义和外文首字母组词的原词组。方便用户或后来编程人员的阅读,提高工作效率【6】 项目风险:具体说明本软件开发项目的全部风险承担者,以及各自在本阶段所需要承担的主要风险。【7】 文档约定:描述编写文档时所采用的标准(如果有标准的话) ,或者各种排版约定。形成统一规范,方便阅读【8】 预期读者和阅读建议:列举需求分析所针对的各种不同的预期读者【9】 产品范围:说明该软件产品及其开发目的的简短描述,包括利益和目标。把软件产品开发与企业目标,或者业务策略相联系。就是对软件进行成功的定位,找不到妥帖沟通方式的定位
3、等于没有定位。技术定位,深度定位,横向定位。【10】 参考文档:列举编写软件产品需求分析报告时所用到的参考文献和资料。包括使用的各类技术性的参考资料、客户之间的合同、可行性分析等。二、任务概述【11】目标:叙述该系统开发的意图、应用目标、作用范围以及其他应向读者说明的有关该系统开发的背景材料。解释被开发系统与其他有关系统之间的关系。目标可分为开发目标和应用目标。【12】 用户特点:列出本系统的最终用户的特点,充分说明操作人员、维护人员的教育水平和技术专长,专业水平的高低,不同教育背景以及国内外用户的区别联系等。以及本系统的预期使用频度。充分了解用户的需求和用户群的最终需求。【13】 产品的特点
4、:描述了在软件产品需求分析报告中所定义的软件产品的背景和起源,对客户现在需求及将要出现的需求的满足,以及为满足客户需求而实现的产品特色功能。【14】 假定和约束:描述系统设计中最主要的约束,这些是由客户强制要求并在需求说明书写明的。说明系统是如何来适应这些约束的。对于因选择具体的设计实现而导致对系统的约束,简要地描述你的想法思路,经过怎么样的权衡,为什么要采取这样的设计等等。应该是现实需求所有的假定和约束包括了约束包括了性能、规模、进度及商业等方面等因素。包括:人力,财力,时间,设备等。一般情况下可以写这么几方面的内容:建议开发软件运行的最短寿命、经费来源和使用限制、法律和政策方面的限制、硬件
5、、软件、运行环境和开发环境的条件和限制、可利用的信息和资源、建议开发软件投入使用的最迟时间等等。请参照软件需求分析知识点集锦http:/ 。【17】对性能的要求:精度、时间特性要求、灵活性/适应性、阐述不同应用领域对软件产品性能的需求,并且说明提出需求的原理或者依据,以帮助开发人员做出合理的设计选择。尽可能详细地描述性能需求,如果需要,可以针对每个功能需求或者特征分别陈述其性能需求。 相互合作的用户数量; 系统支持的并发操作数量; 响应时间; 与实时系统的时间关系: 容量需求 存储器; 磁盘空间; 数据库中表的最大行数。【18】软件质量属性:详尽陈述对客户和开发人员至关重要的在软件产品其它方面
6、表现出来的质量功能。这些功能必须是确定的、定量的、在需要时是可以验证的。至少也应该指明不同属性的相对侧重点,例如:易用性优于易学性,或者可移植性优于有效性。正确性,健壮性,可靠性,安全性等【19】输入输出要求(动态数据):解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。对系统的数据输出及必须标明的控制输出量进行解释并举例。列出输入数据(用户输入、来自外部接口的输入或者其它输入) 并且定义针对这些输入数据的处理(计算)方法,以及相应地输出数据,描述对应区别:输入数据和输出数据。当有大量数据需要描述时,也可以分类描述数据,并且注明各项数据的输入、输出属性。对于每一项数据,均需要描
7、述: 数据名称; 实际含义; 数据类型; 数据格式; 数据约束;软件需求分析知识点集锦建立数据列表【20】故障处理要求:列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。正常使用时不应出错,若运行时遇到不可恢复的系统错误,也必须保证数据库完好无损。【21】安全性需求:详尽陈述与系统安全性、完整性问题相关的需求,或者与个人隐私问题相关的需求。这些问题将会影响到软件产品的使用,和软件产品所创建或者使用的数据的保护。定义用户身份认证,或备授权需求。明确软件产品必须满足的安全性或者保密性策略。也可以通过称为完整性的质量属性来阐述这些需求。一个典型的软件系统安全需求范例如下:“每
8、个用户在第一次登录后,必须更改他的系统预置登录密码,系统预置的登录密码不能重用。 ”【22】数据(静态数据):数据库中建立的各个表,字段,字段名,类型,长度,主键,外键等 【23】数据库描述:版本,型号,特点,满足用户需求的特点【24】数据流图:数据之间的流动,最好用数据流图来表现。【25】用户文档:列举出将与软件产品一同交付的用户文档,并且明确所有己知用户文档的交付格式或标准。安装指南用户手册等四、运行环境【26】设备(硬件环境):列出运行该软件所需要的硬设备。说明其中的新型设备及其专门功能。处理器型号,内存容量,外存容量,联机或脱机,媒体及其存储格式,输入输出设备的型号和数量,数据通信设备
9、的型号和数量,功能键及其他专用硬件。【27】软件环境:列出支持软件,包括要用到的操作系统、编译程序、测试支持软件、数据库版本及与软件共存的其他软件等。【28】接口: 一, 用户界面:陈述需要使用在用户界面上的软件组件,描述每一个用户界面的逻辑特征。必须注意,这里需要描述的是用户界面的逻辑特征,而不是用户界面。二, 硬件接口:描述待开发的软件产品与系统硬件接口的特征,若有多个硬件接口,则必须全都描述。USB,Ethernet,PCI,DPR SDRAM Interface.三, 软件接口:描述该软件产品与其它外部组件的连接,这些外部组件必须明确它们的名称和版本号以资识别计算机世界里的接口这两个字
10、具有两种众所周知的含义:其一是指软件本身的狭义“接口”,比如各种软件开发 API 等。其二则指的是人与软件之间的交互界面。四, 通讯接口:描述与软件产品所使用的通讯功能相关的需求电子邮件,WEB 浏览器,网络通讯标准或者协议,数据交互用电子表格,消息格式,通讯安全或加密问题,数据传输速率,同步和异步通讯机制。在安防监控系统中的通讯接口主要是对视频、音频的输入输出来说的。所以通讯接口一般有以下几种:RS-232、RS-485 、通用网络接口,可支持 PSTN、ISDN 以及 LAN 各种联网环境、具有 USB2.0 超高速数据接口,连接计算机对重要图像资料进行备份、可选配具有逐行扫描 VGA 输出接口等【29】待定问题列表:编辑一张在软件产品需求分析报告中待确定问题时的列表,把每一个表项都编上号,以便跟踪调查。软件需求分析知识点集锦注:以上所有的点都可以根据公司项目的特点,适当增加或删减内容和调整顺序。有一些需求分析可能还包括测试计划,测试需求,测试内容,测试策略等。