-
活動:定義候選架構
作業:架構分析利用 Web 應用程式現有的一個相當完整的架構,包括一套完整的機制(Web 瀏覽器、Java Applet
和 Servlet、ASP 和 JSP 等等)。除非 Web 應用程式開發架構相當特殊,否則一般而言使用類似概念:分層所述的簡單分層結構已很足夠。經常會有預先定義的現成架構可用,可能是經由購買取得或重複使用先前的 Web 開發專案。IBM 的 WebSphere
或 Microsoft 的 Windows DNA 等 Web 應用程式架構,就是提供這種架構範本。
Web 應用程式通常不會排定停止運作時間。架構可能(且通常)必須支援在執行時同步升級系統的要求,且在主要伺服器故障或伺服器進行維修或升級時,必須能夠切換至備用伺服器。有些 Web
應用程式架構提供工具做為正式的支援。無論如何,如果應用程式存在高可用性的需求,則您必須規劃購買或建置基礎架構來支援這種需求,並將這種功能的支援整合到架構中。
-
活動:分析行為
「詳述」反覆週期內會反覆執行作業:設計使用者介面。此活動的早期著重於建立「創意設計草圖」,可視為網站主要網頁的設計原型。這些「草圖」通常是「單調」的圖片,加上瀏覽器視窗圖形做為外框,看起來就像瀏覽器視窗一樣。「草圖」的主要好處在於不必太早投入設計太詳盡和耗費成本的
HTML 原型,等到對網站的特殊圖形風格形成一致的共識之後再投入。
「創意設計草圖」是透過觀察最重要「使用案例」的介面需求而建立,然後開發出許多可供選擇的外觀設計(可能 10 種以上)。從中會選出三個最佳方案向關係人展示。這個過程會反覆進行,直到同意最終的 Web 設計為止,一組分鏡腳本和一個導覽圖也就此誕生。
一旦達成協議並簽核通過,創意設計草圖便會透過重複的作業:使用者介面原型試做,發展成為具功能性的使用者介面原型。「起始 Web UI 原型」通常僅支援系統的一部份 -
最重要和結構性重大的使用案例。開發原型之前,必須確定「使用案例」事件流程的結構正確,以確保由功能引導使用者介面的配置,而非相反。
在後續的反覆週期中,Web 原型會進一步擴充,逐漸加入更廣泛的使用案例,且更深入地推演架構。
作業:使用案例分析相對較穩定,除此之外,不僅要強調 GUI 的行為,還需要注重底層的商業邏輯 - 通常在 Web
伺服器或應用程式伺服器上運作的部份。如果輕忽這一點,將會遺漏系統行為的最重要部份。網頁本身以「界限」類別表示,資料元素以「實體」類別表示,伺服器端行為(例如 Active Server Pages、Servlet
等等)以「控制」物件表示。
立即遵循使用案例分析,以作業:識別設計元素修正 工作成果:分析類別,與 Web
開發架構中的現有機制相對映,沿用先前專案既有的設計元素,或盡可能重複使用。通常必須重新調整已找出分析類別定義範圍,才能達到理想的重複使用性。
如需有關使用 UML 進行 Web 應用程式說明的詳細資訊,請參閱 白皮書:使用 UML 建立 Web 應用程式架構的模型。
-
活動:準備環境.
除了開發使用者介面準則,也建立 Web 設計元素 -
將分散的圖形組合起來建置網站的網頁。網站使用者介面整體的一致性,對使用性而言不可或缺;網站必須讓使用者感受到一致的風格。為了達到這一項要求,專案必須在整個網站中一致地採用一組標準的圖形元素。
開發這些元素是
作業:準備專案的準則的延伸工作,其中包括建立使用準則。請確定所有團隊成員瞭解何時和如何使用這些元素。Web
設計元素範例包括圖形元素,例如導覽裝置和網頁背景。在整個網站中重複使用高品質、標準的圖形元素,可以確保一致性、縮短上市時間及降低開發成本,且經由部署較少的高品質元素來提高品質。
需要結合起始 Web 使用者介面原型的開發來完成準則的準備,以產生網站的樣式指南。尤其,此樣式指南會指定該如何及何時使用 Web
設計元素、指定顏色設計、字型、階式樣式表,並指定導覽元素如何運作和定位的細節。
-
活動:修正架構
作業:確定設計機制開始強調將系統的非功能面需求對映至 Web
開發架構提供的機制;必須找出不是由架構提供的機制(如果存在)並尋找替代方案。
作業:說明執行時期架構變得更強調 Web 伺服器和應用程式伺服器層(請參閱概念:分佈型樣),並以程序和執行緒來管理應用程式的並行性。通常很少或完全不控制用戶端機器上的處理程序。
作業:說明分佈的焦點從決定「有什麼類型的伺服器節點」變成「每一種伺服器節點有多少個」。Web
開發架構通常會提供固定數量的伺服器類型(例如,Web
伺服器、應用程式伺服器、郵件伺服器、通訊閘道伺服器),且有相當明確的功能面界限。因此,軟體架構師的技術開始強調決定如何以可用的伺服器類型來處理延展性和容錯需求,通常是決定每一種伺服器的需求數量。此外,也需要建立測量計劃,以決定如何判斷何時需要更多伺服器。
-
活動:定義評估任務
規劃相當重視效能測試,以確保 Web 應用程式可以支撐大幅增加的並行使用者數量。因此,測試活動中的 驗證測試方法、 測試及評估、達到任務接受率及 改善測試資產也將偏重於效能測試,以確保架構可彈性調整。
其他重要的 測試類型有 可用性測試及 結構測試。必須測試使用者互動,以確認 Web 應用程式的結構很適合使用者。在某些情況下,您必須將應用程式放到網際網路上,才能監視使用者如何使用應用程式。
另一種耗時的測試是瀏覽器測試,因為瀏覽器的相容性和瀏覽器版本通常會限制使用者介面上的設計自由。
-
活動:實作元件、整合各子系統及 整合系統
為驗證截至目前為止所做的專案架構決策,需開發並測試一個或多個架構原型,這牽涉到順利執行三種活動,即活動:實作元件、活動:整合各子系統及 活動:整合系統。如上所述,測試應該特別注重應用程式在系統負荷無預期報暴增的延展性。