實全軟件產品自動升級管理解決方案

實全軟件產品自動升級管理解決方案

目 錄

1.    描述... 1

2.    產品管理後臺系統... 1

2.1.     產品發佈... 1

2.2.     產品下載... 2

2.3.     下載日誌... 3

2.4.     異常日誌... 3

3.    產品Web Service服務接口... 3

3.1.     接口說明... 4

4.    產品升級更新程序... 4

4.1.     產品升級自動更新工具... 5

4.2.     產品版本信息... 5

5.    結語... 6

 

1.      描述

  任何一個開發團隊在軟件產品的開發、設計中都很難將軟件產品做到完美,在有限的時間、人力和物力情況,甚至還存在較多的漏洞時,就得將產品交付客戶試用。在軟件的使用中,會不斷髮現問題,這些問題可能是軟件本身的毛病;也可能是運行的軟、硬件環境的變化造成的;同時用戶會有不斷的完善產品功能的要求。因此軟件產品升級在我們使用的時候變得越來越普遍。對於用戶來說,軟件升級可以補全漏洞,確保數據安全;可以增加和更新功能,用起來更加得心應手。對於軟件開發商來說,爲了拓展市場,增強自己的競爭力,也需要不斷升級自己的軟件,力求做得更好。所以說軟件產品的版本控制和自動更新升級功能對於開發和維護有重要的意義。

    本軟件產品自動升級管理解決方案爲:

  • 使用Winform 程序管理各個軟件產品信息、版本、產品文件、產品升級跟蹤及產品異常跟蹤。
  • 使用WEB Service提供產品升級更新接口。
  • 使用Windows 程序和服務程序獲取服務器產品升級信息及升級文件,並對產品進行自動更新操作。

2.      產品管理後臺系統

  使用Winform 程序管理各個軟件產品信息、版本、產品文件、產品升級跟蹤及產品異常跟蹤。

2.1.   產品發佈

   對產品版本信息進行登記,增加產品文件並進行發佈。產品發佈後允許產品升級更新程序進行下載更新。提供產品發佈前產品信息及產品文件下載,進行測試,以保證產品升級更新程序下載的程序能夠正常運行。

 

2.2.   產品下載

產品下載提供產品發版本後的產品信息及產品文件下載,可下載歷史版本文件,遇到發佈後有重大問題時,允許取消發佈,即不允許產品升級更新程序進行下載文件。

 

 

2.3.   下載日誌

下載日誌跟蹤產品下載日誌

2.4.   異常日誌

異常日誌跟蹤產品更新異常日誌及程序異常日誌,以便產品優化。

3.      產品Web Service服務接口

產品Web Service 服務接口主要提供給產品升級更新程序檢查、下載及提交更新日誌接口。

3.1.   接口說明

接口名稱

接口說明

SQReturnResult GetPReleaseDateTime(string pProductNo)

獲取產品最新發版時間。返回說明:成功:0,失敗

SQReturnResult GetPReleaseInfo(string pProductNo)

獲取產品信息。返回說明:成功:0,失敗

SQReturnResult GetProductFile(string pProductNo,string pVersion, string pFileName)

獲取產品文件內容。返回說明:成功:0,失敗

SQReturnResult GetProductFileByte(string pFileTag)

獲取產品文件內容。返回說明:成功:0,失敗

SQReturnResult AddError(string pProductNo, string pProductName, string pPVersion

            , string pCustomerNo, string pCustomerName, string pErrorClassify, string pErrorTitle, string pErrorRemark)

增加產品異常信息。返回說明:成功:0,失敗

 

4.      產品升級更新程序

  實現客戶端相關文件的自動更新有多種方法,常見的方法是通過人工的或智能的手段通知客戶端有新的軟件版本和更新方法,軟件使用人員手動從網上下載必要的文件並更新;或者在應用軟件的菜單條目中增加自動升級的功能,讓使用人員控制軟件升級的頻率和時機。這些方法在特定條件下應當有它存在的意義和優勢,但對那些與數據庫有關的管理程序而言,考慮到多客戶數據處理的同步與協調問題,如果軟件的更新由使用人員掌握,很難保證版本之間數據處理的一致性,並且往往使得開發人員爲了考慮前後程序的兼容性束縛了設計思路。因此,本文實現的軟件自動升級方法,其中有一個重要的目標是保證軟件強制性的升級,而且考慮到使用人員計算機應用能力的參差不齊,力求達到升級過程的無縫過渡。也就是說,使用人員在程序啓動的時候,由程序本身檢測是否有新的版本需要更新,並在用戶完全不知情的情況下替換相關文件,最後又自動重新運行新的主程序。對用戶來說,軟件升級的過程是程序在後臺自動、平滑地實現的,根本不需要關心軟件的升級問題,只要放心地使用,完全由開發人員掌握軟件的分發、維護、更新、同步等問題。爲實現這一關鍵目標,設計思路應主要包括以下幾點:

  • 產品升級更新程序連接服務器獲取產品最新發版時間,與本地產品發版時間進行比對。
  • 本地產品發版時間與服務器發版時間不符時,獲取產品發版信息。
  • 根據產品發版信息下載服務器產品文件。
  • 將下載的產品文件更新到產品目錄。

4.1.   產品升級自動更新工具

 

4.2.   產品版本信息

  產品版本信息記錄產品版本信息及產品文件信息。同時下載後將保存到產品目錄中,以便下次根據此進行判斷是否有新的版本需要下載及更新。

 

 

5.      結語

  軟件產品自動升級更新管理解決方案目前支持Winform程序,Windows服務程序及控制檯程序,對於B/S架構軟件產品,產品文件及文件目錄比較多,管理產品文件方式進行發佈會比程序要複雜;如果打包成一個文件,產品升級更新工具需要對打包文件進行解壓,將後續考慮優化。產品升級更新工具只負責下載產品文件及更新文件,對於軟件產品需要更新數據庫、需要更新註冊表等操作,將由軟件產品自身處理。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章