無為

          無為則可為,無為則至深!

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks
          UML是在多種面向?qū)ο蠼7椒ǖ幕A(chǔ)上發(fā)展起來的建模語言,主要用于軟件密集型系統(tǒng)的建模。它的演化,可以按其性質(zhì)劃分為以下幾個(gè)階段:最初的階段是專家的聯(lián)合行動(dòng),由三位OO(面向?qū)ο螅┓椒▽W(xué)家將他們各自的方法結(jié)合在一起,形成UML 0.9。第二階段是公司的聯(lián)合行動(dòng),由十幾家公司組成的“UML伙伴組織”將各自的意見加入U(xiǎn)ML,形成UML 1.0和1.1,并作為向OMG申請(qǐng)成為建模語言規(guī)范的提案。第三階段是在OMG控制下的修訂與改進(jìn),OMG于1997年11月正式采納UML 1.1作為建模語言規(guī)范,然后成立任務(wù)組進(jìn)行不斷的修訂,并產(chǎn)生了UML 1.2、1.3和1.4版本,其中UML 1.3是較為重要的修訂版。目前正處于UML的重大修訂階段,目標(biāo)是推出UML 2.0,作為向ISO提交的標(biāo)準(zhǔn)提案。 
            在多種面向?qū)ο蠼7椒髋刹⒋婧拖嗷ジ偁幍木置嬷?,UML樹起了統(tǒng)一的旗幟,使不同廠商開發(fā)的系統(tǒng)模型能夠基于共同的概念,使用相同的表示法,呈現(xiàn)彼此一致的模型風(fēng)格。而且它從多種方法中吸收了大量有用(或者對(duì)一部分用戶可能有用)的建模概念,使它的概念和表示法在規(guī)模上超過了以往任何一種方法,并且提供了允許用戶對(duì)語言做進(jìn)一步擴(kuò)展的機(jī)制。 
            UML在語法和語義的定義方面也做了大量的工作。以往各種關(guān)于面向?qū)ο蠓椒ǖ闹魍ǔJ且员容^簡單的方式定義其建模概念,而以主要篇幅給出過程指導(dǎo),論述如何運(yùn)用這些概念來進(jìn)行開發(fā)。UML則以一種建模語言的姿態(tài)出現(xiàn),使用語言學(xué)中的一些技術(shù)來定義。盡管真正從語言學(xué)的角度看它還有許多缺陷,但它在這方面所做的努力卻是以往的各種建模方法無法比擬的。 
            從UML的早期版本開始,便受到了計(jì)算機(jī)產(chǎn)業(yè)界的重視,OMG的采納和大公司的支持把它推上了實(shí)際上的工業(yè)標(biāo)準(zhǔn)的地位,使它擁有越來越多的用戶。它被廣泛地用于應(yīng)用領(lǐng)域和多種類型的系統(tǒng)建模,如管理信息系統(tǒng)、通信與控制系統(tǒng)、嵌入式實(shí)時(shí)系統(tǒng)、分布式系統(tǒng)、系統(tǒng)軟件等。近幾年還被運(yùn)用于軟件再工程、質(zhì)量管理、過程管理、配置管理等方面。而且它的應(yīng)用不僅僅限于計(jì)算機(jī)軟件,還可用于非軟件系統(tǒng),例如硬件設(shè)計(jì)、業(yè)務(wù)處理流程、企業(yè)或事業(yè)單位的結(jié)構(gòu)與行為建模。 
            不過UML在取得巨大成功的同時(shí),也不斷地受到批評(píng)。來自工業(yè)界的批評(píng)主要是,它過于龐大和復(fù)雜,用戶很難全面、熟練地掌握它,大多數(shù)用戶實(shí)際上只使用它一少部分的概念;它的許多概念含義不清,使用戶感到困惑。來自學(xué)術(shù)界的批評(píng)則主要針對(duì)它在理論上的缺陷和錯(cuò)誤,包括語言體系結(jié)構(gòu)、語法、語義等方面的問題。 
            目前國內(nèi)也有不少軟件企業(yè)在學(xué)習(xí)并嘗試使用UML。從總體上看,我國計(jì)算機(jī)界對(duì)UML的了解還相當(dāng)初步,但是對(duì)它的崇拜程度卻遠(yuǎn)遠(yuǎn)超過了西方發(fā)達(dá)國家。人們?cè)趯W(xué)習(xí)和使用UML遇到和國外用戶相同的疑難和困惑時(shí),卻不太敢懷疑UML有什么問題。所以國內(nèi)幾乎沒有批評(píng)的聲音,偶爾有一點(diǎn),也會(huì)立即被捍衛(wèi)的聲音淹沒,即使對(duì)UML一些最明顯的缺點(diǎn)和錯(cuò)誤也是如此。 
            相比之下,國際上對(duì)UML的討論和評(píng)價(jià)則要客觀得多。無論是Internet上的意見交流,或是每年一次的UML研討會(huì),還是學(xué)術(shù)期刊上發(fā)表的文章,都是既肯定其成績,又指出其缺點(diǎn)和錯(cuò)誤,并且以積極的態(tài)度提出建設(shè)性意見。在醞釀UML下一次的重大發(fā)布和籌劃UML 2.0作為ISO標(biāo)準(zhǔn)提案的最近兩年內(nèi),圍繞UML的討論更為活躍和熱烈。 

            為了使我國計(jì)算機(jī)界對(duì)UML目前的狀況有較為客觀的了解,我們從大量的文獻(xiàn)資料中選擇了三篇最具權(quán)威性的文章,介紹給我國讀者。從這組文章中,我們可以得到關(guān)于UML現(xiàn)狀及未來發(fā)展的重要信息: 
            ● UML已經(jīng)取得重要成功,它已成為在軟件工業(yè)中占支配地位的建模語言,并在許多領(lǐng)域的軟件開發(fā)中得到應(yīng)用。 
            ● UML還存在許多問題,自它產(chǎn)生之日起就從未離開過批評(píng):用戶和教師抱怨它內(nèi)容龐大、難學(xué)難教而且太過復(fù)雜;學(xué)者認(rèn)為它缺少一個(gè)精練的核心和定義良好的外圍,有些語義定義得不夠精確而且?guī)в卸x性;建模實(shí)踐者認(rèn)為它缺少支持自己領(lǐng)域建模要求的機(jī)制;工具開發(fā)商則因?yàn)橐?guī)范本身的不確定性而產(chǎn)生理解上的偏差,它們對(duì)UML的自行詮釋有可能誤導(dǎo)用戶。 
            ● UML的關(guān)鍵問題是過于龐大和復(fù)雜,以及在語言體系結(jié)構(gòu)、語義等方面存在理論缺陷。產(chǎn)生這些問題的一個(gè)重要原因是,在形成規(guī)范的過程中不得不照顧多種方法流派的觀點(diǎn)和多家公司的利益。 
            
          為了UML的下一次重大發(fā)布,UML 2.0修訂的主持者正在廣泛收集各方面的意見。各界都給予了很高的關(guān)注,提出的意見涉及UML的各個(gè)方面。其中一個(gè)關(guān)鍵問題是UML是否需要簡化,以及如何使之更精練,最終大部分意見是提供一個(gè)精練的核心,而把不常用的內(nèi)容放到定義良好的外圍或擴(kuò)展機(jī)制中。此外,UML 2.0還將對(duì)UML的底層結(jié)構(gòu)、上層結(jié)構(gòu)和對(duì)象約束語言(OCL)做重大改進(jìn)。


          凡是有該標(biāo)志的文章,都是該blog博主Caoer(草兒)原創(chuàng),凡是索引、收藏
          、轉(zhuǎn)載請(qǐng)注明來處和原文作者。非常感謝。

          posted on 2005-12-20 21:14 草兒 閱讀(1186) 評(píng)論(3)  編輯  收藏

          Feedback

          # re: UML的現(xiàn)狀及未來發(fā)展 2005-12-21 09:21 wxb_nudt
          UML2.0標(biāo)準(zhǔn)分為四個(gè)部分,其中最重要的標(biāo)準(zhǔn)UML 2.0 Superstructure Specification已經(jīng)出臺(tái),其它三個(gè)也早已提交議案。
          但是,UML2.0還是沒有改掉龐大復(fù)雜的毛病,而且變本加厲了。以至于支持UML的廠商開發(fā)出來的UML產(chǎn)品千奇百怪,號(hào)稱支持UML2.0卻又無一相同。因?yàn)楣馐亲x規(guī)范就可以把人讀到發(fā)瘋。  回復(fù)  更多評(píng)論
            

          # re: UML的現(xiàn)狀及未來發(fā)展 2006-05-21 17:16 草兒
          所以才出現(xiàn)敏捷開發(fā)方法這場戰(zhàn)爭就像當(dāng)時(shí)網(wǎng)絡(luò)協(xié)議iso和tcp/ip之間的斗爭,當(dāng)然勝者是誰適應(yīng)市場的發(fā)展@wxb_nudt
            回復(fù)  更多評(píng)論
            

          # re: UML的現(xiàn)狀及未來發(fā)展 2006-05-25 19:09 pc
          http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=1106513212038
          Java開發(fā)中的線程安全選擇與Swing
          http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=1106513211722
          Java的多線程機(jī)制如何來理解
          http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=1106513165545
          Java多線程程序設(shè)計(jì)
          http://www.kpwang.com/pc/view.jsp?board_id=1&article_id=1106513164228
          Java線程總結(jié)  回復(fù)  更多評(píng)論
            


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 特克斯县| 黄大仙区| 都江堰市| 泰安市| 龙游县| 长宁区| 河曲县| 镇雄县| 娄烦县| 洛宁县| 临湘市| 新田县| 库尔勒市| 江门市| 黔东| 禄丰县| 河池市| 汉川市| 绍兴市| 疏附县| 大渡口区| 于都县| 图木舒克市| 墨江| 莱西市| 迁安市| 梁平县| 晋城| 自贡市| 石楼县| 宁远县| 隆化县| 独山县| 班戈县| 霍州市| 嘉荫县| 永定县| 中方县| 宣恩县| 怀集县| 茌平县|