第三讲需求分析与建模.ppt

上传人:石*** 文档编号:49683745 上传时间:2022-10-09 格式:PPT 页数:80 大小:6.02MB
返回 下载 相关 举报
第三讲需求分析与建模.ppt_第1页
第1页 / 共80页
第三讲需求分析与建模.ppt_第2页
第2页 / 共80页
点击查看更多>>
资源描述

《第三讲需求分析与建模.ppt》由会员分享,可在线阅读,更多相关《第三讲需求分析与建模.ppt(80页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第三讲需求分析与建模现在学习的是第1页,共80页内容v需求分析概述v结构化需求分析方法v面向对象需求分析方法现在学习的是第2页,共80页分类筛选分类筛选合并合并排序排序需求分析的过程需求分析的过程现在学习的是第3页,共80页需求分析成功的条件需求分析成功的条件乙方正确的乙方正确的方法论方法论甲方明确的甲方明确的建设目标建设目标现在学习的是第4页,共80页需求分析需求分析 分析什么?分析什么?v业务流程优化业务流程优化v关键问题关键问题v结构化分析法结构化分析法v面向对象分析法面向对象分析法怎么分析?怎么分析?现在学习的是第5页,共80页系统建模系统建模v系统模型描述了系统的某个特殊方面,在需求

2、文档系统模型描述了系统的某个特殊方面,在需求文档中对自然语言描述的系统需求加入补充信息。中对自然语言描述的系统需求加入补充信息。v系统模型的界定系统模型的界定v需求规格说明中应该包含的高层次的模型需求规格说明中应该包含的高层次的模型表示系统运行环境的模型表示系统运行环境的模型说明系统如何分解为子系统的体系结构模型说明系统如何分解为子系统的体系结构模型v系统建模需要注意的事项系统建模需要注意的事项现在学习的是第6页,共80页需求分析前的工作v需求(系统)分析与建模理解真实世界中的问题和用户的需要并提出满足这些需要的解决方案的过程。v分析前的准备确认系统的参与者确认系统的运行环境确认系统的约束现在

3、学习的是第7页,共80页内容v需求分析概述v结构化需求分析方法v面向对象需求分析方法现在学习的是第8页,共80页需求分析与建模结构化方法v结构化方法是一种系统分析和设计的方法,包括定义、开发和确认系统模型过程中用到的表示法、指南和规则。v功能需求分析与建模方法功能需求说明数据的用途,以及如何记录、计算、转换、修改及传输数据等。v数据需求分析与建模方法数据需求指定系统的存储数据现在学习的是第9页,共80页结结结结构构构构化化化化开开开开发发发发方方方方法法法法(Structured Structured Developing Developing MethodMethod)是是现现有有的的软软件

4、件开开发发方方法法中中最最成成熟熟、应应用用最最广广泛泛的的方方法法,主主要要特特点点是是快快速速、自自然然和和方方便便。结结构构化化开开发发方方法法由由结结构构化化分分析析方方法法(SA法法)、结结构构化化设设计计方方法法(SD法法)及及结结构构化化程程序设计方法(序设计方法(SP法)构成的。法)构成的。结结构构化化分分析析方方法法是是面面向向数数据据流流的的需需求求分分析析方方法法,是是20世世纪纪70年年代代末末由由Yourdon,Constaintine及及DeMarco等等人人提提出出和和发发展展,并并得得到到广广泛泛的的应应用用。它它适适合于分析大型的数据处理系统,特别是企事业管理

5、系统。合于分析大型的数据处理系统,特别是企事业管理系统。SA法法也也是是一一种种建建模模的的活活动动,主主要要是是根根据据软软件件内内部部的的数数据据传传递递、变变换换关关系系,自顶向下逐层分解,描绘出满足功能要求的软件模型。自顶向下逐层分解,描绘出满足功能要求的软件模型。结构化分析方法现在学习的是第10页,共80页 分分解解:对对于于一一个个复复杂杂的的系系统统,为为了了将将复复杂杂性性降降低低到到可可以以掌掌握握的的程程度度,可可以以把把大大问问题题分分解解成成若若干干小小问问题题,然然后后分别解决(如右图)。分别解决(如右图)。结构化分析方法的基本思想是结构化分析方法的基本思想是“分解分

6、解”和和“抽象抽象”。抽抽象象:分分解解可可以以分分层层进进行行,即即先先考考虑虑问问题题最最本本质质的的属属性性,暂暂把把细细节节略略去去,以以后后再再逐逐层层添添加加细细节节,直直至至涉涉及及到到最最详详细细的的内内容容,这这种种用用最最本本质质的的属属性性表表示示一一个个系系统统的的方方法法就是就是“抽象抽象”。1.11.21.3x2132.12.22.31.11.3SA法的基本思想法的基本思想现在学习的是第11页,共80页需求分析的方法需求分析的方法v绘制系统关联图绘制系统关联图 v创建用户接口原型创建用户接口原型 v分析需求可行性分析需求可行性 v确定需求的优先级别确定需求的优先级别

7、 v为需求建立模型为需求建立模型(模型包括数据流图、实体关系图、模型包括数据流图、实体关系图、状态变换图、对话框图、对象类及交互作用图状态变换图、对话框图、对象类及交互作用图)v创建数据字典创建数据字典 v使用质量功能调配使用质量功能调配 现在学习的是第12页,共80页需求分析方法(细节)v采用SRS模板v指明需求的来源v为每项需求注上标号v记录业务规范v创建需求跟踪能力矩阵v审查需求文档v以需求为依据编写测试用例v编写用户手册v确定合格的标准。现在学习的是第13页,共80页分析1:定义系统的边界v评估原始需求,定义将要开发的计算机系统的边界。确定哪些是系统需求哪些是和系统相关的操作过程的需求

8、哪些在系统范围之外的需求v原则现在学习的是第14页,共80页分析分析2:系统环境建模系统环境建模v环境模型是系统将要使用的语境模型,应该是最先开环境模型是系统将要使用的语境模型,应该是最先开发的系统模型之一。发的系统模型之一。v效益:记录必须说明接口的外部系统效益:记录必须说明接口的外部系统v模型包括:模型包括:和正在说明的系统直接交互的其他系统和正在说明的系统直接交互的其他系统其他有可能和本系统共存并发生交互的系统其他有可能和本系统共存并发生交互的系统系统所在的业务过程(定义涉及的行为、它们的输入和输系统所在的业务过程(定义涉及的行为、它们的输入和输出、负责这些过程的人以及支持这些过程的软件

9、)出、负责这些过程的人以及支持这些过程的软件)现在学习的是第15页,共80页系统环境建模-上下文图v作用:上下文图能很好地概括产品的必要接口,初步确新产品包含了哪些内容,产品之外又包含哪些内容。即说明产品及其环境的图示说明产品的范围v优点:上下文图为开发人员概括了所有的接口,在开发中或开发后,方便地验证是否已处理了所有接口用户能不费力地理解上下文图,并发现遗漏的接口。现在学习的是第16页,共80页系统环境建模案例v邮件传阅系统环境建模企业OA办公系统图书管理系统操作管理员一般工作人员现在学习的是第17页,共80页分析3:系统体系结构建模v效益体系结构模型有助于划分系统需求体系结构模型说明了系统

10、功能的概况体系结构模型有助于需求工程师找出那些涉及多个子系统的需求v体系结构模型描述方式-方框图现在学习的是第18页,共80页系统体系结构“标准”模式v客户机-服务器通用服务器提供共享的系统功能v分层系统系统功能通过调用更低层次所提供的功能来实现v基于库的系统子系统通过一个共享库进行通信v管道系统系统中的每个部件都进行一定的计算,并将结果传给其他部件以进行进一步的操作现在学习的是第19页,共80页体系结构建模举例现在学习的是第20页,共80页分析分析4:开发互补的系统建模开发互补的系统建模v互补的系统模型可以解释系统规格说明的不同方面。互补的系统模型可以解释系统规格说明的不同方面。系统模型用来

11、表达系统规格说明的行为视图或者结系统模型用来表达系统规格说明的行为视图或者结构视图。构视图。v系统模型的例子系统模型的例子数据处理模型数据处理模型组合模型组合模型分类模型分类模型刺激刺激-响应模型响应模型过程模型过程模型现在学习的是第21页,共80页分析5:事件列表与功能列表v事件就是要求系统执行某项功能的请求v业务事件与产品事件v对复杂的业务任务采用任务说明、用例说明或数据流图等方法进行解释。v对复杂的功能采用数据流图、算法描述、活动图、数学说明等进行解释现在学习的是第22页,共80页事件列表与功能列表(续)v事件及功能列表的优点主要作为核对清单,以说明应开发什么。而其中对这些功能的详细说明

12、构成了功能需求的主要部分开发人员可以方便的检查产品是否实现每一个功能用户能够在某种程度上确认业务事件和任务列表v通过一致性检查确定列表是否完备现在学习的是第23页,共80页功能需求举例-活动图现在学习的是第24页,共80页分析6:数据需求v数据模型v数据流图(状态图、活动图)v数据字典v虚拟窗口(原型界面)现在学习的是第25页,共80页数据需求数据模型v数据模型说明了系统所要存储的数据以及数据之间的关系v提供了对数据的高级“体系结构”视图,也可以描述信息的细节。v模型:E-R模型、概念模型v数据模型的优缺点现在学习的是第26页,共80页数据需求数据模型现在学习的是第27页,共80页数据流图数数

13、据据流流图图(Data Data Flow Flow DiagramDiagram,DFDDFD)是是描描述述系系统统中中数数据据流流程程的的图图形形工工具具,它它标标识了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换为逻辑输出所需的加工处理。识了一个系统的逻辑输入和逻辑输出,以及把逻辑输入转换为逻辑输出所需的加工处理。数据存储数据存储数据源点数据源点或终点或终点加加工工加工名数据流数据流数据流名文件名实体名箭箭 头头圆或椭圆圆或椭圆单或双杠单或双杠矩形框矩形框还有一些辅助的图例还有一些辅助的图例:一、数据流图的图符一、数据流图的图符四种基本图形符号:四种基本图形符号:TAB*CTAB*CT

14、AB+CTAB+CTABC+TABC+*与与+或或互斥+现在学习的是第28页,共80页顾顾客客出出版版社社验证验证订单订单汇总汇总订单订单订单图书目录文件图书目录文件顾客档案顾客档案待处理订单文件待处理订单文件正确订单一批订单出版社档案文件出版社档案文件出版社 订单订货存根文件订货存根文件举例:图书预订系统举例:图书预订系统画图步骤画图步骤 :1 1、确定外部实体(顾客、出版社)及输入、输出数据流(订单、出版社订单)。、确定外部实体(顾客、出版社)及输入、输出数据流(订单、出版社订单)。2 2、确定分解顶层的加工(验证订单、汇总订单)。、确定分解顶层的加工(验证订单、汇总订单)。3 3、确定使

15、用的文件(图书目录文件、顾客档案等、确定使用的文件(图书目录文件、顾客档案等5 5个文件)。个文件)。4 4、用数据流将各部分连接起来,形成数据封闭。、用数据流将各部分连接起来,形成数据封闭。加工和文件还有 其他一些图例:加 工加工名编号加工名编号文件名文件名文 件注意:标注各加工框及数据流名称。注意:标注各加工框及数据流名称。现在学习的是第29页,共80页经过初步的需求分析,得到系统功能要求:经过初步的需求分析,得到系统功能要求:1 1、监视病员的病症(血压、体温、脉搏等)。、监视病员的病症(血压、体温、脉搏等)。2 2、定时更新病历。、定时更新病历。3 3、病员出现异常情况时报警。、病员出

16、现异常情况时报警。4 4、随机地产生某一病员的病情报告。、随机地产生某一病员的病情报告。实例:医院病房监护系统实例:医院病房监护系统产生产生病情报告病情报告监视病情监视病情更新病历更新病历现在学习的是第30页,共80页监护系统分层监护系统分层监护系统分层监护系统分层DFDDFDDFDDFD图图图图病员病员护士护士护士护士病员监病员监护系统护系统病员病员日志日志病症信号病症信号要求报告要求报告病症病症报告报告报警报警顶顶 层层医院病房监护系统分层医院病房监护系统分层医院病房监护系统分层医院病房监护系统分层DFDDFDDFDDFD图图图图顶层确定了系统的范围,其外部实体为病员和护士。顶层确定了系统

17、的范围,其外部实体为病员和护士。护士护士病员病员护士护士医院病房监护系统顶层现在学习的是第31页,共80页 监护系统分层监护系统分层监护系统分层监护系统分层DFDDFDDFDDFD图图图图计算超过计算超过极限值否极限值否病员数据超过极限值报警开解信号开解信号产生产生报警信息报警信息病员极限病员极限格式化格式化病员数据病员数据体温血压、体温、脉搏生理信号极限值时间脉搏血压日期时钟时钟格式化病员数据3.13.23.23.33.33.43.4第二层:加工第二层:加工“中央监视中央监视”分解分解医院病房监护系统分层医院病房监护系统分层医院病房监护系统分层医院病房监护系统分层DFDDFDDFDDFD图图

18、图图第一层第一层格式化格式化病员数据病员数据生理信号生理信号极限值极限值病员病员护士护士护士护士中央监视中央监视病员病员日志日志病症信号病症信号要求报告要求报告病症病症报告报告报警报警局部监视局部监视生成报告生成报告病员极限病员极限更新日志更新日志病员病员数据数据1324日志数据日志数据第第一一层层分分解解为为局局部部监监视视、生生成成报报告告、中中央央监监视视、更更新新日日志志4 4个个加加工工。这这层层的的分分解解是是关键。关键。以以4 4个个加加工工中中最最重重要要的的加加工工“中中央央监监视视”为例,进行第二层分解。为例,进行第二层分解。现在学习的是第32页,共80页数据流图的用处v系

19、统分析员用这种工具可以自顶向下分析系统信息流程;v可在图上划出需要计算机处理的部分和需要修改的部分;v根据逻辑存储,进一步作数据分析,向数据库数据过渡;v根据数据流向,定出存取方式;v对应一个处理过程,用相应的语言,判定表等工具来表达处理方法。现在学习的是第33页,共80页数据需求数据字典v数据字典是一个系统组织的、叙述性的数据说明 v效益保证名字使用的一致性,避免名字重复使用和误解。有助于提高系统需求、设计和实现维护过程中的可跟踪性。现在学习的是第34页,共80页数据需求数据字典(续)v数据字典应具有的信息模型中的实体的名字名字的别名或其它变体命名的实体类型命名实体和为何将它引入系统模型的描

20、述对于命名实体的约束指向相关实体的联接现在学习的是第35页,共80页分分层层数数据据流流图图只只是是表表达达了了系系统统的的“分分解解”,为为了了完完整整地地描描述述这这个个系系统统,还还需需借借助助“数据词典数据词典”(data dictionary)(data dictionary)和和“小说明小说明”对图中的每个数据和加工给出解释。对图中的每个数据和加工给出解释。对对数数据据流流图图中中包包含含的的所所有有元元素素的的定定义义的的集集合合构构成成了了数数据据词词典典。它它有有四四类类条条目目:数数据据流流、数数据据项项、文文件件及及基基本本加加工工。在在定定义义数数据据流流或或文文件件时

21、时,使使用用表表2-12-1给给出出的的符符号号。将将这这些些条条目目按按照照一一定定的规则组织起来,构成的规则组织起来,构成数据词典。数据词典。数据词典(数据词典(DDDD)表表 2 2-1 1X=1 8 表示表示X可取可取1到到8中的任意一个值中的任意一个值连接符连接符 X=“a”表示表示X是取值为字符是取值为字符a 的数据元素的数据元素基本数据元素基本数据元素“”X=(a)表示表示 a 可在可在X中出现,也可不出现中出现,也可不出现可选可选()X=2a6 或或 x=a 表示重复表示重复25次次 a 重复重复mn或或X=a 表示表示X由由 0个或多个个或多个 a 组成组成重复重复X=a|b

22、 表示表示X由由 a或或 b组成组成或或|X=a+b 表示表示X由由a 和和 b 组成组成与与+被定义为被定义为=例及说明例及说明含含 义义符符 号号Nm62现在学习的是第36页,共80页数据流条目数据流条目 给出了给出了DFDDFD图中数据流的定义,通常列出该数据流的各组成数据项。图中数据流的定义,通常列出该数据流的各组成数据项。例例如如,数数据据流流“乘乘客客名名单单”由由若若干干“乘乘客客姓姓名名”、“单单位位名名”和和“等等级级”组成,则词典中的组成,则词典中的“乘客名单乘客名单”条目是:条目是:乘客名单乘客名单 乘客姓名单位名等级乘客姓名单位名等级 又如,报名单姓名单位名年龄性别课程

23、名又如,报名单姓名单位名年龄性别课程名 数据词典类型数据词典类型加工条目加工条目加工条目就是加工条目就是“加工小说明加工小说明”。一般应单独列出。一般应单独列出。数据项条目数据项条目给出某个数据单项的定义,通常是该数据项的值类型、允许值等。给出某个数据单项的定义,通常是该数据项的值类型、允许值等。例如:账号例如:账号=00000 99999=00000 99999;存款期存款期=1|3|5 =1|3|5 (单位:年)(单位:年)文件条目文件条目 给给出出某某个个文文件件的的定定义义,文文件件的的定定义义通通常常是是列列出出文文件件记记录录的的组组成成数数据据流流。例如,某销售系统的订单文件:例

24、如,某销售系统的订单文件:订单文件订单编号顾客名称产品名称订货数量交货日期订单文件订单编号顾客名称产品名称订货数量交货日期现在学习的是第37页,共80页加工逻辑说明加工逻辑说明 对对数数据据流流图图中中每每一一个个不不能能再再分分解解的的基基本本加加工工都都必必须须有有一一个个加加工工小小说说明明给给出出这这个个加加工工的的精精确确描描述述。小小说说明明中中应应精精确确地地描描述述加加工工的的激激发发条条件件、加加工工逻逻辑辑、优优先先级级、执执行行频频率率和和出出错错处处理理等等。加加工工逻逻辑辑是是其其中中最最基基本本的的部部分分,是是指指用用户户对对这这个个加加工工的的逻逻辑辑要求。要求

25、。对基本加工说明有对基本加工说明有三种描述方式:结构化语言,判定表,判定树。三种描述方式:结构化语言,判定表,判定树。一、一、结构化语言结构化语言结结构构化化语语言言是是介介于于自自然然语语言言和和形形式式语语言言之之间间的的一一种种半半形形式式语语言言,它它是是自自然然语语言言的的一一个个受受限限制制的的子子集集。一一般般分分为为两两层层结结构构:外外层层语语法法较较具具体体,为为控控制制结结构构(顺序、选择、循环)(顺序、选择、循环),内层较灵活,表达内层较灵活,表达“做什么做什么”。例如:外层可为以下结构:例如:外层可为以下结构:1 1、顺序结构、顺序结构 2 2、选择结构、选择结构 I

26、FIFTHEN-ELSE;CASE-OF-ENDCASETHEN-ELSE;CASE-OF-ENDCASE;3 3、循环结构、循环结构 WHILE-DO;REPEAT-UNTILWHILE-DO;REPEAT-UNTIL现在学习的是第38页,共80页例二例二 “确定能否供货确定能否供货”的加工逻辑:根据库存记录的加工逻辑:根据库存记录IF IF 订单项目的数量订单项目的数量 该项目库存量的临界值该项目库存量的临界值 THEN THEN 可供货处理可供货处理 ELSE ELSE 此订单缺货,登录,待进货后再处理此订单缺货,登录,待进货后再处理ENDIFENDIF例一例一 根据当前流动资金值确定贬

27、值数。根据当前流动资金值确定贬值数。IF the CurrentIF the CurrentCapitalCapitalValue is less then$1000Value is less then$1000 Then Then Set Depreciated Set DepreciatedAmount to CurrentAmount to CurrentCapitalCapitalValue.Value.Set Current Set CurrentCapitalCapitalValue to zero.Value to zero.Otherwise Otherwise Set Dep

28、reciated Set DepreciatedAmount to 10%of CurrentAmount to 10%of CurrentCapitalCapitalValue.Value.Reduce Current Reduce Current Capital-Value by 10%.Capital-Value by 10%.一、结构化语言一、结构化语言结构化语言特点结构化语言特点:简单,易学,少二义性。不好处理组合条件。简单,易学,少二义性。不好处理组合条件。结构化语言举例结构化语言举例现在学习的是第39页,共80页判判定定表表是是一一种种二二维维的的表表格格,常常用用于于较较复复杂

29、杂的的组组合合条条件件(与与结结构构化化语语言言比比较较),通常由四部分组成。,通常由四部分组成。判定表判定表判定表判定表判定表的特点:判定表的特点:可处理较复杂的组合条件,但不易理解可处理较复杂的组合条件,但不易理解.不易输入计算机。不易输入计算机。条件框条件框 条件定义。条件定义。操作框操作框 操作的定义。操作的定义。条件条目条件条目 各条件的取值及组合。各条件的取值及组合。操作条目操作条目 在各条件取值组合下所执行的操作。在各条件取值组合下所执行的操作。条件框 条件条目 操作框 操作条目例如例如:对商店每天的营业额所收税率对商店每天的营业额所收税率营业额X()1000X50005000

30、X 10001000元元 10001000元元 正常处理正常处理 20 20年年 优惠处理优惠处理 20 20年年 正常处理正常处理如上例如上例判定树判定树判定树判定树现在学习的是第42页,共80页数据需求虚拟窗口v虚拟窗口是理想化的屏幕图像,形同真实的屏幕图像,但不具备功能或菜单。v虚拟窗口的目的。v虚拟窗口的优缺点。现在学习的是第43页,共80页需求分级v关注最重要的需求划分优先级可以帮助项目相关人员判断系统的核心需求需求优先级之间明显的 关联可以帮助设计者决定系统体系结构,还可以帮助解决可能发生的设计冲突现在学习的是第44页,共80页使用多维方法进行需求分级v效益需求分级是发现需求之间的

31、共性和例外关系的依据。有助于发现需求重叠和冲突。需求分级提高需求文档的跟踪能力需求分级可以帮助你找到遗漏的需求v实施需求分级最简单的方法就是使用刻面方法。定义一系列的维度或者说是刻面,并用相应的关键词描述它们。现在学习的是第45页,共80页评估需求风险v对每一项需求或者一系列相关的需求进行风险分析,指出在实现需求过程中可能会发生的问题、这些问题发生的机率及其影响。现在学习的是第46页,共80页内容v需求分析概述v结构化需求分析方法v面向对象需求分析方法现在学习的是第47页,共80页采用面向对象分析建模采用面向对象分析建模v首先是描述需求首先是描述需求;v其次根据需求建立系统的静态模型其次根据需

32、求建立系统的静态模型,以构造系统的结以构造系统的结构构;第三步是描述系统的行为。第三步是描述系统的行为。v其中在第一步与第二步中所建立的模型都是静态的其中在第一步与第二步中所建立的模型都是静态的,包括用例图、类图包括用例图、类图(包含包包含包)、对象图、组件图和配置、对象图、组件图和配置图等五个图形图等五个图形,是标准建模语言是标准建模语言UML的静态建模机制。的静态建模机制。现在学习的是第48页,共80页采用面向对象分析建模采用面向对象分析建模-续续v其中第三步中所建立的模型或者可以执行其中第三步中所建立的模型或者可以执行,或者表示执行时的时序状态或交互关系。或者表示执行时的时序状态或交互关

33、系。它包括状态图、活动图、顺序图和合作图它包括状态图、活动图、顺序图和合作图等四个图形等四个图形,是标准建模语言是标准建模语言UML的动态建的动态建模机制。模机制。现在学习的是第49页,共80页OO分析师与设计师的任务v找出参与者和用例找出参与者和用例v详述用例详述用例v组织用例模型(注意:用例仅能获取功能组织用例模型(注意:用例仅能获取功能需求)需求)v需求工程师任务需求工程师任务找出功能性需求找出功能性需求找出非功能性需求找出非功能性需求优先排序需求优先排序需求跟踪用例和需求跟踪用例和需求现在学习的是第50页,共80页用例过程描述用例现在学习的是第51页,共80页用例建模活动的输出v用例建

34、模活动的输出是用例模型v该模型具有四个部分:参与者-人们所扮演的角色或者使用系统的事物;用例-参与者与系统交互的物件;关系-参与者和用例之间有意义的联系;系统边界-包围用例的方框,说明正在建模系统的边界现在学习的是第52页,共80页关于”用例”的误解v用例模型就是指用例模型就是指”UML用例图用例图”用例模型包括用例图和用例描述v用例分析技术是一项分解技术用例分析技术是一项分解技术.用例分析技术是一项合成技术现在学习的是第53页,共80页用例是什么?v用例实例是在系统中执行的一系列动作,这些动作将生成特定参与者可见的价值结果v特点用例实例也就是“使用场景”用例应该给参与者带来可见的价值用例是在

35、系统中现在学习的是第54页,共80页典型的用例建模活动v找出系统边界v识别参与者v合并需求找出用例v详述用例现在学习的是第55页,共80页用例建模找出系统边界v系统边界是定义由谁或什么(即参与者)使用系统,系统能够为哪些参与者提供什么特定的利益(即用例)现在学习的是第56页,共80页用例建模参与者v参与者是直接与系统交互的事物所扮演的角色。v参与者角色人其它系统硬件系统时钟现在学习的是第57页,共80页如何识别参与者v谁或什么使用该系统?v交互中,它们扮演什么角色?v谁安装系统?v谁启动和关闭系统?v谁维护系统?v与该系统交互的是其它什么系统?v谁从该系统获取信息,谁提供信息给系统?v有什么事

36、情发生在固定时间?现在学习的是第58页,共80页在识别参与者需要注意的!v参与者对于系统而言总是外部的;v参与者直接同系统交互;v参与者表示人和事物同系统发生交互时所扮演的角色,而不是特定的人和特定的事物;v一个人或事物在与系统发生交互时,同时或不同时扮演多种角色;v每个参与者需要一个具有业务意义的简短名称;v每个参与者必须有简短描述,它从业务角度描述参与者是什么。v像类一样,参与者可以具有分栏,表示参与者属性和它可能接收的事件;现在学习的是第59页,共80页用例建模用例v用例定义为“系统、子系统或类能够与外部参与者交互所执行的动作序列,包括各种序列以及出错序列的规格说明。v用例是参与者想要系

37、统做的事情。现在学习的是第60页,共80页识别用例v特定参与者希望系统提供什么功能?v系统存储和检索信息吗?如果有,哪个参与者触发这个行为?v当系统改变状态时,通知参与者吗?v存在影响系统的外部时间吗?是谁通知系统这些事件的?现在学习的是第61页,共80页用例图邮件订阅系统PlaceOrderCancelOrderCheckOrderStatusSendCatalogShipProductCustomerDispatcherShippingCompany现在学习的是第62页,共80页详述用例用例模型补充需求项目词汇表用例详述用例用例阐述员现在学习的是第63页,共80页在编写事件流需要注意的!v

38、使用简单的语法:主语明确,语义易于理解;v明确写出“谁控制球”v从俯视的角度来编写v显示过程向前推移v显示参与者的意图而非动作v包括“合理的活动集”(带数据的请求、系统确认、更改内部、返回结果)v用“确认”而非“检查是否”v可选择地提及时间限制现在学习的是第64页,共80页用例技术的优点v用例相对容易写v用例是用用户的语言写的v用例为行为或场景提供相关线索,用户和开发人员都能够理解v用例的图形表示提高对复杂软件系统的可理解性v用例描述的场景在确认阶段几乎可以直接用作测试脚本现在学习的是第65页,共80页用例方法的适用场合v适用场合系统是面向功能的,具有多种类型的用户和功能行为团队采用UML和面

39、向对象(OO)方法实现系统v不太适用场合系统用户很少或没有并且接口也很少系统中非功能性需求和设计约束占主导地位现在学习的是第66页,共80页用例建模实战-调研后的功能特性vFEAT01.新增学生信息vFEAT02.修改已有的学生信息vFEAT03.学生信息按统招生、工程硕士、学位进修分别建档vFEAT04.录入新生信息时能够自动按规则生成学生号号vFEAT05.统招生、工程硕士与学位进修生采用不同的书号规则vFEAT06.录入新生信息时如果重名将自动提示vFEAT07.按入学时间、所在学院、学生类别等关键字组合查询学生信息vFEAT08.列出所有学生信息vFEAT09.记录学生休学、退学、转学

40、和留级情况vFEAT10.学生状态能够自动反应在学生信息中vFEAT11.按姓名、学号查询学生成绩情况、交费情况、奖惩情况vFEAT12.列出所有的获得奖惩情况学生名单及所在学院vFEAT13.按特定时间段统计学生学习成绩和学分vFEAT14.所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进行;也可以按照学院进行现在学习的是第67页,共80页v学生v老师用例建模实战-识别参与者现在学习的是第68页,共80页特征用例特征用例用例用例FEAT01.FEAT01.新增学生信息新增学生信息UC01.UC01.新增学生信息新增学生信息FEAT03.FEAT03.学生信息按统招生、工程

41、硕士、学位进修分别建档学生信息按统招生、工程硕士、学位进修分别建档FEAT04.FEAT04.录入新生信息时能够自动按规则生成学生号号录入新生信息时能够自动按规则生成学生号号FEAT05.FEAT05.统招生、工程硕士与学位进修生采用不同的书号规则统招生、工程硕士与学位进修生采用不同的书号规则FEAT06.FEAT06.录入新生信息时如果重名将自动提示录入新生信息时如果重名将自动提示FEAT02.FEAT02.修改已有的学生信息修改已有的学生信息UC02.UC02.修改学生信息修改学生信息FEAT07.FEAT07.按入学时间、所在学院、学生类别等关键字组合查询学生信息按入学时间、所在学院、学

42、生类别等关键字组合查询学生信息UC03.UC03.查询学生信息查询学生信息FEAT08.FEAT08.列出所有学生信息列出所有学生信息FEAT14.FEAT14.所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进行;也可以按照学院进行行;也可以按照学院进行FEAT09.FEAT09.记录学生休学、退学、转学和留级情况记录学生休学、退学、转学和留级情况UC04.UC04.改变学生状态改变学生状态FEAT10.FEAT10.学生状态能够自动反应在学生信息中学生状态能够自动反应在学生信息中FEAT11.FEAT11

43、.按姓名、学号查询学生成绩情况、交费情况、奖惩情况按姓名、学号查询学生成绩情况、交费情况、奖惩情况UC05.UC05.查询学生状态信息查询学生状态信息FEAT12.FEAT12.列出所有的获得奖惩情况学生名单及所在学院列出所有的获得奖惩情况学生名单及所在学院FEAT14.FEAT14.所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进行;也可以按照学院进行行;也可以按照学院进行FEAT13.FEAT13.按特定时间段统计学生学习成绩和学分按特定时间段统计学生学习成绩和学分UC056.UC056.统计学生成绩统

44、计学生成绩FEAT14.FEAT14.所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进所有查询、列表、统计功能应可以单独对统招生、工程硕士、学位进修类别进行;也可以按照学院进行行;也可以按照学院进行用例建模实战-合并需求获得用例现在学习的是第69页,共80页用例建模实战-绘制用例图邮件订阅系统新增学生信息修改学生信息查询学生信息改变学生状态查询学生状态teacherstudent统计学生成绩现在学习的是第70页,共80页1)用例名称:应该与用例图相符,并写上其相应的编号;2)简要说明:该用例对参与者所传递的价值结果进行描述。3)前置条件:是执行用例之前必须存在的系统状态4)

