收藏 分销(赏)

6--结构化分析方法.ppt

上传人:知****运 文档编号:14662401 上传时间:2026-10-26 格式:PPT 页数:32 大小:547.54KB 下载积分:10 金币
下载 相关
6--结构化分析方法.ppt_第1页
第1页 / 共32页
6--结构化分析方法.ppt_第2页
第2页 / 共32页


点击查看更多>>
资源描述
,长沙学院08级软件工程专业,软件工程,5),需求规约的作用,其作用可概括为:,第一也是最重要的,,作为软件开发组织和用户之间一份事实,上的技术合同书;是,产品功能及其环境的体现。,第二,对于项目的其余大多数工作,它是一个管理控制点。,第三,对于产品的设计,它是一个正式的、受控的起始点。,第四,是创建产品验收测试计划和用户指南的基础,即,基于,需求分析规规约一般还会产生另外两个文档,初始,测试计划和用户系统操作描述。,初始测试计划,主要内容,:,对未来系统中的哪些功能和性能指标进行测试,以及达到何种要求。,作用,:,指导系统开发早期发现并修改一个错误,减少测试代价,.,注,:,在以后阶段的软件开发中,对这个测试计划要不断地修正和完善,并,成为相应阶段文档的一部分。,注,:,大量的统计数字表明,在系统开发早期发现并修改一个错误的代价往,往很低,越到系统开发的后期,改正同样错误所花费的代价越高。例,如,假设在需求分析阶段检测并改正一个错误的代价为,1,个单位,那么,到了软件测试阶段检测并改正同样的错误所花费的代价,一般需要,10,个单位,而到软件发布后的代价就可能高达,100,个单位。,用户系统操作描述,主要内容,:,从用户使用系统的角度,简要描述系统功能和性能,使用系统的主要步骤和方法,以及系统用户的责任等。系统,,作用,:,在软件开发的早期,准备一份初步的用户手册可以使未来的系统用户能够从使用的角度检查、审核目标系统,从而比较容易判断这个系统是否符合他们的需要。,为了书写这样的文档,也会迫使系统分析员从用户的角度来考虑软件系统。这样不论是审查还是复审时,就更容易发现不一致和误解的地方,这对保证软件质量和项目成功是很重要的。,注,:,相当于一份初步的用户手册。,SRS,所不能实现的作用,第一,它不是一个设计文档。它是一个,“,为了,”,设计的文档。,第二,它不是进度或规划文档,不应该包含更适宜包含在,工作陈述(,SOW,)、软件项目管理计划,(SPMP),、软件生存周,期管理计 划,(SLCMP),、软件配置管理计划,(SCMP),或软件质,量保证计划,(SQAP),等文档中的信息。因此,在,SRS,中不应给,出,:,项目成本;,交付进度;报告规程;,软件开发方法;质量保证规程;配置管理规程;,验证和确认规程;验收规程;安装规程。,关于项目的需求及其需求规约,项目需求是客户和开发者之间有关技术合同,-,产品,/,系统需求,的理解,应记录在工作陈述,SOW,中或其他某一项目文档,(,例如,,项目管理计划,),中。,即,SRS,应只关注产品需求,即,:,产品,/,系统需求,-,“,交付给客户的产品是什么,”,SOW,应关注项目工作与管理,即,:,项目需求,-,“,开发组要做的是什么,”,。,Problems with NL specification,Ambiguity,The readers and writers of the requirement must interpret the same words in the same way.NL is naturally ambiguous so this is very difficult.,Over-flexibility,The same thing may be said in a number of different ways in the specification.,Lack of modularisation,NL structures are inadequate to structure system requirements.,Structured language specifications,The freedom of the requirements writer is limited by a predefined template for requirements.,All requirements are written in a standard way.,The terminology used in the description may be limited.,The advantage is that the most of the expressiveness of natural language is maintained but a degree of uniformity is imposed on the specification.,Form-based specifications,Definition of the function or entity.,Description of inputs and where they come from.,Description of outputs and where they go to.,Indication of other entities required.,Pre and post conditions(if appropriate).,The side effects(if any)of the function.,软件开发方法学,概念,:,软件方法学,-,支持软件开发的原理,/,原则、过程和规程的体系,.,是以软件方法为研究对象的学科。主要涉及指导软件设计的原理和原则,以及基于这些原理、原则的方法和技术。,狭义的软件方法学也指某种特定的软件设计指导原,则和方法体系。,掌握并能正确运用开发方法,具有事半功倍的作用,.,软件开发本质,软件生存周期过程,定义,软件生存周期模型,软,件,工,程,生,存,周,期,过,程,支持过程方向,(,活动与定序,),的建立,形成,软件开发方法学,结构化方法,面向对象方法,面向数据结构,方法,维也纳开发方,法(,VDM,),给出实现开发过程的途径,支持,/,管理技术与方法,作用于,(,一,),结构化方法,-,一种特定的软件开发方法学,1,结构化分析方法,1),何谓分析,分析的三要素,:,需要使用哪些信息,;,如何系统化的使用信息,估算算法,一般地说,分析是系统化地使用信息,给出一个问题的估算,.,何谓结构化分析,就软件需求分析而言,即为,:,系统化地使用问题域术语,给,出该问题的模型,即,:,需求,-,一个抽象层,该系统的概念模型或称系统的需求规约,问题域,-,客观事物系统,形成,分析,(,映射,),可见,需求分析作为一种活动,其目标为:,在一个确定的抽象层(即需求层)上为客观事物系统施,加了一个结构,形成待开发软件系统(产品)的概念模型,,即需求规约(规格说明书),作为开发人员和客户间技术,契约的基础,并作为而后开发活动的一个基本输入,2),实现软件需求分析的目标对方法学的需求,(1),提供一组术语,(,符号,),,指导抽象中需要关注的主要方,面,并用于表达分析中所使用的信息,.,这些术语形成一个特定的抽象层,即需求层,.,当然,这,组术语应体现 软件设计的某些“原理,/,原则”!,(2),依据这些术语所形成的,“,空间,”,给出表达模型的工具,.,(3),给出过程指导,.,3),需求层的确定,一个抽象层是由一组确定的术语定义的,为此为了支持需,求分析中有关要使用的那些信息的表达,给出了以下五个,术语符号,:,数据流:,加工:,数据存储:,数据源:,数据潭:,其中:,数据流、数据存储,-,支持数据抽象,加工,-,支持过程,/,功能的抽象,用于表达,系统内涵,数据源、数据潭,支持系统边界抽象,用于表达系统,外延,.,是完备的。,4),模型表达工具,这些术语形成一个特定的术语空间,即,:,它们之间是”正交”的,.,每一个术语所要表达的信息,形成了该术语的”值域”,并且是一个偏序集,;,例如,假定在一个学籍管理系统中,数据流,-“,学生各科成绩”,:,数学,85,分,软件工程,90,分,操作系统,86,分,编译,83,分等,构成了该数据流的“值域”,.,这些术语确定了所建系统的形态,.,如果是一个三维空间,那些所建系统的形态只能是,:,或是一条直线,;,或是一条曲线,;,或是一个平面,或是一个曲面,;,或是一个立方体,或是一个多形体,.,现在,是由五个术语所确定的一个五维空间,因此该方法只,能采用,DFD,图来表达各种“形态”的系统,.,例如,旅行社,订票单,预定,机票,准备,机票,记帐,费用,航班,帐单,机票,记帐文件,航班目录,旅行社,5),过程指导,建立系统的功能模型,-,使用的工具为数据流图,DFD,首先:建立系统环境图,确定系统边界,继之:自顶向下,逐层分解,建立数据字典,-,使用的工具为结构符,定义数据流 定义数据存储,定义数据项,给出加工小说明,-,使用的工具可以为判定表 判定树,问题:建立一个简化的商业自动化系统,其中:,营业员通过该系统记录每日销售的商品(,商品名,商品,编号,单价,数量,销售时间,);,收款员通过该系统记录收到的现金数额以及购物余额;,商店经理每日统计销售额,并在必要时查看某种商品的,销售情况(商品名,商品编码,金额),结构化分析方法应用实例,简化的商业自动化系统,营业员,收款员,经 理,销售的商品,现金额,现金余额,销售情况,日销售额,查询要求,建立系统的功能模型,首先:建立系统环境图,确定系统边界,-,顶层,DFD,其中:,1,数据流为:销售的商品,日销售额等,3,个输入流,,3,个输出流,数据源为:营业员,经理,收款员,数据潭为:经理,收款员,2,加工名为:要建立的系统名字,录入、修改或,删除商品信息,录入、修改,现金额,并计算余额,查询商品销售情况,计算日销售额,1,2,3,继之:自顶向下,逐层分解,A,、按人或部门的功能要求,将加工,“,打碎,”,,形成:,注:需给每一加工编号;,B,、,”,分派,”,数据流,形成:,录入、修改或,删除商品信息,2,录入、修改,现金额,并计算余额,查询商品销售情况,计算日销售额,销售的商品,现金额,现金余额,查询要求,销售情况,日销售额,1,3,其中:要根据特定的加工要求进行分派;,保持与顶层数据流的一致;,可以不引入数据源和数据潭。,录入、修改或,删除商品信息,录入、修改,现金额,并计算余额,查询商品销售情况,计算日销售额,销售的商品,现金额,现金余额,查询要求,销售情况,日销售额,销售文件,1,2,3,C,、引入文件,使之形成一个有机整体,系统:,注:到一个文件,既有输入流,又有输出流,则可简化为,,并可不给出标识。,至此,体现精化,形成,0,层数据流图。,查询商品销售情况,计算日销售额,查询要求,销售情况,日销售额,销售文件,3,继续,A,、,B,、,C,:自顶向下,逐层分解。,例如:加工,3,可分解为:,判定要求,查询要求,3,。,1,统计销售情况,3,。,2,计算日销售额,销售文件,查询要求,2,查询要求,1,销售情况,日销售额,加工,3:,*,其中为什么要引入,加工,“,判定要求,”,?,建立数据字典,定义数据流 定义数据存储 定义数据项,引入:结构符 ,|,用于定义数据结构,A,A,A,B,C,B,0,C,0,B*,数据字典,:,、数据流,:,销售的商品,=,商品名,+,商品编号,+,单价,+,数量,+,销售时间,现金额,=,余额,=,日销售额,=,非负实数,查询要求,=,商品编号,|,日期,查询要求,1=,商品编号,查询要求,2=,日期,销售情况,=,商品名,+,商品编号,+,金额,、数据存贮,:,销售文件,=,销售的商品,、数据项,给出加工小说明,-,使用的工具可以为判定表,判定树,判断表,条件类别,条件组合,操作,操作执行,例如:,考试总分,=620 =620 620,单科成绩 有满分 有不及格 有满分,发升级通知书,y y n,发留级通知书,n n y,发重修通知书,n y n,6),建模中应注意的问题,结构化分析方法是一种半形式化的规约方法,给出了一组,特定的术语表和标准化的表达格式,-,数据流图,在表达上均,必须遵循一些约定,即应以一种准确和一致方式使用之。例如,:,-,加工,:,其标识应使用领域术语,采用动宾结构,;,必须有输入和输出,;,-,数据流,:,其标识应使用领域术语,采用名词或名词短语,;,特别,应注意,模型平衡,问题和信息组织的复杂性控制问题,即,:,模型平衡问题,父图和子图的边界一致问题,即它们应有相同的边界,;,数据流图中的数据流与数据字典的一致问题,即每个数,据流和数据存储必须在数据字典中予以定义,数据流图中的,“叶”加工(最低层)与小说明的一致问,题,即必须给出,“叶”,加工的说明,小说明和数据流图的图形表示一致问题,即在小说明中,,必须说明“输入数据流”如何使用,必须说明如何产生,“输出数据流”,;,必须说明如何选取、使用、修改“数据,存储”,信息组织,复杂性控制问题,上层数据可以“打包”,上、下数据流对应关系在数据字典中给出,但包内,数据流的性质(输入、输出)必须一致。,一幅图中的图元个数应控制在,7+/-2,以内,与每一加工相关的数据流的数目应适中,(,与层次有关,),分析数据内容,确定是否所有的输入信息都用于,产生输出信息;,分析加工,确定一个加工所产生的输出,是否都,能由该加工的输入信息导出,作业二:,66页 第1题、第6题,84页 第1题、第8题,
展开阅读全文

开通  VIP、SVIP  下载更划算
下载10份以上建议开通 VIP 会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        关注我们

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服