當前位置:才華齋>IT認證>J2EE>

開發完整J2EE解決方案的八個步驟

J2EE 閱讀(2.9W)

  摘要:Java 2企業版本(The Java 2 Enterprise Edition,J2EE)平臺由4個主要的部分組成:規範,參考實現,相容性測試包和BluePrints程式。BluePrints描述了一個分散式元件體系的最佳練習和設計指導方針。這篇文章介紹了一個由八個步驟組成的J2EE開發方法論,該方法是基於Rational Unified Process和BluePrints應用例子的。通過這篇文章,你將可以更好地理解J2EE體系的許多重要主題,並且可以應用這些知識來擴充套件和修改這個簡單的方法論,從而解決各種特定的商業問題。

開發完整J2EE解決方案的八個步驟

在商業領域,我們使用Java 2企業版本(J2EE)來解決商業問題,開發商業的軟體,或者為其它的商業專案提供聯絡的服務。如果一個公司要使用多層的體系來建立一個電子商務的網站,在其整個開發週期中,通常都需要經理、體系構建人員、設計人員、程式設計人員、測試人員和資料庫專家參與進來。

為了讓不同的部分可以有效地工作,我們通常都需要一個軟體開發流程。一個經典的開發流程包括有瀑布模型、快速應用開發(RAD)和最終程式設計。在這篇文章中,我們將集中介紹一個流行的軟體設計流程--Rational Unified Process(RUP)。RUP提供了一個專門的方法來為不同的角色分配任務。它的目標是在一個可預計進度和預算內,確保我們生產出高質量的軟體以符合使用者的需要。

我使用RUP作J2EE開發有三個方面的原因。首先,RUP是以體系為中心的;在提交資源作全方位的開發之前,它首先開發出一個可執行的體系原型。第二,RUP是迭代的而且是基於元件的。該體系的基本通常是包含有一個架構,它可以方便地通過迭代地增加元件,從而在不影響系統其它部分的基礎上,自定義和擴充套件一個系統的功能。第三。RUP使用一個工業標準的語言--UML,可以將系統的體系和元件以視覺化的模型展示。RUP有4個不同的開發階段:初始(inception), 細化(elaboration), 構建(construction)和轉換(transition)。這篇文章將從一個技術的觀點來介紹J2EE開發的8個基本步驟,它是維持以體系為中心的。

  1、需求分析

需求分析用來描述系統應該和不應該做什麼,從而開發者和使用者可以建立一個初始化的商業聯絡。你可以用商業的概念、該領域的術語、框圖或者其它方法將功能性的需求寫成文件,而非功能性的需求,例如效能和事務,可以寫在附加的需求文件中。你可以用文字或者HTML來建立高級別的UI模型,採取哪種方式,要看你在該專案中介入的深度。

圖一展示了一個典型的電子商務系統。viewOrder圖說明的是一個使用者通過web登入至系統,檢視訂單的列表,並且可點選進去檢視每張訂單的細節。addLineItems說明的是使用者瀏覽產品目錄,選擇感興趣的產品,並且將它們加入到購買訂單中。

  II、面向物件的分析

分析產生問題域模型:類、物件和互動。你的分析應該脫離任何的技術或者實現的細節,而應該包含有一個理想的模型。物件分析可幫助你理解問題和獲得問題領域方面的知識。你必須維護一個純領域的模型,它不包含技術的細節,這是由於商業流程的改變要比資訊科技慢得多。

上面的兩步--需求分析和麵向物件的分析並不是J2EE特有的,對於許多面向物件的方法論來說,都是很常見的。圖2展示了一個高級別的物件分析模型,它是一個寵物店的例子應用。它說明了我們由需求分析use cases中確定的主要概念。我們將這些概念模型化到物件中,並且確定它們的關係。

需求和物件分析的結果是J2EE體系開發的一個入門點。要開發一個體系,你可選擇一個垂直的部分--通常是一個關鍵的部分,例如是訂單領域的物件模型--來作物件設計、實現、測試和開發。(一個垂直的部分,是一個RUP概念,是系統的一小部分。開始點是use case的一個子集,如圖1所示,還有領域分析模型,如圖三所示。一個垂直部分的實現就會產生一個全功能的迷你係統,包括所有層,例如使用者介面層的JavaServer Pages(JSPs),中層的商業物件,例如是Enterprise JavaBeans (EJBs)和後臺的資料庫)。你可以將由原型中得到的經驗應用到域物件中,並且將這些認識作為物件設計階段的一個設計指導方針。

  III、體系規範

經過前面的兩個步驟,商業領域的問題和需求都應該清晰了。現在我們將集中討論技術策略和體系上。一個體系就是各部分一起定義整個系統的藍圖:結構,介面和通訊技術。我們可進一步將一個體系劃分為企業和應用體系。

  企業系統體系

企業系統體系覆蓋了硬體和軟體架構,網路拓撲,開發、測試和生產環境等。這些都反映了一個企業的長線投資。在開發前,你需要評估現有的軟體和硬體架構,如果它不能完全支援J2EE的話,你可能會加入新的元件和升級你現有的系統。你需要徹底地評估硬體,包括有計算機,路由器、交換機和網路拓撲,因為它們都會影響系統的效能和穩定,圖4展示了一個多層的網路拓撲。

圖4中的多層企業體系擁有以下主要的元件:

瀏覽器客戶端,它可能處在客戶端公司的防火牆後面

伺服器,它通常處在DMZ區

容器主機提供表現或者商業邏輯元件

.應用容器提供商業邏輯元件

.關係資料庫管理系統(RDBMS)和資料庫提供資料和資料邏輯

所使用的系統體系型別是根據你對安全、效能、可靠性的需求以及你公司的財政狀況而定的。要求很低時,你甚至可以使用一臺二手的計算機和一條電話線。在Internet上,有許多開放原始碼的作業系統、Web伺服器、應用伺服器和資料庫管理系統。這些系統的花費可能只有幾百美金,當然,維護起來可能要麻煩一點。

高階的客戶,例如許多華爾街的財政機構,它們需要的是一個支援安全、高吞吐量和可應付不可預計網路通訊的系統。在這種情況下,你通常就需要一個n層的體系,該體系帶有Web伺服器和應用伺服器,並且設定為群集而達到容錯的目的。

你還需要評估軟體架構,包括Web伺服器,安全管理軟體,應用伺服器,域名管理伺服器,資料庫管理系統和第三方的軟體元件,如果你還沒有購買你的應用伺服器,那麼在評估過程中,選擇一個J2EE的生產商將是一個重要的部分。我要提醒你一點,不同廠家對J2EE的實現是有很大不同的,有一些僅支援舊的J2EE版本。此外,一些Web容器或者應用容器可能要比其它的快不少。除了實現J2EE規範外,許多的廠家還售賣J2EE體系的元件或者架構。選擇一個穩定的J2EE廠家也是重要的,因為這樣可以得到長久的支援。你通常可以購買或者在系統體系級別開發的功能包括有: