您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 软件工程导论数据流图实例
2.1.2需求工程过程问题识别分析与综合编写文档分析评审2.1.2需求分析过程可行性研究需求导出和分析需求描述需求有效性验证可行性报告系统模型用户需求和系统需求需求文挡2.2.1SA法概述分解:对于一个复杂的系统,为了将复杂性降低到可以掌握的程度,可以把大问题分解成若干小问题,然后分别解决(如右图)。一、SA法的基本思想结构化分析方法的基本思想是“分解”和“抽象”。抽象:分解可以分层进行,即先考虑问题最本质的属性,暂把细节略去,以后再逐层添加细节,直至涉及到最详细的内容,这种用最本质的属性表示一个系统的方法就是“抽象”。2.2.1SA法的概述1.11.21.3x2132.12.22.31.11.3顾客出版社验证订单汇总订单订单出版社订单图书目录文件顾客档案待处理订单文件正确订单一批订单出版社档案文件订货存根文件DFD图的例子加工名编号加工名编号文件名文件名顾客出版社验证订单汇总订单订单出版社订单图书目录文件顾客档案待处理订单文件正确订单一批订单出版社档案文件订货存根文件画图步骤:1、确定外部实体及输入、输出数据流。2、确定分解顶层的加工。3、确定使用的文件。4、用数据流将各部分连接起来,形成数据封闭。注意:标注各加工框及数据流名称。例1:图书预定系统(顶层DFD图)2.2.2数据流图数据流图(DataFlowDiagram,DFD)是描述系统中数据流程的图形工具,它标识了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换为逻辑输出所需的加工处理。数据存储数据源点或终点加工加工名数据流数据流名文件名实体名箭头圆或椭圆单或双杠矩形框还有一些辅助的图例:2.2.2分层的数据流图一、数据流图的图符四种基本图形符号:TAB*CTAB*CTAB+CTAB+CTABC+TABC+*与+或互斥+“先全局后局部,先整体后细节,先抽象后具体”通常可将这种分层的DFD图,分为顶层、中间层、底层。具体步骤:1。先确定系统范围,画出顶层的DFD图。2。逐层分解顶层DFD图,获得若干中间层DFD图。3。画出底层的DFD图。2.2.3画分层DFD图的方法顶层图说明了系统的边界,即系统的输入和输出数据流,顶层图只有一张。底层图由一些不能再分解的加工组成,这些加工都已足够简单,称为基本加工。在顶层和底层之间的是中间层。中间层的数据流图描述了某个加工的分解,而它的组成部分又要进一步分解。画各层DFD图时,“由外向内”。X1321.11.21.41.32.12.21.1.11.1.22.1.32.1.22.1.12.2.22.2.32.2.1顶层中间层底层先全局后局部,先整体后细节,先抽象后具体.0图1图2图1.1图2.1图2.2图分层DFD图经过初步的需求分析,得到系统功能要求:1、监视病员的病症(血压、体温、脉搏等)。2、定时更新病历。3、病员出现异常情况时报警。4、随机地产生某一病员的病情报告。2.2.4实例:医院病房监护系统产生病情报告监视病情更新病历2.2.4实例:医院病房监护系统系统功能要求:1、监视病员的病症(血压、体温、脉搏等)2、定时更新病历3、病员出现异常情况时报警。4、随机地产生某一病员的病情报告。顶层:病员护士护士病员监护系统病员日志病症信号要求报告病症报告报警例2医院病房监护系统第一层:病员护士护士中央监视病员日志病症信号要求报告病症报告报警局部监视生成报告病员极限更新日志病员数据格式化病员数据生理信号极限值1324日志数据日志数据医院病房监护系统顶层DFD图第二层:加工“中央监视”分解计算超过极限值否病员数据超过极限值报警开解信号产生报警信息病员极限格式化病员数据体温血压、体温脉搏生理信号极限值时间脉搏血压日期时钟格式化病员数据3.13.23.33.4医院病房监护系统二层DFD图计算超过极限值否病员数据超过极限值报警开解信号产生报警信息病员极限格式化病员数据体温生理信号极限值时间脉搏血压日期时钟格式化病员数据3.13.23.33.4第二层:加工“中央监视”分解医院病房监护系统分层DFD图图2..15第一层格式化病员数据生理信号极限值病员护士护士中央监视病员日志病症报告局部监视生成报告病员极限更新日志病员数据1324日志数据图2..16加工分解的原则自然性:概念上合理、清晰;均匀性:理想的分解是将一个问题分解成大小均匀的几个部分;分解度:一般每一个加工每次分解最多不要超过7个子加工,分解应分解到基本加工为止。2.2.5画分层DFD图的基本原则数据守恒与数据封闭原则所谓数据守恒是指加工的输入输出数据流是否匹配,即每一个加工既有输入数据流又有输出数据流。或者说一个加工至少有一个输入数据流,一个输出数据流。数据封闭是对整个系统而言。合理使用文件当文件作为某些加工之间的交界面时,文件必须画出来,一旦文件作为数据流图中的一个独立成份画出来了,那么他同其他成份之间的联系也应同时表达出来。DFD图不是流程图,不表示软件的控制流程。2.2.5画分层DFD图的基本原则子图与父图的“平衡”父图中某个加工的输入输出数据流应该同相应的子图的输入输出相同(相对应),分层数据流图的这种特点称为子图与父图“平衡”。2.2.6分层DFD图的改进DFD图必须经过反复修改,才能获得最终的目标系统的逻辑模型(目标系统的DFD图)。可从以下方面考虑DFD图的改进:1、检查数据流的正确性①数据守恒②子图、父图的平衡③文件使用是否合理。特别注意输入/出文件的数据流。2、改进DFD图的易理解性①简化加工之间的联系(加工间的数据流越少,独立性越强,易理解性越好)。②改进分解的均匀性。③适当命名(各成分名称无二义性,准确、具体)。结构化语言是介于自然语言和形式语言之间的一种半形式语言,它是自然语言的一个受限制的子集。一般分为两层结构:外层语法较具体,为控制结构(顺序、选择、循环),内层较灵活,表达“做什么”。一、结构化语言例如:外层可为以下结构:1、顺序结构2、选择结构IF–THEN-ELSE;CASE-OF-ENDCASE;3、循环结构WHILE-DO;REPEAT-UNTIL构造原型运行/评价原型原型完成否要细部说明否严格说明细部效果满意否整理原型提供文档修正改进原型YYNN快速分析,确定初步规格说明YN快速原型化开发过程2.3.2快速原型开发模型快速建立系统原型进行系统的分析和构造有如下优点:1、增进软件开发人员和用户对系统需求的理解。便于将用户模糊的功能需求明确化。2、为用户提供了一种强有力的学习手段。3、易于确定系统的性能,是理解和确认软件需求规格说明的工具。4、按照RCP法建立的原型即为最终的产品。细化的原型化模型需求工程小结需求工程小结最初,需求工程仅仅是软件工程的一个组成部分,是软件生命周期的第一个阶段。在传统软件工程生命周期中,涉及需求的阶段称作需求分析。一般来说,需求分析的作用是:●系统工程师说明软件的功能和性能,指明软件和其他系统成分的接口,并定义软件必须满足的约束;●软件工程师求精软件的配置,建立数据模型、功能模型和行为模型;●为软件设计者提供可用于转换为数据设计、体系结构设计、界面设计和过程设计的模型;●提供开发人员和客户需求规格说明,用于作为评估软件质量的依据。需求工程小结需求工程是系统工程和软件工程的一个交叉分支,涉及到软件系统的目标、软件系统提供的服务、软件系统的约束和软件系统运行的环境。它还涉及这些因素和系统的精确规格说明以及系统进化之间的关系。它也提供现实需要和软件能力之间的桥梁。需求工程的基本活动包括:●抽取需求;●模拟和分析需求;●传递需求;●认可需求;●进化需求。
本文标题:软件工程导论数据流图实例
链接地址:https://www.777doc.com/doc-4968682 .html