第需求建模课程学习.pptx
《第需求建模课程学习.pptx》由会员分享,可在线阅读,更多相关《第需求建模课程学习.pptx(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1第第 需求需求(xqi)建模建模第一页,共57页。本章本章本章本章(bn zhn(bn zhn)学习要点学习要点学习要点学习要点l 用例模型概述用例模型概述 l 用例图组成用例图组成 l 识别和描述用例识别和描述用例 l 用例间的关系用例间的关系 l l 建议建议(jiny)课时:课时:10课时课时第1页/共57页第二页,共57页。任务任务任务任务(rn wu)1(rn wu)1了解用例模型的基本了解用例模型的基本(jbn)功能和基本功能和基本(jbn)组成组成。任务任务(rn wu)(rn wu)目标目标l 分组教学法分组教学法l 资料查询法资料查询法l 案例教学法案例教学法教学方法
2、教学方法第2页/共57页第三页,共57页。5.1 5.1 用例模型用例模型用例模型用例模型(mxng)(mxng)概述概述概述概述用例模型用例模型(mxng)(mxng)的功能的功能l用例模型是把应满足用户需求的基本功能(集)聚合起来表示用例模型是把应满足用户需求的基本功能(集)聚合起来表示的强大工具。的强大工具。l对于正在构造的新系统,用例描述该系统应该作什么;对于已对于正在构造的新系统,用例描述该系统应该作什么;对于已构造完毕的系统,用例则反映了系统能够构造完毕的系统,用例则反映了系统能够(nnggu)完成什么样完成什么样的功能。的功能。l构建用例模型是通过系统开发者与系统的客户(或最终使
3、用者)构建用例模型是通过系统开发者与系统的客户(或最终使用者)共同协商完成的,他们要反复讨论需求的规格说明,达成共识,共同协商完成的,他们要反复讨论需求的规格说明,达成共识,明确系统的基本功能,为后阶段的工作打下基础。明确系统的基本功能,为后阶段的工作打下基础。第3页/共57页第四页,共57页。5.1 5.1 用例模型用例模型用例模型用例模型(mxng)(mxng)概述概述概述概述用例模型用例模型(mxng)(mxng)的基本组成的基本组成l用例模型的基本组成部件是用例、参与者和系统。用例模型的基本组成部件是用例、参与者和系统。l用例用于描述系统的功能,也就是从外部用户的角度观察系统应具备哪些
4、功能,帮助分析用例用于描述系统的功能,也就是从外部用户的角度观察系统应具备哪些功能,帮助分析(fnx)人员理解系统的行为,它是对系统功能的宏观描述。一个完整的系统中通常包含若干个用例,每个用例具体说明应完成的功能,代表系统的所有基本功能(集)。人员理解系统的行为,它是对系统功能的宏观描述。一个完整的系统中通常包含若干个用例,每个用例具体说明应完成的功能,代表系统的所有基本功能(集)。l参与者是与系统进行交互的外部实体,它可以是系统用户,也可以是其它系统或硬件设备,总之,凡是需要与系统交互的任何东西都可以称作参与者。参与者是与系统进行交互的外部实体,它可以是系统用户,也可以是其它系统或硬件设备,
5、总之,凡是需要与系统交互的任何东西都可以称作参与者。l系统的边界线以内的区域(即用例的活动区域)则抽象表示系统能够实现的所有基本功能。系统的边界线以内的区域(即用例的活动区域)则抽象表示系统能够实现的所有基本功能。第4页/共57页第五页,共57页。5.1 5.1 用例模型用例模型用例模型用例模型(mxng)(mxng)概述概述概述概述引入用例的目的引入用例的目的(md)(md)(1)确定系统应具备哪些功能,这些功能是否满足系统的需求(开发者与用户协商达)确定系统应具备哪些功能,这些功能是否满足系统的需求(开发者与用户协商达 成共识的东西)。成共识的东西)。(2)为系统的功能提供清晰一致的描述,
6、以便为后续的开发工作打下良好的交流)为系统的功能提供清晰一致的描述,以便为后续的开发工作打下良好的交流(jioli)基础,方便开发人员传递需求的功能。基础,方便开发人员传递需求的功能。(3)为系统验证工作打下基础。通过验证最终实现的系统能够执行的功能是否与最初需求的功能相一致,保证系统的实用性。)为系统验证工作打下基础。通过验证最终实现的系统能够执行的功能是否与最初需求的功能相一致,保证系统的实用性。第5页/共57页第六页,共57页。任务任务任务任务(rn wu)2(rn wu)2确定确定(qudng)WebShop电子商城系统中的参与者、系统电子商城系统中的参与者、系统边界。边界。任务任务(
7、rn wu)(rn wu)目标目标l 分组教学法分组教学法l SDSPR教学法教学法l 案例教学法案例教学法教学方法教学方法第6页/共57页第七页,共57页。5.2 5.2 用例图组成用例图组成用例图组成用例图组成(z(z chn chn)l购物购物(u w)用户注册帐号用户注册帐号l购物购物(u w)用户登录系统用户登录系统l购物购物(u w)用户查看个人资料用户查看个人资料l购物购物(u w)用户查看历史订单用户查看历史订单l购物购物(u w)用户查看当前订单用户查看当前订单l购物购物(u w)用户关闭帐号用户关闭帐号l系统管理员删除用户系统管理员删除用户 WebShopWebShop用例
8、图用例图第7页/共57页第八页,共57页。参与者参与者参与者参与者 参与者(参与者(Actor)是与系统交互的人或事。所谓)是与系统交互的人或事。所谓“与系统交互与系统交互”指的是参与者向系统发送消息,从系统中接收指的是参与者向系统发送消息,从系统中接收(jishu)消息,或是在系统中交换信息。消息,或是在系统中交换信息。UML中用一个小人形图形表示角色类,小人的下方书写角色名字。中用一个小人形图形表示角色类,小人的下方书写角色名字。参与者概述参与者概述(i sh)(i sh)(1)系统用户)系统用户(2)其他系统)其他系统(3)一些)一些(yxi)可以运行的进程可以运行的进程 第8页/共57
9、页第九页,共57页。参与者参与者参与者参与者(1)使用系统主要功能的人是谁(即主要角色)?)使用系统主要功能的人是谁(即主要角色)?(2)需要借助于系统完成日常工作的人是谁?)需要借助于系统完成日常工作的人是谁?(3)谁来维护和管理系统(次要角色),保证系统正常工作?)谁来维护和管理系统(次要角色),保证系统正常工作?(4)系统控制的硬件设备有哪些?)系统控制的硬件设备有哪些?(5)系统需要与哪些其它)系统需要与哪些其它(qt)系统交互?其它系统交互?其它(qt)系统包括计系统包括计算机系统,也包括该系统将要使用的计算机中的其它算机系统,也包括该系统将要使用的计算机中的其它(qt)应用软件。应
10、用软件。其它其它(qt)系统也分成二类,一类是启动该系统的系统,另一类是该系统也分成二类,一类是启动该系统的系统,另一类是该系统要使用的系统。系统要使用的系统。(6)对系统产生的结果感兴趣的人或事是哪些?)对系统产生的结果感兴趣的人或事是哪些?确定确定(qudng)(qudng)参与者参与者第9页/共57页第十页,共57页。参与者参与者参与者参与者 确定确定(qudng)WebShop电子商城中的参与者主要是用户,而用户又包括前台购物用户和后台管理员两大类;后台管理员又包括普通管理员和系统管理员两大类。电子商城中的参与者主要是用户,而用户又包括前台购物用户和后台管理员两大类;后台管理员又包括普
11、通管理员和系统管理员两大类。确定确定(qudng)WebShop(qudng)WebShop参与者参与者第10页/共57页第十一页,共57页。参与者参与者参与者参与者 l 参与者对于系统而言总是外部的,它们可以处于人的控制之外;参与者对于系统而言总是外部的,它们可以处于人的控制之外;l 参与者可以直接或间接地同系统交互,或使用系统提供的服务以完成某件事务;参与者可以直接或间接地同系统交互,或使用系统提供的服务以完成某件事务;l 参与者表示人或事物与系统发生交互时所扮演的角色,而不是特定的人或者特参与者表示人或事物与系统发生交互时所扮演的角色,而不是特定的人或者特定的事物;定的事物;l 一个人或
12、事物在与系统发生交互时,可以扮演多个角色;一个人或事物在与系统发生交互时,可以扮演多个角色;l 每一个参与者需要一个具有业务每一个参与者需要一个具有业务(yw)一样的名字,并且必须有简短的描述一样的名字,并且必须有简短的描述(从业务(从业务(yw)角度描述参与者是什么);角度描述参与者是什么);l 参与者可以具有属性和事件,但使用不能太频繁。参与者可以具有属性和事件,但使用不能太频繁。参与者说明参与者说明(shumng)(shumng)第11页/共57页第十二页,共57页。系统系统系统系统(xt(xt ng)ng)l 系统是用例模型的一个组成部分,代表的是一部机器或一个商务系统是用例模型的一个
13、组成部分,代表的是一部机器或一个商务活动等,而并不是真正实现的软件系统。系统的边界用来说明构建活动等,而并不是真正实现的软件系统。系统的边界用来说明构建的用例模型的应用范围。的用例模型的应用范围。l 先识别出系统的基本功能(集),然后以此为基础定义先识别出系统的基本功能(集),然后以此为基础定义(dngy)一个稳定的、精确定义一个稳定的、精确定义(dngy)的系统架构,以后再不断地扩充系的系统架构,以后再不断地扩充系统功能,逐步完善。这样做的好处在于避免了一开始系统太大,需统功能,逐步完善。这样做的好处在于避免了一开始系统太大,需求分析不易明确,从而导致浪费大量的开发时间。求分析不易明确,从而
14、导致浪费大量的开发时间。l 用例图中的系统用一个长方框表示,系统的名字写在方框上或方用例图中的系统用一个长方框表示,系统的名字写在方框上或方框里面,方框内部还可以包含该系统中的用符号表示的用例。框里面,方框内部还可以包含该系统中的用符号表示的用例。用例模型用例模型(mxng)(mxng)中的系统中的系统第12页/共57页第十三页,共57页。用例用例用例用例 l用例是用例是Jacobson在面象对象的软件工程中提出的,但它实际上是独立于面象对象的。在面象对象的软件工程中提出的,但它实际上是独立于面象对象的。l用例代表一个系统或系统的一部分行为,是对一组动作用例代表一个系统或系统的一部分行为,是对
15、一组动作(dngzu)序列的描述,系统执行该动作序列的描述,系统执行该动作(dngzu)序列来作为参与者产生一个可观察的结果值。序列来作为参与者产生一个可观察的结果值。l用例代表的是一个完整的功能。用例代表的是一个完整的功能。UML中的用例是动作中的用例是动作(dngzu)步骤的集合。动作步骤的集合。动作(dngzu)是系统的一次执行(能够给某个参与者输出结果值)。是系统的一次执行(能够给某个参与者输出结果值)。什么什么(shn me)(shn me)是用例是用例第13页/共57页第十四页,共57页。用例用例用例用例 l 用例总是由参与者初始化用例总是由参与者初始化 l 用例为参与者提供用例为
16、参与者提供(tgng)值值 l 用例具有完全性用例具有完全性 用例的特征用例的特征(tzhng)(tzhng)【提示】【提示】用例表示的也是一个类(如搜索图书),而不是某个具体的实例(搜索名称为用例表示的也是一个类(如搜索图书),而不是某个具体的实例(搜索名称为“Java 程序设计程序设计”的图书)。的图书)。用例描述了它代表的功能的各个方面,也就是包含了用例执行用例描述了它代表的功能的各个方面,也就是包含了用例执行(zhxng)期间可能发生的种种情况。期间可能发生的种种情况。第14页/共57页第十五页,共57页。课堂课堂课堂课堂(ktng)(ktng)实践实践实践实践 1 1(1)通过)通过
17、(tnggu)学习小组讨论和上网查询资料形式完成。学习小组讨论和上网查询资料形式完成。(2)使用手绘形式绘制出图书管理系统的参与者和系统边界。)使用手绘形式绘制出图书管理系统的参与者和系统边界。操作操作(cozu)(cozu)提示提示(1)小组讨论用例模型的主要功能有哪些。)小组讨论用例模型的主要功能有哪些。(2)根据已往的软件开发经验,讨论使用用例模型来描述需求与使用纯文字的方式来描述需求有什么不同。)根据已往的软件开发经验,讨论使用用例模型来描述需求与使用纯文字的方式来描述需求有什么不同。(3)结合实例说明用例模型由哪几部分组成。)结合实例说明用例模型由哪几部分组成。(4)根据典型图书管理
18、系统的需求,确定该系统中的参与者,并说明你确定参与者的根据。)根据典型图书管理系统的需求,确定该系统中的参与者,并说明你确定参与者的根据。(5)确定图书管理系统的系统边界。)确定图书管理系统的系统边界。操作要求操作要求第15页/共57页第十六页,共57页。任务任务任务任务(rn wu)3(rn wu)3 确定确定WebShop电子商城中的用例,绘制电子商城中的用例,绘制WebShop电电子商城的用例图,并对用例进行子商城的用例图,并对用例进行(jnxng)描述。描述。任务任务(rn wu)(rn wu)目标目标l 分组教学法分组教学法l 案例教学法案例教学法l SDSPR教学法教学法教学方法教
19、学方法第16页/共57页第十七页,共57页。识别识别识别识别(shbi)(shbi)用例用例用例用例了解了解(lioji)(lioji)的问题的问题1针对参与者针对参与者(1)某个)某个(mu)参与者要求系统为其提供什么功能;该参与者需要做哪些工作?参与者要求系统为其提供什么功能;该参与者需要做哪些工作?(2)参与者需要阅读、创建、销毁、更新或存储系统中的某些信息吗?)参与者需要阅读、创建、销毁、更新或存储系统中的某些信息吗?(3)系统中的事件一定要告知参与者吗?参与者需要告诉系统一些什么吗?)系统中的事件一定要告知参与者吗?参与者需要告诉系统一些什么吗?(4)系统新功能的识别,参与者的日常工
20、作被简化或效率提高了吗?)系统新功能的识别,参与者的日常工作被简化或效率提高了吗?2针对系统针对系统(1)系统需要什么样的输入和输出?输入来自哪里?输出到哪里去?)系统需要什么样的输入和输出?输入来自哪里?输出到哪里去?(2)该系统的当前状况还存在哪些问题?)该系统的当前状况还存在哪些问题?(3)系统的改进的方向?)系统的改进的方向?第17页/共57页第十八页,共57页。识别识别识别识别(shbi)(shbi)用例用例用例用例询问以下问题询问以下问题(wnt)(wnt)以发现用例以发现用例l 参与者需要从系统中获得哪种功能?参与者需要做什么?参与者需要从系统中获得哪种功能?参与者需要做什么?l
21、 参与者需要读取、产生、删除、修改或存储系统中的某种信息吗?参与者需要读取、产生、删除、修改或存储系统中的某种信息吗?l 系统中发生的事件需要通知参与者吗?或者参与者需要通知系统某件事吗?这系统中发生的事件需要通知参与者吗?或者参与者需要通知系统某件事吗?这些事件(功能)能干些什么?些事件(功能)能干些什么?l 如果用系统的新功能处理参与者的日常工作是简单化了,还是提高了工作效率如果用系统的新功能处理参与者的日常工作是简单化了,还是提高了工作效率?l系统需要的输入系统需要的输入(shr)/输出是什么信息?这些输入输出是什么信息?这些输入(shr)/输出信息从哪儿输出信息从哪儿来,到哪儿去?来,
22、到哪儿去?l 系统当前的这种实现方法要解决的问题是什么(也许是用自动系统代替手工操系统当前的这种实现方法要解决的问题是什么(也许是用自动系统代替手工操作)?作)?第18页/共57页第十九页,共57页。识别识别识别识别(shbi)(shbi)用例用例用例用例购物购物(u w)(u w)用户相关用例用户相关用例第19页/共57页第二十页,共57页。识别识别识别识别(shbi)(shbi)用例用例用例用例普通普通(ptng)(ptng)管理员相关用例管理员相关用例第20页/共57页第二十一页,共57页。识别识别识别识别(shbi)(shbi)用例用例用例用例系统管理员相关系统管理员相关(xinggu
23、n)(xinggun)用例用例第21页/共57页第二十二页,共57页。绘制绘制绘制绘制(huzh)WebShop(huzh)WebShop用例图用例图用例图用例图1 1新建工程新建工程(gngchng)(gngchng)依次选择依次选择(xunz)【File】【New】菜单,新建一个模型(缺省名称为】菜单,新建一个模型(缺省名称为untitled)第22页/共57页第二十三页,共57页。绘制绘制绘制绘制(huzh)WebShop(huzh)WebShop用例图用例图用例图用例图2 2新建用例图新建用例图在视图区域中右键单击用例视图(在视图区域中右键单击用例视图(Use Case View)节点
24、,依次选择)节点,依次选择(xunz)【New】【Use Case Diagram】,新建一个用例图。】,新建一个用例图。第23页/共57页第二十四页,共57页。绘制绘制绘制绘制(huzh)WebShop(huzh)WebShop用例图用例图用例图用例图3 3添加添加(tin ji)(tin ji)参与者和用例参与者和用例 (1)绘制参与者)绘制参与者在用例图绘图工具栏上选择图形符号,在绘图区域中单击,即可绘制参与者(默认在用例图绘图工具栏上选择图形符号,在绘图区域中单击,即可绘制参与者(默认(mrn)名称为名称为NewClass)第24页/共57页第二十五页,共57页。绘制绘制绘制绘制(hu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 需求 建模 课程 学习
限制150内