UML 新编实验指导书(实验五)

更新时间:2024-01-25 16:41:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

天津理工大学(华信软件学院)

实验指导书

课程名称:面向对象设计UML建模

适应课程:

(1460460/1460466/14606617)

编写者:李 光

天 津 理 工 大 学 华 信 软 件 学 院 2

上机实验(五) 创建包图和构件图

一. 实验目的:创建UML包图和构件图,把类图通过构件生成高级语言源代码。 二. 实验内容: 1.创建包图练习

2.按教科书P105—P108的示例,练习正向工程;

3.使用D:盘中的Clock.Java源代码进行逆向工程,检查所生成的构件和类。 4.按照“学生选课系统”所建立的类图进行正向工程: (1)方法1:一对一映射(即一个类映射成一个构件,然后分别生成源代码); (2)方法2:多对一映射(即多个类映射成一个构件,然后生成源代码); 5.按照“图书管理系统”所建立的类图进行正向工程;

6.按照同学自己所创建的类图进行正向工程(包括Java代码和C++代码)。 三.创建包图步骤: 1.创建一个新包

1)右击Logical View 2)选New ->Package 3)给包命名(比如:“企业综合信息管理系统”),并将其拖入右方绘图窗口 另一种方法是直接使用工具栏中的包按钮来作图。 2.在包中添加元素(比如:类、子包等) 1)右击“企业综合信息管理系统”包 2)选New ->Class

3) 为类命名(比如:Class A 。同理可增加Class B等) 4)右击“企业综合信息管理系统”包 2)选New ->Package

3)取名 “财务管理系统” 4)将其拖入右方窗口观看

3.增加(显示)包中信息(比如:在“财务管理系统”中增加两个类Class A、Class B)

1)右击作图窗口中的“企业综合信息管理系统”包 2)选Select Compartment Items…

3) 在Edit Compartment窗口选择要添加的类即可 4.增加包之间的依赖关系

5.根据以下陈述,创建 “企业综合信息管理系统”包模型 1)“企业综合信息管理系统”包括:“生产调度管理系统”、“市场管理系统”、“财务管理系统”、“进销存管理系统”、“人事、劳资管理系统”和“经理查询系统”。 2)“进销存管理子系统”由下属“销售管理子系统”、“采购管理子系统”和“库存管理子系统”组成。

四.创建构件图练习(请按上述实验内容来进行,但要注意以下几点:) 1.构件是UML物理元素。它可以是源代码,也可以是某种目标码;

2.同一应用中构件之间的依赖关系可以和类与类之间的关系不同。构件之间的

天 津 理 工 大 学 华 信 软 件 学 院 3

依赖关系表明它们在编译、链接和执行之间的先后顺序。

3. 如果目标码为Java源代码时,可以由类图直接生成源代码,也可以将类映射到构件,再由构件生成java代码。 当多个类映射到一个构件时, 只有一个类是公有的(打开类的Specification, 选择⊙Public),即和构件名同名的类是公有的。这样才能顺利的生成整体Java代码。 4.目标码为C++源代码操作步骤: 1)首先,在Tools菜单下设置参数:

Tools ? Options ? Notation 在Default 下拉框中选中VC++ 2)创建类

比如,Contract类,Sales Contract类,和 Product类, 并建立它们之间的

关系:

3)Tools ?Visual C++ ?Component Assignment Tool…显示:

4)在VC++下创建一个工程名为“Sales Management”然后,分别将三各类拖入其中: 步骤如下:

首先,将右边窗口中的Contract 类拖到左窗口的VC++处,出现:

天 津 理 工 大 学 华 信 软 件 学 院 4

回答“是”,出现:

按Add按钮,出现:

天 津 理 工 大 学 华 信 软 件 学 院 5

在Project name栏中输入Sales Management 并确定路径。按OK,则出现:

默认选项表明创建的工程(Sales Management)作为动态链接库(DLL)形式出现。按Finish按钮 ,连续按OK按钮,回到“Component Assignment Tool”窗口。

单击Sales Management图标可知新创建的工程中,只包含Contract类。 类似地,可把Sales Contract类及Product类拖到左边窗口的Sales Management 工程中。

5) 这时,Rose 的Component View中自动产生构件,名为:

天 津 理 工 大 学 华 信 软 件 学 院 6

”Sales Management

6) 通过Model Assistant 设置类的特性

(1) 选中Contract类,通过Tools-?VC++?Model Assistant 得到:

(2) 首先在左窗口的类操作(Class Operations)下,选中前三项;

(3) 再考虑Attributes的sign Date下的set _signDate (Date&)操作。我

天 津 理 工 大 学 华 信 软 件 学 院 7

们改写函数体如图所示:

(4) 同理对Sales Contract类和Product类进行设置。 7) 生成VC++代码: 选中Contract类 Tools? Visual V C++? Update Code 即可看到生成的VC++代码。见下图:(有关Contract类的部分VC++代码)

天 津 理 工 大 学 华 信 软 件 学 院 8

五.评分标准

1.根据“学生选课系统”、“图书管理系统”和同学自己所建立的类图,正确通过构件生成框架代码(Java源程序)者,可以得到60-70分成绩.

2. 能对上述案例进行正向工程和逆向工程,并能对Clock.Java 源代码进行逆向工程者,可得到80分以上的分数.

3.能顺利完成由类图生成 C++代码者,可得到90分以上的分数.

本文来源:https://www.bwwdw.com/article/2q9w.html

Top