发信人: connor()
整理人: majorsun(1999-11-19 15:04:46), 站内信件
|
这些天来,小灵和老幺都在认真学习ROSE和UML。这一天,老幺来到小灵家 来做客,看到小灵正在玩ROSE。 老幺:小灵,ROSE玩得怎么样啊? 小灵:嘿,老幺哥,你来啦。请坐。 (小灵给老幺让座、倒茶) 小灵:老幺哥,我发现如果UML的基本概念掌握好了,再加上一些例子,ROSE 其实并不难学嘛。 老幺:那好啊,我们来切磋切磋。你来给我介绍一下你的成果吧! 小灵(清了清嗓子):OK!我们先来看一看ROSE的界面吧。 (老幺和小灵坐到电脑前) 小灵:ROSE的界面基本分成三个窗口:浏览窗口browser window、图形窗口 diagram window和文档窗口document diagram。它们共同来创建和操 作模型。浏览窗口主要是来创建各种模型元素,并在模型中遍历和漫 游。图形窗口主要是用来绘制和显示模型中的各种图,而文档窗口用 来书写和显示模型元素的描述。 老幺:对。我觉得,很重要的一点是要搞清楚我们所建的模型和我们所见的 模型之间的关系。UML中的各种图不过是从不同的角度来把模型可视化 而已。同一个模型元素,可以出现在多个图中。 小灵:这就好象同一个意象,诗人用诗歌的形式表现它,画家用绘画的形式 表现它,而作曲家用音乐的形式来表现它一样。 老幺:ROSE中的浏览窗口、图形窗口和文档窗口都是同一模型的不同表现形 式而已,它们用不同的方法组织和表现模型的元素,使我们能更好的 构造和理解模型。 小灵:好,我们拿到一个项目时,首先应该考虑什么呢? 老幺:当然是考察用户需求,烹制一些USE CASE喽! 小灵:在分析USE CASE之前,要先分析ACTOR。就是分析我们系统的用户和将 与我们的系统交互的外部系统。因为真是它们的需求,才让我们确定 我们的系统要具有什么样的功能。 老幺:在ROSE里,怎么创建ACTOR? 小灵:一般来说,创建模型元素应该在浏览窗口中进行。就是在浏览窗口中 选中Use case view、Logical view、Component view或Deployment view文件夹,单击右键,选择New菜单,创建所需的模型元素。 老幺:我在USE CASE图里不是也能建ACTOR吗? 小灵:不错。但是我更习惯先在浏览窗口中把模型元素建好,然后再把它们 拖到相应的图中。这样更能体现图是模型的可视化表现这个思想。 老幺:我觉得那种方法都可以。 小灵:有了ACTOR之后,我们就可以为每个ACTOR分析它们所要求的系统应该 具有的功能,也就是USE CASE。在创建了USE CASE之后,我们需要把 ACTOR和USE CASE拖到USE CASE图中,并用箭头表示它们之间的交互关 系。 老幺:画完了USE CASE图之后呢? 小灵:USE CASE分析之后,我们要考虑USE CASE的实例senario的事件流程, 这通常使用交互图(包括顺序图和协作图)来描述。在这些图中,我 们用对象和对象之间的消息流来描述senario,从而发现要完成USE CASE,系统必须具有哪些对象,以及这些对象应该响应哪些消息。 老幺:这比Coad方法中发现对象的方式更具操作性。 小灵:当我们把这些senario分析完了之后,我们发现了许多对象,下一步, 我们就要为这些对象定义相应的类了。 老幺:这些类是在Logical View中定义和显示的喽! 小灵:对,我们在Logical view中定义这些类,然后把它们组织成包。创建 类图,把包、类之间的关系绘制在图上,建立起系统的静态模型。这 些类将是系统中最稳定的元素。 老幺:go on. 小灵:我们可以为每一个类创建一张(也只能创建一张)状态图。 老幺:怎么操作? 小灵:在浏览窗口中选中一个类,选右键菜单上的state diagram,就可以创 建这个类的状态图。状态图描述了这个类的对象在外部事件的影响下 的状态改变。 老幺:我们不停的细化和修改这些元素,直到我们可以很容易的实现它们。 小灵:在实现阶段,我们在ROSE的Component view中定义一些实现包。这些 包的定义要综合考虑逻辑包的结构和实现环境。在实现包中我们定义 一些模块module,模块可以是子系统、子程序、任务等等实现上的划 分。然后,我们把逻辑包映射到实现包上,把类映射到模块上。这样 就把系统的逻辑结构和实现结构挂上了钩。 小灵:最后,我们还可以为软件系统将要运行的环境定义一张实施图 deployment diagram。 老幺:我们把模型建立完了之后,可以使用ROSE的代码自动生成功能为我们 自动生成大部分的代码。并且ROSE的双向工程Round-Trip Engineering功能,可以保持代码和模型的一致性。 小灵:怎么样,我学得很快吧? 老幺:不错不错。 小灵:主要是要一步步过一个例子。我觉得有Demo1.mdl、Demo2.mdl、 Rosemode.mdl和Wlkthr_r.htm的例子不错。按照Wlkthr_r.htm的说明 ,一步步做下去,很快就能掌握ROSE的基本操作。我已经把 Wlkthr_r.htm文件翻译成中文了。 老幺:那你还不把它贴到BBS上,让大家共享? 小灵:太大了,而且还是HTML格式的,挺不方便。 老幺:没关系,只要有用就行。 小灵:这样吧,我在BBS上贴一个,再把HTML文档上载到202.197.12.252的目 录/incoming/rose_cpp下,名字叫CWlkthr.htm,让大家下载好了。 老幺:太好了。 小灵:我这就做。
-- ※ 来源:.网易 BBS bbs.netease.com.[FROM: 202.96.152.112]
|
|