基于UML柔性開發模型之Java設計 Java開發
關鍵字:UML柔性開發 Java設計與傳統的結構化軟件開發技術不同,面向對象技術提出了對象的封裝、繼承、多態性、對象的覆蓋等方法,而傳統的程序表示方法(如:框圖、NS圖等),無法對面向對象這些新的特性加以描述表達。因此,面向對象技術的表達、面向對象技術的方法論也是面形對象技術必不可少的研究內容之一。
面向對象方法論從1986年Booch率先提出后,至今已有50種以上的方法論出現,常見的有Rumbaugh的對象模型技術OMT、Booch以及Yourdon的面向對象分析與設計(OOA/OOD)、Jacobson的面向對象軟件工程(OOSE)、(Martin/Odell)的面向對象分析與設計(OOAD)、(Shlaer Mellor)的面向對象系統分析(OOSA)、Brock的責任導向設計RDD等等,各有其特色,但是不同分析設計方法缺乏統一的標準。
為了整合面向對象方法論,1995年由Rumbaugh、Booch、Jacobson三位面向對象大師提出與最重要的、具有劃時代統一建模語言(Unify Modeling Language,簡稱 UML)。1997年后,UML成為現今國際軟件工業的標準。事實上,近年來UML在世界范圍,已經逐漸成為是面向對象技術領域內占主導地位的標準建模語言。
二. Rational Rose UML柔性開發模型
Rational Rose UML柔性軟件開發模型,是指在軟件開發過程中,根據需求工程的牽引,首先建立軟件系統的頂層模型,并對其進行模擬、分析和調整。然后,將頂層模型自頂向下地進行分解,建立該系統各個子系統的模型,對這些子模型進行模擬、分析和調整。將子模型的模擬結果,逐次代入上層,再對該上層模型進一步進行模擬、分析和調整,如有不適,則進行修改。因此整個建模過程是一個"自頂向下建模,由底向上修改"的反復迭代的過程。簡言之,柔性軟件開發過程是一個在需求牽引下,自頂向下分層細化地建模,然后按照"T型技術",通過對模型的虛擬執行,由底向上地逐層上移修改,直至各層的模擬結果都滿足需求為止。
圖 1柔性軟件開發模型
代碼的生成建立在模型正確性的基礎上,同時考慮到對需求修改的靈活性和快速響應能力,實施能夠反饋修改的"閉環開發"。即不僅能支持從模型到代碼的自動生成,將新的模型轉換為代碼,還能支持從代碼到模型的逆向變換,將原有的代碼轉化成模型,進行再次分析、修改和調整以及新一輪的開發,從而為增量式開發提供支持。這樣不僅能做到分階段提交產品,也提高了對用戶需求變化的響應速度和應變能力,以滿足用戶不斷變化的新的需求。Rational Rose是一個能支持系統建模、系統模擬和系統生成的"閉環式開發"的集成化支持環境。
圖 2基于Rational Rose UML開發模型用例圖
三. Jbuilder對UML的支持
Java作為純面向對象的計算機語言,自然與UML關系密不可分。目前比較流行的Java集成化的開發系統(IDE),如:Jbuilder7、Visual Café、IBM Visual age,都或多或少地提供了對UML的支持。在此,只討論Jbuilder集成化開發環境。
文章來源于領測軟件測試網 http://www.kjueaiud.com/