• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Java 開發環境的過去、現在和將來

    發布: 2008-8-07 15:11 | 作者: 網絡轉載 | 來源: 擇就居 | 查看: 117次 | 進入軟件測試論壇討論

    領測軟件測試網

    總的講20年來軟件工程的發展變化很小,現在許多為人所熟知的概念和方法都是在20年以前奠定下的基礎。盡管Gerald Weinberg等人要求特別關注軟件開發中人的因素,但無論是過去的IDEs也好,還是現在的XDEs也罷,它們有一個共同的出發點:僅僅注重提高個人的開發效率,F在的Java開發環境,在如何提高個人開發效率上做了許多工作,比如,增量編譯器、組件瀏覽器、可視化編輯器等,但是我們知道現在的Java開發人員主要開發復雜的N-層Web應用,這需要知道多種編程語言、運行平臺以及相關的各種組件和Web服務技術,由于影響因素眾多,開發人員很難單獨完成全部的工作。一般以Web應用為核心的開發團隊常常包括項目經理、測試工程師、,絡工程師,架構師,軟件工程師和內容編輯等角色,有些項目的人數會達到幾十甚至上百人,軟件開發已經成為一個集體項目,成員之間的合作與個人英雄同樣重要。

      由于市場的壓力,一個軟件企業不僅要提高開發人員個體的工作效率,還要提高整個開發團隊以及整個企業的開發效率,但在現有的Java 開發環境XDEs下無法完全做到這些,所以新一代開發環境CDEs (Collaborative Development Environments)就產生。Grady Booch和Alan W. Brown的研究表明一個程序員一天工作時間的分配是這樣的:分析占16% (從 5% 到 40%不等), 設計占14% (從 1% 到 40%不等),編程占16% (從0% 到 60%不等), 測試占10% ,打電話占 3% ,閱讀占7% (電子郵件,文檔,月刊和雜志),參加開發會議占 10% ,無關的會議占 7% 。從這些數據可以發現,開發人員用于交流的時間約占工作時間的1/3,開發人員的相互交流非常重要?墒乾F有的主流Java開發環境一般僅將分析、設計、編程和測試等工具集成進來,卻未包括用于交流的工具,這顯然不合理。因此,所謂CDEs就是將用于人與人、人與團隊以及團隊與團隊進行交流的工具集成進來的開發環境,比如,CDEs常具有發送電子郵件、進行及時通訊和屏幕分享等功能,通過實現無損耗過程的交流提高開發團隊的開發效率。

      現在已經商業化的 CDEs是CodeBeamer Collaborative Development Platform和CodePro AnalytiX,上述兩款軟件都提供Eclipse的插件,可以與Eclipse集成在一起,使Eclipse升級成為一個CDEs,從而提高Java 開發人員的開發效率,而Eclipse基金會開展的兩個開發項目 Stellation和 Koi都是希望Eclipse具有一定的協同功能。此外,GILD (Groupware-enabled Integrated Learning and Development)、Hipikat以及IBM的Jazz也是值得關注的研究項目。大家肯定知道Borland已經宣布開發基于Eclipse 的新版JBuilder-"Peloton",Peloton就是一個CDEs(Collaborative Development Environments),當它明年上半年發布時,就意味著Java開發環境進入CDEs時代,現在Java開發環境還處于 XDEs與CDEs交替的階段。

     Java開發環境的未來

      在可以看得見的將來,Java的開發環境還會是以CDEs的形式存在。開源組織或開發工具供應商將會努力為軟件的開發創建一個絕對光滑的平面 (frictionless surface),實現無損耗的開發過程,以提高開發效率。為了實現無損耗的開發過程,Java的開發環境將會關注以下幾個方面:

      起步階段方面 
      協作開發方面 
      維護開發團隊有效溝通方面 
      多個任務的時間協調方面 
      相互協商方面 
      資料有效性方面 
      上述6個方面是最容易出現損耗的地方,如果出現了損耗將會浪費時間和金錢,降低整個團隊的開發效率。比如,每個Java開發人員都有這樣的經歷,當一個新的項目開始時,總要有一個了解的過程,而進入新的開發團隊時也需要一個適應過程,這些都叫起步損耗。在起步階段花費的時間越少,起步損耗就越少,而開發的效率就越高。所以減少6個方面的損耗相應地就是提高了開發效率,這就是CDEs比XDEs開發效率更高的奧秘。未來的Java開發環境也許具有下述功能:

      及時通訊功能 
      舉辦網絡會議功能 
      集中的信息管理功能 
      應用程序共享功能 
      搜索與查詢功能 
      屏幕共享功能 
      任務列表功能 
      文檔的流轉功能 
      在線投票功能 
      電子公告功能 
      計劃與日歷功能 
      時間提示功能 
      工作流程安排功能 
      電子郵件功能 
      ...

      但這里必須承認未來Java開發環境是如何具體去實現無損耗的開發,還需要時間給予答案,因為現在所能采用的方法未必是最好的,比如,使用面向文件的 CVS進行協同開發就有需要改進的地方。

      總結
      羅哩羅唆一大堆,歸納起來不過就是:一個目的、三種手段以及一條規律。
      一個目的:十年Java開發環境的演變,其目的就是為了提高開發效率。
      三種手段:

      提高集成在Java 開發環境中開發工具的性能和易用性 
      將Java開發環境盡可能的覆蓋到整個軟件的開發生命周期 
      集成人與人、人與團隊以及團隊與團隊進行交流的工具 
      一條規律:軟件開發環境的發展過程是從CLEs到IDEs再到XDEs最后進入CDEs,這是由Grady Booch總結出來的,套在Java開發環境上也適用。 
      參考文獻
      1. Grady Booch and Alan W. Brown, "Collaborative Development Environments", Advances in Computers 59, Aug. 2003.
      2. Li-Te Cheng,Cleidson R. B. de Souza,Susanne Hupfer,John Patterson, Steven Ross, "Building Collaboration into IDEs", ACM Queue vol. 1, no. 9 - December/January 2003-2004
      3. J. des Rivie` res,J. Wiegand, "Eclipse: A platform for integrating development tools", IBM System Journal,Volume 43, Number 2, 2004
      4.The Java Extension Mechanism.
      5. Grady Booch, "History of Development Environments", January 29, 2004

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    22/2<12

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>