《第6章--图书管理系统静态建模》由会员分享,可在线阅读,更多相关《第6章--图书管理系统静态建模(37页珍藏版)》请在金锄头文库上搜索。
1、软软 件件 工工 程程 与与R Ro os se e建建模模案案例例教教程程(第第三三版版)第6章 图书管理系统静态建模 主编:刘志成 宁云智 林东升软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)本章学习导航本章学习导航软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)本章学习要点本章学习要点l 识别软件系统中的类识别软件系统中的类l识别软件系统类之间的关系识别软件系统类之间的关系l在在Rational Rose 2003中绘制类图中绘制类图l在在Rational Rose 2003中绘制对象图中绘制对象图教学课时:教学课
2、时:8课时课时软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务1 1 了解静态模型的基本功能和基本图形组成了解静态模型的基本功能和基本图形组成任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务1 1 UML的静态建模就需要借助于类图类图和对象图对象图,使用UML进行静态建模,就是通过类图和对象图从一个相对静止的状态来分析系统中所包含的类和对象,以及他们之间的关系等。 静态建模概述静态建模概述 类图是用来描述软件
3、系统中类和它们之间的关系的一种图示,是从静静态角度态角度表示系统的,因此类图属于一种静态模型。类图是构建其它图的基础,如果没有类图,就没有状态图、顺序图和协作图等,也就无法表示软件系统的其它各个侧面。 类图概述类图概述软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务1 1 长方形分成上、中、下三个区域,每个区域用不同的名字标识,用以代表类的各个特征,上面的区域内标识类的名字类的名字,中间的区域内标识类的属性类的属性,下面的区域内标识类的操作方法类的操作方法(即行为),这三部分作为一个整体描述某个类 。 类图概述类图概述实体类、边界类、控制类 软软件件
4、工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2 阅读系统文档和用例模型,确定图书管理阅读系统文档和用例模型,确定图书管理系统中的类,并绘制类图系统中的类,并绘制类图任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2l具体类有自己的具体对象的类称为具体类具体类。具体类中的操作都有具体实现的方法。 具体类和抽象类具体类和抽象类l没有具体对象的类称为抽象抽象类类。抽象类一般为父类,用于描述其它类(子类)的公共属
5、性和行为(操作)。 软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2l包是一种组合机制组合机制,把各种各样的模型元素通过内在的语义连在一起成为一个整体就叫做包。 接口和包接口和包l接口通常被描述为抽象操作抽象操作,也就是只用标识(返回值、操作名称、参数表)说明它的行为,而真正实现部分放在使用该接口的对象中。 软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2图书管理系统中的类图书管理系统中的类软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2l类的属
6、性是类的一个组成部分,描述了类在软件系统中所代表的一个事物的特性。在绘制类图时,类的属性放在类名字的下方,用来描述该类的对象所具有的特征。 带属性的类带属性的类软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2在UML中,类属性的语法为:可见性 属性名 :类型 =初始值 属性字符串(1)可见性可见性用于描述类的属性、类的方法对于其它的类或包是否可以访问的特性。(2)属性名属性名用来区别于类中的其他属性 。(3)属性的类型属性的类型用来说明该属性是什么数据类型。 (4)初始值初始值是指属性最初获得的赋值。 (5)属性字符串属性字符串用来指定关于属性
7、的其他信息。 带属性的类带属性的类软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2(1)打开工程book.mdl (2)新建类图。(3)添加类 (4)编辑类 (5)添加属性 (6)设置属性的数据类型 (7)设置属性的可见性 绘制图书管理系统中的类图绘制图书管理系统中的类图( (不含方法不含方法) )教师现场演示操作过程软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2在UML中,类操作的语法为:可见性 操作名 (参数表) :返回值类型 属性字符串(1)可见性可见性用于描述类的属性、类的方法对于其它
8、的类或包是否可以访问的特性。(2)方法名方法名是用来描述所属类的行为的动词或动词短语。 (3)参数表参数表是一些按顺序排列的属性,这些属性定义了方法的输入。 (4)返回类型返回类型是可选的,即方法不一定必须有返回类型。 (5)属性字符串属性字符串用来在定义中加入一些预定义元素之外的信息 。 带操作的类带操作的类软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2带操作的类带操作的类最终绘制的图书管理系统的Admin类图软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2图书管理系统最终类图图书管理系统最
9、终类图( (带属性和方法带属性和方法) )软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2边界类和控制类边界类和控制类边界类图边界类图控制类图控制类图软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务2 2JavaJava语言中的类语言中的类软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)课堂实践课堂实践 1 1(1)通过学习小组讨论和上网查询资料形式完成。(2)指定类的属性和方法的可见性。操作提示操作提示(1)讨论类图在软件系统建模中的重要作用?(2)确定B-C电子
10、商务系统中的类?(3)绘制B-C电子商务系统的类图(不含属性和方法)?(4)在步骤(3)绘制的类图基础上添加类的属性和方法。操作要求操作要求软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 确定图书管理系统中的类之间的关系,并确定图书管理系统中的类之间的关系,并在类图中表现这些关系在类图中表现这些关系任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3关联关系是一种结构关系,它指明一个对象与另一个对象
11、之间的联系。 关联关系关联关系读者使用借书证的关系,即读者使用借书证。Reader可以有1个Card对象。同时,每个Card对象只从属于单独一个Reader。 软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3关联可以使用名称、角色、多重性和导航性等来进行修饰。(1)名称名称 :在关联的一个方向上为关联起一个名字 。(2)角色角色:是关联关系中一个类对另一个类所表现出来的职责。(3)多重性多重性:关联的多重性是用来在类图中图示关联中的数量关系。 (4)导航性导航性:描述的是一个对象通过导航访问另一个对象。 关联关系关联关系软软件件工工程程与与R
12、Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 (1)在类图绘制工具栏上选择图标,在源类上单击鼠标左键,拖放鼠标到目标类上,添加从源类到目标类的关系。(2)右键单击这个关系,打开【open specification】对话框,选择【Multiplicy】列表框,设置多重性。如图6-28所示。(3)选择【Navigable】复选框设置关联关系的导航性。 绘制关联关系绘制关联关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 聚合是关联的特例。如果类与类之间的关系具有“整体与部分”的特点,则把这样的关联称为聚合。聚合关
13、系描述了“has a”的关系。 聚合关系聚合关系表示图书由不同种类的图书组成 软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3(1)右键单击类间的关系,打开【open specification】对话框,选择【Role B Detail】选项卡。如图6-31所示。(2)选择【Aggregate】复选框,即可绘制共享聚合关系(空心菱形) 绘制聚合关系绘制聚合关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 组合关系是聚合关系中的复合聚合。组合(也称为组成)是由聚合(也称为聚集)演变而来。如果构
14、成整体类的部分类,完全隶属于整体类,则这样的聚合称为复合聚合或组合。 组合关系组合关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 泛化表示一个更泛化的元素和一个更具体的元素之间的关系。泛化是用于对继承进行建模的UML元素。在Java中,用extends关键字来直接表示这种关系 。 泛化关系泛化关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 类的继承关系可以是多层的。在泛化关系如果附加一个约束条件(多重、不相交、完全和不完全),则会对继承进行限制。根据这些约束条件的不同,继承的类型可以
15、分为多重继承、不相交继承、完全继承和不完全继承。 泛化关系泛化关系l父类中的属性和操作又称作成员,不同可见性的成员在子类中用法不同;l父类中公有的成员在被继承的类中仍然是公有的,而且可以在子类中随意使用;l父类中的私有成员在子类中也是私有的,但是子类的对象不能存取父类中的私有成员;l一个类中的私有成员都不允许外界元素对其作任何操作,这就达到了保护数据的目的;l如果既需要保护父类的成员(相当于私有的),又需要让其子类也能存取父类的成员,那么父类的成员的可见性应设为保护的。拥有保护可见性的成员只能被具有继承关系的类存取和操作;l泛化针对类型,而不针对实例。即只能是一个类继承另一个类,而不是一个对象
16、继承另一个对象。软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 实现关系指定两个实体之间的一个合同。换言之,一个实体定义一个合同,而另一个实体保证履行该合同。在Java语言中,实现关系可直接用implements关键字来表示 。 实现关系实现关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3 依赖关系描述的是两个或多个模型元素(类、用例等)之间的语义上的连接关系。 依赖关系依赖关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3确定图书管理系
17、统中类之间的关系确定图书管理系统中类之间的关系软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务3 3图书管理系统完整类图图书管理系统完整类图软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)课堂实践课堂实践2 2(1)通过学习小组讨论和上网查询资料形式完成。(2)根据类间关系的定义,确定类之间的关系。操作提示操作提示(1)分析并确定B-C电子商务系统中的类之间的关系。(2)在【课堂实践6-1】绘制的B-C电子商务系统的类图基础上添加类之间的关系。(3)根据B-C电子商务系统页面导航情况,绘制系统的边界类图。操作要求操
18、作要求软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务4 4 确定并绘制图书管理系统中的对象图确定并绘制图书管理系统中的对象图任务目标任务目标l 小组讨论法小组讨论法l 资料查询法资料查询法l 模仿实践模仿实践学习方法学习方法软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务4 4 对象图则表示在某一时刻这些类的具体实例和这些实例之间的具体连接关系。类图中就包含了对象,所以只有对象而无类的类图就是一个“对象图”。 对象图对象图对象名有下列三种表示格式。(1)第一种第一种格式形如: 对象名:类名即对象名在前,类
19、名在后,中间用冒号连接。(2)第二种第二种格式形如: :类名这种格式用于尚未给对象命名的情况,注意,类名前的冒号不能省略。(3)第三种第三种格式形如: 对象名软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)任务任务4 4l对象图主要用来加深对类图的理解,在实际系统建模过程中并不常用,但在UML2.0中仍然保留;l使用Rose工具不能绘制对象图,因此使用Word进行绘制,目的是方便读者理解。 类图类图VSVS对象图对象图软软件件工工程程与与R Ro os se e建建模模案案例例教教程程(第第三三版版)课外拓展课外拓展(1)学会从需求文档和用例模型中确定类。(2)明确实体类、边界类和控制类三者之间的关系。(3)为类添加合适的属性和操作。操作提示操作提示(1)阅读需求文档和用例模型,确定B-C电子商务系统中的实体类、边界类和控制类。(2)分析并确定B-C电子商务系统中的实体类、边界类和控制类之间的关系。(2)绘制B-C电子商务系统中的类图(含边界类和控制类)。操作要求操作要求