45、后置条件:用例执行完毕系统可能处于的一组状态。5)扩展点:如果包括扩展或包含用例,则写出扩展或包含用例名,并说明在什么情况下使用。如果有,则应该在编写事件流的同时进行编写。6)优先级:说明用户对该用例的期望值,可以为今后开发时制定先后顺序。用例建模实战-细化用例描述现在学习的是第71页,共80页用例建模实战-用例粒度v思辨“四轮马车”v如何整理用例的层次现在学习的是第72页,共80页把建立原型系统作为一种可能采取的策略的主要理由:n 由于人类认识能力的局限,不能预先指定所有要求。n 在用户和系统分析员之间存在固有的交流鸿沟。n 用户需要一个“活的”系统模型,以便获得实践经验。n 在开发过程中重

46、复和反复是必要的和不可避免的。n 目前有快速建立原型系统的工具可供选用。由于成本的增加,过去很少采用样机策略。但是,由于正确地提出用户需求是软件开发工程成功的基础,近来主张采用样机策略的人也多起来。原型需求分析现在学习的是第73页,共80页按按照照传传统统的的瀑瀑布布模模型型进进行行软软件件开开发发,由由于于将将软软件件开开发发这这样样一一个个充充满满回回朔朔的的过过程程硬硬性性地地割割裂裂开开,虽虽然然强强调调各各个个阶阶段段的的复复审审,而而用用户户所所提提出出的的需需求求往往往往是是模模糊糊的的,因因此此很很难难得得到到一一个个完完整整精精确确的的规规格格说说明明,直直接接影影响响到到后

