Rational Rose 建構對映至 Rational Rhapsody 元素

下表顯示各種 IBM® Rational Rose® 建構及選項如何對映至 IBM Rational® Rhapsody® 模型。 為方便使用,Rational Rose 元素會按英文字母順序列出。
表 1. 建構及選項清單,以及它們如何對映至 Rational Rhapsody 模型
Rational Rose 元素或選項 Rational Rhapsody 元素 附註
抽象類別   不匯入。
動作 動作  
活動圖 活動圖  
動作者 動作者  
項目的錨點附註 錨定  
關聯 鏈結,鏈結類型 = 關聯 請參閱已匯入的關聯類別
類別的基數 組件 類別基數指的是在執行時期,可以建立的類別的實例數。 確切只有一個實例的類別具有基數一。

Rational Rhapsody 中,類別的基數稱為其對應關係對應關係欄位會反映原始 Rational Rose 模型中,類別的基數。

種類 套件  
CategoryDependency 相依關係  
類別 類別  
類別類型 類型 = 類別 所有類別類型都對映至類別。
ClassifierRoles ClassifierRoles  
協同作業圖 協同作業圖 不匯入。
元件套件 套件  
元件 元件 由於 Rational Rhapsody 不容許套件中包含元件,因此任何已匯入元件都會包含在專案層次下。
元件圖 元件圖  
並行—循序、作用中、受保護或同步 並行—循序或作用中 不匯入作業並行。
條件 保護  
限制   不匯入。
包含關係—依值、參照、未指定   不匯入。
相依關係 (UCD) 相依關係  
部署圖 部署圖 不匯入。
衍生的屬性及關係   不匯入。
結束狀態 活動終結  
事件 事件 從一個狀態到另一個狀態的事件觸發程式轉移。事件會作為其行為包括觸發狀態轉移的類別匯入。
匯出控制   不匯入。
夥伴 內容  
廣域套件   不匯入。
HasRelationship 鏈結,鏈結類型 = 聚集  
繼承(使用案例) 繼承  
InheritRelationship 超類別、超事件  
屬性的起始值   不匯入。
介面 類別 介面類別會作為具有虛擬作業的類別匯入 Rational Rhapsody
IsConstant(Rational Rose 內容)   不匯入。
鏈結屬性   不匯入。
鏈結元素   不匯入。
訊息 訊息  
關係的對應關係 對應關係  
可導覽的關係 特性(從類別到類別) Rational Rhapsody 中,如果存在導覽,則您無法新增可導覽的特性(無法同時具有可導覽及聚集)。
巢狀類別   不匯入。
附註 附註  
作業類型—虛擬、靜態、夥伴、抽象、一般 虛擬、靜態  
OperationIsConst(Rational Rose 內容)   不匯入。
參數 引數  
持續性   不匯入。
專用實作 專用實作  
受保護的實作 受保護的實作  
公用實作 公用實作  
限定元/索引鍵 限定元 Rational Rose 中,限定元可能不是類別屬性。 在 Rational Rhapsody 中,限定元必須是類別屬性。

Rational Rhapsody 會根據限定元是否也是 Rational Rose 中的屬性,來估計限定元。 如果限定元是 Rational Rose 中的屬性,則它會對映至 Rational Rhapsody 中的屬性。 否則,Rational Rhapsody 會建立屬性,將其新增至類別,並將其設為限定元。

Rational Rose 容許多個限定元,而 Rational Rhapsody 只容許一個。 因此,當您匯入與多個限定元的關聯時,Rational Rhapsody 會隨機採用其看到的第一個限定元。

限定元型式 屬性 如果限定元不是類別屬性,則建立屬性。
關係 MetaLink

使用案例圖中的關係會作為關係匯入。

抽象類別。
關係類型—依值、依參照、未指定 所有三個類型都對映至「依參照」。  
RealizeRelation 超類別  
角色 角色  
傳送引數 動作  
傳送事件 動作  
傳送目標 動作 Rational Rose 傳送事件/引數/目標使用下列格式,對映至 Rational Rhapsody 動作:

Sendtarget->GEN(
Sendevent(
Sendarguments))

序列圖 序列圖 Rational RhapsodyRational Rose 匯入序列圖時,Rational Rose ClassifierRoles 會轉換為 Rational Rhapsody ClassifierRoles 及 Classifier,且訊息會轉換為目標(接收)類別上的實際作業。
類別空間   不匯入。
開始狀態 起始連接器 與送出轉移結合。
狀況 狀況 如果在 Rational Rose 中,單一狀態具有多個視圖,則在匯入至 Rational Rhapsody 時,額外的視圖會轉換為模型中具有相同性質的新狀態(類似於使用「使用模型複製」特性所取得的結果)。 名稱將指出其是新狀態,但標籤將是相同的。
靜態屬性 靜態屬性  
靜態關係 靜態(關係是 static 類別成員)  
模板   不匯入。
子狀態 狀態(具有母項) 如果在 Rational Rose 中,單一子狀態具有多個視圖,則在匯入至 Rational Rhapsody 時,額外的視圖會轉換為模型中具有相同性質的新子狀態(類似於使用「使用模型複製」特性所取得的結果)。 名稱將指出其是新子狀態,但標籤將是相同的。
範本及範本說明實例 範本及範本說明實例  
文字框 附註 與物件模型相同。
轉移 轉移 圖表中的控制流程格式如下所示:
<Event>[<Guard>]/<Action> 

如果在 Rational Rose 中,單一轉移具有多個視圖,則在匯入至 Rational Rhapsody 時,額外的視圖會轉換為模型中具有相同性質的新轉移(類似於使用「使用模型複製」特性所取得的結果)。 名稱將指出其是新轉移,但標籤將是相同的。

類型—預先定義(如 intfloat)、使用者定義或類別。 類型 當您在 Rational Rose 中建立使用者定義的類型時,您可以對其提供名稱,但不提供宣告。 Rational Rhapsody 會透過新增使用與類型宣告相同類型名稱的即時類型,來估計使用者定義的類型。

Rational Rose 中,您還可以指派類別類型,如 ParameterizedClassInstantiatedClassRational Rhapsody 會透過使用作為類型宣告的類別,建立即時類型,來估計類別類型。

使用案例 使用案例  
UseRelation (ClassDependency) 套件之間的相依關係僅儲存在圖形介面。  

已匯入的關聯類別

如果類別沒有關聯或狀態圖,則該類別會作為關聯類別匯入;否則,該類別會作為一般類別匯入。

請考量下列醫院模型:

醫院模型

在本範例中,Visit Record 是與 Hospital_Patient 關聯的類別。因此,該類別可以作為關聯類別匯入。

如果 Visit Record 類別具有狀態圖或與其他類別的關聯,則不會作為關聯類別匯入,而會作為類別匯入。 如圖所示,因為 Visit Record 具有與類別 Bill 的關聯,因此,它會作為一般類別匯入。 不過,關聯 Hospital_Patient 將具有指向此類別的超鏈結。

Visit Record 沒有關聯或狀態圖,它會作為關聯類別匯入。 這表示:

  • 關聯 Hospital_Patient 的名稱將為 Visit Record
  • Visit Record 的屬性及作業將會顯示在關聯類別下。

意見回饋