第十一章 Deployment视图
该视图考虑应用程序的物理部署。显示网络上的所有节点、节点间的连接和每个节点上运行的进程。
Deployment框图的组成
处理器
处理器是任何具有处理功能的机器。
可以设置其版型(按处理器进行分类)、特性(速度、内存等)、调度方法。
调度方法记录处理器使用的进程调度方法,包括
1. Preemptive
2. Noe-Preemptive
3. Cyclic
4. Executive
5. Manual
进程是一个处理器其上运行的但线程执行过程。
设备
没有处理功能的机器或硬件。
连接
处理器、设备之间的实际链接。通常,连接表示网络节点之间的物理网络连接。
第十二章 用Rational Rose生成代码和逆向转出工程代码简介
正向工程步骤
检查模型
检查模型的一致性。常见错误包括Sequence框图或Collaboration框图中的消息与操作不映射,以及对象和类不映射等。
创建组件
生成代码之前,必须现将类映射到相应的源代码文件。所以必须先创建组件。
设置代码生成属性
控制代码如何生成。可以参考下一章关于ANSI C++和Visual C++的说明。
选择类、组件、包
生成代码时,可以一次生成一个类、一个组件或一个包。
生成代码
代码生成的元素如下:
1. 类
2. 属性
3. 操作签名
4. 关系
5. 组件
6. 文档。
逆向工程
逆向工程使用源代码中的信息创建或更新Rose模型。Rose从代码读取组件、包、类、关系、属性和操作。
Rose进行正向工程和逆向工程的方法
1. 检查模型一致性的方法:Tools->Check Model。
2. 发现访问问题的方法:Report->Show Access Violations。
3. 浏览代码生成属性的方法:Tools->Options,然后选择具体的语言页签。在Type中选择设置的元素。
4. 在设置代码生成属性之前,最好先生成一个自己的备份。修改自己的备份。
第十三章 C++与Visual C++代码生成和逆向转出工程代码
C++生成代码的步骤
1. 创建组件
2. 将类赋予组件
3. 选择代码生成属性
4. 选择Class或Component框图中要生成的类和组件
5. 选择Tools->ANSI C++->Generate Code生成代码
6. 选择Tools->ANSI C++->Browse Header或Browse Body浏览生成的代码。
Visual C++生成代码步骤
1. 启动向导。Tools->Visual C++->Update Code
2. Rose显示Select Components和Classes窗口。在用Visual C++生成代码之前,必须将类赋予组件。
3. 如果没有将类赋予组件,选择Ctrl+R创建。
4. 改变组件和类的代码生成属性。
ANSI C++代码生成属性
方法:Tools->Options->ANSI C++页签。在Type中选择要修改的属性。
类属性
类属性时适用于类的ANSI C++代码生成属性,这些属性可以改变类名、确定是否生成类的构造器与逆向转出工程代码并设置该类的其它类特定属性。
除了使用前面方法设置所有类属性之外,还可以通过在一个类的规范窗口中选择
除去上述属性,还可以设置每个类的默认成员函数,以及是否对属性产生get/set操作。方法是:选择一个或几个类,然后右击选择ANSI C++->Class Customization。
属性的属性
前面的方法可以设置所有属性的属性。要设置某个特定属性的属性,方法是:在属性规范窗口中的ANSI C++标签中设置。
操作属性
前面的方法可以设置所有操作的属性。要设置某个特定操作的属性,方法是:在操作规范窗口中的ANSI C++标签中设置。
包属性
可以设置名字控件名和指定包是否具有名字空间。
前面的方法可以设置所有包的属性。要设置某个特定包的属性,方法是:在包规范窗口中的ANSI C++标签中设置。
组件属性
组件属性是与Rose所生成和逆向转出工程代码的.cpp和.h文件相关的属性。
前面的方法可以设置所有组件的属性。要设置某个特定组件的属性,方法是:在组件规范窗口中的ANSI C++标签中设置。还有种方法设置特定组件的属性:右击组件,ANSI C++->Open ANSIC++ Specification。
泛化属性
Visual C++代码生成属性
除了可以采用ANSI C++类似方法,VC还可以使用Moel Assistant可以方便的设置生成属性。
VC逆向工程
Tools->Visual C++->Update Model from Code。