云時(shí)代 軟件開發(fā)應(yīng)對(duì)新格局
云計(jì)算時(shí)代的來臨已經(jīng)是IT業(yè)發(fā)展的必然,其發(fā)展趨勢(shì)是不會(huì)因個(gè)人意志而轉(zhuǎn)移的。云計(jì)算不僅是一次技術(shù)的顛覆,更是一場(chǎng)商業(yè)革命。而軟件以及軟件開發(fā)作為IT行業(yè)的支柱,在云計(jì)算的時(shí)代浪潮下,更是具有了自己活力。
軟件“無處不在”
在IT行業(yè),軟件扮演著越來越重要的角色。在工信部制定的《軟件和信息技術(shù)服務(wù)業(yè)“十二五”發(fā)展規(guī)劃》里明確規(guī)定,到2015年我國(guó)軟件和信息技術(shù)服務(wù)業(yè)收入將突破4萬億元,占信息產(chǎn)業(yè)比重達(dá)到25%。近日,工信部網(wǎng)站公布的數(shù)據(jù)顯示,我國(guó)軟件和信息技術(shù)服務(wù)業(yè)持續(xù)穩(wěn)中有落態(tài)勢(shì),全行業(yè)效益持續(xù)好轉(zhuǎn),人員和工資總額保持穩(wěn)定。軟件業(yè)實(shí)現(xiàn)利潤(rùn)2126億元,同比增長(zhǎng)25.5%。
軟件被用于創(chuàng)建更加高效的世界,駕馭以云計(jì)算和移動(dòng)互聯(lián)網(wǎng)為基礎(chǔ)的信息大爆炸的發(fā)生,與無數(shù)移動(dòng)設(shè)備、物聯(lián)設(shè)備實(shí)現(xiàn)通信,同時(shí),軟件還不斷促進(jìn)產(chǎn)品差異化,為全球市場(chǎng)提供服務(wù)。現(xiàn)在全球經(jīng)濟(jì)體的發(fā)展和創(chuàng)新越來越依賴軟件的發(fā)展,無論是在系統(tǒng)工程領(lǐng)域,還是在其他科學(xué)研究領(lǐng)域,全球創(chuàng)新在很大程度上都是以軟件的開發(fā)、變更和監(jiān)控為基礎(chǔ)的。
軟件定義的網(wǎng)絡(luò)、軟件定義的存儲(chǔ)、軟件定義的數(shù)據(jù)中心等又再次把軟件推到了風(fēng)口浪尖?!败浖厮躀T”已經(jīng)成為可以和“云計(jì)算、大數(shù)據(jù)、物聯(lián)網(wǎng)、智慧地球”等媲美的IT行業(yè)熱門詞匯。越來越多的企業(yè)更加注重自身軟件和系統(tǒng)交付的能力,無處不在的軟件成為實(shí)現(xiàn)創(chuàng)新發(fā)展的基石。
“服務(wù)多租賃化、平臺(tái)可伸縮性,以及資源虛擬化”這是被大家普遍認(rèn)可的云計(jì)算的特性,這些云計(jì)算特性主要是靠軟件來實(shí)現(xiàn)。比如,資源的虛擬化,虛擬化的實(shí)現(xiàn)必須靠軟件的變化來實(shí)現(xiàn),否則,無限和有限的資源便無法實(shí)現(xiàn)無縫銜接。軟件在云計(jì)算時(shí)代將更加普遍存在,其作用也會(huì)更加舉足輕重。
“云”改變軟件開發(fā)
企業(yè)的云應(yīng)用正從SaaS向PaaS和IaaS方向發(fā)展。用戶需要可以結(jié)合自身企業(yè)特點(diǎn)的開發(fā)、測(cè)試、在線部署等功能的軟件產(chǎn)品。而這就對(duì)云計(jì)算時(shí)代的軟件開發(fā)提出了新的要求,軟件開發(fā)人員要在架構(gòu)設(shè)計(jì)上具有新的思路,要讓軟件能夠?qū)崿F(xiàn)從私有云向公有云的無縫遷移。
云計(jì)算時(shí)代的軟件是運(yùn)行在云平臺(tái)上,并具有在線租賃、可伸縮性、按需定制等特性的軟件。云計(jì)算下的軟件開發(fā)打破了軟件開發(fā)商與用戶的二元格局,第三方云計(jì)算中心的作用更加重要。云計(jì)算模式下的軟件開發(fā)和運(yùn)行環(huán)境基本上都是由云計(jì)算中心來架構(gòu)的,這些資源按照開發(fā)者的要求進(jìn)行配置。在開發(fā)者一端省去了硬件設(shè)施架構(gòu)、運(yùn)行環(huán)境調(diào)試等工作,只需一個(gè)瀏覽器和一些簡(jiǎn)單的工具就可以實(shí)施開發(fā)。開發(fā)完成之后的測(cè)試以及運(yùn)行和維護(hù)也全部由云計(jì)算中心負(fù)責(zé)。
其次,云計(jì)算改變著軟件的開發(fā)方式。隨著平臺(tái)的開放,開源、開放的軟件開發(fā)社區(qū)越來越多。開源廠商是聯(lián)系社區(qū)和商業(yè)應(yīng)用的企業(yè),類似這樣的企業(yè)可以捕捉社區(qū)內(nèi)最新的需求和技術(shù)動(dòng)向,實(shí)現(xiàn)開源軟件產(chǎn)品的商業(yè)化,同時(shí)以商業(yè)上的利潤(rùn)和方式推動(dòng)社區(qū)的運(yùn)營(yíng)。要知道社區(qū)中除了“極客”,用戶也在其中。與需求的近距離接觸,帶來最直接的效果就是使得軟件開發(fā)周期大幅縮短。
第三,軟件運(yùn)行在數(shù)據(jù)中心里,而不是在用戶的服務(wù)器和計(jì)算機(jī)上,這是云計(jì)算時(shí)代必備的特征。而且云時(shí)代的軟件還需要應(yīng)對(duì)用量的變化。從制作網(wǎng)絡(luò)鏡像手工增刪資源,到系統(tǒng)和平臺(tái)的自動(dòng)伸縮性,這些都是云計(jì)算時(shí)代軟件必須具備的特征。云時(shí)代的軟件還需要能夠?qū)崿F(xiàn)個(gè)性化的定制。對(duì)于同一個(gè)軟件的同一個(gè)版本,用戶可以根據(jù)自己的需要做一定程度的定制,這就要求軟件具有很穩(wěn)定的基礎(chǔ)結(jié)構(gòu)。還有,云計(jì)算時(shí)代還會(huì)要求軟件的快速開發(fā)。隨著技術(shù)水平的提高,快速開發(fā)的水平越來越高,云計(jì)算的資源共享,以及標(biāo)準(zhǔn)的服務(wù)集成讓快速開發(fā)變得更加有效。
最后,軟件和服務(wù)之間的界限也變得更加模糊,服務(wù)模式發(fā)生了很大的改變。在云計(jì)算的驅(qū)動(dòng)下,軟件銷售采用“打包”方式,應(yīng)該是比較務(wù)實(shí)的方式。比如一個(gè)方案中既包括可以進(jìn)行IaaS或PaaS的軟件產(chǎn)品,還包括提供云計(jì)算咨詢的服務(wù)產(chǎn)品。同時(shí)也會(huì)提供相應(yīng)的培訓(xùn)課程。基于云計(jì)算的咨詢和服務(wù)將會(huì)成為軟件企業(yè)的一個(gè)利潤(rùn)增長(zhǎng)點(diǎn)。
軟件開發(fā)新需求
云計(jì)算時(shí)代的軟件需要新的開發(fā)技術(shù)。開發(fā)人員需要使用云計(jì)算時(shí)代的軟件開發(fā)技術(shù)去提高開發(fā)能力。云計(jì)算時(shí)代要求軟件開發(fā)人員思考架構(gòu)設(shè)計(jì),甚至需要考量運(yùn)維模式和商業(yè)模式。
云計(jì)算是在分布式計(jì)算、并行計(jì)算和網(wǎng)絡(luò)計(jì)算的基礎(chǔ)上,經(jīng)過一系列的創(chuàng)新融合而形成的。從開發(fā)技術(shù)的角度來看,云計(jì)算平臺(tái)以及云計(jì)算平臺(tái)上的應(yīng)用軟件開發(fā)都是使用分布式并行編程技術(shù)的。分布式并行編程的關(guān)鍵技術(shù)有三方面:分布式并行數(shù)據(jù)處理技術(shù),分布式文件系統(tǒng),分布式數(shù)據(jù)庫。
從程序的架構(gòu)設(shè)計(jì)方面來看,開發(fā)人員需要在程序籌建過程中,就要思考哪些應(yīng)用能夠?qū)崿F(xiàn)私有云、公有云以及混合云之間的互用。需要開發(fā)人員設(shè)計(jì)出一種能夠在功能上滿足當(dāng)前業(yè)務(wù)需求,又能夠適應(yīng)用戶需求發(fā)生變化或者能夠在可以預(yù)見的未來適應(yīng)環(huán)境變化的應(yīng)用。
從商業(yè)模式方面來看,以前,軟件都是依靠軟件授權(quán)模式來銷售,或者直接是免費(fèi)的。但是在云計(jì)算時(shí)代,認(rèn)真思考盈利模式對(duì)于軟件開發(fā)人員來說是一個(gè)更大的挑戰(zhàn)。一旦具有了清晰的商業(yè)模式,就會(huì)很快地實(shí)現(xiàn)軟件的盈利。
結(jié)語
云計(jì)算無疑已受到極大的關(guān)注,云計(jì)算時(shí)代的到來讓IT技術(shù)面對(duì)著不同的挑戰(zhàn)。我們也可以看到云計(jì)算對(duì)IT行業(yè)的硬件模型、應(yīng)用模型和用戶體驗(yàn)等方面帶來了革命性的影響。云計(jì)算開發(fā)技術(shù)的發(fā)展使得開發(fā)人員可以快速構(gòu)建高可用的、可以幾乎無限擴(kuò)展的應(yīng)用。
云計(jì)算的服務(wù)需要?jiǎng)?chuàng)新和發(fā)展。盡管云計(jì)算的分布并發(fā)編程和數(shù)據(jù)庫技術(shù)還不夠成熟,編程模式的開發(fā)框架和方法學(xué)體系也只是適用于較簡(jiǎn)單的海量數(shù)據(jù)高效處理,但是,云服務(wù)軟件系統(tǒng)的開發(fā)技術(shù),需要發(fā)展、積累和創(chuàng)新。云服務(wù)軟件系統(tǒng)的開發(fā)技術(shù)將提高生產(chǎn)能力,滿足開發(fā)更大規(guī)模、更復(fù)雜軟件系統(tǒng)的社會(huì)需求。同時(shí),科研界和產(chǎn)業(yè)界已經(jīng)展開共同研究,國(guó)家“十二五”規(guī)劃對(duì)軟件開發(fā)和云計(jì)算的重視,同樣也會(huì)推動(dòng)云時(shí)代軟件開發(fā)的發(fā)展。
軟件正在推動(dòng)著創(chuàng)新,軟件的系統(tǒng)也變得越來越復(fù)雜。根據(jù)調(diào)查,成功創(chuàng)新的公司都實(shí)現(xiàn)了在整個(gè)生命周期中軟件和系統(tǒng)交付的整合。軟件作為IT系統(tǒng)的靈魂,不會(huì)隨著IT技術(shù)的發(fā)展而減低其作用,更不會(huì)消逝。軟件開發(fā)技術(shù)也會(huì)隨著IT技術(shù)的發(fā)展而改變,并在這個(gè)改變中不斷創(chuàng)新并煥發(fā)出新的活力,新的軟件技術(shù)將會(huì)不斷提高技術(shù)人員開發(fā)軟件系統(tǒng)的能力。