中南民族大学管理学院学生实验报告
IncomeOrder11ProductOrderItem
答:Orderltem与IncomeOrder的关系并不是泛化关系,而应该是包含关系。
改正后为:
分析与讨论
1. 讨论类图在建模过程中的重要作用。
答:类图描述系统中类的静态结构,它不仅定义系统中的类,描述类之间的
联系,还包括类的内部结构。类图描述的是一种静态关系,在系统的整个生命周期中都是有效的。通过分析用例和问题域,就可以得到相关的类,然后再把逻辑上相关的类封装成包,这样可以很好的体现系统的分层结构,是得系统层次关系一目了然。
2. 总结在设计绘制类图的过程中应注意哪些问题。
答:UML类图(Class Diagram)是描述类、接口、协作以及它们之间关系
的图,用来显示系统中各个类的静态结构。UML类图是定义其他图的基础,在UML类图基础上,可以使用状态图、协作图、组件图和配臵图等进一步描述系统其他方面的特性。
UML类图包括七个元素:类(Class)、接口(Interface)、协作(Collaboration)、依赖关系(Dependency)、泛化关系(Generalization)、关联关系(Association)及实现关系(Realization)。
指导教师批阅:
实验(四) 对象图 实验时间: 实验目的
1. 掌握对象的概念,对象的三大特征,对象的表示方法; 2. 掌握类与对象的关系。
实验内容
1. 什么是对象,对象的三大特征是什么?
答:对象代表一个单独的,可确认的物体、单元或实体,它可以是具体的也
可以是抽象的,在问题领域里有确切定义的角色。换句话说,对象是边界非常清楚的任何事物。对象的三大特征是状态(属性)、行为(方法、事件)和标识(名字)。
2. UML中对象的表示方法有哪些? 答:对象名和属性。
3. 在下图中最上面的对象的名称是什么?该图表示的意思是什么?请绘
制出与其相应的类图。
China:CountryfuJian:ProvincesiChuan:Province
答:最上面的对象的名称是china:country。该图表示福建省和四川省都包
含在对象中国中。
相应的类图:
中南民族大学管理学院学生实验报告
4. 说明对象图的适用场景以及它的优缺点。 答:对象图是同于论证模型的设计以及对源代码进行分析和说明,其优点是
可以直观的理解出系统运行时的实时状态。但是使用对象图不能完整地描述系统的对象结构且比较复杂,工作量大。
分析与讨论
1. 思考类与对象之间的关系是怎样的?各举几个实例,说明哪些是类,哪
些是对象。
答:类有3个分栏:名称、属性和操作;对象只有两个分栏:名称和属性。
类的名称分栏中只有类名;对象的名称形式为“对象名:类名”,匿名对象的名称形式为“:类名”。
类的属性分栏定义了所有属性的特征;对象图中不包含操作,因为对于属于同一个类的对象而言,其操作是相同的。
类使用关联连接,关联使用名称、角色、多重性以及约束等特征定义。类代表的是对对象的分类,所以必须说明可以参与关联的对象的数目;对象使用链连接,链拥有名称、角色,都是没有多重性。对象代表的是单独的实体,所有的类都是一对一的,因此不涉及到多重性。 例如:
China:CountryfuJian:ProvincesiChuan:Province
Country、Province是类,而china、fujian和sichuan分别是这两个类中的对象
指导教师批阅:
实验(五) 包 图 实验时间: 实验目的
1. 2. 3. 4.
掌握UML包的概念和作用。
掌握包与包之间的各种依赖关系的区别。 掌握建立包与包之间依赖关系的方法。 掌握建立包图过程中需遵循的原则。
实验内容
1. 包属于UML中的何种事物?有何作用?
答:包是将多个元素组织为语义相关的组的通用机制。在实践中,一般使用
术语子系统来描述包。对于复杂系统进行建模时,经常需要处理大量的类、接口、组件、节点和图,这时就有必要将这些元素进行分类,即把语义相近并倾向于同一变化的元素组织起来加入同一个包中,以方便理解和处理整个模型。
2. UML中包的表示方法有哪几种?
答:包的绘制用一个小矩形和一个大矩形表示。 3. 包与包之间存在哪几种关系? 答:包与包之间存在两种关系:
1)引入和访问依赖,用于在一个包中引入另一个包输出的元素; 2)泛化,用于说明包的家族。 4. 包与包之间的依赖关系有何特点?
答:包与包之间的依赖关系特点是单向传递和不可传递。 5. 如何避免包与包之间出现循环依赖关系?各举一例。
答:将产生依赖的类型分离出来,放到另一个新的程序集中去,或使用接口
来接触循环依赖。
6. 建立包图应注意哪些问题?
答:1)包的命名要简单、具有描述性;
2)应用包是为了简化; 3)包应该连贯;
4)在包上用版型注明架构层; 5)避免包间的循环依赖
6)包依赖应该反映内部关系。
7. 根据下图判断下面哪句话正确的说明了包之间的依赖关系。
中南民族大学管理学院学生实验报告
a) 对Package1包中的元素做了修改后,需检查Package2包中的元素
和Package3包中的元素是否要做相应修改。 b) 对Package1包中的元素做了修改后,需检查Package2包中的元素
是否需要做相应修改,如果是,则需继续检查是否Package3包中元素也要做相应修改。
c) 对Package3包中的元素做了修改后,需检查Package2包中的元素
是否需要做相应修改,如果是,则需继续检查是否Package1包中元素也要做相应修改。
d) 对Package3包中的元素做了修改后,需检查Package2包中的元素
和Package1包中的元素是否要做相应修改。
答:c)证明了包之间的依赖关系。
8. 下面包图设计中是否存在问题?应如何改进。
A) B)
答:存在问题,出现了循环依赖关系,A图中B不能即依赖C同时还依赖E,
B图中循环不正确。修改后: