標籤:.com 開發 角色 電子 共用池 叢集 開發平台 平台 階段
1 雲端運算1.1 雲端運算是什麼
雲端運算是一種按使用量付費的模式,這種模式提供可用的、便捷的、按需的網路訪問, 進入可配置的計算資源共用池(資源套件括網路,伺服器,儲存,應用軟體,服務),這些資源能夠被快速提供,只需投入很少的管理工作,或與服務供應商進行很少的互動。
雲端運算是通過使計算分布在大量的分散式運算機上,而非本機電腦或遠程伺服器中,企業資料中心的運行將與互連網更相似。這使得企業能夠將資源切換到需要的應用上,根據需求訪問電腦很儲存系統。這意味著計算能力也可以作為一種商品進行流通,不過是通過互連網進行傳輸的。
對於雲端運算的理解,分為狹義和廣義的兩類。狹義雲端運算是指IT基礎設施的交付和使用模式;廣義雲端運算是指服務的交付和使用模式。這種服務可以是IT和軟體、互連網相關的,也可以是任意其他的服務,它具有超大規模、虛擬化、可靠安全等獨特功效。
1.2 雲端運算的特點
超大規模:
“雲”具有相當的規模,Google雲端運算已經擁有100多萬太伺服器,Amazon,IBM,微軟,Yahoo等的“雲”均擁有幾十萬台伺服器。“雲”能賦予使用者前所未有的計算能力。
虛擬化:
雲端運算支援使用者在任意位置、使用各種終端擷取應用服務。所請求的資源來自“雲”,而不是固定的有型的實體。應用在“雲”中某處運行,可以通過網路服務來實現我們需要的一切,甚至包括超級計算這樣的任務。
資料安全可靠:
雲端運算提供了最可靠、最安全的資料存放區中心,使用者不用再擔心資料丟失、破壞入侵等麻煩。“雲”使用了資料多副本容錯、計算節點同構可互換等措施來保障服務的高可靠性,使用雲端運算比使用本機電腦更可靠。
用戶端需求低:
雲端運算對使用者端的裝置要求很低,使用起來也很方便。你只要有一台可以上網的電腦,有一個你喜歡的瀏覽器,你要所得就是在瀏覽器中鍵入URL,然後盡情享受雲端運算帶給你的無限樂趣。
通用性:
雲端運算不針對特定的應用,在“雲”的支撐下可以構造出千變萬化的應用,同一個“雲”可以同時支撐不同額應用運行。
輕鬆共用資料:
雲端運算可以輕鬆實現不同裝置間的資料與應用共用,在雲端運算的網路應用模式中,資料只有一份,儲存在“雲”的另一端,你的所有電子裝置只需要串連互連網,就可以同時訪問和使用同一份資料。
高可擴充性:
“雲”的規模可以動態伸縮,滿足應用和使用者規模增長的需要。
按需服務:
“雲”是一個龐大的資源集區,使用者按需購買。
極其廉價:
由於“雲”的特殊容錯措施可以採用極其廉價的節點來構成雲,“雲”的自動化集中式管理使大量企業無需負擔日益高昂的資料中心管理成本,“雲”的通用性使資源的利用率較之傳統系統大幅提升,因此使用者可以充分享受“雲”的低成本優勢。
可能無限多:
雲端運算為儲存和管理資料提供了幾乎無限多的空間,也為我們完成各類應用提供了幾乎無限強大的計算能力。【1】
2 對軟體工程的影響2.1 軟體構架的開放性
將雲端運算運用於電腦軟體構件的技術的時候,整個平台的構架,大智障將可以分為雲終端系統層、硬體系統層、系統管理層以及虛擬機器系統層這樣四個部分來進行具體的構建,它的存在是整個構建的基礎所在,也為整個構建提供了協助和相對應的保護,而在這個管理過程之中,雲端運算本身還可以利用不同情況下的不同種類的要求,來完成多個電腦叢集系統的構建,其作用、意義和價值都是不言而喻的。【2】
使用了雲端運算技術以後,相比於之前的傳統軟體工程,軟體的開放性得到了前所未有的提高,這樣軟體構件的複用性也隨之提高。分散式運算模式的應用,也是的軟體的體系,設計構件以及代碼,可以被不同的“雲”使用者所使用,甚至是不同軟體Team Dev之間的開發人員。
2.2 軟體對象的多樣性
雲端式計算的電腦,在軟體實驗管理過程之中,是通過資料中心來對其餘的資料進行管理和控制的,這樣的過程不僅僅會讓整體變得更加的方便,而且還能夠提高整體的安全性,在需要的使用的時候從資料庫之中提取,而在並使得時候可以更好的儲存,管理,不僅僅如此,這些資料即便是在實驗的結束之後,依舊可以作為雲端運算的資料進行重複的使用。
2.3 軟體過程的動態性
軟體開發不再是一個封閉的、全域控制的流程,而是存在多個並發和自治的流程,在一個項目中,自底向上,自頂向下有幾整合。開發過程中,使用者、開發人員之間不再有明確的角色劃分,通常情況下,在不同的階段,軟體開發人員、服務提供者、軟體使用者多重角色是同一個人,軟體開發工具由雲端運算服務商統一提供,開發組織無需購買有個就得軟體許可,秩序在開發週期內按需租用雲端服務商的軟體許可,這樣可以大大降低軟體工具費用。【3】
2.4 開發組織的社會化
雲端運算環境下,軟體開發的環境、工作模式也將發生變化。雖然,傳統的軟體工程理論不會發生根本性的變革,但雲端式平台的開發工具、開發環境、開發平台將為敏捷開發、項目組內協同、異地開發等帶來便利。軟體開發項目組內可以利用雲平台,實現線上開發,並通過雲實現知識積累、軟體複用。
2.5 資源部署的虛擬化
雲端運算給軟體部署、運行管理和維護帶來了高度的靈活性,對於一個特定的應用,軟體部署、運行管理、維護和開發過程是並行的,第一次不熟的可能只是一小部分功能,在稅後的軟體升級中不斷完善。由於雲端運算模式極大地降低了軟體構件之間的耦合程度,軟體的用戶端、服務端、管理端等構件完全以並發、獨立的方式不熟和管理,甚至軟體啟動並執行基礎設施也可以在使用者透明的方式完成升級換代和重新部署。
雲端運算軟體是按照使用者需求隨時運行,軟體運行平台採用目前非常成熟的虛擬化技術,在用戶端,可以產生多種虛擬環境,如Windows、Linux,甚至是瀏覽器等,使用者可以根據自己的喜好來選擇;在伺服器端,可以把大規模的伺服器系統虛擬化為單一處理單元和連續的儲存單元,降低使用者端的管理複雜程度。
雲端運算軟體啟動並執行最底層的硬體系統和基礎軟體系統則有專業的電腦資訊系統整合商統一維護管理,對使用者來說,完全可以不關心底層軟硬體的細節。目前,IBM、微軟、HP等跨國公司正在全球部署雲端運算基礎設施。【4】
2.6 雲端運算對軟體測試的影響
在雲端運算環境下,由於軟體開發工作的變化,也必然對軟體測試帶來影響和變化。軟體技術、構架發生變化,要求軟體測試的關注點也應做出相對應的調整。軟體測試在關注傳統的軟體品質的同時,還應該關注云計算環境所提出的新的品質要求,如軟體動態適應能力、大量使用者支援能力、安全性、多平台相容性等。
雲端運算環境下,軟體開發工具、環境、工作模式發生了轉變,也就要求軟體測試的工具、環境、工作模式也應發生相應的轉變。軟體測試載入器也應工作於雲平台之上,測試載入器的使用也應可通過雲平台來進行,而不再是傳統的本地方式;軟體測試的環境也可移植到雲平台上,通過雲構建測試環境;軟體測試也應該可以通過雲實現協同、知識共用、測試複用。【5】
3 總結
雲端運算的發展毫無疑問是有益的,即便它的產生對於傳統的互連網技術帶來了巨大的衝擊,我們也不得不承認它的出現同時也提供了更多的優勢性的輔助,尤其在軟體開發方面,對這個電腦的軟體系統進行構建,對各種系統進行最佳化。雲終端系統、硬體系統、系統管理以及虛擬機器系統也必然將因為雲端運算的發展而得到更高的提升。
4 引用文獻
【1】仉偉, 郭洪遠. 雲端運算的特點和應用展望[J]. 數字技術與應用, 2011(4):168-168.
【2】《電子技術與軟體工程》2016年 第8期 176-176頁
【3】張勇. 雲端運算環境下軟體工程模式初探[C]// 全國軟體測試會議與移動計算、柵格、智能化進階論壇. 2009.
【4】http://www.3fwork.com/b702/000266MYM009524/
【5】http://www.chinacloud.cn/show.aspx?id=14695&cid=12
雲端運算與軟體工程