《03第三章 软件需求分析.ppt》由会员分享,可在线阅读,更多相关《03第三章 软件需求分析.ppt(187页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、仲恺农业技术学院计算机与电子工程学院3.1 软件软件需求分析的重要性需求分析的重要性3.2 软件软件需求分析的困难性需求分析的困难性3.3 软件需求分析的任务软件需求分析的任务3.4 软件需求分析的软件需求分析的过程过程3.5 软件需求分析的原则软件需求分析的原则3.5 结构化分析方法结构化分析方法3.6 原型化方法原型化方法3.7 补充补充:有关数据库的基本概念有关数据库的基本概念12/12/20221仲恺农业技术学院计算机与电子工程学院需求分析需求分析是软件定义时期的最后一个阶段回答“系统必须做什么?”的问题系统分析员的主要系统分析员的主要焦点焦点是是 “做什么(做什么(whatwhat)
2、”,不不是是“怎样做(怎样做(howhow)”12/12/20222仲恺农业技术学院计算机与电子工程学院3.1 需求分析的重要性 真的很重要吗?真的很重要吗?例:Our real-time example is based on the embedded software in the Ariane-5,a space rocket belonging to the European Space Agency(ESA).On June 4,1996,on its maiden flight,the Ariane-5 was launched and performed perfectly fo
3、r approximately 40 seconds.Then,it began to veer off course.At the direction of an Ariane ground controller,the rocket was destroyed by remote control.The destruction of the uninsured rocket was a loss not only of the rocket itself,but also of the four satellites it contained;the total cost of the d
4、isaster was$500 million(Newsbytes home page 1996;Lions et al.1996).12/12/20223仲恺农业技术学院计算机与电子工程学院 The reason:there was no discussion in the requirements documents of the ways in which the Ariane-5 trajectory would be different from Ariane-4.统计资料:统计资料:In1994,theStandishGroupsurveyedover350companiesabo
5、uttheirover8000softwareprojectstofindouthowwelltheywerefaring.Theresultsaresobering.Thirty-onepercentofthesoftwareprojectswerecanceledbeforetheywerecompleted.Moreover,inlargecompanies,only9%oftheprojectsweredeliveredontimeandcostwhattheywerebudgeted,and16%metthosecriteriainsmallcompanies(Standish199
6、4).12/12/20224仲恺农业技术学院计算机与电子工程学院在美国高科技历史上曾有过令人痛心的事件:大家知道,DEC曾经是美国三大计算机公司之一,几年前被康柏康柏收购,从地球上消失,成为美国计算机界一大憾事。DEC曾以众多的高新技术著称于世。其中,它在最后的几年里研发出的 Alpha 计算机芯片更以卓越的技术在性能上超过了 Intel,sun 和其他厂家的芯片。微软也曾大力协助 DEC,将 Windows Nt 移植到 Alpha 系统,然而,Alpha 在市场上彻底地失败了,成为 DEC 最终失败的原因之一。为什么?究其根本,还是因为 DEC 对其市场和用户不了解,盲目追求技术而铸成大错
7、。Alpha 系统复杂,造价过高,绝大多数用户不能接受;而且它又不能与已有的系统兼容,使得在其上的软件开发相当困难,软件开发商也很难接受,所以 Alpha 把它的两级用户都得罪了,要想成功,谈何容易!12/12/20225仲恺农业技术学院计算机与电子工程学院12/12/20226仲恺农业技术学院计算机与电子工程学院需求分析的重要性5点事实n软件生命周期中,一个错误发现得越晚,修复错误的费用越高12/12/20227仲恺农业技术学院计算机与电子工程学院n许多错误是潜伏的,并且在错误产生后很长一段时间才被检查出来n在需求过程中会产生很多错误wDeMarco在一份研究报告中指出,被检查出来的错误的5
8、6产生的根源可以追溯到需求阶段。wAIRMICS所进行的一项调查发现,在一份美国军方大型管理信息系统的需求现格说明书(SRS)中存在着500多个错误,当然这仅仅是一个软件项目中的一次调查。n在需求阶段,代表性的错误为疏忽、不一致和二义性w美国海军研究实验室从20世纪70年代起就对软件开发技术不断地进行研究。他们对海军A7E它机上的”宅行操作程序进行实地测试,以验证许多新设想的可行性。得出的研究数据表明:A7E项目中77的需求错误特点是不明确:疏忽、不一致和二义性。按错误类型对这些错误分布进行分析的结果是:w49不正确的事实,31疏忽,l 3不一致,5二义性12/12/20228仲恺农业技术学院
9、计算机与电子工程学院n需求错误是可以被检查出来的12/12/20229仲恺农业技术学院计算机与电子工程学院需求分析的重要性在需求过程中会产生很多错误(事实3和4)。许多错误并没有在早期被发现(事实2)。这样的错误是能够在产生的初期被检查出来的(事实5)。如果没有及时检查出来这些错误,软件费用会直线上升(事实1)12/12/202210仲恺农业技术学院计算机与电子工程学院3.3 需求管理的困难性12/12/202211仲恺农业技术学院计算机与电子工程学院需求工程涉及人员12/12/202212仲恺农业技术学院计算机与电子工程学院需求工程需求是什么?需求就是以一种清晰、简洁、一致且无二义性的方式,
10、对一个待开发系统中各个有意义方面的陈述的一个集合。需求工程一般指应用已证实有效的原理、方法,通过合适的工具和记号,系统地描述出待开发系统及其行为特征和相关约束;通常是一些过程的集合:需求获取(需求引出)、需求分析和编写软件规格说明书(SRS)及验证(包括鉴定和证实)。12/12/202213仲恺农业技术学院计算机与电子工程学院3.3 软件需求分析的任务需求工作:需求工作:需求工作:需求工作:深入描述软件的功能和性能、确定软件深入描述软件的功能和性能、确定软件深入描述软件的功能和性能、确定软件深入描述软件的功能和性能、确定软件设计的约束和软件同其它系统元素的接口细节、设计的约束和软件同其它系统元
11、素的接口细节、设计的约束和软件同其它系统元素的接口细节、设计的约束和软件同其它系统元素的接口细节、定义软件的其它有效性需求定义软件的其它有效性需求定义软件的其它有效性需求定义软件的其它有效性需求初步目标:逐步细化对软件的要求,描述软件要处理的数据域,并给软件开发提供一种可转化为数据设计、结构设计和过程设计的数据和功能表示。12/12/202214仲恺农业技术学院计算机与电子工程学院需求分析研究的需求分析研究的对象对象是软件项目的用是软件项目的用户要求户要求不要不要不要不要-“削足适履”(“足”为用户需求,“履”为技术)准确地准确地表达表达被接受的被接受的用户要求用户要求确定被开发软件系统的确定
12、被开发软件系统的系统元素系统元素(物物理模型)理模型)将功能和信息结构将功能和信息结构分配分配到这些系统元到这些系统元素中素中12/12/202215仲恺农业技术学院计算机与电子工程学院需求分析的任务需求分析的任务就是借助于当前就是借助于当前系统的逻辑模型导出目标系统的系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的逻辑模型,解决目标系统的“做什么做什么”的问题。的问题。12/12/202216仲恺农业技术学院计算机与电子工程学院当前当前系统系统目标目标系统系统物理物理模型模型逻辑逻辑模型模型逻辑逻辑模型模型物理物理模型模型模型化模型化抽象化抽象化具体化具体化实例化实例化怎怎么么做做做做什
13、什么么当前当前系统系统目标目标系统系统需需求求定定义义仲恺农业技术学院计算机与电子工程学院通常软件开发项目是要实现目通常软件开发项目是要实现目标系统的物理模型标系统的物理模型目标系统的具体物理模型是由目标系统的具体物理模型是由它的逻辑模型经实例化,即具它的逻辑模型经实例化,即具体到某个业务领域而得到的体到某个业务领域而得到的12/12/202218仲恺农业技术学院计算机与电子工程学院基本任务:准确地回答“系统必须做什么?”1.确定对系统的综合需求(1)系统功能要求(2)系统性能要求(3)运行要求(4)将来可能提出的要求2.导出系统的逻辑模型数据流程图、数据字典、主要算法12/12/202219
14、仲恺农业技术学院计算机与电子工程学院一、确定目标系统的具体要求一、确定目标系统的具体要求一、确定目标系统的具体要求一、确定目标系统的具体要求1 1 1 1、确定系统的运行环境要求、确定系统的运行环境要求、确定系统的运行环境要求、确定系统的运行环境要求2 2 2 2、系统的性能要求、系统的性能要求、系统的性能要求、系统的性能要求 3 3 3 3、系统功能、系统功能、系统功能、系统功能 硬件环境和软件环境硬件环境和软件环境硬件环境和软件环境硬件环境和软件环境 确定目标系统具备的所有功能确定目标系统具备的所有功能确定目标系统具备的所有功能确定目标系统具备的所有功能12/12/202220仲恺农业技术
15、学院计算机与电子工程学院举举例例数据库中存放的是职工的数据库中存放的是职工的数据库中存放的是职工的数据库中存放的是职工的某学校医疗费管理系统所属部门、职工号、姓名所属部门、职工号、姓名所属部门、职工号、姓名所属部门、职工号、姓名职工报销时应填写:职工报销时应填写:职工报销时应填写:职工报销时应填写:所属部门、职工号、姓名、日期所属部门、职工号、姓名、日期所属部门、职工号、姓名、日期所属部门、职工号、姓名、日期 校内门诊、校外门诊、住院费、子女医疗费校内门诊、校外门诊、住院费、子女医疗费校内门诊、校外门诊、住院费、子女医疗费校内门诊、校外门诊、住院费、子女医疗费 医疗费分类:医疗费分类:医疗费分
16、类:医疗费分类:该校规定,每年每个职工的医疗费有一个限额(如该校规定,每年每个职工的医疗费有一个限额(如该校规定,每年每个职工的医疗费有一个限额(如该校规定,每年每个职工的医疗费有一个限额(如 80 80 80 80元),限元),限元),限元),限 额在年初确定,其限额规则如下:额在年初确定,其限额规则如下:额在年初确定,其限额规则如下:额在年初确定,其限额规则如下:1 1 1 1、每个职工一年内报销的医疗费不超过限额时,全部报销、每个职工一年内报销的医疗费不超过限额时,全部报销、每个职工一年内报销的医疗费不超过限额时,全部报销、每个职工一年内报销的医疗费不超过限额时,全部报销 2 2 2 2
17、、超额,则超出部分只可报销、超额,则超出部分只可报销、超额,则超出部分只可报销、超额,则超出部分只可报销90%90%90%90%,其余,其余,其余,其余10%10%10%10%由职工个人负担由职工个人负担由职工个人负担由职工个人负担 3 3 3 3、职工子女的医疗费也有限额(如、职工子女的医疗费也有限额(如、职工子女的医疗费也有限额(如、职工子女的医疗费也有限额(如 40 40 40 40元)元)元)元)12/12/202221仲恺农业技术学院计算机与电子工程学院 1 1、医疗费管理系统每天医疗费管理系统每天记录记录当天报销的若干职工或职工子女的医当天报销的若干职工或职工子女的医 疗费的疗费的
18、类别、金额类别、金额。2 2、在当天下班前让系统在当天下班前让系统自动结帐、统计当天报销的医疗费总额自动结帐、统计当天报销的医疗费总额,供,供 出纳员核对。出纳员核对。3 3、每笔帐要保存备查,每天所报销的费用要和各个职工已报销的金每笔帐要保存备查,每天所报销的费用要和各个职工已报销的金 额累计起来,以便检查哪些职工已超额。额累计起来,以便检查哪些职工已超额。4 4、系统还要配有适当的系统还要配有适当的查询功能查询功能。5 5、年终结算后,下一年度开始时要对数据库文件进行初始化。年终结算后,下一年度开始时要对数据库文件进行初始化。6 6、当职工调离本单位,职工调如本单位或在本单位内部门间调动,
19、当职工调离本单位,职工调如本单位或在本单位内部门间调动,数据库文件应能及时得到修改。数据库文件应能及时得到修改。请完成对上述系统的 需求分析用户对系统的要求12/12/202222仲恺农业技术学院计算机与电子工程学院 该系统规模不太大,可以和用户单位的其他管理系统该系统规模不太大,可以和用户单位的其他管理系统该系统规模不太大,可以和用户单位的其他管理系统该系统规模不太大,可以和用户单位的其他管理系统使用使用使用使用相同的计算机硬件设备、相同的操作系统和相同的关相同的计算机硬件设备、相同的操作系统和相同的关相同的计算机硬件设备、相同的操作系统和相同的关相同的计算机硬件设备、相同的操作系统和相同的
20、关 系数据库管理系统。系数据库管理系统。系数据库管理系统。系数据库管理系统。如果,可以使用汉化了的数据库管理系统,但在建立如果,可以使用汉化了的数据库管理系统,但在建立如果,可以使用汉化了的数据库管理系统,但在建立如果,可以使用汉化了的数据库管理系统,但在建立数据库结构时,凡是用英文名称来代表字段名时,则必须数据库结构时,凡是用英文名称来代表字段名时,则必须数据库结构时,凡是用英文名称来代表字段名时,则必须数据库结构时,凡是用英文名称来代表字段名时,则必须在数据字典中予以说明。在数据字典中予以说明。在数据字典中予以说明。在数据字典中予以说明。1 1 1 1、确定系统的环境要求、确定系统的环境要
21、求、确定系统的环境要求、确定系统的环境要求12/12/202223仲恺农业技术学院计算机与电子工程学院2 2 2 2、系统性能要求、系统性能要求、系统性能要求、系统性能要求 (1 1 1 1)数据不能随意更改)数据不能随意更改)数据不能随意更改)数据不能随意更改 2 2 2 2)保证数据的准确性)保证数据的准确性)保证数据的准确性)保证数据的准确性 由于医疗费管理系统涉及到会计经费问题,由于医疗费管理系统涉及到会计经费问题,由于医疗费管理系统涉及到会计经费问题,由于医疗费管理系统涉及到会计经费问题,数据不能数据不能数据不能数据不能随意更改随意更改随意更改随意更改但数据输入又难免会出错。因而在每
22、输入一个职但数据输入又难免会出错。因而在每输入一个职但数据输入又难免会出错。因而在每输入一个职但数据输入又难免会出错。因而在每输入一个职工的医疗费后,屏幕提示工的医疗费后,屏幕提示工的医疗费后,屏幕提示工的医疗费后,屏幕提示“数据有误吗?数据有误吗?数据有误吗?数据有误吗?”。若是在核对时。若是在核对时。若是在核对时。若是在核对时 有误,可及时更改,避免输入错误。一天报销结束时,在有误,可及时更改,避免输入错误。一天报销结束时,在有误,可及时更改,避免输入错误。一天报销结束时,在有误,可及时更改,避免输入错误。一天报销结束时,在 数据存档前,再让出纳员核对一下经费总额,若出纳员支数据存档前,再
23、让出纳员核对一下经费总额,若出纳员支数据存档前,再让出纳员核对一下经费总额,若出纳员支数据存档前,再让出纳员核对一下经费总额,若出纳员支 出的金额总数有误时,应让计算机显示每笔帐目,供一一出的金额总数有误时,应让计算机显示每笔帐目,供一一出的金额总数有误时,应让计算机显示每笔帐目,供一一出的金额总数有误时,应让计算机显示每笔帐目,供一一 仔细核对,此时在允许修改一次。当正式登帐后,数据就仔细核对,此时在允许修改一次。当正式登帐后,数据就仔细核对,此时在允许修改一次。当正式登帐后,数据就仔细核对,此时在允许修改一次。当正式登帐后,数据就 绝对不允许在修改了,由此保证财务制度的严格性,绝对不允许在
24、修改了,由此保证财务制度的严格性,绝对不允许在修改了,由此保证财务制度的严格性,绝对不允许在修改了,由此保证财务制度的严格性,保证保证保证保证 数据的安全性。数据的安全性。数据的安全性。数据的安全性。12/12/202224仲恺农业技术学院计算机与电子工程学院3 3 3 3、系统的功能、系统的功能、系统的功能、系统的功能 (1 1 1 1)具有表格形式屏幕的输入格式)具有表格形式屏幕的输入格式)具有表格形式屏幕的输入格式)具有表格形式屏幕的输入格式 (2 2 2 2)具有重复录入数据的功能)具有重复录入数据的功能)具有重复录入数据的功能)具有重复录入数据的功能 (3 3 3 3)具有查询和统计
25、汇总的功能)具有查询和统计汇总的功能)具有查询和统计汇总的功能)具有查询和统计汇总的功能 (4 4 4 4)职工的调入和调出以及对数据库的初始化)职工的调入和调出以及对数据库的初始化)职工的调入和调出以及对数据库的初始化)职工的调入和调出以及对数据库的初始化12/12/202225仲恺农业技术学院计算机与电子工程学院二、建立目标系统的逻辑模型二、建立目标系统的逻辑模型二、建立目标系统的逻辑模型二、建立目标系统的逻辑模型通常软件软件开发项目是要实现目标系统的物理模型,即通常软件软件开发项目是要实现目标系统的物理模型,即通常软件软件开发项目是要实现目标系统的物理模型,即通常软件软件开发项目是要实现
26、目标系统的物理模型,即 确定待开发软件系统的系统元素,并将功能和数据结构分配到确定待开发软件系统的系统元素,并将功能和数据结构分配到确定待开发软件系统的系统元素,并将功能和数据结构分配到确定待开发软件系统的系统元素,并将功能和数据结构分配到 这些系统元素中。它是软件实现的基础。这些系统元素中。它是软件实现的基础。这些系统元素中。它是软件实现的基础。这些系统元素中。它是软件实现的基础。但是目标系统的物理模型是由它的逻辑模型经实例化,即但是目标系统的物理模型是由它的逻辑模型经实例化,即但是目标系统的物理模型是由它的逻辑模型经实例化,即但是目标系统的物理模型是由它的逻辑模型经实例化,即 具体到某个业
27、务领域而得到的。与物理模型不同,逻辑模型忽具体到某个业务领域而得到的。与物理模型不同,逻辑模型忽具体到某个业务领域而得到的。与物理模型不同,逻辑模型忽具体到某个业务领域而得到的。与物理模型不同,逻辑模型忽 视机制和细节,只描述系统要完成的功能和要处理的数据。视机制和细节,只描述系统要完成的功能和要处理的数据。视机制和细节,只描述系统要完成的功能和要处理的数据。视机制和细节,只描述系统要完成的功能和要处理的数据。为此,该阶段的主要任务是,为此,该阶段的主要任务是,为此,该阶段的主要任务是,为此,该阶段的主要任务是,借助于当前系统的逻辑模型借助于当前系统的逻辑模型借助于当前系统的逻辑模型借助于当前
28、系统的逻辑模型 导出目标系统的逻辑模型导出目标系统的逻辑模型导出目标系统的逻辑模型导出目标系统的逻辑模型,也就是解决目标系统,也就是解决目标系统,也就是解决目标系统,也就是解决目标系统“做什么做什么做什么做什么”的问的问的问的问 题。题。题。题。12/12/202226仲恺农业技术学院计算机与电子工程学院例 子例如,学生购买学校教材的例如,学生购买学校教材的手续可能是:先找系办公室手续可能是:先找系办公室的张秘书开一证明,凭证明的张秘书开一证明,凭证明找教材科的王会计开购书发找教材科的王会计开购书发票,向李出纳员交付书款,票,向李出纳员交付书款,然后到书库找赵保管员领书。然后到书库找赵保管员领
29、书。12/12/202227仲恺农业技术学院计算机与电子工程学院通过对现实环境的调查研究,获得当前系统的具体模型。学学生生张秘书王会计李出纳赵保管学学生生在上图中,张、王、李、赵等具体的人是可以在上图中,张、王、李、赵等具体的人是可以在上图中,张、王、李、赵等具体的人是可以在上图中,张、王、李、赵等具体的人是可以变动的,但需要他们处理的工作,例如审查购书有变动的,但需要他们处理的工作,例如审查购书有变动的,但需要他们处理的工作,例如审查购书有变动的,但需要他们处理的工作,例如审查购书有效性,开发票,开领书单等则是不变的,后者才是效性,开发票,开领书单等则是不变的,后者才是效性,开发票,开领书单
30、等则是不变的,后者才是效性,开发票,开领书单等则是不变的,后者才是本质的内容。经过这样的分析,就可抽象出学生购本质的内容。经过这样的分析,就可抽象出学生购本质的内容。经过这样的分析,就可抽象出学生购本质的内容。经过这样的分析,就可抽象出学生购买教材这一系统的逻辑模型。买教材这一系统的逻辑模型。买教材这一系统的逻辑模型。买教材这一系统的逻辑模型。12/12/202228仲恺农业技术学院计算机与电子工程学院去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型 学生审查有效性开发票开领书单发书学生目目目目标标标标系系系系统统统统是是是是一一一一个个个个使使使使用用用用计计计计算算算算机机机机的的的的
31、系系系系统统统统。一一一一般般般般来来来来说说说说,它它它它的的的的功功功功能能能能应应应应该该该该比比比比当当当当前前前前的的的的现现现现行行行行系系系系统统统统更更更更强强强强,不不不不必必必必也也也也不不不不应应应应该该该该完完完完全全全全模模模模拟拟拟拟现现现现行行行行的的的的系系系系统统统统。例例例例如如如如在在在在出出出出售售售售教教教教材材材材的的的的计计计计算算算算机机机机系系系系统统统统中中中中,“有有有有效效效效性性性性审审审审查查查查”和和和和“开开开开发发发发票票票票”就就就就可可可可全全全全并并并并进进进进行行行行,省省省省去去去去开开开开有效购书单的手续。有效购书单
32、的手续。有效购书单的手续。有效购书单的手续。12/12/202229仲恺农业技术学院计算机与电子工程学院分析当前系统与目标系统的差别、分析当前系统与目标系统的差别、建立目标的逻辑模型建立目标的逻辑模型 学学生生审审 查查 并并开发票开发票开开领领书书单单发发书书学学生生12/12/202230仲恺农业技术学院计算机与电子工程学院对目标进行完善和补充,对目标进行完善和补充,并写出完整的需求说明并写出完整的需求说明这一步的主要工作有:这一步的主要工作有:这一步的主要工作有:这一步的主要工作有:(1 1)确确确确定定定定目目目目标标标标系系系系统统统统的的的的人人人人机机机机界界界界面面面面,即即即
33、即哪哪哪哪些些些些功功功功能能能能交交交交给给给给计计计计算算算算机机机机去去去去做做做做,哪哪哪哪些些些些功功功功能能能能由由由由人人人人工工工工完完完完成成成成。例例例例如如如如在在在在上上上上图图图图的的的的系系系系统统统统中中中中,按照书费收款和发书这两项工作仍须由人工完成。按照书费收款和发书这两项工作仍须由人工完成。按照书费收款和发书这两项工作仍须由人工完成。按照书费收款和发书这两项工作仍须由人工完成。(2 2)补补补补充充充充迄迄迄迄今今今今尚尚尚尚未未未未考考考考虑虑虑虑过过过过的的的的细细细细节节节节,例例例例如如如如确确确确定定定定系系系系统统统统的的的的响响响响应应应应时时
34、时时间间间间,增增增增加加加加出出出出错错错错处处处处理理理理等等等等。在在在在本本本本例例例例中中中中,假假假假如如如如购购购购书书书书单单单单中中中中出出出出现现现现了了了了学学学学生生生生不不不不该该该该购购购购买买买买或或或或已已已已经经经经卖卖卖卖完完完完的的的的教教教教材材材材,就就就就可可可可用用用用“无无无无效效效效书书书书单单单单”把相应的情况通知学生。把相应的情况通知学生。把相应的情况通知学生。把相应的情况通知学生。经经经经过过过过以以以以上上上上的的的的修修修修正正正正和和和和补补补补充充充充,就就就就可可可可以以以以得得得得到到到到改改改改进进进进了了了了的的的的目目目
35、目标标标标系系系系统统统统逻逻逻逻辑模型,辑模型,辑模型,辑模型,12/12/202231仲恺农业技术学院计算机与电子工程学院对需求说明进行复审,直到确认文档齐对需求说明进行复审,直到确认文档齐全,并且符合用户的全部需求为止。全,并且符合用户的全部需求为止。从以上的简单叙述可以看出,需求分析是从以上的简单叙述可以看出,需求分析是一个调查研究,去粗取精,综合比较,然一个调查研究,去粗取精,综合比较,然后作出决策的过程。分析员不仅要熟悉计后作出决策的过程。分析员不仅要熟悉计算机,还应该了解所开发系统的专业知识,算机,还应该了解所开发系统的专业知识,并且与用户保持良好的对话与合作。当然,并且与用户保
36、持良好的对话与合作。当然,上述步骤仅显示一个粗略的轮廓,实际工上述步骤仅显示一个粗略的轮廓,实际工作要复杂得多,下面还要详细介绍。作要复杂得多,下面还要详细介绍。12/12/202232仲恺农业技术学院计算机与电子工程学院 -学生购买教材的学生购买教材的学生购买教材的学生购买教材的 逻辑模型逻辑模型逻辑模型逻辑模型 12/12/202233仲恺农业技术学院计算机与电子工程学院 -学生购买教材的具体模型 请建立计算机请建立计算机请建立计算机请建立计算机售书系统的逻辑模型售书系统的逻辑模型售书系统的逻辑模型售书系统的逻辑模型张张张张秘书秘书秘书秘书学学学学生生生生购书购书购书购书 购书购书购书购书
37、 王王王王会计会计会计会计发票发票发票发票李李李李出纳出纳出纳出纳领书领书领书领书赵赵赵赵保管保管保管保管单单单单申请申请申请申请证明证明证明证明书书书书 -学生购买教材的 逻辑模型 审查审查审查审查有效性有效性有效性有效性学学学学生生生生有效有效有效有效购书单购书单购书单购书单 开发票开发票开发票开发票发票发票发票发票开领开领开领开领书单书单书单书单领书单领书单领书单领书单发书发书发书发书购书单购书单购书单购书单书书书书12/12/202234仲恺农业技术学院计算机与电子工程学院 -学生购买教材的学生购买教材的学生购买教材的学生购买教材的 逻辑模型逻辑模型逻辑模型逻辑模型 审查并审查并审查并
38、审查并开发票开发票开发票开发票学学学学生生生生发票发票发票发票购书单购书单购书单购书单 各班学生用书表各班学生用书表各班学生用书表各班学生用书表教材存量表教材存量表教材存量表教材存量表无效书单无效书单无效书单无效书单开领开领开领开领书单书单书单书单领书单领书单领书单领书单学学学学生生生生12/12/202235仲恺农业技术学院计算机与电子工程学院3.4 需求分析的过程(1)问题识别问题识别 从系统的角度来理解软件并评审从系统的角度来理解软件并评审 软件软件范围是否恰当范围是否恰当 确定对目标系统的综合要求,即软件确定对目标系统的综合要求,即软件的需求的需求 提出这些需求实现条件,以及需求应提出
39、这些需求实现条件,以及需求应达到的标准达到的标准12/12/202236仲恺农业技术学院计算机与电子工程学院 1.1.用户需求分类用户需求分类 (1)(1)功能性需求功能性需求:定义了系统做什么(描述系统必须支持定义了系统做什么(描述系统必须支持 的功能和过程)的功能和过程)(2)(2)非功能性需求(技术需求)非功能性需求(技术需求):定义了系统工作时的特性定义了系统工作时的特性 (描述操作环境和性能目标)(描述操作环境和性能目标)仲恺农业技术学院计算机与电子工程学院2.2.两类需求包括的内容两类需求包括的内容(1)(1)功能功能(2)(2)性能性能(3)(3)环境环境(4)(4)界面界面(5
40、)(5)用户或人的因素用户或人的因素(6)(6)文档文档 (7)(7)数据数据(8)(8)资源资源(9)(9)安全保密安全保密(10)(10)软件成本消耗与开发进度软件成本消耗与开发进度(11)(11)质量保证质量保证仲恺农业技术学院计算机与电子工程学院(1)(1)功能需求功能需求 系统做什么?系统做什么?系统何时做什么?系统何时做什么?系统何时及如何修改系统何时及如何修改 或升级?或升级?仲恺农业技术学院计算机与电子工程学院(2)(2)性能需求性能需求 软件开发的技术性指标软件开发的技术性指标例如:例如:存储容量限制存储容量限制 执行速度、相应时间执行速度、相应时间 吞吐量吞吐量仲恺农业技术
41、学院计算机与电子工程学院(3)(3)环境需求环境需求 硬件设备:硬件设备:机型、外设、接口、机型、外设、接口、地点、分布、温度、地点、分布、温度、湿度、磁场干扰等湿度、磁场干扰等软件:软件:操作系统操作系统 网络网络 数据库数据库仲恺农业技术学院计算机与电子工程学院(4)(4)界面需求界面需求 有来自其它系统的输入吗?有来自其它系统的输入吗?到自其它系统的输出吗?到自其它系统的输出吗?对数据格式有规定吗?对数据格式有规定吗?对数据存储介质有规定吗?对数据存储介质有规定吗?仲恺农业技术学院计算机与电子工程学院(5)(5)用户或人的因素用户或人的因素 用户类型?用户类型?各种用户熟练程度?各种用户
42、熟练程度?需受何种训练?需受何种训练?用户理解、使用系统的难度?用户理解、使用系统的难度?用户错误操作系统的可能性?用户错误操作系统的可能性?仲恺农业技术学院计算机与电子工程学院(6)(6)文档需求文档需求 需哪些文档?需哪些文档?文档针对哪些读者文档针对哪些读者?仲恺农业技术学院计算机与电子工程学院(7)(7)数据需求数据需求 输入、输出数据的格式?输入、输出数据的格式?接收、发送数据的频率?接收、发送数据的频率?数据的准确性和精度?数据的准确性和精度?数据流量?数据流量?数据需保持的时间?数据需保持的时间?仲恺农业技术学院计算机与电子工程学院(8)(8)资源需求资源需求 软件运行时所需的数
43、据、软件。软件运行时所需的数据、软件。内存空间等资源。内存空间等资源。软件开发、维护所需的人力、软件开发、维护所需的人力、支撑软件、开发设备等。支撑软件、开发设备等。仲恺农业技术学院计算机与电子工程学院(9)(9)安全保密要求安全保密要求 需对访问系统或系统信息加以控需对访问系统或系统信息加以控 制吗?制吗?如何隔离用户之间的数据?如何隔离用户之间的数据?用户程序如何与其它程序和操作用户程序如何与其它程序和操作 系统隔离?系统隔离?系统备份要求?系统备份要求?仲恺农业技术学院计算机与电子工程学院(10)(10)软件成本消耗开发进度需求软件成本消耗开发进度需求开发有规定的时间表吗开发有规定的时间
44、表吗?软硬件投资有无限制软硬件投资有无限制?仲恺农业技术学院计算机与电子工程学院(11)(11)质量保证质量保证 系统的可靠性要求?系统的可靠性要求?系统必须监测和隔离错误吗?系统必须监测和隔离错误吗?规定系统平均出错时间?规定系统平均出错时间?出错后,重启系统允许的时间?出错后,重启系统允许的时间?系统变化如何反映到设计中?系统变化如何反映到设计中?维护是否包括对系统的改进?维护是否包括对系统的改进?系统的可移植性?系统的可移植性?仲恺农业技术学院计算机与电子工程学院问题识别的另一项工作是建立分析所需要的通信途径,以保证能顺利地对问题进行分析。12/12/202250仲恺农业技术学院计算机与
45、电子工程学院(2)分析与综合分析与综合 从信息流和信息结构出发,逐步细从信息流和信息结构出发,逐步细化所有的软件功能,找出系统各元化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上素之间的联系、接口特性和设计上的约束,分析它们是否满足功能要的约束,分析它们是否满足功能要求,是否合理。剔除其不合理的部求,是否合理。剔除其不合理的部分,增加其需要部分。最终综合成分,增加其需要部分。最终综合成系统的解决方案,给出目标系统的系统的解决方案,给出目标系统的详细逻辑模型详细逻辑模型。12/12/202251仲恺农业技术学院计算机与电子工程学院常用的分析方法面向数据流的结构化分析方法面向数据流的结
46、构化分析方法(SA)面向数据结构的面向数据结构的Jackson方法方法(JSD)面向对象的分析方法(面向对象的分析方法(OOA)等等12/12/202252仲恺农业技术学院计算机与电子工程学院(3)编制需求分析阶段的文档编制需求分析阶段的文档 软件需求说明书软件需求说明书 数据要求说明书数据要求说明书 初步的用户手册初步的用户手册 修改、完善与确定软件开发实施修改、完善与确定软件开发实施计划计划12/12/202253仲恺农业技术学院计算机与电子工程学院(4)需求分析评审系统定义的目标是否与用户的要求一系统定义的目标是否与用户的要求一致致;系统需求分析阶段提供的文档资料是系统需求分析阶段提供的
47、文档资料是否齐全否齐全;文档中的所有描述是否完整、清晰、文档中的所有描述是否完整、清晰、准确反映用户要求准确反映用户要求;与所有其它系统成分的重要接口是否与所有其它系统成分的重要接口是否都已经描述都已经描述;12/12/202254仲恺农业技术学院计算机与电子工程学院被开发项目的数据流与数据结构被开发项目的数据流与数据结构是否足够,确定是否足够,确定;所有图表是否清楚,在不补充说所有图表是否清楚,在不补充说明时能否理解明时能否理解;主要功能是否已包括在规定的软主要功能是否已包括在规定的软件范围之内,是否都已充分说明件范围之内,是否都已充分说明;设计的约束条件或限制条件是否设计的约束条件或限制条
48、件是否符合实际符合实际;开发的技术风险是什么开发的技术风险是什么;12/12/202255仲恺农业技术学院计算机与电子工程学院是否考虑过软件需求的其它方案是否考虑过软件需求的其它方案;是否考虑过将来可能会提出的软是否考虑过将来可能会提出的软件需求件需求;是否详细制定了检验标准,它们是否详细制定了检验标准,它们能否对系统定义是否成功进行确能否对系统定义是否成功进行确认认;12/12/202256仲恺农业技术学院计算机与电子工程学院需求分析流程12/12/202257仲恺农业技术学院计算机与电子工程学院需求分析具体过程 1.沿数据流程图回溯w从“输出端”到“输入端”回溯,分析数据元素。2.用户复查
49、w借助已有的数据流程图,帮助复查,再次完善数据流程图。3.细化数据流程图4.修正开发计划5.书写文档w系统规格说明:系统的概貌、功能要求、运行要求、将来可能的要求。w数据要求:数据字典、图形工具(数据结构的层次图、Warnier图)w用户系统描述:初步的用户手册w修正的开发计划12/12/202258仲恺农业技术学院计算机与电子工程学院1、沿、沿DFD回溯回溯(1)DFD的输出端是系统的最终目的的输出端是系统的最终目的(2)向回确定每个数据元素的来源)向回确定每个数据元素的来源(3)为了得到某个数据元素需要用到数据流图中目前还)为了得到某个数据元素需要用到数据流图中目前还没有的数据元素,或者得
50、出某个数据元素需要用的算没有的数据元素,或者得出某个数据元素需要用的算法尚不清楚,可加细法尚不清楚,可加细DFD及及DD,并将相关算法记录在并将相关算法记录在IPO图图中。中。需求分析具体过程12/12/202259仲恺农业技术学院计算机与电子工程学院2、用户复查 数据字典准确完整吗?算法正确吗?有没有遗漏必要的处理或数据元素?某些数据元素是从哪里来的?构成一个循环,认识螺旋式上升需求分析具体过程12/12/202260仲恺农业技术学院计算机与电子工程学院3、细化DFD:加细前后的IO须相同。分解到须考虑具体实现的代码时即可仃止需求分析具体过程12/12/202261仲恺农业技术学院计算机与电