软件需求分析的任务

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

软件需求分析的任务•深入描述软件的功能和性能•确定软件设计的约束和软件同其它系统元素的接口细节•定义软件的其它有效性需求•需求分析研究的对象是软件项目的用户要求•准确地表达被接受的用户要求•确定被开发软件系统的系统元素•将功能和信息结构分配到这些系统元素中需求分析•需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的“做什么”的问题。•通常软件开发项目是要实现目标系统的物理模型•目标系统的具体物理模型是由它的逻辑模型经实例化,即具体到某个业务领域而得到的需求分析需求分析的过程(1)问题识别从系统的角度来理解软件并评审软件范围是否恰当确定对目标系统的综合要求,即软件的需求提出这些需求实现条件,以及需求应达到的标准•从信息流和信息结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的约束,分析它们是否满足功能要求,是否合理。•剔除其不合理的部分,增加其需要部分。最终综合成系统的解决方案,给出目标系统的详细逻辑模型。(2)分析与综合软件需求说明书•数据字典•初步的用户手册•修改、完善与确定软件开发实施计划(3)编制需求分析阶段的文档(4)需求分析评审1.系统定义的目标是否与用户的要求一致;2.系统需求分析阶段提供的文档资料是否齐全;3.文档中的所有描述是否完整、清晰、准确反映用户要求;4.与所有其它系统成分的重要接口是否都已经描述;5.被开发项目的数据流与数据结构是否足够,确定;6.所有图表是否清楚,在不补充说明时能否理解;7.主要功能是否已包括在规定的软件范围之内,是否都已充分说明;8.设计的约束条件或限制条件是否符合实际;9.开发的技术风险是什么;10.是否考虑过软件需求的其它方案;11.是否考虑过将来可能会提出的软件需求;12.是否详细制定了检验标准,它们能否对系统定义是否成功进行确认;软件需求分析的原则•需要能够表达和理解问题的信息域和功能域•要能以层次化的方式对问题进行分解和不断细化•要给出系统的逻辑视图和物理视图软件需求规格说明的原则1.从现实中分离功能,即描述要“做什么”而不是“怎样实现”2.要求使用面向处理的规格说明语言(或称系统定义语言)3.如果被开发软件只是一个大系统中的一个元素,那么整个大系统也包括在规格说明的描述之中4.规格说明必须包括系统运行环境5.规格说明必须是可操作的6.规格说明必须容许不完备性并允许扩充7.规格说明必须局部化和松散耦合软件需求规格说明的原则软件需求分析方法•需求分析方法由对软件问题的信息域和功能域的系统分析过程及其表示方法组成•大多数的需求分析方法是由信息驱动的•信息域具有三种属性:信息流、信息内容和信息结构。软件需求分析的共性•支持数据域分析机制•功能表示的方法•接口的定义•问题分解的机制以及抽象的机制•逻辑和物理视图•系统抽象模型•具体来说,就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止•结构化分析方法使用工具:数据流图,数据词典,结构化英语,判定表与判定树结构化分析方法数据流图•数据流图中的主要图形元素描述银行取款过程的数据流图数据流与数据加工之间的关系数据流图的层次结构•为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统•在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据•底层流图是指其加工不需再做分解的数据流图,它处在最底层•中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。商店业务处理流程描述L01。顾客在商店进行购物2。顾客选定好所需商品由营业员填写购物小票(订单)3。商店经过处理顾客订单后并接受顾客的货款,返给顾客经过确认的购物小票4。商店营业员验证购物小票后,交给顾客所订购的商品,并返给顾客收据或者发票商店业务处理流程描述L05。如果顾客所订购的商品缺货,则商店向供应商提交商品订单6。供应商将商店所需的商品及发货单运送给商店7。商店经过验货之后付给供应商货款8。供应商接受货款并返给商店收据或发票结构化分析方法步骤示例商店业务处理系统•这个数据流图只是一个高层的系统逻辑模型,它反映了目标系统要实现的功能•数据流图绘制步骤首先确定系统的输入和输出根据商店业务,画出顶层数据流图,以反映最主要业务处理流程结构化分析方法步骤示例经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。主要数据流输入的源点和输出终点是顾客和供应商。然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出端,得到第一层数据流图结构化分析方法步骤示例商店业务处理流程描述L1•销售部门:1。销售部门在接到顾客的订单后,对订单进行管理2。对已经销售的商品进行管理,涉及到销售历史记录和商品库存的管理3。对缺货的商品给采购部门发送订货通知4。对所销售的商品填写收款单据并提交给财务部门,然后接收付款收据5。销售部门接收采购部门返回的缺货商品的到货通知,进行商品销售6。将商品和收据、发货票提交给顾客•采购部门:1。采购部门对接收到的订货通知进行处理,并对订货单进行管理2。经对订货单进行确认后,向供应商发送订货单3。接到供应商发来的发货单以及所缺商品后,核对检查并填写付款单据并提交给财务部门4。同时对商品库存以及采购订单进行管理5。最后向销售部门提供到货通知•财务部门:1。接收到销售部门提交的收款单据并进行检验2。接收顾客提交的商品款,并将收据返回给销售部门3。对应收款明细及总帐进行管理4。在检验采购部门提交的付款单据后,将货款打给供应商并接收付款收据5。对应付款明细核总帐进行管理第一层数据流图商店业务处理流程描述L2•销售部门业务流程进一步细化:1。接到顾客的购买请求后进行订单编辑2。在订单编辑的过程中对顾客的客户资料进行查询,对新顾客进行客户资料的登记3。订单编辑之后对订单中商品进行检查,主要是针对该商品种类以及商品数量进行检查4。对能够满足的客户的订单进行开发货票以及开收款单据,并对库存产品进行修改5。对不能满足的订单进行处理,生成暂存订单并向采购部门提交订货通知6。在接收到采购部门的到货通知后,对暂存订单进行比对并确认后进行第4项的工作7。在接收到财务部门的收据并确认后,提交给顾客8。销售部门经理会随时检查库存的商品种类和数量9。每日进行销售记录和历史的修改加细每一个加工框销售细化•采购部门业务流程进一步细化1。在接到销售部门的订货通知后,对暂存订单的商品内容进行分类处理2。确定所要订货的种类、名称及数量,并修改待订商品清单3。在供应商名单中选择适当的供应商并将订货单发给供应商4。在接到供应商提供的商品及发货清单后,进行货品检查5。如果货品清点无误之后,向财务部门提交付款单并向销售部门发送到货通知6。同时修改商品库存以及修改待订商品清单采购细化检查和修改数据流图的原则1.数据流图上所有图形符号只限于前述四种基本图形元素2.数据流图的主图必须包括前述四种基本元素,缺一不可3.数据流图的主图上的数据流必须封闭在外部实体之间4.每个加工至少有一个输入数据流和一个输出数据流5.在数据流图中,需按层给加工框编号。编号表明该加工所处层次及上下层的亲子关系6.规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。此即父图与子图的平衡7.可以在数据流图中加入物质流,帮助用户理解数据流图检查和修改数据流图的原则8.图上每个元素都必须有名字9.数据流图中不可夹带控制流10.初画时可以忽略琐碎的细节,以集中精力于主要数据流检查和修改数据流图的原则数据词典•数据词典与数据流图配合,能清楚地表达数据处理的要求•词条描述:对于在数据流图中每一个被命名的图形元素,均加以定义,其内容有:名字,别名或编号,分类,描述,定义,位置,其它等(1)数据流词条描述•数据流名:•说明:简要介绍作用即它产生的原因和结果•数据流来源:来自何方•数据流去向:去向何处•数据流组成:数据结构•数据量流通量:数据量,流通量(2)数据元素词条描述•数据元素名:•类型:数字(离散值,连续值),文字(编码类型)•长度:•取值范围:•相关的数据元素及数据结构:(3)数据文件词条描述•数据文件名:•简述:存放的是什么数据•输入数据:•输出数据:•数据文件组成:数据结构•存储方式:顺序,直接•存取频率:(4)加工逻辑词条描述•加工名:•加工编号:反映该加工的层次•简要描述:加工逻辑及功能简述•输入数据流:•输出数据流:•加工逻辑:简述加工程序,加工顺序(5)源点及汇(终)点词条描述•名称:外部实体名•简要描述:什么外部实体•有关数据流:•数目:数据结构的描述符号含义举例=被定义为+与x=a+b[...,...]或[...|...]或x=[a,b],x=[a|b]{...}或m{...}n重复x={a},x=3{a}8(...)可选x=(a)“...”基本数据元素x=“a”..连结符x=1..9存折格式•存折=户名+所号+帐号+开户日+性质+(印密)+1{存取行}50•户名=2{字母}24•所号=“001”..“999”•帐号=“00000001”..“99999999”•开户日=年+月+日•性质=“1”..“6”注:“1”表示普通户,“5”表示工资户等•印密=“0”注:印密在存折上不显示•存取行=日期+(摘要)+支出+存入+余额+操作+复核•对数据流图的每一个基本加工,必须有一个基本加工逻辑说明•基本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则•加工逻辑说明必须描述实现加工的策略而不是实现加工的细节基本加工逻辑说明用于写加工逻辑说明的工具•结构化英语•判定表•判定树(1)结构化英语•结构化英语的词汇表由–英语命令动词–数据词典中定义的名字–有限的自定义词–逻辑关系词•IF_THEN_ELSE•CASE_OF•WHILE_DO•REPEAT_UNTIL等组成。•是一种介于自然语言和形式化语言之间的语言•语言的正文用基本控制结构进行分割,加工中的操作用自然语言短语来表示•其基本控制结构有三种:–简单陈述句结构:避免复合语句;–重复结构:WHILE_DO或REPEAT_UNTIL结构。–判定结构:IF_THEN_ELSE或CASE_OF结构;(1)结构化英语商店业务处理系统中“检查发货票”IF发货单金额超过$500THENIF欠款超过了60天THEN在偿还欠款前不予批准ELSE(欠款未超期)发批准书,发货票ENDIFELSE(发货票金额未超过$500)IF欠款超过60天THEN发批准书,发货票及赊欠报告ELSE(欠款未超期)发批准书,发货票ENDIFENDIF(2)判定表•如果数据流图的加工需要依赖于多个逻辑条件的取值,使用判定表来描述比较合适•能够把在何种条件下,系统应完成哪些操作,表达清楚。而这是结构化英语难以表达的以“检查发货票”为例(3)判定树•判定树也是用来表达加工逻辑的一种工具。有时侯它比判定表更直观。•总之,加工逻辑说明是结构化分析方法的一个组成部分,对每一个加工都要说明。•应当以结构化英语为主进行描述,对存在判断问题的加工逻辑,可辅以判定表和判定树

1 / 56
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功