監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產品資料
X 關閉
文件管理軟件下載

當前位置:工程項目OA系統(tǒng) > 辦公軟件下載 > 文件管理軟件下載

云計算與軟件開發(fā)變革

申請免費試用、咨詢電話:400-8352-114

      【CSDN現(xiàn)場報道】第四屆中國云計算大會于2012年5月23-25日在北京國家會議中心隆重舉行。本次大會由中國電子學會主辦,北京市經濟和信息化委 員會協(xié)辦,中國云計算技術與產業(yè)聯(lián)盟、中國電子學會云計算專家委員會承辦,CSDN與《程序員》雜志協(xié)辦。在2012國內公共云全面開花、云計算實踐元年 之際,本次大會云集云計算核心專家,就國內外云計算核心技術以及行業(yè)應用創(chuàng)新實踐進行了深入探討。
      中科院院士李未從深入剖析物聯(lián)網和云計算的本質,從軟件工程的角度提出了群體軟件工程的理念,并對比了傳統(tǒng)軟件工程和群體軟件工程的方方面面,最終提出了群體軟件工程的開發(fā)原則。

      以下為文字實錄:
      我今天要談的題目是云計算和群體軟件工程。最近這幾年大家都非常關心云計算和物聯(lián)網,我也想談談我的一孔之見,和大家一起討論。
      什么是物聯(lián)網呢?因為談了很多,我簡單講一講。99年MIT的教授在使用電子標簽的時候首先提出的。物聯(lián)網是一個什么東西大家都知道,是面向特定領域和行業(yè)的,擁有超量數據的復雜信息應用系統(tǒng)。我不詳細講了。
      物聯(lián)網在各個方面,比如智能交通,智能電網,現(xiàn)代物流,醫(yī)療健康,信息刪除方面,這都是今后要使用的。所以物聯(lián)網是未來信息社會的基礎設施,我們的目標是搞工業(yè)信息化,工業(yè)信息化的標志性成果是在這些振興行業(yè)里頭都實現(xiàn)物聯(lián)網,也是我們戰(zhàn)略性新興產業(yè)的切入點。所以逃跑關鍵技術,擁有自主知識產權是今后信息領域的主要任務。
      物聯(lián)網怎么實現(xiàn)呢?我認為云計算提出一個實現(xiàn)方法。李德毅院士上午大會講了,什么是云計算?云計算是一種基于互聯(lián)網的大眾參與的計算模式,它的計算資源包括計算能力、存儲能力、交互能力等等,是動態(tài)、可伸縮、被虛擬化的,而且以服務的方式提供的。我認為云計算的實質在哪里呢?實質是對用戶屏蔽有關計算、存儲、通信和控制的底層操作細節(jié)。目的是為用戶提供簡單易用、安全可靠、需用即得的服務。用戶變得很方便了,為什么用戶變得很方便了呢?因為所有實現(xiàn)過程全部對用戶屏蔽了,想要什么取就可以了,這是云計算的基本思想。
     比如說大家都了解的事,云計算提出了一個以服務為綱的體系結構。第一個是軟件即服務,終端用戶無需關心使用了哪些特定應用軟件和資源,直接得到所需的服務。平臺即服務,下一層的應用軟件無需關心操作系統(tǒng)以及中間件的底層模塊的具體操作和運行,直接獲得所需要的功能。什么是基礎設施即服務呢?平臺無需關心硬件設備的細節(jié),直接得到所要求的計算和處理的資源,這是最著名的三個S——SaaS、PaaS、IaaS。
       所以云計算為物聯(lián)網的實現(xiàn),特別是軟件系統(tǒng)的實現(xiàn)提供了解決方案,所以它的作用我認為是一種解決方案,理念是服務用戶,怎么樣實現(xiàn)它最核心的是要屏蔽最下層的那些東西。
      下面我重點談一談所謂群體軟件工程。
      云計算使得用戶變得很簡單了,想要什么直接獲取就行了,但是獲取的整個過程是十分復雜的,那么這個部分怎么樣才能完成呢?這是咱們在軟件界所有的人們都要付出巨大的勞動來滿足這些用戶們、使用者們的需求,特別是對于基于云計算的這些社會服務系統(tǒng)。比如各種物聯(lián)網和面向行業(yè)的超量信息,它和我們過去所做的軟件有些不同,主要在三個方面:具有超、變、散的特點。
     首先是超,所有的物聯(lián)網和由云計算這個方法實現(xiàn)的這套物聯(lián)網,成千上萬上億的人來使用,所以都是一些超大規(guī)模的系統(tǒng)。比如說大量感知受控的設備,這些感知設備要十的七次方,千萬級。同時在網上進行海量信息和通訊進程大約要10的12次方,兆級每秒,這么多的進程在進行。第三個是超量的非結構化動態(tài)數據,10的18次方。第一是超大規(guī)模。
     第二是這些系統(tǒng),不論是智能電網、智能交通,甚至軍事信息柵格這些東西,都在不間斷、持續(xù)演化和部署。所以有什么改進都是在運行當中的改進,和過去一個軟件版本可以用很長時間不同。這是變。
     第三是散,任何物聯(lián)網都涉及到多部門、多領域、多產業(yè)、多地域。比如美國的Cyber Infrastructure系統(tǒng),是覆蓋全美范圍,包括很多學科領域,涉及幾十所高校和研究院。這種要求和這種量對軟件工程,對系統(tǒng)的,過去傳統(tǒng)的軟件工程提出了一個挑戰(zhàn),咱們大家想想,傳統(tǒng)的軟件工程到現(xiàn)在為止我們有什么特點呢?我認為至少有三點:一是精英化,不論是各種軟件公司,在里面工作的人都畢業(yè)于優(yōu)秀的大學,至少碩士畢業(yè)的優(yōu)等生。我說的精英不是天才,是經過系統(tǒng)有效訓練的人,高等教育的人,精英化。二是計劃性,要做一個軟件預先規(guī)劃需求,而且需求能夠提得很清楚,然后把需求不斷的展開,做到細節(jié)。開發(fā)的時候是自底向下的開發(fā),自底向下的測試,整個活動是自閉的,不對外開放的。有的時候我們增加一些什么Alpha測試、Beta測試,但是總體是不開放的,這是咱們傳統(tǒng)軟件工程的來法。面對超量的信息系統(tǒng)這就遇到麻煩。
      傳統(tǒng)軟件工程與超量的信息系統(tǒng)的對比
      舉一個例子。世界上最好的軟件公司是Microsoft。Windows Vista的功能模塊約6萬個,代碼6000萬行,9千熟練的專業(yè)人士,微軟的這些骨干們,耗時五年完成的Vista,這個量應該說在傳統(tǒng)的軟件工程的框架之下的杰作,這個量級。但是咱們現(xiàn)在討論的,各位專家今天上午或者以前會議上討論的云計算,社會服務系統(tǒng),它的規(guī)模遠遠超過Windows的代碼量。舉一個例子,比如說Facebook每個月都有60億張照片上傳,這是他們自己說的。如果把每張照片都要和個人的信息等情況關聯(lián)起來,我們國家重點實驗室提出一個四面體全信息的標注和處理方法。經過這三年的試驗,要把一張照片四方面的信息標注連接起來,一張照片大概需要12分鐘。如果按照一萬人開發(fā)來做這個事的話,需要41年才完成,但是咱用了嗎?沒有。Facebook是怎么解決的信息如此超量的問題呢?采用的群體模式。
      Facebook有8.5億個用戶,這些用戶都對自己上傳的照片加以標注,或者至少一半以上加以標注,假設8.5億個人,每個人負責自己的照片,或者一個朋友的照片,一個半小時就可以完成。這就是面對著超量信息以后新的解決辦法,從軟件工程角度這是一個重要的東西。以前我說是精英化的團體,一萬個精英開發(fā)Windows,或者Vista這樣的系統(tǒng),現(xiàn)在在處理大量的、超量的,18次方信息的情況下,8億人同時上就可以解決這個超量的問題,這是第一個例子。
      第二個例子,咱們天天都在得意的APP Store和Android Market,08年7月開始,大家都有手機,都使用這些應用程序,前后有多少人參加?70萬人,Windows Vista有1萬人,現(xiàn)在70萬人,至少是70萬人次,在四年之內完成了60萬個應用,這是咱們過去從來沒有過的現(xiàn)象。過去為什么軟件貴?就是因為這個,現(xiàn)在都是精英經過專門研究出來,現(xiàn)在我們達到至少是應用軟件這個行業(yè),應用程序我們已經達到了極大的豐富,70萬。另外一個是45萬。這個例子說明什么呢?用群體開發(fā)模式解決超大規(guī)模建設人力不足問題的另外一個很有說服力的例子。但是目前APP Store的技術只是群體開發(fā)的一個初級階段,而且只支持互相獨立的應用開發(fā)程序。這是第二個例子。
      第三個例子,TopCoder,采用競爭性群體軟件開發(fā)模式,25萬名開發(fā)人員加入。美國在線委托TopCoder開發(fā)通信后端系統(tǒng),他任命了兩名職員做設計師和項目經理,他們組織了少數人員把這個系統(tǒng)分成52個部分,按照傳統(tǒng)軟件工程的來法要一年完成,但是TopCoder僅僅用了五個月就完成了,而且質量還很高,最終產品完全達到客戶要求,并且程序中每一千行代碼平均只有0.98個漏洞,低于業(yè)內要求他們每千行六個漏洞標準。所以做的很好,很成功。
      既然物聯(lián)網和在云計算的思想指導下實現(xiàn)的軟件系統(tǒng)是超量的信息系統(tǒng),咱們能不能夠借鑒在Facebook,在APP Store,在TopCoder這些東西,從Facebook的應用數據處理,APP Store的應用程序到TopCoder簡單服務系統(tǒng),這種軟件開發(fā)能不能進入在云計算模式下的超量的復雜系統(tǒng),全面開花,使用群體方式來開發(fā)一個復雜系統(tǒng)。
