《软件工程第3章 需求分析.ppt》由会员分享,可在线阅读,更多相关《软件工程第3章 需求分析.ppt(90页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 第第3 3章章 需求分析需求分析需求分析的概念和任务获取需求的方法需求规格说明书结构化分析方法软件需求分析概述软件需求分析概述1、需求工程领域的层次结构:、需求工程领域的层次结构:需求工程需求工程需求开发需求开发需求管理需求管理综合分析综合分析问题获取问题获取需求描述需求描述需求确认需求确认版本控制版本控制变更控制变更控制需求跟踪需求跟踪状态跟踪状态跟踪 软件需求分析概述软件需求分析概述2、需求分析的目标和任务、需求分析的目标和任务需求分析的目标需求分析的目标 构造一个完全地、精致构造一个完全地、精致 地目标系统逻辑模型;地目标系统逻辑模型;确定设计约束。确定设计约束。软件规格说明软件规格说
2、明 需求分析的任务需求分析的任务 需求分析阶段研究的对象是软件项目的用户要求,其需求分析阶段研究的对象是软件项目的用户要求,其任务是借助当前系统的逻辑模型,任务是借助当前系统的逻辑模型,调查研究、分析综合,调查研究、分析综合,并通过抽象思维、逻辑推理导出目标系统的并通过抽象思维、逻辑推理导出目标系统的逻辑模型逻辑模型,解,解决系统决系统“做什么做什么”的问题,并将结果准确表达。的问题,并将结果准确表达。软件需求分析概述2、需求分析的目标和任务、需求分析的目标和任务 软件开发项目的软件开发项目的:实现目标系统的物理模型实现目标系统的物理模型,包括确定待开发软件系统的元素,将功能和信息结包括确定待
3、开发软件系统的元素,将功能和信息结构分配到系统元素中。构分配到系统元素中。逻辑模型逻辑模型:忽视实现机制与细节,:忽视实现机制与细节,只描述系只描述系统要完成的功能和要处理的信息统要完成的功能和要处理的信息。软件需求分析概述软件需求分析概述实现步骤:实现步骤:(1)分析分析现实世界,充分理解当前系统,并用一个具体模现实世界,充分理解当前系统,并用一个具体模型描述,获得当前系统的物理模型。型描述,获得当前系统的物理模型。(2)在理解当前系统在理解当前系统“怎么做怎么做”的基础上,抽取的基础上,抽取“作什么作什么”的本质,的本质,抽象抽象出系统的逻辑模型。出系统的逻辑模型。(3)分析目标系统与当前
4、系统逻辑上的差别,分析目标系统与当前系统逻辑上的差别,导出导出目标系目标系统的逻辑模型。统的逻辑模型。(4)对目标系统逻辑模型进行对目标系统逻辑模型进行补充补充,以求完整地描述。,以求完整地描述。软件需求分析概述当前系统当前系统逻辑模型逻辑模型物理模型物理模型目标系统目标系统模型化模型化物理模型物理模型怎么做怎么做具体化具体化抽象化抽象化逻辑模型逻辑模型做什么做什么实例化实例化导导出出理理解解需需求求表表达达需需求求由当前系统建立目标系统模型过程由当前系统建立目标系统模型过程 例例:从从用用户户调调查查中中了了解解到到某某高高校校向向学学生生销销售售教教材材的的手手续续是是:先先由由系系办办公
5、公室室的的张张秘秘书书开开购购书书证证明明,学学生生凭凭证证明明找找教教材材科科的的王王会会计计开开购购书书发发票票,向向李李出出纳纳员员交交付付书书款款,然然后后到到书书库库找找赵赵保保管管员员领领书书。现现欲欲将将上上述述的的手手工工操操作作改改为为计计算算机机处处理理,试试对对教教材材销销售售软软件件做做需需求求分分析析,给给出出售售书系统的模型。书系统的模型。建立目标系统模型举例建立目标系统模型举例步骤:(1)通过对现实环境的调查研究,获取当前系统的具体模型(物理模型);学学生生 学学生生王会计王会计 李出纳李出纳赵保管赵保管购购书书申申请请领领书书单单购购书书证证明明购购书书发发票票
6、书书张秘书张秘书建立目标系统模型举例建立目标系统模型举例学学生生学学生生开发开发票票开领开领书单书单发书发书购购书书单单领领书书单单有有效效购购书书单单发发票票书书审查有审查有效性效性步骤:(2)去掉具体模型中的非本质因素,提炼出当前系统的逻辑模型;建立目标系统模型举例建立目标系统模型举例 学学生生学学生生审审查查并并开发票开发票开领书单开领书单领领书书单单购购书书单单发发票票步骤:(3)分析当前系统与目标系统的差别,建立目标系统的逻辑模型;建立目标系统模型举例建立目标系统模型举例3、需求分析的原则需求分析的原则必须能够表达和理解问题的数据域和功能域按自顶向下、逐层分解的方式对问题进行分解和不
7、断细化要给出系统的逻辑视图和物理视图 软件需求分析概述需求分析的过程需求分析的过程 需求分析阶段的工作有以下四个方面:需求分析阶段的工作有以下四个方面:软件需求分析概述问题识别问题识别分析与综合分析与综合编制需求分析阶段文档编制需求分析阶段文档需求分析评审需求分析评审 软件需求分析概述需求获取需求获取功能功能要要求求性能性能要要求求运行和扩充要求运行和扩充要求 维护要求维护要求系统文档规格要求系统文档规格要求问题识别:问题识别:软件需求分析概述编写需求分析阶段文档:编写需求分析阶段文档:(1)需需求求规规格格说说明明包包含含对对目目标标软软件件系系统统的的外外部部行行为为的的完完整整描描述述、
8、需需求求验验证证标标准准以以及及用用户户在在性性能能、质质量量、可可维维护护性性等等方方面面的的要求。要求。(2)初初步步用用户户手手册册包包括括用用户户界界面面描描述述以以及及有有关关目目标标系系统统使使用用方法的初步构想。方法的初步构想。(3)在在需需求求分分析析中中确确立立测测试试标标准准,作作为为系系统统开开发发目目标标是是否否完完成的验收依据。成的验收依据。(4)修修改改的的项项目目开开发发计计划划是是根根据据新新的的分分析析结结果果,对对可可行行性性分分析析和和软软件件计计划划阶阶段段中中制制订订的的初初步步的的项项目目开开发发计计划划作作必必要要的的修修改改、补充和完善。补充和完
9、善。软件需求分析概述需求评审:需求评审:由由专专家家、分分析析人人员员、开开发发人人员员、用用户户组组成成评评审审组组,对对需需求求分析所得的结果分析所得的结果进行评审。进行评审。完整性完整性 正确性正确性 一致性一致性 可理解性可理解性 无歧义性无歧义性 可验证性可验证性 可修改性可修改性 获取需求的方法 需需求求分分析析至至今今仍仍是是公公认认为为的的软软件件开开发发中中最最为为困困难难、亟亟待待解解决决的的一一个个问问题题。软软件件项项目目中中40%60%的的问问题题都都是是在在需求阶段埋下的祸根!需求阶段埋下的祸根!1、存在问题、存在问题(1)对需求的理解问题。对需求的理解问题。(2)
10、分析人员与用户的通信问题。分析人员与用户的通信问题。(3)用户需求的可变性问题。用户需求的可变性问题。分析方法和分析工具问题。分析方法和分析工具问题。获取需求的方法2、常用方法常用方法(1)访谈)访谈:正式的和非正式的访谈正式的和非正式的访谈(2)问卷调查)问卷调查 问问卷卷调调查查即即把把需需要要调调查查的的内内容容制制成成表表格格交交给给用用户户填填写写。该该方法对需要调查大量人员的意见时,十分有效。方法对需要调查大量人员的意见时,十分有效。(3)情景分析)情景分析 情情景景分分析析就就是是对对目目标标系系统统解解决决某某个个具具体体问问题题的的方方法法和和结结果果给出可能的情景描述,以获
11、知用户的具体需求。给出可能的情景描述,以获知用户的具体需求。(4)实地考察)实地考察(5)构造原型)构造原型 需求规格说明书1、需求规格书明书的主体内容:、需求规格书明书的主体内容:1)概述概述:软件需求的简要说明:软件需求的简要说明2)界面描述界面描述:软件系统的实现环境:软件系统的实现环境3)模型分析模型分析:系统模型的形式规定、限制和说明:系统模型的形式规定、限制和说明4)质量评审要求质量评审要求5)其他其他 需求规格说明书2、需求规格书明书的基本要求:、需求规格书明书的基本要求:1 1)完整完整:考虑细致:考虑细致2 2)一致一致:前后内容一致:前后内容一致3 3)精确精确:数据、任务
12、要精确:数据、任务要精确4 4)无二义性无二义性:不提模棱两可的问题:不提模棱两可的问题5 5)符合标准符合标准:按国家、国际标准书写:按国家、国际标准书写6 6)易维护易维护:应便于修改:应便于修改 需求规格说明书3、主要负责人:分析员、主要负责人:分析员1 1)资历较高资历较高:要有概括能力、分析能力和社交活动能力。:要有概括能力、分析能力和社交活动能力。2 2)熟熟悉悉计计算算机机技技术术:要要有有一一定定的的计计算算机机硬硬件件和和软软件件系系统统的开发经验。的开发经验。3 3)对用户的相关业务了解对用户的相关业务了解:要能理解用户提出的要求。:要能理解用户提出的要求。4 4)发发挥挥
13、中中间间人人的的作作用用:要要善善于于在在用用户户和和软软件件开开发发机机构构之之间进行良好的联系工作。间进行良好的联系工作。需求规格说明书需求规格说明书的书写格式需求规格说明书的书写格式查看标准文档查看标准文档 结构化分析方法结构化分析方法数据流图数据字典加工逻辑描述工具结构化分析方法结构化分析方法结构化分析方法结构化分析方法:是是面向数据流面向数据流进行需求分析,进行需求分析,以结构化的方式进行系以结构化的方式进行系统分析的方法。适用于分析大型的数据处理系统。统分析的方法。适用于分析大型的数据处理系统。结构化分析方法结构化分析方法特点特点:利用利用数据流图数据流图来帮助人们理解问题,对问题
14、进行分析,来帮助人们理解问题,对问题进行分析,即利用即利用图形工具图形工具来模拟数据处理过程。来模拟数据处理过程。结构化分析方法结构化分析方法结构化分析方法结构化分析方法核心核心:核心是核心是数据流图数据流图。数据流图是一种用来。数据流图是一种用来表示信息流程表示信息流程和信息变换和信息变换过程的图解方法,它过程的图解方法,它将系统看成是由数据流联将系统看成是由数据流联系的各种功能的组合系的各种功能的组合。数据流图可以方便的描述用数据流。数据流图可以方便的描述用数据流的流动所联系的各种功能。通过各种功能的输入的流动所联系的各种功能。通过各种功能的输入/输出结输出结果果,表现现有系统或待开发系统
15、的功能。表现现有系统或待开发系统的功能。结构化分析方法结构化分析方法 此外,用此外,用数据字典数据字典定义数据流图中的各项数据;定义数据流图中的各项数据;结结构化英语(汉语)、判定树和判定表构化英语(汉语)、判定树和判定表对数据流图中的基对数据流图中的基本功能进行描述。通过将系统分解成多层处理后,在较本功能进行描述。通过将系统分解成多层处理后,在较低层次上,可以看到数据流图的高层次加工的细节和相低层次上,可以看到数据流图的高层次加工的细节和相关的数据流。关的数据流。结构化分析方法结构化分析方法 结构化分析方法的结构化分析方法的实质实质就是采用一就是采用一组分层的数据组分层的数据流图流图及相应的
16、数据字典作为系统的模型。及相应的数据字典作为系统的模型。结构化分析方法从结构化分析方法从总体总体上看是一种上看是一种强烈依赖数据流强烈依赖数据流的自顶向下的建模方法的自顶向下的建模方法,它不仅是需求分析技术,也是,它不仅是需求分析技术,也是完成规格说明文档的技术手段。完成规格说明文档的技术手段。结构化分析方法结构化分析方法 (structured analysis)数据字典数据字典数据流图数据流图结构化语言结构化语言判定表或判定树判定表或判定树表达系统内部表达系统内部数据的运动情数据的运动情况况结构化分析法使用的工具定义系统的定义系统的数据。数据。结构化分析方法结构化分析方法 (structu
17、red analysis)数据字典数据字典数据流图数据流图结构化语言结构化语言判定表或判定树判定表或判定树结构化分析法使用的工具结构化分析方法结构化分析方法 (structured analysis)数据字典数据字典数据流图数据流图结构化语言结构化语言判定表或判定树判定表或判定树结构化分析法使用的工具描述数据描述数据加工。加工。结构化分析方法结构化分析方法 (structured analysis)数据流图数据流图1、组成元素:四种基本图形符号、组成元素:四种基本图形符号 圆框圆框:表示从输入到输出的数据流中的一个:表示从输入到输出的数据流中的一个加工加工,在框内注,在框内注明加工的名称;明加
18、工的名称;方框方框:表示数据的源点或数据的汇点,即:表示数据的源点或数据的汇点,即外部实体外部实体,在框内,在框内注明实体的名称;注明实体的名称;箭头箭头:表示被加工数据的路径和流向,即:表示被加工数据的路径和流向,即数据流数据流,可用名词,可用名词和或名词性短语命名;和或名词性短语命名;双杠双杠:表示:表示数据存储数据存储,可以是一个记录或一个数据文件,可,可以是一个记录或一个数据文件,可用名词和或名词性短语命名。用名词和或名词性短语命名。结构化分析方法结构化分析方法 (structured analysis)加加工工是是对对数数据据执执行行某某种种操操作作或或变变换换,是是把把输输入入数数
19、据据流流变变成成输输出出数数据据流流的的一一种种变变换换。每每个个加加工工应应有有一一个个名名字字代代表表它它的的意意义义。分分层层的的DFDDFD中中每每个个加加工工还还应应进进行编号。行编号。加工加工结构化分析方法结构化分析方法 (structured analysis)源源点点和和终终点点是是代代表表系系统统之之外外的的人人、物物或或组组织织。它它们们发发出出或或接接受受系系统统的的数数据据,其其作作用用是是提提供供系系统统和和外外界界环环境境之之间间关关系系的的注注释释性性说说明明,说说明明数数据据的的来来龙龙去去脉脉,使数据流图更清晰。使数据流图更清晰。源点和终点源点和终点结构化分析
20、方法结构化分析方法 (structured analysis)数据流数据流描述描述DFD中各成分的接口。数据流的方向可以中各成分的接口。数据流的方向可以:从加工流向加工;从加工流向加工;从加工流向数据存储;从加工流向数据存储;从源点流向加工;从源点流向加工;从加工流向终点。从加工流向终点。数据流数据流:结构化分析方法结构化分析方法 (structured analysis)数据流的含义数据流的含义:(1)数数据据流流是是一一组组成成分分已已知知的的数数据据。可可以以是是一一个个数数据,也可以是一组数据。据,也可以是一组数据。(2)两个加工之间可以有多个数据流。)两个加工之间可以有多个数据流。(
21、3)数数据据流流应应有有良良好好的的命命名名,它它不不仅仅作作为为数数据据的的标标识,还有利于深化对系统的认识。识,还有利于深化对系统的认识。(4)同一数据流可流向不同加工,不同加工也可流)同一数据流可流向不同加工,不同加工也可流出相同的数据流。(合并与分解)。出相同的数据流。(合并与分解)。数据流数据流:结构化分析方法结构化分析方法 (structured analysis)(5)流入流入/流出数据存储的数据流不需要命名流出数据存储的数据流不需要命名。因为数。因为数据存储名已有足够的信息来表示数据流的意义。据存储名已有足够的信息来表示数据流的意义。(6)数据流)数据流不能是控制流不能是控制流
22、。数据流反映了处理的对象,。数据流反映了处理的对象,控制流是一种选择或用来影响加工的性质。控制流是一种选择或用来影响加工的性质。(7)数据流数据流不能是实物不能是实物,不能把现实环境中的实物名作,不能把现实环境中的实物名作为数据流名,软件只能处理数据,不能处理实物。为数据流名,软件只能处理数据,不能处理实物。数据流数据流:含控制流的例子含控制流的例子含实物的例子含实物的例子提货单提货单记帐记帐提货单提货单货物货物读入读入卡片卡片卡片卡片检验检验卡片数卡片数读下张卡片读下张卡片合法卡片合法卡片结构化分析方法结构化分析方法 (structured analysis)数数据据存存储储可可以以表表示示
23、文文件件、文文件件的的一一部部分分、数数据据库库的的元元素素或或记记录录的的一一部部分分等等。数数据据可可以以存存储储在在磁磁盘盘、磁磁带带、存存储储器器和和其其他他任任何何介介质质上上。应应对对数数据据文文件件进进行行命命名名。在在DFD中中应应注注意意指指向向数数据据文文件件的的箭箭头头的的方方向向(可可以是双向的)。以是双向的)。数据存储数据存储结构化分析方法结构化分析方法 (structured analysis)数据流图实例数据流图实例学生选课系统的数据流图学生选课系统的数据流图结构化分析方法结构化分析方法 (structured analysis)数据流图实例数据流图实例顾客顾客验
24、证验证订单订单图书目录文件图书目录文件顾客档案顾客档案汇总对汇总对各出版社各出版社的要求的要求订单订单待处理订单文件待处理订单文件出版社档案文件出版社档案文件正确订正确订单单一批一批订单订单订货存根文件订货存根文件出版社出版社对出版社对出版社的订单的订单图书预定系统的数据流图图书预定系统的数据流图结构化分析方法结构化分析方法 (structured analysis)2、数据流图的分层数据流图的分层 结构化控制复杂性的方法是结构化控制复杂性的方法是采用分层技术采用分层技术,用一套分层,用一套分层DFD来分解复杂性。分层体现了抽象和信息隐藏。来分解复杂性。分层体现了抽象和信息隐藏。一套分层一套分
25、层DFD图包括图包括顶层顶层DFD、中间层、中间层DFD和底层和底层DFD组成。组成。(1)父图和子图父图和子图 (2)分层图编号分层图编号(3)父图和子图的平衡性父图和子图的平衡性(4)局部文件局部文件 (5)分解度)分解度(3-4层、每层层、每层=7)结构化分析方法结构化分析方法 (structured analysis)S213FFFF2.22.32.42.13.23.13.3FDFD/L0DFD/L11.2F1.11.3DFD/L2.1DFD/L2.2DFD/L2.3分层数据流图分层数据流图顶层顶层0层层1层层返回结构化分析方法结构化分析方法 (structured analysis)
26、父图和子图的平衡父图和子图的平衡3.13.23.3NXPQST123ABMSCN父父图图子子图图返回结构化分析方法结构化分析方法 (structured analysis)局部文件局部文件123ABMSCN父父图图子子图图返回M3.13.23.4NXPQS3.3File结构化分析方法结构化分析方法 (structured analysis)数据流图的画法:数据流图的画法:基本原则:基本原则:数据流图中所使用的图形符号数据流图中所使用的图形符号有四种有四种;数据流图的数据流图的主图必须封闭在外部实体之间主图必须封闭在外部实体之间,实体可以有,实体可以有多个;多个;加工框至少有加工框至少有一个输入
27、数据流和一个输出数据流一个输入数据流和一个输出数据流;任何一个数据流子图必须与它的父图上的一个加工框对任何一个数据流子图必须与它的父图上的一个加工框对应,两者的输入应,两者的输入/输出数据流必须输出数据流必须保持平衡保持平衡;图中的每一个元素都必须图中的每一个元素都必须有名字有名字。结构化分析方法结构化分析方法 (structured analysis)不可在数据流图中夹带控制流和实物不可在数据流图中夹带控制流和实物;初画时,可初画时,可忽略一些细节忽略一些细节。注意:注意:画数据流图时,画数据流图时,不考虑初始化,暂不考虑出错路径不考虑初始化,暂不考虑出错路径等细节等细节,不画控制流和控制信
28、息。基本原则是,不画控制流和控制信息。基本原则是“先外后内先外后内”。结构化分析方法结构化分析方法 (structured analysis)画数据流图的画数据流图的步骤步骤:1、找外部实体找外部实体,找到外部实体即可确定系统与外部世界的,找到外部实体即可确定系统与外部世界的界面,也就可确定数据流源点和终(汇)点;界面,也就可确定数据流源点和终(汇)点;2、找出外部实体的、找出外部实体的输入和输出数据流输入和输出数据流;3、画出外部实体画出外部实体;4、从外部实体的输出流(源)出发,按照系统的逻辑需要,、从外部实体的输出流(源)出发,按照系统的逻辑需要,逐步画出一系列逻辑加工框逐步画出一系列逻
29、辑加工框,直至数据终点;,直至数据终点;5、按照一般原则进行、按照一般原则进行检查和修改检查和修改;6、按上述步骤画出所需的、按上述步骤画出所需的子图子图。数据流图举例数据流图举例 教学购销系统是某高校早期使用过的一个教材管理系统,教学购销系统是某高校早期使用过的一个教材管理系统,主要用于对计划供应教材的控制销售与补充采购。该系统主主要用于对计划供应教材的控制销售与补充采购。该系统主要具有以下功能。要具有以下功能。1、根据学校的教学计划,向选课的学生及时供应所需教材、根据学校的教学计划,向选课的学生及时供应所需教材审查学生(个人或班级)购书单的有效性,对有效单发售教材;审查学生(个人或班级)购
30、书单的有效性,对有效单发售教材;对属于计划供应但暂时缺货的教材进行缺书登记。对属于计划供应但暂时缺货的教材进行缺书登记。2、根据缺书登记补充采购所缺的教材,通知学生补购、根据缺书登记补充采购所缺的教材,通知学生补购将缺书登记表汇总为待购教材计划;将缺书登记表汇总为待购教材计划;待购教材到货后,及时通知学生补购。待购教材到货后,及时通知学生补购。请分层画出数据流图。请分层画出数据流图。顶层图顶层图第第0层图层图第第1层层 销售子系统销售子系统第第1层层 采购子系统采购子系统数据字典数据字典数据字典数据字典 数据字典数据字典是对数据流图上的每一个成分进行定义和说明的是对数据流图上的每一个成分进行定
31、义和说明的工具。工具。数据字典中有系统的详细信息,是以后进行系统设计数据字典中有系统的详细信息,是以后进行系统设计及维护的重要依据。及维护的重要依据。数据字典数据字典编写的基本要求编写的基本要求:1 1、对数据流图上的各种元素的定义必须明确,一致且易理解。、对数据流图上的各种元素的定义必须明确,一致且易理解。2 2、命名、编号应与数据流图一致。、命名、编号应与数据流图一致。3 3、对数据流图的成分定义与说明无遗漏,无同名异义,或异名、对数据流图的成分定义与说明无遗漏,无同名异义,或异名同义。同义。4 4、格式规范,文字精练,符号正确。、格式规范,文字精练,符号正确。数据字典数据字典数据字典定义
32、式中的符号数据字典定义式中的符号 符号符号 含义含义 举例举例 =被定义为被定义为 日期日期=年年+月月+日日 +与与 学生基本数据学生基本数据=学号学号+姓名姓名|或或 城市名城市名=北京北京|天津天津|上海上海 重复重复 帐目帐目=账号账号+户名户名 +款额款额+存期存期+地址地址 mn 重复重复 姓名姓名=4 字符字符 10 ()选择选择 登录信息登录信息=用户名用户名+(密码密码).连接符连接符 学号学号=“00001”.“99999”数据字典数据字典例例1:数据字典数据字典例例2:数据字典数据字典数据字典中的数据字典中的条目条目包括包括5 5种形式:种形式:1 1、数据项数据项:数据
33、处理中基本的不可分割的逻辑单位(如学号等):数据处理中基本的不可分割的逻辑单位(如学号等)。2 2、数据流数据流:定义数据流图中的数据流,包括名字、编号、来源去向、:定义数据流图中的数据流,包括名字、编号、来源去向、数据组成等。数据组成等。3 3、数据存储数据存储:说明存储文件的名称、编号、组成、记录数等。:说明存储文件的名称、编号、组成、记录数等。4 4、处理功能处理功能:说明加工的名称、编号、激活条件、加工逻辑概括描述:说明加工的名称、编号、激活条件、加工逻辑概括描述等。等。5 5、外部实体外部实体:说明外部实体的名称、编号,输入:说明外部实体的名称、编号,输入/输出数据流等。但输出数据流
34、等。但由于源点和汇点不在系统之内,可以不描述。由于源点和汇点不在系统之内,可以不描述。数据字典数据字典数据流条目举例:数据流条目举例:数据字典数据字典数据项条目举例:数据项条目举例:数据字典数据字典文件条目举例:文件条目举例:加工逻辑描述工具加工逻辑描述工具结构化语言:结构化语言:用自然语言描述加工逻辑,是一种最自然的方法。但自然语言有用自然语言描述加工逻辑,是一种最自然的方法。但自然语言有不精确、容易产生二义性等问题。因此在自然语言上增加一些限制,不精确、容易产生二义性等问题。因此在自然语言上增加一些限制,形成形成半形式化语言半形式化语言。结构化语言在自然语言的基础上发展了。结构化语言在自然
35、语言的基础上发展了3 3种规范化种规范化的语言表达方式。的语言表达方式。三种基本控制结构:(三种基本控制结构:(P59P59)简单陈述结构:自然语言,一般用祈使句简单陈述结构:自然语言,一般用祈使句 判定结构判定结构:IF_THEN_ELSEIF_THEN_ELSE或或CASECASE结构结构 重复结构:重复结构:FORFOR或或REPEAT_UNTILREPEAT_UNTIL结构结构处理名:核实订票处理处理名:核实订票处理编号:编号:3.2激活条件:收到订票信息激活条件:收到订票信息处理逻辑:处理逻辑:1 读订票旅客信息文件读订票旅客信息文件 2 搜索此文件中是否有与信息中姓名及身份证号相符
36、的项搜索此文件中是否有与信息中姓名及身份证号相符的项 IF 有有 THEN 判断余项是否与文件中信息相符判断余项是否与文件中信息相符 IF 是是 THEN 输出已订票信息输出已订票信息 ELSE 输出未订票信息输出未订票信息 ELSE 输出未订票信息输出未订票信息执行频率:实时执行频率:实时 核实订票处理说明核实订票处理说明加工逻辑描述工具加工逻辑描述工具处理名:月票额统计处理处理名:月票额统计处理编号:编号:7.1.3激活条件:收到每日售票额信息激活条件:收到每日售票额信息处理逻辑:处理逻辑:1 统计月保险金总和统计月保险金总和 月保险金信息月保险金信息=日保险金信息之和日保险金信息之和 2
37、 统计月合计统计月合计 月合计信息月合计信息=日合计信息之和日合计信息之和执行频率:执行频率:1次次/月月 月票额统计处理说明月票额统计处理说明加工逻辑描述工具加工逻辑描述工具判定表:判定表:在某些数据处理问题中,处理过程需要在某些数据处理问题中,处理过程需要依赖于多个逻辑依赖于多个逻辑条件条件的取值,这些取值可能构成多种不同的情况,相应执行的取值,这些取值可能构成多种不同的情况,相应执行不同的动作。这类问题适合使用不同的动作。这类问题适合使用判定树或判定表判定树或判定表作为描述加作为描述加工小说明的工小说明的补充工具补充工具。判定表判定表为说明复杂的决策逻辑提供了一种描述机制,它为说明复杂的
38、决策逻辑提供了一种描述机制,它以一种形式化的以一种形式化的表格表格为基础。为基础。加工逻辑描述工具加工逻辑描述工具判定表通常由四部分组成:判定表通常由四部分组成:(1)基本条件区基本条件区:列出所有可能的条件,通常这些条件的:列出所有可能的条件,通常这些条件的次序无关;次序无关;(2)基本动作区基本动作区:列出所有可能采取的动作,通常次序无:列出所有可能采取的动作,通常次序无关;关;(3)条件组合区条件组合区:各种条件给出的多种取值,即多个条件:各种条件给出的多种取值,即多个条件所取真假值的组合。所取真假值的组合。(4)执行动作区执行动作区:和条件项紧密相关,指出在各种条件的:和条件项紧密相关
39、,指出在各种条件的特定取值下应采取的动作。特定取值下应采取的动作。任何一个条件取值组合及其相应要执行的动作,称为任何一个条件取值组合及其相应要执行的动作,称为规则规则(在判定表中贯穿条件项和动作项一列)。(在判定表中贯穿条件项和动作项一列)。加工逻辑描述工具加工逻辑描述工具 基本条件区基本条件区 条件的组合条件的组合 基本动作基本动作区区 执行的动作执行的动作 加工逻辑描述工具加工逻辑描述工具 BEGIN 输入学生成绩纪录输入学生成绩纪录 REPEAT IF 总分总分 600分分 THEN IF 单科成绩不合格单科成绩不合格 THEN 发升级通知书发升级通知书 AND 发重修单科通知书发重修单
40、科通知书 ELSE 发升级通知书发升级通知书 ELSE IF 单科成绩有满分单科成绩有满分 THEN 发留级通知书发留级通知书 AND 发免修单科通知书发免修单科通知书 ELSE 发留级通知书发留级通知书 UNTIL 学生成绩记录处理结束学生成绩记录处理结束END例:学生升留级处理逻辑说明如下,试用判定表表示各条件与动作间的关系。例:学生升留级处理逻辑说明如下,试用判定表表示各条件与动作间的关系。加工逻辑描述工具加工逻辑描述工具考试总分考试总分600600600600600600600600600600600600单科满分单科满分有有有有无无无无有有有有无无无无单科不及格单科不及格有有无无有有
41、无无有有无无有有无无发升级通知书发升级通知书YYYYNNNN发单科免修通发单科免修通知书知书NNNNYYNN发留级通知书发留级通知书NNNNYYYY发单科重修通发单科重修通知书知书YNYNNNNN加工逻辑描述工具加工逻辑描述工具考试总分考试总分600600600600600600单科满分单科满分-有有无无单科不及格单科不及格有有无无-发升级通知书发升级通知书YYNN发单科免修通知发单科免修通知书书NNYN发留级通知书发留级通知书NNYY发单科重修通知发单科重修通知书书YNNN加工逻辑描述工具加工逻辑描述工具构造步骤:构造步骤:1、计算所有可能的条件组合,确定规则个数,、计算所有可能的条件组合,
42、确定规则个数,通常通常N个条件,最多可以有个条件,最多可以有2N个条件组合数。个条件组合数。2、列出所有的基本条件和基本动作。、列出所有的基本条件和基本动作。3、对每一种状态找出所有的条件,填入条件项。、对每一种状态找出所有的条件,填入条件项。4、对每一种规则指定动作,填入动作项、对每一种规则指定动作,填入动作项。加工逻辑描述工具加工逻辑描述工具判定树:判定树:是判定表的一种变化,它是一种是判定表的一种变化,它是一种树状树状的图形工具,适合的图形工具,适合于描述处理中具有多种策略,要根据若干条件来确定所需采于描述处理中具有多种策略,要根据若干条件来确定所需采用策略的情况。用策略的情况。判定树的
43、优点是清晰、直观,但当条件多,而且互相组判定树的优点是清晰、直观,但当条件多,而且互相组合时,不容易清楚地表达判断过程。合时,不容易清楚地表达判断过程。加工逻辑描述工具加工逻辑描述工具升留级升留级处理逻处理逻辑辑考试总考试总分分600600考试总考试总分分600单单科科无无不不及及格格发发升升级通知书级通知书单单科科有有不不及及格格发发升升级级通通知知书书、发发单单科科重重修修通通知知书书单单科科有有满满分分发发留留级级通通知知书书、发单科重修通知书发单科重修通知书单单科科无无满满分分发发留留级级通通知书知书加工逻辑描述工具加工逻辑描述工具举例举例例:某考务处理系统具有以下功能:例:某考务处理
44、系统具有以下功能:1、输入报名单2、自动编制准考证号3、输出准考证4、输入成绩清单5、输出成绩通知单6、输出成绩分布表7、输入合格标准、输出录取通知单8、试题难度分析,并输出试题难度分析表这这里里给给出出了了实实现现上上述述要要求求的的部部分分不不完完整整的的数数据据流流程程图图,其其中中部部分分数数据据流流的的组成如下所示:组成如下所示:报名单=报名号+姓名+通讯地址考生名册=报名号+准考证号+姓名+通信地址成绩册=准考证号+课程号+成绩准考证=报考名+姓名+准考证号举例举例问题问题1:指出0层图中可以删去的部分。问题问题2:在加工1子图中将遗漏的数据流添加上去。问题问题3:加工2子图分解成
45、图中所示的4个子加工及相关的文件(即数据存储)。试在此基础上将相关的DFD成分添加上去,使得加工子图完整。举例举例考务处理系统考务处理系统阅卷站阅卷站考试中心考试中心考考 生生录录取取通通知知单单成成绩绩通通知知单单报报名名单单不不合合格格报报名名单单准准考考证证不合格成绩单不合格成绩单成绩清单成绩清单成绩分布表成绩分布表合格标准合格标准试题难度分析表试题难度分析表顶层图顶层图举例举例0层图层图2成绩处理成绩处理 考生名册考生名册1报名处理报名处理不合格报名单不合格报名单报名单报名单准考证准考证成绩册成绩册不不合合格格成成绩绩单单成成绩绩清清单单合合格格标标准准成绩分布表成绩分布表试题难度分析
46、表试题难度分析表录取通知书录取通知书成绩通知单成绩通知单举例举例加工加工1子图子图1.2编制准编制准考证号考证号 考生名册考生名册1.1检查报检查报名单名单不合格报名单不合格报名单合格报名单合格报名单举例举例加工加工2子图子图成绩清单成绩清单试题难度分析表试题难度分析表成绩通知单成绩通知单2.2制作成绩制作成绩通知单通知单 考生名册考生名册2.1成绩清单成绩清单录入录入2.3制作录取制作录取通知单通知单2.4试题难度试题难度分析分析 成绩册成绩册不合格成绩单不合格成绩单合格标准合格标准录取通知书录取通知书软件分析模型:软件分析模型:功能模型功能模型数据模型数据模型行为模型行为模型行为模型功能模
47、型数据模型状态图数据流图实体关系图数据字典软件需求建模软件需求建模 功能模型可以用功能模型可以用数据流图数据流图描述,所以也描述,所以也称称数据流模型数据流模型。数据流模型描绘。数据流模型描绘信息流和数信息流和数据据从输入到输出,以及被加工处理(变换)从输入到输出,以及被加工处理(变换)的过程,人们常用数据模型和数据流模型来的过程,人们常用数据模型和数据流模型来描述系统的信息结构。描述系统的信息结构。功能模型功能模型数据模型数据模型 为为了了把把用用户户的的数数据据要要求求清清楚楚、准准确确地地描描述述出出来来,系系统统分分析析员员通通常常要要建建立立一一个个概概念念性性的的数数据据模模型型。
48、它描述了从。它描述了从用户的角度用户的角度看到的数据。看到的数据。通通常常,使使用用实实体体-联联系系图图来来建建立立数数据据模模型型,可可以把实体以把实体-联系图简称联系图简称ER图图。数据模型数据模型 ER图图中中包包含含了了实实体体(即即数数据据对对象象)、关关系系和和属性属性等等3种基本成分。种基本成分。通通常常用用矩矩形形框框代代表表实实体体,用用连连接接相相关关实实体体的的菱菱形形框框表表示示关关系系,用用椭椭圆圆形形或或圆圆角角矩矩形形表表示示实实体体或或关关系系的的属属性性,并并用用直直线线把把实实体体(或或关关系系)与与其其属性连接起来。属性连接起来。数据模型数据模型举例:举
49、例:在分析模型中,有些加工并非是数据来触发的,而是由实时发生的事件来触发的,传统的数据流图已经无法表示,因为实时控制系统很少有数据输入,主要是事件驱动的。用由状态图表示的行为模型是最有效的描述方式,行为模型在实时系统的分析及设计中,发挥了很大的优势。行为模型行为模型 状态图(状态转换图)用来描述行为模型,行为模型也称状态机模型,通过描述系统的状态以及引起状态转换的事件来表示系统的行为。状态图有事件、状态、行为等基本元素。事件是引起状态转换的控制信息,它发生在某个特定的时刻,引起系统从一个状态转换到另一个状态。行为模型行为模型行为模型(举例)行为模型(举例)行为模型(举例)行为模型(举例)Vis
50、io 简介简介 Visio Visio 20032003是是微微软软公公司司推推出出的的强强大大绘绘图图软软件件。Visio功能全面,使用灵活,可应用于软件、机械、电子、建筑、管理、通信等广泛领域,使专业人员和管理人员能够快捷灵活地制作各种图片,例如图表、数据流图、流程图、网络布线示意图、管理机构图等等。Visio是目前计算机绘图软件中较为实用且技术性较强的软件,它为用户提供了各种专业绘图模板,数量相当丰富,用户一般只要从模板中找到相应图形,稍加修改和设置就可以应用了。Visio 界面界面作业作业邮寄包裹收费标准如下:邮寄包裹收费标准如下:若若收收件件点点在在1000公公里里以以内内,普普通通