複製鏈接
請複製以下鏈接發送給好友

軟件部署

鎖定
軟件部署環節是指將軟件項目本身,包括配置文件、用户手冊、幫助文檔等進行收集、打包、安裝、配置、發佈的過程。在信息產業高速發展的時代,軟件部署工作越來越重要。 [1] 
中文名
軟件部署
外文名
software deployment
特    點
過程間協調等
類    型
“指派”與“發佈”兩種
功    能
收集和打包配置文件、用户手冊等
學    科
軟件工程術語

目錄

軟件部署簡介

傳統的軟件工程不包括軟件部署,但不斷增長的軟件複雜度和部署所面臨的風險,迫使人們開始關注軟件部署。軟件部署是一個複雜過程,包括從開發商發放產品,到應用者在他們的計算機上實際安裝並維護應用的所有活動。這些活動包括開發商的軟件打包,企業及用户對軟件的安裝、配置、測試、集成和更新等。
據Standish Group的統計,軟件的缺陷所造成的損失,相當大的部分是由於部署的失敗所引起的,可見軟件部署工作的重要意義。
軟件部署存在着風險,這是由於以下原因造成的:應用軟件越來越複雜,包括許多構件、版本和變種;應用發展很快,相繼兩個版本的間隔很短(可能只有幾個月);環境的不確定性;構件的來源多樣性等。
軟件部署過程的主要特徵有:過程覆蓋度、過程可變更性、過程間協調和模型抽象。已經提出一些抽象的軟件部署模型,用於有效地指導部署過程,包括應用模型、企業模型、站點模型、產品模型、策略模型和部署模型。
軟件部署過程中需要關注的問題有:安裝和系統運行的變更管理、構件之間的相依、協調、內容發放、管理異構平台、部署過程的可變更性、與互聯網的集成和安全性。 [2] 

軟件部署內容

可以通過組策略來為域內的用户與計算機部署軟件。軟件的部署分為“指派”與“發佈”兩種,可讓用户很容易地擁有這些軟件。一般來説,這些軟件應為“Windows InstallerPackage”,也就是這些軟件內包含着一個擴展名為.msi的文件。
1.將軟件指派給用户
當將一個軟件通過組策略的GPO指派給域內的用户後,則用户在域內的任何一台計算機登錄時,這個軟件都會被“通告”給該用户。但是,這個軟件還沒有真正地被安裝,而只是安裝了與這個軟件有關的部分信息,例如,可能會在任務欄的“開始”菜單中的“所有程序”中自動建立該軟件的快捷方式。只有在用户打開任務欄的“開始”菜單,指向“所有程序”,單擊該軟件的快捷方式,或是雙擊桌面上的快捷方式後,才會自動安裝此軟件。
2.將軟件指派給計算機 ’
在將一個軟件通過組策略的GPO指派給域內的計算機後,啓動這些計算機時,這個軟件就會自動安裝在這些計算機裏,而且是安裝到公用程序組內,也就是安裝到Documents andSettings\Users文件夾內。任何用户登錄後,都可以使用此軟件。
3.將軟件發佈給用户
在將一個軟件通過組策略的GPO發佈給域內的用户後,該軟件不會自動安裝到用户的計算機內,用户需要通過以下方式來安裝這個軟件(假設用户所使用的操作系統為Windows XP Professional):打開“控制面板”,啓動“添加或刪除程序”,單擊“添加程序”,然後進行安裝。
4.自動修復軟件
一個被髮布或指派的軟件在安裝完成後,如果此軟件程序內有關鍵性的文件損壞、遺失或被用户不小心刪除,則系統會自動探測到此不正常的現象,並且自動修復、重新安裝此軟件。
5.刪除軟件
一個被髮布或指派的軟件在安裝完成後,程序從GPO內發佈或指派的軟件清單中刪除,將這個軟件刪除就可以了。 [3] 

軟件部署步驟

軟件部署的驗證和實施的過程一般包括如下步驟。
1、開發試驗性系統(構建網絡和硬件基礎結構、安裝和配置相關的軟件)。
2、根據測試計劃/設計執行安裝測試、功能測試、性能測試和負載測試。
3、測試通過後,開始規劃原型系統。
4、完成原型系統的網絡構建、軟硬件的安裝和配置。
5、數據備份或做好可以恢復的準備。
6、將數據從現有應用程序遷移到當前解決方案。
7、根據培訓規劃培訓部署的管理員和用户。
8、完成所有的部署。
在這些過程中,保證系統和用户數據的不丟失是非常重要的,大家都知道,數據比系統更為重要。
試驗性部署測試和原型部署測試的目的是在測試條件下儘可能確定部署是否既能滿足系統要求,又可實現業務目標。理想情況下,功能性測試可以模擬各種部署方案以完成所需要執行的測試用例,並且定義相應的質量標準來衡量其符合性。負載測試衡量在峯值負載下的測量性能,通常使用一系列模擬環境和負載發生器來衡量數據吞吐量和性能。對於沒有明確定義、缺乏原始數據積累的全新系統,功能性測試和負載測試尤其重要。 [4] 

軟件部署注意事項

在實現軟件部署的過程中需要注意以下事項:
(1)在大規模部署軟件前,先把軟件包文件分發到一個用户的測試組,然後逐漸分發。這種漸進的部署和測試的方法可以幫助用户在把應用程序部署到整個組織前確定並解決軟件包的問題,在確定無誤後再實現軟件部署。
(2)為軟件分發點使用基於域的DFS。利用基於域的DFS可以提供容錯和負載均衡的特點,DFS可以為所有的發佈和指派提供一個單獨的軟件分發點。通過在每一個站點創建一個DFS副本,可以為多個用户提供軟件安裝。而且客户端都試圖從自己站點的DFS副本安裝部署的軟件,減少了慢速廣域網連接的網絡通信量。
(3)根據軟件的功能來組織應用程序。當需要部署的軟件非常多時,為軟件劃分類別將使創建軟件策略時查詢軟件更加容易。
(4)不要使用不同的方法來部署相同的軟件。比如除非特殊需要,否則不要把一個軟件包既指派給用户,又指派給計算機,這樣容易造成管理混亂。 [5] 
參考資料
  • 1.    劉光潔,雷玉廣編著.軟件工程與項目案例教程:清華大學出版社,2012.01
  • 2.    蔡希堯編著.信息系統的發展與創新:西安電子科技大學出版社,2009.12
  • 3.    陳偉達主編.Windows Server 2003組網技術:西安電子科技大學出版社,2007.10
  • 4.    朱少民主編.軟件質量保證和管理:清華大學出版社,2007年1月
  • 5.    商宏圖 李紅巖等編著.Windows Server2003活動目錄:機械工業出版社,2005年07月