這就是我這次想跟大家討論的問題。因為群體一進入之后大家馬上就會想到,解決超量的問題是不假,但是產生了新問題,什么問題?安全問題,安全問題成了大問題。所以我認為群體軟件工程這么樣一種新的軟件工程,面對超量的信息系統(tǒng),采用群體的研發(fā),群體競爭的研發(fā)方式,產生安全可靠軟件的這樣一種新的工程,這就是群體軟件工程。這是它的目標。
      群體軟件工程的核心理論是什么?就是剛才我們所克服的傳統(tǒng)軟件工程的幾點。開發(fā)過程從封閉走向開放,就像TopCoder這些,都是從封閉走向開放。開發(fā)人員從精英走向大眾,像APP Store調查的一樣,80%以上的開發(fā)人員都是13歲-28歲的青年,精英是指受過嚴格的高等教育,他們28歲-13歲怎么可能受到這種高等教育。所以從精英走到大眾,另外從工廠走向社區(qū)。三是從機械工程走到社會工程??次覀儸F(xiàn)在開發(fā)一個系統(tǒng),跟我們研制一個大型客機一樣,從自頂向下的設計,專業(yè)人士研究制造,訓練有素,現(xiàn)在開發(fā)面向群社會服務的這樣一些系統(tǒng),就像建設城市一樣,我們所有的城市建設都是在過去的基礎上逐漸的堆壘起來的。把所有整個區(qū)域都消滅掉,然后重新建設,這也不可能。所以社會工程更多的思想將滲入到超量信息的研究,特別是在云的思想指導下的超量信息系統(tǒng)的構造的東西。
      開發(fā)體系是兩個都要,既要群體性,也要精英,兩面都需要的。群體性和大眾化解決軟件超量開發(fā)的問題,群體性競爭機制對軟件資源的形成、組合、測試、維護和服務的生產具有基礎性的作用。精英做什么呢?計劃性和精英化的整體規(guī)劃和管理,精英化的管理機制對軟件的構架、組織的法則、社會規(guī)范的形成具有宏觀的決策作用,這是咱們中國特色的兩點。市場是起著基礎作用,政府起著宏觀調控作用,一方面是大眾,另一方面是精英,這兩個優(yōu)勢都可以發(fā)揮出來,這是需要的體制。
      群體軟件工程的開發(fā)原則
      開發(fā)原則我認為應該是使用者即設計者,使用者即開發(fā)者,使用者即維護者。這個在APP Store應用程序做到了,所有開發(fā)設計這些應用的,同時自己也是使用者。所以他的原則是這樣。他的基本內容我認為至少要包括下面幾個方面:
      因為要群體參加,又要保證安全,所以整個的體系結構必須是多層的體系結構。屏蔽原理,群件組合服務原理,用戶身份的多重性原理,開發(fā)者的競爭選擇原理,競爭性測試和對抗性安全。我覺得至少應該包括這幾個方面。
      第一個方面,為什么變成了多層結構?咱們傳統(tǒng)的軟件系統(tǒng),比如說以前Windows,我不是說Windows不好,我天天都在用,我是指對他們在過去這一階段,實際上就是兩層:一層是操作系統(tǒng)本身,另外一層是用戶,用戶我拿了操作系統(tǒng)之后,我拿了Windows之后,按照Windows的各種規(guī)定咱們來操作。說我今天覺得這個不好,我想修改修改,進到里面修改某部分,這是不可以的。所以一共就兩層,這兩層之間是不開放的。到了Android和APP Store為什么能夠把群體這個事整進來呢?這是我個人的看法。第一步是在應用程序這方面把整個群體的積極性給調動起來。從軟件結構看,它變成三層了,最下面這一層是操作系統(tǒng),第二層是一個開發(fā)環(huán)境,第三層上是用戶。那么用戶怎么樣呢?用戶在操作系統(tǒng)中間增加了一層,整個開發(fā)環(huán)境是對用戶都開放的。所以用戶是個設計者是指我可以設計我的應用軟件,但是我在開發(fā)環(huán)境里頭進行設計。再深一步,從理論上說,這三層實際上的作用是什么呢?就是臨層開放,隔層屏蔽,操作系統(tǒng)不是每個人都可以開放的,這樣的話至少他在應用程序這一層面動員了千千萬萬的應用程序的愛好者,調動起群眾的銅墻鐵壁。但是同時操作系統(tǒng)這塊他還能夠保證安全,這是第一個基本的思想。
      所以我們把這個想法再推廣一下,如果我們想把群體軟件、群體的開發(fā)深入到整個云計算的開發(fā)里面去,那么我們就應該把整個超量信息的云計算的系統(tǒng)分成很多個層次,使得每一個層次里面都遵從臨層開放、隔層封閉,這樣的話安全性問題就解決了,這是多層次。每一層怎么樣?每一層就三樣東西:一是群件庫,函數庫,給上層應用的。二是我的開發(fā)環(huán)境。三是數據庫,在我這一層次里,這個已經都對我的上層、臨層開放了,對我的上上層封閉。所以屏蔽原理我也講了,臨層開放,隔層屏蔽的原理。群件怎么樣呢?每一層有基本群件和組合群件,組合群件為了云計算里的組合服務,但是我們仔細有一想Android之后會發(fā)現(xiàn),組合服務其實就是一個基本的程序。怎么來組合這個層次里的服務呢?首先它基本的服務是從下一層提供的,比如說函數庫?;镜慕M合是通過順序語句組合,通過發(fā)收并存語句組合,這是核心的,比如Android領域用的Java,但是真正核心的就是這些東西。每一個層次都是這樣,只是不同的層次里的基本群件是由下一層提供的。這是組合群件。
      所以每一個層次既然都是這樣,都類似JAY信息機一樣,所以它是多態(tài)的層次。什么是多態(tài)?比如說我們在運用函數的時候,整形的除和實數的除法類型是一樣的,但是態(tài)不同,一個是實數,一個是自然數,是整數,這個就是多態(tài)。我不詳細講了。
      另外,什么叫群件基本達標呢?每層開發(fā)者的數量和該層群件的直接數量遵從二八律,遵從二八律我們才認為他達到了群體參與開發(fā)的要求。比如說咱們講TopCoder,它實際上是25萬人,但實際開發(fā)者只有48850人,占注冊用戶的19.6%,來自204個國家,中國的選手為11541個人。我在杭州講的時候,浙江大學院長告訴我了,他們學院大概有幾十個學生都從中國直接參與TopCoder的開發(fā),而且很多同學就是因為TopCoder的開發(fā)解決了自己的學費、住宿所有的問題。說明這個群體軟件適合我們中國。
      怎么組織?要有執(zhí)委會和協(xié)委會,像社會工程一樣,有政府和人大的性質。另外很重要的一點,為什么TopCoder的開發(fā)質量還比原來的專業(yè)隊伍還好,原因在哪里呢?就是把競爭性測試“引進來”,實戰(zhàn)勝于沙盤。
      總結一下,物聯(lián)網是什么呢?物聯(lián)網是為工業(yè)信息化和國防信息化服務的基礎設施。云計算是什么呢?云計算是實現(xiàn)物聯(lián)網的一種軟件解決方案。群體軟件工程是什么呢?是實現(xiàn)云計算服務的有效開發(fā)方法。
      我就講到這里,謝謝大家。

發(fā)布:2007-04-20 10:09    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關欄目:
相關文章:
辦公軟件下載
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普文件管理軟件下載其他應用

OA辦公系統(tǒng)下載 免費財務軟件下載 財務軟件下載 文件管理軟件下載 通達OA精靈2013下載 OA精靈2013下載 ERP系統(tǒng)免費下載 ERP下載 網絡管理軟件下載 辦公管理軟件下載 文件管理系統(tǒng)下載 普通發(fā)票管理系統(tǒng)下載 審批系統(tǒng)下載 辦公用品管理軟件下載 訪客管理系統(tǒng)下載 合同管理軟件下載 上網行為管理軟件下載 公文流轉系統(tǒng)下載 流程管理軟件下載 訂單管理系統(tǒng)下載 信息管理系統(tǒng)下載 目標管理軟件下載 工作計劃軟件下載 工作任務管理軟件下載 協(xié)同辦公管理系統(tǒng)下載