rose中的组合

生成组合
1、添加关联
2、设置重数为1:1
3、设置主类为aggregate
4、设置主体类为 navigable
4、设置主类为按值传递

示例:
一个进程由pcb, code, date三部分组成。
其类图表示如下:

组合


设置方法:
1、在工具栏选择 "association" (关联),从process类连接到pcb类。
2、编辑role B 属性 open specital , role B detail ,multiplic(重数) 为1,勾选 "Aggregate",不勾选"navigable"。containment of Data (传递方式)为by value。

 

3、编辑role A 属性 role A detail ,填写role名称为 pcb ,勾选"navigable" ,不勾选 "Aggregate",containment of Data (传递方式)为by value。

在rose中,元件类为A 而 主体类为B,这与我们的习惯思维主体在前,部分在后不同。因为rose认为,a是server,而b 是client,A为B提供服务。这大概是西方与中国文化的不同吧。也可能正因为此,rose不区分“组合”与“聚合”(甚至于UML建模精粹中也说“把它(组合)想像成建模安慰剂”)。

其生成的主体类 Process的.h代码如下,完整的代码见附件。


#ifndef PROCESS_H_HEADER_INCLUDED_B80A55DC
#define  PROCESS_H_HEADER_INCLUDED_B80A55DC
#include 
" Code.h "
#include 
" Data.h "
#include 
" PCB.h "

class  Process
{
  
public:
    PCB pcb;
    Code code;
    Data data;
}
;



#endif  /* PROCESS_H_HEADER_INCLUDED_B80A55DC */

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值