1. 程式人生 > >程式設計師眼中的2007 尋找軟體開發利器

程式設計師眼中的2007 尋找軟體開發利器

                 軟體開發生命週期包括需求分析、設計、開發、測試、交付部署等各個階段,以及貫穿在整個開發過程的軟體開發專案管理環節,2006年,在每一個階段都出現了令人眼花繚亂的技術與應用,同時這些技術還將進一步影響2007年的發展,令人充滿期待。

  建模和開發工具平臺

  UML在版本升級到2.0以後,原來的UML工具的大哥大Rational從風行到被收購,現在幾乎沒有了聲音。

  建模工具沒有太顯著的變化,倒是開發工具出現了從原來的百花齊放到現在只有少數巨頭競爭的局面。其中最耀眼的當屬誕生於IBM,後在開源社群得到快速發展的Eclipse,目前它已進入嵌入式開發領域。另一個就是微軟攜其強大財力與人力打造的VSTS開發工具平臺,它將成為可以貫穿整個軟體開發生命週期和扮演不同的角色的平臺,在最近也有不俗表現。此外還有Sun的NetBean IDE開發工具和BEA的WorkShop開發工具等。

  這些開發工具平臺都可以進入整個軟體開發生命週期,並且可以在其上進行各種不同應用的開發,說白了就是相容性足夠強。

  開發與應用

  不論使用何種工具,真正最活躍的仍然是應用與開發。JavaEE5的釋出,EJB3.0標準的落地,標註取代部署描述符,實體即是POJO等,也許這些改變對Java進行輕量級應用開發的複雜性會有所改變。在軟體開發界最流行的框架,包括Struts、Spring、Hibernate等,這些分佈在Web容器和EJB容器中的各種應用框架變得讓人眼花繚亂,要選擇最適合自己的看來越來越困難了。由於JavaEE5的釋出,著名的JBoss應用伺服器的結構也發生了較大的變化。微軟.NET的2.0平臺和下一代作業系統Window Vista桌面版釋出,同時提供給廣大使用者的WinFX平臺,不僅給開發者而且給使用者帶來了挑戰。

  由Ruby和Retail的聯姻,AJAX的新瓶裝舊灑,再加上Web2.0應用概念上的炒作,指令碼語言、Web開發與應用在今年著時火了一把,因此今年搭上順風車的PHP也要求能夠同Java應用互動,克服語言與平臺的障礙。

  桌面與企業伺服器的開發應用也有相當發展,中介軟體市場、資料庫、ERP等各種應用隨著SOA得到市場的認可,各種技術與應用以及SOA的產品也逐漸多了起來。隨著3G時代的到來,智慧手機佔有率的提升,手機平臺的開發市場正進一步;不僅是手機,數字電視、各種電器和消費類電子產品的智慧化發展也促使嵌入式領域的開發發生了很大變化,如:IP機頂盒、基於GPS全球定位系統的裝置、工業自動化和醫療裝置等,商業平臺與開源Liunx平臺共存。

  開源、網際網路及其他

  開源軟體逐漸挺進企業主流應用,不僅是Linux,還有Boss中介軟體、Mysql資料庫、EnterpriseDB資料庫等,而且還有各種應用軟體,包括:Open office辦公套件、Firefox瀏覽器、ERP、CRM等等。開源力量的加入也使得非常多的應用進入到微軟平臺上,在微軟的.Net平臺上也出現了大量的開源應用軟體。

  網際網路最大的應用與技術就是搜尋、軟體服務化(Software as a Service)。不管是通用搜索還是行業垂直搜尋,不管是網際網路搜尋還是企業搜尋,都已經不僅針對文字而且開始向音視訊搜尋發展了。

  最後不要忘了,由於人們對應用要求的提高,測試在這幾年顯得越來越重要了,測試工具與測試理論都有很大發展,這一點也值得關注。 

  手機軟體開發將與PC趨同

  王權平

  資深程式設計師,供職於威盛電子(中國)有限公司,從事GSM/GPRS晶片組的開發,主要工作包括協議軟體設計、開發與測試,以及智慧手機平臺通訊中介軟體的設計與開發。

  2006年出現了很多叫好也叫座的手機產品,這些成功手機的背後,都明顯地揭示出了手機軟體開發技術的若干發展趨勢。2007年手機軟體技術將繼續迅速發展,無論單處理器平臺或是雙處理器平臺,網路應用和多媒體應用都將是主要的開發方向,而C++和Java將是首選的開發語言。

  未來,傳統的單處理器手機平臺仍將在低價手機和特色手機市場上保持不可替代的優勢。其軟體通常都由晶片廠商和手機設計公司來提供,除了J2ME平臺外,缺乏開放和標準的API是其固有的缺陷。因此幾乎沒有來自第三方的原生的面向其處理器和編譯平臺優化的軟體,使用者自行擴充套件的能力較差。展望未來,除了整合更多的應用軟體(如電子郵件、電子書和多媒體播放程式等)外,單處理器平臺上的軟體開發工作主要集中在新硬體模組的驅動程式以及圖形使用者介面的創新和提高上。就開發語言而言,C和C++仍然是首選;在底層通訊軟體尤其是協議棧的實現上,C語言仍將繼續居統治地位;當然在驅動程式中,組合語言也是不可或缺的。單處理器平臺上第三方開發人員的開發空間在於J2ME平臺,但是各個解決方案對Java語言支撐能力的差異,使得Java程式很難達到真正的與平臺無關。不過,隨著硬體能力的與提高和Java虛擬機器的改善,特別是硬體級Java加速和ARM平臺Java優化指令等特性的引入,可以預料J2ME將會成為單處理解決方案的基礎軟體平臺。

  雙處理器平臺由執行通訊協議的基帶處理器和執行使用者介面程式的應用處理器組成,是智慧手機的基礎平臺。未來智慧手機平臺的軟體開發中,中介軟體和應用程式都有很大的發展空間和需求。中介軟體主要包括圖形庫和通訊庫兩部分。圖形庫重點在於提供更加華麗和友善的使用者介面,增強使用者的操作體驗,據稱WinCE6.0即將提供Vista風格的介面;3D加速將是繼2D加速後的第二個亮點;另外,圖形庫也將重點支援硬體級的多媒體加速技術,從而支援包括移動音訊和視訊,特別是手機電視的應用。通訊庫部分將重點在統一的框架內整合各種廣域、局域乃至個域通訊技術。應用程式部分,網路應用將會是2007年的發展重點。就開發技術而言,J2ME在智慧手機上的效能優於單處理平臺,因此筆者看好基於J2ME平臺的手機遊戲和網路應用;而基於C++的網路程式設計和多媒體程式設計仍將繼續是Symbian平臺、WinCE平臺,以及Linux上Qt平臺的的主要開發領域;另外PC平臺上的基礎軟體元件,如資料庫技術等,將逐漸移植到手機平臺上,提供其嵌入式的版本,以適應手機平臺的硬體和軟體限制。但是由於三大平臺存在的巨大差異,軟體的可移植性將成為一個重要的問題。

  核心觀點

  隨著中介軟體的加強,手機應用軟體開發將逐漸與PC趨同,將出現大量的個人軟體開發者和第三方軟體開發商,手機軟體產業勢必會有很大的發展。

  注重測試需求 做好流程建設

  戴金龍

  註冊PMP,GB/GJB/ISO/CMMI內審員。原嫦娥工程地面應用系統質量組專家。歷任某外企測試技術經理、專案經理及運營經理。對當代軟體測試理論及工程實踐有較好的領悟。

  當前,測試作為一項職業吸引了越來越多的優秀人才;測試作為控制軟體質量的有效手段,融入到了越來越多企業高層的管理理念中;測試作為一門學科,獲得了前所未有的壯大。但在測試技術蓬勃發展的另一方面,測試行業也在迅速地積累著各種問題,在接下來的一年裡某些隱藏的問題可能會表現得很顯著。

  第一個問題是如何讓測試更有效地鍥入到不規範的軟體開發過程中。提出這個問題恐怕會有不少人大吃一驚:這類企業為什麼不先規範軟體的開發過程呢?這是不是一個偽問題?其實,目前有不少軟體企業都處在這種狀態。但這些企業的管理層並不承認自己的開發過程不規範,反而認為這是一種靈活的、有個人特色的高效管理。這樣的氛圍造成軟體質量低下自是意料中的事情。

  即使企業管理層瞭解到測試是解決質量問題的有效途徑,實施軟體測試也是需要代價的。目前的測試學科所提供的技術、流程、管理及方法論都是假設是在良好的(至少規範的)開發過程、管理氛圍及測試環境中實施的,並沒有提供在不規範軟體開發過程中做測試的解決方案,這樣就出現了所謂“理論”與“實踐”的偏差。解決的辦法有兩個:一種是變革企業文化,規範開發過程,建立測試所需的相關環境,從而實施規範、嚴格、有序的軟體測試;另一種就是拓展測試理論,針對不規範開發過程的特點,找到彌補、折衷的解決辦法。根據筆者對國內軟體企業的瞭解,後者將是今後一段時間國內軟體企業關注的熱點話題。

  第二個問題是如何清晰地定義軟體測試需求,使測試工作目標明確、有的放矢。這個問題是以前的測試學科沒有回答清楚的,非常需要深入研究,它將會是今後若干年的研究熱點。可能有讀者會感到費解:測試需求不就是軟體需求嗎?其實不然。軟體需求用於指導後續設計的展開。而測試需求則是直接源自於客戶的質量要求。測試需求的源頭非常繁雜,如何刪繁就簡,拿捏得當,目前沒有現成的方法,仍需要做大量理論研究和實踐探索。

  第三個問題是如何規範軟體測試流程以持續提高測試團隊的績效。這個問題目前已有一些答案。如“制定測試計劃-設計測試-執行測試-測試分析與總結”等等。從執行的角度而言,這類粗略的階段劃分或許已經夠用,沒有進一步研究的必要。但對於控制測試過程而言,對於測試服務型企業通過CMMI認證而言,尤其是對於改進軟體測試過程而言,幾乎是沒有幫助的。

  核心觀點

  在測試技術蓬勃發展的另一方面,測試行業也在迅速地積累著各種問題。

  網路安全軟體開發趨勢

  李洋

  中國科學院計算技術研究所博士,資深程式設計師。從事計算機網路資訊保安領域的研發工作,曾參與“國家自然科學基金”、“國家863重大專項”、“國家242資訊保安計劃”、“國家973計劃”等多項國家重點專案、資訊安全系統和企業資訊系統的研發工作。

  從當前國際上安全產品的研發情況來看,以防火牆和IDS為主導,以密碼技術為基礎的產品已經取得了飛速的發展,並在實際應用中發揮了很大的效應,使得網路安全產品的研究及應用工作不斷向前推進。2007年,對於網路安全軟體開發人員來說,如下幾項新的技術值得大家期待:

  1.基於開源軟體的開發技術

  以Linux為代表的開源軟體及其開發模式已經深入人心。網路安全軟體中最為著名的就是輕量級的入侵檢測系統Snort,它已成為眾多安全廠商和科研院校研發的重要參照物。縱觀網路安全軟體的發展趨勢,以優秀的開源軟體為基礎進行研發已成為網路安全界的首選技術途徑。

  2.嵌入式安全開發技術

  隨著移動計算和無線網路的普及,以及普適計算概念的提出和應用,移動、無線和無處不在的計算已成為新世紀IT的絕對熱點。這些需求都要求在上述條件下進行資訊處理和計算,因而以J2ME為代表的嵌入式開發技術也成為很大看點。

  尤為值得關注的是,人們在獲得上述便利的同時,也在經受著自己的隱密資料隨時有可能被竊取和破壞的威脅。那麼,如何在當前的嵌入式技術當中綜合採用密碼理論、PKI基礎架構以及其他資訊保安技術來提高嵌入式系統的安全性,為未來輕量級的嵌入式計算保駕護航,也必將成為網路安全工作者和軟體開發人員關注的一個熱點問題。

  3.高效能運算服務開發技術

  網路頻寬的日益增長和單機處理能力已經極不對稱。諸如早期的防火牆、IDS等都已經不能滿足現實的需求。

  因此,採用並行處理技術以及研究和開發高效能網路協議處理技術來緩解上述問題帶來的壓力是不錯的選擇。並且,隨著64位計算的到來,如何在該硬體平臺上進行並行開發、編譯等,都是網路安全軟體研發人員期待和需要解決的問題。值得期待的是,當今的UTM(統一威脅管理)技術試圖在上述各方面取得突破,建立一套高效能、高可靠、完善的網路威脅防範機制,我們拭目以待。

  4.可信程式設計技術

  對於安全要求較高的場合,可信計算平臺能夠為使用者提供更加有效的安全防護。而據統計,在網路安全領域,80%以上的網路威脅和漏洞來源於系統自身的Bug,而這些Bug則來源於設計思路以及程式實現。那麼,在積極防禦外來攻擊的同時,提高網路安全軟體研發人員自身程式設計的可靠性,軟體開發平臺在軟體程式設計中可能出現漏洞(比如最常見的緩衝區溢位等)的地方進行提醒和標註,就可以極大地減少程式實現的硬傷。我們不妨借用可信計算的名號稱其為可信程式設計技術,相信也將是軟體研發人員關心的技術,不但可以提高軟體可靠性,更能避免用於查詢大量重複出現的系統Bug所需的人力和物力。

  核心觀點

  基於開源軟體的開發技術、嵌入式安全開發技術、高效能運算服務開發技術、可信程式設計技術將是未來網路安全軟體開發的四大趨勢。

  降低開發複雜性

  程勇

  Java開放原始碼軟體諮詢顧問,Huihoo.org開源軟體社群共同創始人,北京中流科技有限公司CTO。

  Java技術的發展已經走過11個年頭,在企業級應用開發領域佔領主導地位的JavaEE技術也伴隨著Java自身的演變,在2006年發生了許多新的變遷。 隨著系統開發複雜度的上升,需要一種更好的解決方案來分解系統的複雜,並簡化應用開發的過程。基於眾多的因素,選擇企業應用開發的架構平臺時都需要考慮很多約束,它必須最小化對應用開發本身的影響。因此,一個好的技術平臺和應用框架應該具備如下特性:提供應用開發的一致性;提供高階和低端特性;提供管理逐步增長的應用系統的具體方法;為高階開發人員提供指導;能夠使不同框架的特性和優點整合到一起進行工作;能夠快速進行應用開發,保證產品按市場的需求釋出;能夠降低專案開發的風險,提升企業的投資回報。

  由此,我們不難發現,現在大量湧現的新技術體系和框架,都是在朝著簡化應用開發的方向而努力,這些技術包括:

  ● AJAX AJAX並非一種程式語言,它是使用XHTML或HTML,JavaScript以及XML來建立互動網路應用程式的一種模式。

  ● 指令碼語言 Ruby的發展,使得在Java 語言中使用動態機制成為可能,使用Ruby的動態機制,使用者能夠改變指令碼類的定義。這些Ruby物件允許直接使用方法管理它的狀態和行為。

  ● 應用框架 以Spring為代表JavaEE應用框架是在JavaEE技術體系之上快速構建應用的支撐平臺,應用框架通過整合的技術架構,將眾多的優秀開源框架融合在一起,為應用開發提供了一個完整的技術解決方案。

  ● JavaEE 5.0 JavaEE 5.0 是新一代的Java EE技術規範,其中包括JSF、EJB 3.0等十多項全新的技術體系。它的多項新特性為JavaEE應用開發帶來了更多的便利。

  核心觀點

  選擇企業應用開發的架構平臺時都需要考慮很多約束,它必須最小化對應用開發本身的影響。

  工作流: 國內國際兩極分化

  胡長城

  網名“銀狐999”,就職於TIBCO。國內J2EE開源應用的支持者,有過6年的J2EE應用和產品開發及架構經驗,是huihoo開源組織的成員。

  與眾多新技術相比,工作流的知名度也許會小一些,但工作流也一直處於不斷創新之中。所不同的是,在這個領域新技術的應用是被隱藏在應用理念和架構體系之下的。對於工作流的發展趨勢,這裡分開兩條線來闡述。

  第一條線就是單純從工作流技術應用的發展趨勢來探索。在這方面國際上應用水平已經遠超越國內,這就是這兩年的龍捲風—— BPM(Business Process Management)。很多國際化的大企業已經把BPM定位於一種解決方案。在這一整套解決方案中,工作流技術已經成為流程的服務,圍繞這個服務,有各種模組和應用相輔助。BPM解決方案儼然成為一種參考架構: 一方面是以SOA為主導的技術架構,另一方面則包含了一整套的服務。

  實際上,BPM的發展是很多年的流程和工作流發展的必然結果。在這個領域的供應商有的由早期的工作流廠商發展而來,如Staffware公司(現已經被Tibco收購); 有的由早期的EAI提供商發展而來,如Tibco; 有的由應用伺服器提供商發展而來,如BEA等。在它們的BPM藍圖中有很多相似之處,比如以BPEL規範闡述Business Process。

  第二條線從國內工作流應用和技術趨勢來分析。這兩年已經有部分國內企業採用EAI或BPM技術進行系統整合方面的應用,但大規模地採用BPM解決方案還是很少,不過這是一個趨勢。國內目前工作流技術的應用還主要以“辦公或業務流程的人工資訊化處理”為主,畢竟國內企業和政府的一個很大特徵是“以人為主”,而不是“以制度化為主”。在一些集團性的企業和跨省市集中管理性的系統中,分散式流程應用逐漸顯現出來。而伴隨著國內幾年來工作流市場的積澱,早期的一些工作流廠商在尋求“流程分析和監控”方面的突破,而這方面的客戶需求也日漸多起來。但短時間內,很難由國內工作流廠商自己取得一些突破,發展起BPM產品。

  上述這兩條發展線也代表了兩極分化。但第一條戰線的BPM 解決方案肯定是未來大規模應用的趨勢,雖然短時間內對國內工作流應用市場衝擊很小,但是政府和國內軟體廠商卻不應該小覷這個發展趨勢。

  核心觀點

  國際大廠商對工作流的研究重點是把它作為BPM的一部分,為流程服務,而國內還主要以“辦公或業務流程的人工資訊化處理”為主,短時間內,國內還很難有所突破,推出自己的BPM產品。

  Java走上開源之路

  孟冬冬

  中科軟科技股份有限公司金融保險部系統分析師、軟體架構師。9年軟體設計開發和6年專案管理經驗,精通基於J2EE架構的企業應用系統開發技術。先後在普天、中軟等多家軟體公司任系統分析員、軟體架構師及專案經理。

  2006年11月13日,Sun公司宣佈將Java轉為開源。預計到2007年3月份,除了一部分所有權不屬於Sun的原始碼之外,幾乎全部Java技術的原始碼都將按照GNU GPL自由軟體許可授權協議公開。Java在和.net經歷了兩年的競爭後已顯疲態,相比5歲的.net以及新生的動態語言Ruby,11歲的Java已略顯複雜臃腫,甚至在網上還有“Java將死”的論調。Sun選擇在此時將Java開源,不管是否是Sun迫不得已、在日薄西山前的最後博弈,但影響之深遠卻絕對不可小視。它引發的“蝴蝶效應”無疑會使Java技術的生命力更強,走得更遠,更可贏得在開發語言競爭中起決定作用的更多程式設計師的芳心,相信未來Java領域將出現更多令人驚奇的開源產品。

  另外Sun還趕在聖誕節前釋出了JDK的6.0 Release版本。對JDK而言,“成敗皆在應用伺服器廠商”。市場佔用率最大的應用伺服器Weblogic8、WebSphere5成就了1.4,但也限制了JDK5的普及。在JDK5還沒有用熱時,JDK6就來了。不過,這倒也是好事,可以直接跳過JDK 5去研究JDK6的應用了。

  JDK6對筆者的最大吸引力是它在JVM效能上的提升和對XML和Web服務的支援。效能方面,無論是執行時分析功能還是使用者對效能情況的反饋,尤其是在Swing方面,JDK6對JIT都有了卓有成效的提升。

  一直以來,相對於微軟的.net,Java對Web Services的支援複雜得難以接受,也因此產生了優秀的Axis和XFire框架。而在JDK6下,Java程式設計師也能享受到這種待遇了,不用針對Web服務另外加入額外的工具,不使用任何框架也能寫出Web Services程式了。JDK6中固化了XML、Web Services的標準,如StAX、JAXB2、JSR181等。JDK 6在語法方面沒有太大改變,最明顯的就是添加了對指令碼語言的支援,如JavaScript、Ruby、PHP。JDK6 中實現了JSR 223,提供了讓指令碼語言來訪問Java 內部的方法。它可以在執行的時候找到指令碼引擎,然後呼叫這個引擎去執行指令碼,這個指令碼API 允許程式設計師為指令碼語言提供Java 支援。

  另外在JDK6中內建實現了JDBC4支援的Derby資料庫,為測試和小型系統的釋出提供了便利條件。最後,JDK 6 中對記憶體洩漏增強了分析以及診斷能力,當遇到Java.lang.OutOfMemory 異常的時候,可以得到一個完整的堆疊資訊,並且當堆已滿時,會產生一個日誌檔案來記錄這個致命錯誤。

  如果說談到JDK 6更多的是對未來的一種希望的話,Java full-stack(Java full-stack,意指集成了全部所需功能的Java快速開發框架)則是一種已經可以見到的東西。

  很長時間以來,作為一個Java程式設計師,幸福的是從表現層到持久層都有眾多的框架可供選擇,痛苦的是在這些框架中挑選出適合自己的框架,而且還要付出將不同層次的框架粘合在一起的設計成本和時間,而架構的穩定性和實用性則往往取決於架構師的設計理念和經驗。Ruby on Rails的流行再一次證明了在軟體開發領域“簡約至上”的真理,它使得諸多Java開發人員把目光放到了“提供最方便好用的Java full-stack框架”上面,因此Java開源社群如雨後春筍般地出現了一批又一批的full-stack框架,如Appfuse、SpringSide、JBoss Seam、RIFE、Grails、Trails、Rife等。Java領域也從此開始走向full-stack的快速開發道路。筆者就非常喜歡國外的JBoss Seam和國內的SpringSide。

  核心觀點

  Sun選擇在2006年歲末將Java開源,不管是不是Sun的最後博弈,其影響絕對不可估量。從此以後,全世界所有的開發人員都可以對Java原始碼進行修改、優化、除錯,同時Java也將變為一種真正免費的技術。

  網路技術融入軟體平臺

  智雨青

  北京理工大學計算機碩士,8年的電信行業軟體開發經歷,曾在億陽信通、北京朗新科技公司供職,中國聯通第一版CRM的主要設計與開發者,參與聯通多個省級OSS/BSS系統的研發與實施。

  2006年年初有專家曾經說過,今年軟體發展技術很有可能進入到一個無熱點時代。的確,我們非常熟悉的網路應用技術、搜尋技術、應用行業軟體技術等等,已經發展到一個非常成熟的階段,每一次升級能帶給我們的驚喜越來越少。不過,2006年雖沒大的“翻天覆地”,卻仍湧現出了不少亮點,而這些亮點極有可能會決定今後兩三年的應用潮流。

  1. Web2.0

  Web2.0是2003年之後網際網路的熱門概念之一。Web2.0技術主要包括: 部落格、RSS、百科全書(Wiki)、網摘 、社會網路(SNS)、P2P、即時資訊(IM)等。由於這些技術有不同程度的網路營銷價值,因此Web2.0在網路營銷中的應用已經成為熱門領域。儘管對於究竟什麼是Web 2.0還有很多的討論,但有一點可以肯定,Web2.0是以人為核心線索的網。提供更方便使用者“織網”的工具,鼓勵提供內容;根據使用者在網際網路上留下的痕跡,組織瀏覽的線索,提供相關的服務,給使用者創造新的價值,給整個網際網路帶來新的價值,才是Web2.0商業之道。

  2. 嵌入式移動開發技術

  嵌入式開發技術的發展推動了嵌入式作業系統跨越式發展,也成為現代及未來移動技術發展的重要保障,以微軟Windows CE系列、PalmSource公司PalmOS、Nokia公司Symbian等為代表的嵌入式作業系統已在各種移動裝置上大量應用。尤為值得一提的是作為行業領先者的微軟2006年5月釋出了Windows CE 6,憑藉重新設計的作業系統(OS)核心架構以及增強的併發處理能力和新整合的工具集,提供了一個更加整合化的嵌入式開發環境,允許開發者將大量更為複雜的應用整合到比以往更加智慧的裝置中,從而提供高效能的多媒體、Web服務和無線網路連線應用。

  3. 中介軟體技術

  隨著Internet的快速發展,中介軟體的定義正在走出其狹義空間,逐步形成更為廣義的內涵。其發展主要呈現出兩方面的技術趨勢: 一方面,支撐軟體越來越多地向執行層滲透,提供更強的對系統實現的支援;另一方面,中介軟體也開始考慮對高層設計和執行部署等開發工作的支援。而這兩個技術趨勢從本質上說正是源於軟體體系結構和軟體構件等技術的發展和應用。從廣義的角度看,中介軟體代表了處於系統軟體和應用軟體之間的中間層次的軟體,其主要目的是對應用軟體的開發和執行提供更為直接和高效的支撐。中介軟體技術已成為軟體技術的研究熱點。

  4. 即時通訊技術

  現在即時通訊市場不再只有一種聲音,騰訊、微軟、IBM、Avaya、Skype、中國移動紛紛將觸角伸向了這塊市場,誘惑這些大佬們的是即時通訊市場的爆發式增長和隨之而來的豐厚利潤。而移動即時通訊作為一項資料業務更是被視為未來3G時代的一大“金礦”。待3G牌照發放,捆綁於移動即時通訊之上的包括彩信、彩鈴、圖片、部落格、手機電視等應用都會得到充分發掘。

  5. 下一代搜尋技術

  搜尋引擎發展到今天已經增添了很多新的特徵,其特色主要體現在“概念叢集”和“動態分類”,它通過分析網頁之間的關聯,建立一種類似人的思維的更智慧化的概念分類方式,通過模仿人的思維模式,對要查詢的概念進行關鍵字聯想和分類。除了概念叢集和動態分類,新一代搜尋引擎還更多地體現在個性化方面,這在以前的搜尋裡是很難做到的。概念叢集又分為大眾化概念叢集和個性化概念叢集,通過搜尋記錄,下一代搜尋技術能夠幫助每個人建立自己個性化的搜尋功能,而且資訊是可以分享的。

  核心觀點

  基於新一代網路技術的各種應用的融合是大勢所趨,網路新技術與軟體新技術的相互促進將為人類創造一個更為燦爛的IT世界。

  網際網路將更社群化

  康威

  新華社高階工程師,Lotus技術專家。曾任後勤指揮學院教員,獲全軍科技進步二等獎一次、三等獎四次,2002年7月轉業到新華社技術局,是新華社多媒體資料庫系統核心成員。

  網際網路的飛速發展成就了搜尋引擎今天的地位,同時也推動了網路視訊的發展,而Web 2.0又推動了全民的參與性、主動性和互動性,密切了人與人之間的聯絡,由此形成了線上與線下互動的各種模式,反過來又推動了網際網路的壯大。

  1. 網際網路搜尋

  2006年的中國網際網路搜尋依然是百度、Google雙頭壟斷,百度的勢頭略有提升,垂直搜尋成為耀眼的明星,移動搜尋也有了一定的發展。未來搜尋引擎將會更精準化、智慧化、人性化、垂直化和社群化,會以更快的速度為計算機和其他智慧終端使用者服務。

  筆者認為,2007年的中國搜尋市場將是一個分水嶺,其競爭將達到前所從未有的規模,雅虎、搜狐磨刀霍霍,微軟臥薪嚐膽,不過雙頭壟斷局面不會改變,走向國際化的百度依然會是龍頭老大,而能滿足大家特定需求、具有差異化特徵的垂直搜尋和生活搜尋是未來的市場增長點,其搜尋商業模式也會更加豐富。2007年,搜尋行業的發展必將進一步促進網際網路商業模式的創新以及相關技術的提高,成為網際網路發展的重要支柱。

  2. P2P流媒體

  P2P流媒體行業一直都被認為是下一個可能產生井噴效應的網際網路領域。P2P體現了真正的“網際網路精神”——我為人人,人人為我,但市場是理智而殘酷的,在短暫的狂歡過後,P2P流媒體行業所面臨的問題與挑戰也逐步顯露,商業模式不清晰、盜版氾濫、國家政策不明朗等問題不得不令人深思。

  網路視訊是中國未來幾年的熱點,目前只有兩個方向可以賺大錢: 流媒體巨頭與內容大鱷的聯姻和微視訊,依靠盜版的視訊直播與共享只可能是小富即安。只有少數幾家有資金、有技術、有影響的流媒體廠商(包括入口網站)才能獲得內容大鱷的青睞,留給眾多中小型流媒體廠商的只能是微視訊。

  微視訊是指短則30秒,長則不超過20分鐘,內容廣泛,視訊形態多樣,涵蓋小電影、紀錄短片、DV短片、視訊剪輯、廣告片段等,可通過PC、手機、DV、DC、MP4等多種視訊終端攝錄或播放的視訊短片的統稱。短、快、精、大眾參與性、隨時隨地是微視訊的最大特點。微視訊規避了版權的威脅,降低了頻寬的成本,易形成社群,具有一定的贏利模式,隨著網路融合的加快,3G和寬頻的發展,只要走專業化、特色化、差異化道路,一定大有“錢”途。

  3. 網際網路社群化

  網際網路社群化有三種形式: 情感的歸屬與宣洩,人們可以不受空間限制地自由溝通、發表見解、結交朋友、宣洩情感; 線上與線下的互動,網際網路使得人們能夠以最快捷的方式廣結交天下朋友,很多社群型網站都定期舉行各種線下活動; 智慧和經驗的共享,充分體現了P2P精神,人們資訊需求的滿足,需要越來越多地依靠其他使用者的力量來滿足,社群化的搜尋是最好的例子。

  社群化的搜尋能更好地滿足使用者的需求,也可以更好地發揮使用者的價值。首先他們會享受其他使用者貢獻的智慧,同時他們在自己使用的過程中幾乎不會察覺到在給整個網際網路做出貢獻。2006年7月13日正式推出以“搜尋+部落格”為理念的產品——百度空間,這是百度繼貼吧、知道、百科後推出的第四個社群類產品,具備個人空間、個人門戶等基本特徵。這一產品的推出,不僅進一步深化了百度的社群化搜尋服務,並憑藉其在中國網際網路的巨大影響力,進一步推動了中國網際網路社群化發展的程序。

  核心觀點

  未來的網際網路將更能體現P2P精神,將更視訊化和社群化(當然文字仍會像傳統報紙一樣不可替代),同時,在網際網路的進化過程中,搜尋技術將會改變人們的生活習慣。

  應用推動軟體技術創新

  張濤

  鄭州航空工業管理學院畢業,一直從事計算機應用軟體的分析、設計、開發以及專案的實施,主持開發的軟體包括河南省縣級供電企業營銷MIS、河南省在建水利工程移民資金輔助管理系統。

  今天的企業資訊化面臨著更加具體的問題,比如終端資料如何快速採集傳輸; 缺乏軟體應用標準,行業應用深度不夠; 系統間互動性差、各自為戰,資源共享程度不高; 系統具有一定規模後,維護、升級困難。由於企業在這些方面的需求非常迫切,未來各個軟硬體廠商必定在這方面有所作為,基於此,筆者以為2007年以下這些技術將會有比較大的突破。

  1. 資料採集自動化、便捷化

  隨著MCU(多點控制單元)應用範圍的不斷擴大,以往的各類硬體終端,比如電力、燃氣、水等終端資料採集或檢測裝置,已經逐步從簡單的計數、指示功能,向智慧資料採集終端轉變,而且傳統裝置經過簡單的改造,也可實現終端資料的採集和儲存,這不僅讓人從資料採集的工作中解放出來,更可以通過相對廉價的手段解決採用人工採集資料所帶來的一些問題。

  正是基於這種前提,微軟Office辦公套件的新成員InfoPath讓我們眼前一亮,藉助它可以快速、方便地設計出具有超強表現力的電子憑單,以滿足資訊採集、企業內部和企業之間的資訊傳遞。更令人稱道的是,它不僅可以使用傳統的資料庫作為資料來源,更可以使用XML作為資料的儲存格式,讓不同系統之間的資料互動更加暢通有效。

  2. 軟體外掛化、框架化

  大凡用過Eclipse的程式設計師都會被它的靈活和開放性所打動,而目前部分行業欠缺軟體應用標準就是擺在開發商面前的諸多問題之一。類似許可權管理、自定義查詢、自定義報表、組織業務功能等應用系統必備的功能,完全可以通過抽象形成框架,提高程式碼重用度和穩定性。同時,採用軟體框架進行系統的開發,不僅可以讓系統分析和設計人員把主要精力放到業務模型的建立上,縮短專案週期,更可以讓系統使用者和開發商體會到系統穩定、維護方便、升級簡單的方便。

  在此必須要提的是Java,如果說Java的誕生是為了網路,那麼可以說它已經不辱使命,而且在推動著網路技術的發展,開源性使得它的追隨者們努力工作,Struts、Spring等優秀的、基於框架的作品紛至沓來,逐步讓我們脫離繁雜的技術旋渦,把時間和精力投入到業務分析領域,使軟體的外掛化、框架化不再是海市蜃樓。

  3. SOA

  近幾年SOA(Service-Oriented Architecture,面向服務架構)概念的提出,使得使用者和軟體開發商對系統建設有了新的認識。筆者認為SOA不僅是架構模型,更是一種應用思想的體現。對於軟體功能粒度的劃分、軟體功能的部署、系統驅動模式等都會由於SOA而產生較大的影響。

  企業通過應用SOA,不僅可以在成本沒有太大增幅的條件下,讓使用者使用已經成熟的元件增強B2B的有效性,還可以讓開發商最大限度地複用程式碼,把軟體產品變成真正的服務。此外,SOA的實施更可以加速行業標準的制訂和執行,因為只有大家遵循同樣的標準和介面,才可能營造出業務共享和跨系統業務互動的良好氛圍。

  4. 虛擬軟體

  有時一些系統尤其是比較老的,對OS或DBMS有特定要求的系統,或系統在相容性方面與新版本有差距,這時虛擬機器就是最好的選擇,不僅可以節省使用者的硬體資源減少維護和管理成本,更可以讓原有應用正常執行,為應用系統的升級換代贏得時間。與VMWore相比,微軟的Virtual PC也在緊追不捨,筆者認為儘管較VMWare還有一定距離,但是無論產品孰優孰劣,最終受益的還是使用者。

  核心觀點

  行業特點決定行業應用,行業應用需要軟體相關技術手段提供支援,而行業應用又會引發技術的創新。