用例图和类图课件

上传人:s9****2 文档编号:568403262 上传时间:2024-07-24 格式:PPT 页数:30 大小:691.50KB
返回 下载 相关 举报
用例图和类图课件_第1页
第1页 / 共30页
用例图和类图课件_第2页
第2页 / 共30页
用例图和类图课件_第3页
第3页 / 共30页
用例图和类图课件_第4页
第4页 / 共30页
用例图和类图课件_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《用例图和类图课件》由会员分享,可在线阅读,更多相关《用例图和类图课件(30页珍藏版)》请在金锄头文库上搜索。

1、用例图和类图用例图和类图桐城师范高等专科学校 孙兰兰软件工程与软件工程与UMLUML案例解析课程案例解析课程一、建立用例模型一、建立用例模型用例(用例(Use CaseUse Case)是一种描述系统需求的方法,其描述的过程)是一种描述系统需求的方法,其描述的过程就是用例建模。就是用例建模。用例图的主要构成元素:用例图的主要构成元素:1.1.参与者(参与者(ActorActor) 参与者指存在于系统外部并与该系统发生交互的人或者其他系参与者指存在于系统外部并与该系统发生交互的人或者其他系统,他们代表的是系统的使用者或者使用环境。统,他们代表的是系统的使用者或者使用环境。2.2.用例(用例(Us

2、er CaseUser Case) 用例表示系统所提供的服务,它定义了系统是如何被参与者所用例表示系统所提供的服务,它定义了系统是如何被参与者所使用的,描述的是参与者为了使用系统所提供的某一完整功能使用的,描述的是参与者为了使用系统所提供的某一完整功能而与系统之间发生的一段对话。而与系统之间发生的一段对话。3.3.关联(关联(AssociationAssociation) 关联用于表示参与者和用例之间的对应关系,它表示参与者使关联用于表示参与者和用例之间的对应关系,它表示参与者使用了系统中的哪些服务(用例)。用了系统中的哪些服务(用例)。用例图的组成元素用例图的组成元素用例图的组成元素包括:参

3、与者、用例、一个用例图的组成元素包括:参与者、用例、一个方框和一些表示关系的连接线。方框和一些表示关系的连接线。 所有的用例都位于方框之内,该方框称为所有的用例都位于方框之内,该方框称为“系系统边界统边界”参与者与用例的关系:在参与者和用例之间的参与者与用例的关系:在参与者和用例之间的关联是用一根带箭头的线来表示的。关联是用一根带箭头的线来表示的。 识别参与者识别参与者参与者是为了完成一个事件而与系统交互的实体,是参与者是为了完成一个事件而与系统交互的实体,是用户相对系统而言所演的角色用户相对系统而言所演的角色参与者不仅可以由人承担,还可以是其它系统、硬件参与者不仅可以由人承担,还可以是其它系

4、统、硬件设备、甚至是时钟。设备、甚至是时钟。1.1.其它系统:当系统需要与其它系统交互时,如其它系统:当系统需要与其它系统交互时,如ATMATM柜柜员机系统中,银行后台系统就是一个参与者;员机系统中,银行后台系统就是一个参与者;2.2.硬件设备:如果系统需要与硬件设备交互时,如在开硬件设备:如果系统需要与硬件设备交互时,如在开发发ICIC卡门禁系统时,卡门禁系统时,ICIC卡读写器就是一个参与者;卡读写器就是一个参与者;3.3.时钟:当系统需要定时触发时,时钟就是参与者。时钟:当系统需要定时触发时,时钟就是参与者。识别参与者的用例案例识别参与者的用例案例酒店管理系统(前台)酒店管理系统(前台)

5、事件描述:客户前来酒店预定座位,由前台服事件描述:客户前来酒店预定座位,由前台服务人员为其检查座位信息。如果客满或客户对务人员为其检查座位信息。如果客满或客户对座位不满意,则进入等待队列;如果有满意座座位不满意,则进入等待队列;如果有满意座位,则由前台服务人员为其安排座位。客户完位,则由前台服务人员为其安排座位。客户完成消费后,至前台服务人员处办理结账,其可成消费后,至前台服务人员处办理结账,其可选择现金付款或刷卡消费选择现金付款或刷卡消费2 2种结账方式。种结账方式。酒酒店店管管理理系系统统用用例例图图(识识别别参参与与者者)酒酒店店管管理理系系统统用用例例图图(初初稿稿)用例之间的关系用例

6、之间的关系用例之间的关系:用例之间的关系:1.1.包含关系(包含关系(includeinclude):):被包含的用例不是孤被包含的用例不是孤立存在的,通常作为某些包含它的更大的基立存在的,通常作为某些包含它的更大的基用例的一部分出现。用例的一部分出现。2.2.扩展关系(扩展关系(extendextend):):基用例是可以独立于基用例是可以独立于扩展用例存在的,只是在特定的条件下,它扩展用例存在的,只是在特定的条件下,它的行为可以被另一个用例的行为所扩展的行为可以被另一个用例的行为所扩展。3.3.泛化关系(泛化关系(generalizationgeneralization):):可以用来表可

7、以用来表示参与者与参与者之间,用例与用例之间的示参与者与参与者之间,用例与用例之间的特殊特殊/ /一般化关系(一般具有互斥性)。一般化关系(一般具有互斥性)。酒酒店店管管理理系系统统用用例例图图读图小结读图小结这张用例图定义了三个基用例:预订座位、安排座位和这张用例图定义了三个基用例:预订座位、安排座位和处理结账。处理结账。 客户通过客户通过“预订座位预订座位”用例,在用例,在“预订座位预订座位”用例的执用例的执行过程中,将行过程中,将“检查座位信息检查座位信息”(被包含用例),如果(被包含用例),如果没有空闲的座位或满意的座位,可以选择进入等候队列,没有空闲的座位或满意的座位,可以选择进入等

8、候队列,这样就将启动扩展用例这样就将启动扩展用例“处理等候队列处理等候队列”。总台服务员在客户到酒店时,启动总台服务员在客户到酒店时,启动“安排座位安排座位”用例,用例,在执行过程中,将启动被包含用例在执行过程中,将启动被包含用例“检查座位信息检查座位信息”。当客户要离开酒店时,总台服务员将启动当客户要离开酒店时,总台服务员将启动“处理结账处理结账”用例,并且定义了两种用例,并且定义了两种“收款收款”用例,一个是用例,一个是“处理现处理现金结账金结账”,另一个是,另一个是“处理银行卡结账处理银行卡结账”,而后一个用,而后一个用例将通过与外部系统例将通过与外部系统“银联银联POSPOS系统系统”

9、交互来完成。交互来完成。想一想想一想1.1.ATMATM机服务中,无论取款、存款、还是转账,机服务中,无论取款、存款、还是转账,系统都会提示系统都会提示“是否打印回执单是否打印回执单”,那么,那么“打印回执打印回执”这个单独用例与取款、存款、转这个单独用例与取款、存款、转账这三个事件之间是什么关系?账这三个事件之间是什么关系?2.2.对于电话业务,在基本通话事件中,还有一对于电话业务,在基本通话事件中,还有一些增值业务,如:呼叫等待、呼叫转移、短些增值业务,如:呼叫等待、呼叫转移、短信通知机主信通知机主它们之间是什么关系?它们之间是什么关系?3.3.在有收银台的商场购物与在自动售货机上购在有收

10、银台的商场购物与在自动售货机上购物,购物者是否都作为售货系统的参与者?物,购物者是否都作为售货系统的参与者?二、建立分析模型二、建立分析模型面向对象分析产生分析模型。分析时用例模型面向对象分析产生分析模型。分析时用例模型作为输入,对用例模型进行分析,把系统分解作为输入,对用例模型进行分析,把系统分解为相互协作的分析类为相互协作的分析类边界类、控制类和实边界类、控制类和实体类。通过类图来描述对象、对象的属性和对体类。通过类图来描述对象、对象的属性和对象之间的关系,产生系统的静态模型。象之间的关系,产生系统的静态模型。类图在类图在UMLUML中由类的名称、类的属性、类的操作中由类的名称、类的属性、

11、类的操作三个部分组成。三个部分组成。类图的需求分析类图的需求分析小王是一个爱书之人,家里各类书籍已过千册,小王是一个爱书之人,家里各类书籍已过千册,而平时又时常有朋友外借,因此需要一个个人图而平时又时常有朋友外借,因此需要一个个人图书管理系统。书管理系统。该系统能够将书籍的基本信息按计算机类、非计该系统能够将书籍的基本信息按计算机类、非计算机类分别建档,实现按书名、作者、类别、出算机类分别建档,实现按书名、作者、类别、出版社等关键字的组合查询功能。在使用该系统录版社等关键字的组合查询功能。在使用该系统录入新书籍时系统会自动按规则生成书号,可以修入新书籍时系统会自动按规则生成书号,可以修改信息。

12、该系统还应该能够对书籍的外借情况进改信息。该系统还应该能够对书籍的外借情况进行记录,可对外借情况列表打印。另外,还希望行记录,可对外借情况列表打印。另外,还希望能够对书籍的购买金额、册数按特定时间周期进能够对书籍的购买金额、册数按特定时间周期进行统计。行统计。类图的需求分析类图的需求分析小王小王是一个爱书之是一个爱书之人人,家里各类,家里各类书籍书籍已过千册,已过千册,而平时又时常有而平时又时常有朋友朋友外借,因此需要一个外借,因此需要一个个人图个人图书管理系统书管理系统。该该系统系统应该能够将书籍的应该能够将书籍的基本信息基本信息按按计算机类计算机类、非计算机类非计算机类分别建档,实现按分别

13、建档,实现按书名书名、作者作者、类别类别、出版社出版社等等关键字关键字的组合的组合查询功能查询功能。在使用该系统。在使用该系统录入新书籍录入新书籍时时系统系统会自动按会自动按规则规则生成生成书号书号,可以,可以修改信息修改信息。该系统还应该能够对书籍的。该系统还应该能够对书籍的外借外借情况情况进行进行记录记录,可对,可对外借情况列表外借情况列表打印。另外,还希打印。另外,还希望能够对书籍的望能够对书籍的购买金额购买金额、册数册数按按特定时间周期特定时间周期进行统计。进行统计。筛选备选类筛选备选类( (分析过程分析过程) )1.1.“小王小王”、“人人”很明显是系统外的概念,无很明显是系统外的概

14、念,无须对其建模;须对其建模;2.2.而而“个人图书管理系统个人图书管理系统”和后面的和后面的“系统系统”指指的就是将要开发的系统,即系统本身,也无须的就是将要开发的系统,即系统本身,也无须对其进行建模;对其进行建模;3.3.很明显,很明显,“书籍书籍”是一个很重要的类,而是一个很重要的类,而“书书名名”、“作者作者”、“类别类别”、“出版社出版社”、“书号书号”等则都是用来描述书籍的基本信息的,等则都是用来描述书籍的基本信息的,因此应该作为因此应该作为“书籍书籍”类的属性处理,而类的属性处理,而“规规则则”是指书号的生成规则,书号则是书籍的一是指书号的生成规则,书号则是书籍的一个属性,因此个

15、属性,因此“规则规则”可以作为编写可以作为编写“书籍书籍”类构造函数的指南。类构造函数的指南。筛选备选类筛选备选类( (分析过程分析过程) )4.4.“基本信息基本信息”则是书名、作者、类别等描述书则是书名、作者、类别等描述书籍的基本信息统称,籍的基本信息统称,“关键字关键字”则是代表其中则是代表其中之一,因此无需专门对其建模;之一,因此无需专门对其建模;5.5.“查询功能查询功能”、“录入新书籍录入新书籍”、“修改信息修改信息”、“记录记录”都是在描述需求时使用到的一些都是在描述需求时使用到的一些相关词语,并不是问题域的本质,因此可以先相关词语,并不是问题域的本质,因此可以先将其淘汰,再将其

16、作为书籍列表的成员方法;将其淘汰,再将其作为书籍列表的成员方法;6.6.“计算机类计算机类”、“非计算机类非计算机类”是该系统中图是该系统中图书的两大分类,因此应该对其建模,并改名为书的两大分类,因此应该对其建模,并改名为“计算机类书籍计算机类书籍”和和“非计算机类书籍非计算机类书籍”,以,以减少歧义;减少歧义;筛选备选类筛选备选类( (分析过程分析过程) )7.7.“外借情况外借情况”则是用来表示一次借阅行为,应则是用来表示一次借阅行为,应该成为一个候选类,多个外借情况将组成该成为一个候选类,多个外借情况将组成“外外借情况列表借情况列表”,而外借情况中一个很重要的角,而外借情况中一个很重要的

17、角色是色是“朋友朋友”借阅主体。虽然到本系统中借阅主体。虽然到本系统中并不需要建立并不需要建立“朋友朋友”的资料库,但考虑到可的资料库,但考虑到可能会需要列出某个朋友的借阅情况,因此还是能会需要列出某个朋友的借阅情况,因此还是将其列为候选类。为了能够更好地表述,将将其列为候选类。为了能够更好地表述,将“外借情况外借情况”改名为改名为“借阅记录借阅记录”,而将,而将“外借外借情况列表情况列表”改名为改名为“借阅记录列表借阅记录列表”;筛选备选类筛选备选类( (分析过程分析过程) )8.8.“购买金额购买金额”、“册数册数”都是统计的结果,都是统计的结果,都只是一个数字,因此不用将其建模,只需都只

18、是一个数字,因此不用将其建模,只需做为书籍的属性之一即可。而做为书籍的属性之一即可。而“特定时间周特定时间周期期”则是统计的范围,也无需将其建模,可则是统计的范围,也无需将其建模,可以加以函数约束;不过从这里的分析中,我以加以函数约束;不过从这里的分析中,我们可以发现,在该需求描述中隐藏着一个关们可以发现,在该需求描述中隐藏着一个关键类键类书籍列表,它是执行统计的主体。书籍列表,它是执行统计的主体。得到候选类得到候选类书书籍籍 计计算机算机类书类书籍籍 非非计计算机算机类书类书籍籍借借阅记录阅记录 借借阅记录阅记录列表列表 书书籍列表籍列表关联分析,建模关联分析,建模多重性分析,再建模多重性分

19、析,再建模职责分析职责分析书籍类:从需求描述中,可找到书名、类别、书籍类:从需求描述中,可找到书名、类别、作者、出版社;同时从统计的需要中,可得知作者、出版社;同时从统计的需要中,可得知“定价定价”也是一个关键的成员变量。也是一个关键的成员变量。书籍列表类:书籍列表就是全部的藏书列表,书籍列表类:书籍列表就是全部的藏书列表,其主要的成员方法是新增、修改、查询(按关其主要的成员方法是新增、修改、查询(按关键字查询)、统计(按特定时限统计册数与金键字查询)、统计(按特定时限统计册数与金额)。额)。借阅记录类:借阅人(朋友)、借阅时间。借阅记录类:借阅人(朋友)、借阅时间。借阅记录列表类:主要职责就

20、是添加记录(借借阅记录列表类:主要职责就是添加记录(借出)、删除记录(归还)以及打印借阅记录出)、删除记录(归还)以及打印借阅记录三、用例图和类图的区别三、用例图和类图的区别1. 1. 用例图用例图 (Use Case Diagram) (Use Case Diagram)用例视图强调从系统的外部参与者用例视图强调从系统的外部参与者( (主要是用主要是用户户) )的角度看到的或需要的系统功能。的角度看到的或需要的系统功能。用例视图描述系统应该具备的功能,也就是用例视图描述系统应该具备的功能,也就是外部参与者所需要的功能,但是并不描述这外部参与者所需要的功能,但是并不描述这些功能在系统内部的具体

21、实现。些功能在系统内部的具体实现。用例是系统中的一个功能模块,一个用例对用例是系统中的一个功能模块,一个用例对应着一个功能模块,系统要提供的功能都是应着一个功能模块,系统要提供的功能都是在用例视图中描述的。在用例视图中描述的。参与者可以是一个用户或是一个系统,一个参与者可以是一个用户或是一个系统,一个参与者可以参与多个用例的执行,用例视图参与者可以参与多个用例的执行,用例视图列出了哪个参与者参与了哪些用例的执行。列出了哪个参与者参与了哪些用例的执行。三、用例图与类图的区别三、用例图与类图的区别2. 2. 类图类图 (Class Diagram) (Class Diagram)类图显示了系统的静

22、态结构,表示不同的实类图显示了系统的静态结构,表示不同的实体体( (人、事物人、事物) )是如何彼此相关联的。是如何彼此相关联的。绘制类图时使用由绘制类图时使用由3 3个部分组成的矩形来描述,个部分组成的矩形来描述,最上面的矩形部分显示类的名称,中间矩形最上面的矩形部分显示类的名称,中间矩形部分显示了类的各种属性,下面的矩形部分部分显示了类的各种属性,下面的矩形部分显示了类的操作或方法。显示了类的操作或方法。在类图中要注意的是如何描述类与类之间的在类图中要注意的是如何描述类与类之间的关系。类与类之间通常有关联关系、依赖关关系。类与类之间通常有关联关系、依赖关系和泛化关系。系和泛化关系。绘图方法(学生注册事件)绘图方法(学生注册事件)一、用例图:二、类图:类的名称类的属性类的操作参与者用例关联课后作业课后作业根据上例中的“个人图书管理系统”需求描述,绘制出其用例图。查看答案欢欢 迎迎 指指 导!导!桐城师范高等专科学校 孙兰兰

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号