練習 1.3:定義架構控制規則
本練習假設您已完成練習 1.1︰匯入必要的資源。在練習 1.3 中,首先您要閱讀一個使用者實務。然後,假設您扮演使用者實務中所描述的軟體架構設計師角色,並使用您在練習 1.1 中所匯入的專案來完成練習。
使用者實務
為了防止無關連的相依關係,架構設計師想要放置安全保護以確保應用程式不會被引入相依關係。為了達到這個目的,他從提供的精靈中建立了規則。規則就是如果公用程式套件在應用程式套件上變為相依項時就警示他。
建立規則之後,架構設計師藉由套用規則到程式碼庫來執行程式碼複查。發現項目將會顯示應用程式中的任何外來相依關係。
練習
在這個練習中,您會執行下列作業︰
- 根據提供的精靈來定義規則。
- 驗證您的使用者定義的規則已新增到「結構分析」程式碼複查中。
- 執行「結構分析」程式碼複查。
- 檢視未遵守您的規則準則的程式碼複查發現項目。
定義規則
如果要根據提供的精靈來定義架構控制規則︰
- 在「程式碼複查」視圖中的工具列上按一下管理規則圖示
。

- 在「喜好設定」視窗中按一下新建規則。這時會開啟「新建程式碼複查規則」精靈。
「新建程式碼複查規則」精靈(如下一個畫面所示)會帶您完成定義您專屬的規則的一些步驟。在這個練習中,您將要設計架構控制規則,當兩個元件之間建立了相依關係時就會警示您。
- 在「架構控制」的規則清單中,按一下建立元件 [相依關係]。請注意,當您選取這個選項時,清單下方的文字會告訴您使用這個範本以禁止兩個元件之間的相依關係。按下一步。

- 在基本內容之下,接受將規則放在結構分析種類並具有問題嚴重性層次的預設值。

- 在特定內容之下,指定規則的獨立和相依元件︰
- 獨立元件︰workspace\StructuralAnalysis\src\com.ibm.r2a.rules.rsa.examples.architecturalcontrol\IndependentComponent.java
- 相依元件︰workspace\StructuralAnalysis\src\com.ibm.r2a.rules.rsa.examples.architecturalcontrol\DependentComponent.java.
- 按一下完成。
查看已新增到程式碼複查的規則
- 在您定義規則之後,會出現喜好設定視窗。在選取程式碼複查清單中,請按一下完整程式碼複查,如果這不是選定的程式碼複查的話。這會顯示所有的程式碼複查種類。
- 展開結構分析資料夾,查看您剛剛建立的規則。
- 按一下規則以查看您為其設定的內容,如下列畫面所示︰

僅選取適用您的規則的程式碼複查
如果只要針對您的規則來執行程式碼複查,請清除清單中的所有資料夾,除了結構分析資料夾之外,如上一個畫面所示。按一下確定。
選取要複查的程式碼庫
如果要選取工作區做為要複查的程式碼庫︰
- 在「程式碼複查」視圖中的工具列上按一下複查圖示(
) > 複查工作區)。
執行程式碼複查
一旦您選取要複查的程式碼庫,就會執行程式碼複查。您可以檢查視圖右下角的進度列來追蹤其狀態。
檢視程式碼複查發現項目
當程式碼複查完成時,「程式碼複查」視圖中會顯示發現項目,如下列畫面所示。在標籤下方,統計資料指令行彙總了複查資訊。

- 展開結構分析資料夾,查看其中的發現項目。

- 按兩下第三個發現項目,在編輯器查看其程式碼,如下列畫面所示︰

您已完成練習 1.3:定義架構控制規則。
運用使用者定義規則的能力
藉由建立您專屬的規則,放置自訂的安全保護來監視設計的實作方式。您可以採取下列措施︰
- 指定規則的準則。
- 指派規則的嚴重性層次︰問題、警告或建議。
- 僅就您的規則來執行程式碼複查。
練習 1.3 整理
您已完成練習 2:定義架構控制規則。其中您執行了下列作業︰
- 根據提供的精靈來定義規則。
- 驗證您的使用者定義的規則已新增到「結構分析」程式碼複查中。
- 執行「結構分析」程式碼複查。
- 檢視未遵守您的規則準則的程式碼複查發現項目。
現在您已準備好開始進行練習 1.4︰解決結構問題。