高階合成方法

合成方法是很實用的建構,可以為架構中的進階資料流建模。例如,許多標準架構(例如 Struts 和 Spring)都建議應用程式採用模型視圖控制器 (MVC) 架構。在 MVC 結構中,通常採取下列方式來處理用戶端表單提交:

  1. 根據 URL,決定應用程式模型類別 M(保存提交的表單資料)和控制器類別 C(包含商業邏輯)。
  2. 建立 M 模型物件,並根據 HTTP 要求中(未信任)的表單資料來設定內容。通常是透過 setter JavaBeans 來設定內容(例如,setName()setAddress())。
  3. M 物件中的資料執行一些驗證。
  4. 建立 C 控制器物件,並將 M 物件傳給執行商業邏輯的方法 C.execute()execute() 通常會傳回視圖名稱來呈現結果。
  5. 根據視圖名稱,決定要顯示的適當視圖檔案(例如,JavaServer 頁面)。通常會透過要求或階段作業物件的屬性,將 M 物件中的資料傳給視圖。

以上所有特性都可以使用 Framework for Frameworks 合成方法來建模,從而公開行為供 AppScan® Source 分析。Framework for Frameworks API 提供高階合成方法,以輕鬆產生合成方法。

註: 類別名稱開頭為 Appscan.SyntheticAppscan.Synthetic.ValidatorAppScan.Synthetic.Replacement 的 Trace 節點,對應於 AppScan® Source 所合成的方法。
  • AppScan.Synthetic 方法是用來在使用架構的應用程式碼中聯結追蹤。
  • AppScan.Synthetic.Validator 方法為架構執行時期所執行的基礎驗證建立模型。您可以選取驗證器方法,必要的話,將它標示為驗證器
  • AppScan.Synthetic.Replacement 方法指出 AppScan® Source 取代應用程式碼中的方法,來擷取該架構的分離元件之間的資料流(例如控制器和視圖)。