47、后期期的的开开发发,针针对对其其主主要要缺缺点点推推出了原型化方法。出了原型化方法。2.3 2.3 原型化方法原型化方法什么是原型化方法什么是原型化方法(Prototyping MethodPrototyping MethodPrototyping MethodPrototyping Method)?原原型型是是软软件件开开发发过过程程中中,软软件件的的一一个个早早期期可可运运行行的的版版本本,它它反反映映了了最最终终系系统统的的部部分分重重要要特特性。性。原原型型化化方方法法的的基基本本思思想想是是花花费费少少量量代代价价建建立立一一个个可可运运行行的的系系统统,使使用用户户及及早早获获得得

48、学学习习的的机机会会,原原型型化化方方法法又又称称速速成成原原型型法法(Rapid Rapid PrototypingPrototyping),强强调调的的是是软软件件开开发发人人员员与与用用户户的的不不断断交交互互,通通过过原原型型的的演演进进不不断断适适应应用用户户任任务务改改变变的的需需求求。将将维维护护和和修修改改阶阶段段的的工工作作尽尽早进行,使用户验收提前,从而使软件产品更加适用。早进行,使用户验收提前,从而使软件产品更加适用。现在学习的是第74页,共80页由于软件项目的特点和运行原型的目的不同,原型有两种不同的类型。由于软件项目的特点和运行原型的目的不同,原型有两种不同的类型。软

49、件原型的分类软件原型的分类2 2、追加(、追加(add onadd on)型)型也也称称为为快快快快速速速速建建建建立立立立渐渐渐渐进进进进原原原原型型型型RCPRCPRCPRCP法法法法(Rapid Rapid Rapid Rapid Cyclic Cyclic Cyclic Cyclic PrototypingPrototypingPrototypingPrototyping)法法采采用用循循环环渐渐进进的的开开发发方方式式,对对系系统统模模型型作作连连续续精精化化,即即先先构构造造一一个个功功能能简简单单而而且且质质量量要要求求不不高高的的模模型型系系统统,作作为为最最终终系系统统的的核

50、核心心,将将系系统统需需要要具具备备的的性性质质逐逐步步添添加加上上去去,通通过过不不断断地地扩扩充充修修改改,逐逐步追加新的要求,直至所有性质全部满足,此时的原型模型也就是最终的产品。步追加新的要求,直至所有性质全部满足,此时的原型模型也就是最终的产品。1 1、废弃(、废弃(throw awaythrow away)型)型也也称称为为快快快快速速速速建建建建立立立立需需需需求求求求规规规规格格格格原原原原型型型型RSPRSPRSPRSP法法法法(Rapid Rapid Rapid Rapid Specific Specific Specific Specific PrototypingPro

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