Share via


應用程式相容性

規劃您的應用程式相容性專案

Chris Jackson

 

簡介:

  • 定義願景和範圍
  • 建立小組
  • 專案 ’s 三個金鑰的階段
  • 補救方法

內容

在願景和範圍的定義: Windows
在願景和範圍的定義: 應用程式管理
建立小組
收集
分析
測試
重新進行
結論

我的工作會採用我使用客戶移轉到最新版本的 Windows 處理序的世界。 通常,最大的阻礙遇到是應用程式相容性會引發下列問題: 多少它將修正動作的成本? 多久它要採用? 我需要知道為什麼? 我如何加速處理程序如果它花太長的時間?

類似於軟體開發專案的應用程式的相容性專案,是: 您會發現您面對成本和時間的估計值修改一段時間。 我已經發現人建議估計的時間和成本,根據應用程式的數目,但此系統可以提供的最好是平均值而定。 平均值通常是關閉的幾乎沒有人實際上按下它,大部分的組織值得注意的是比平均值,或 disappointingly 糟。

所以,讓我們來討論如何進行相關的應用程式相容性] 專案的規劃階段 — 瞭解成本精簡它們隨著時間,和最小化它們在早期,評估。 我會與您共用的秘訣,並用技巧最成功的客戶有,希望儲存您修改在處理序中。 我特別是要最大化產能的參與者沒有直接的使用者的參與等,測試的使用者] 和 [企業擁有者,因為您需要其合作,才能成功應用程式,排列優先順序,處理序。

在願景和範圍的定義: Windows

您正在處理應用程式相容性時,可以取得難在進行。 當您找到的任務關鍵性、 中斷,Visual Basic 3.0 的 Pocket 應用程式而原始程式碼,很容易就能取得不建議使用。 您會希望 motivating 的 rallying 口號。 您可以使用,引導您進行硬式、 策略性的決策的主要目標。

例如,如果您修復的應用程式需要系統管理員的權限,而升級 Windows 的主要目標是啟用以標準使用者比套用在 RunAsAdmin 執行 Shim 不良好的降低。 如果您主要的目標是要讓尋找、 組織,及使用資訊更容易,而且您需要修正在中斷的應用程式使用 「 購買一個新 「 修正程式,您將列入考量的資訊視覺化 」 和 「 Shell 整合產品的功能,您考慮。

您寫下您的願景之後,定義範圍。 如果您的目標,包括移到標準使用者的桌上型電腦的百分比,可定義的百分比。 這可能會明顯,聲音,但它是在經常被忽略,並強關聯與成功時。

在願景和範圍的定義: 應用程式管理

作業系統移轉會是完美時間設定為應用程式管理的目標。 您所接觸每個應用程式在您的企業中,哪些好時間思考如何管理您的應用程式組合。

檢閱您的應用程式管理目標,從兩個觀點:

  • agility 您如何快速可以回應技術變更為具競爭力的優點? 如何是好是在測試軟體,將兩者的風險和實際執行的時間降到最低? 如何管理應用程式的週期? 您要如何瞭解您的軟體解決,哪些商務問題,並是它最佳化的軟體解決方案? 您想要使用軟體,故意和 strategically。
  • 生產力 您是否有最大化使用者生產力? 您提供一個熟悉 」、 「 現代和 「 一致的高品質的軟體的經驗嗎? 您有管理生產力與服務台成本的品質標準嗎? 可以使用者共同作業使用相同的軟體平台嗎? 您想要使用軟體,讓商務產能。

應用單一最大程式管理挑戰幾乎無所不在我是應用程式的激增。 有些組織必須接近 100,000 個軟體。 完全無法管理的 ! 考慮資訊 — 您無法雇用 50 人員小組、 花只測試每一個的應用程式的一小時,並且它會仍然接受您完成測試的整個行事曆年。 應用程式相容性專案為一個的縮放] 專案,而其中一個最大的遊戲獲勝次數是減少小數位數]。

任何您最大的問題,請寫下您會改善。 您可能無法移從 100,000 個應用程式,為 500 這一次。 您可能無法移除與按鈕如此大的它們需要兩個手要推入所有舊 Visual Basic 6 應用程式。 不過,您應該設定目標,它們併入您的觀點並量化這些在您的範圍中。

建立小組

與您的願景和範圍中位置的組合,小組執行工作的時候。 (一人可以擔任一個以上的角色) 的重要角色包括:

  • 專案管理員 協調跨越許多的專業領域和組織的小組。
  • 商務協調負責人 搭配使用商務應用程式取得在應用程式的優先順序的資料,找出並協調使用者接受度測試 (這個角色經常執行由專案管理員) 的試驗使用者與協調的擁有者。
  • 技術指導人員 會使用開發人員識別訓練間隔,並使用偵錯工具來解決複雜的相容性問題。
  • 實驗室的管理員 確保小組及使用者基底有舒服的椅子和目前的作業系統影像,要測試的軟體。
  • 應用程式的 [參考資料] 小組 判斷目前的 (經常外包) 的協力廠商軟體的支援狀態。
  • 測試小組 執行安裝,並在煙霧測試,確保使用者測試 (經常外包) 之前的基本的相容性。
  • 降低小組 在測試期間解決相容性問題的介面。
  • 封裝小組 (通常外包) 測試完成後,會建立安裝套件。

整個小組將會需要密切合作,以及與其他參與在作業系統遷移的任何人。 舉例來說,您會希望將目前的影像和最新的群組原則組態。

在願景和定義的範圍識別小組的時候,開始規劃要執行的工作。 處理程序,可分為三個階段:

  • 收集 為何我需要? (目前的狀態)
  • 分析 我想什麼? (所需的狀態)
  • 測試及緩和 哪些運作了嗎?

收集

之前您可以規劃您的工作先,您必須瞭解哪些軟體您有,目前的狀態。 越複雜的軟體管理工具,多個可視性必須到您目前的狀態。 如果您已經從您的軟體管理工具的應用程式清查,使用它。 如果沒有在可用 Application Compatibility Toolkit (ACT) 從 Microsoft 可以提供絕佳的清單。 不論您所使用的工具,哪些不會影響您的工具讓您需要的所有資料,將稍後在程序中提出的回答問題。 若要協助您結構物品欄的資訊,如下您想要知道:

  • 部門或組織 使用者的運作? 這項資訊協助識別哪些軟體解決了哪些商務] 問題磁碟機的優先順序或重複的識別。 我看到這在幾種方式,收集到使用電腦名稱、 IP 的子網路和等等。
  • 角色 使用者的作用何在? 這項資訊會有助於識別哪些軟體用來為,再次告知優先順序或識別重複。 此資料通常是困難來尋找,除非已經編碼 someplace,例如為 Active Directory 中。
  • 使用方式 軟體已安裝多少使用者? 更好,多少它們使用的它? 它比較容易停用應用程式,如果您知道沒有人有安裝,或者將其安裝的使用者永遠不會使用它。

稍後,您會想要協助人員測試應用程式,以及下列資料:

  • OS / 補充程式等級 您需要的軟體 (可能) 正在讓事情發生錯誤時,軟體測試人員可以比較工作大小寫以中斷的情況,使用者設定的詳細資訊。
  • 主題專家 要表示的您將需要真實的使用者的真實的使用者案例測試。 如果您尚未識別 SME,可能是使用資料有助於識別候選者。
  • 安裝其他應用程式 有時候,應用程式的問題被因應用程式會希望能夠識別之間的衝突。

最後,您希望在您的軟體清單,以支援在實際部署的資料。 如果您打算部署的角色 (請參閱資訊看板 < 部署 > 角色所要瞭解為何這是個好主意),角色,然後標記應用程式可協助引導您第一次測試這些應用程式。 同樣地,如果您打算部署的部門或地理位置您要啟動測試使用的者,您將部署至第一個應用程式。

您完全瞭解您目前的狀態嗎? 好,跳到下一節。 如果沒有讓我們選擇的工具,可以協助您。

您可能需要原始數值早期建置應用程式的相容性工作的商務實例。 Microsoft 提供的無代理程式的工具,可協助您取得一些簡單的重要性的數字,Microsoft 的評估和規劃的工具組。 雖然通常不足以整個專案的磁碟機,這個工具會提供一些的指示,您需要投入的努力的量。

部署的角色

我們最成功的客戶部署 Windows Vista 角色。 這特別好適用於當您有結構化工作的工作者角色。 角色會比任何其他輕鬆地辨別除法運算的軟體使用中有最大的共通。 您可以啟動與在結構化的工作背景工作角色例如撥接中心。 此群組可能有相對少數的應用程式,也許是個。 您可以測試所有的這些應用程式完成時,並準備要部署這個角色。 您可以管理,brag,並移至下一個角色。 很高的團隊士氣因為成功,管理是快樂因為可見,進度並小組取得它們處理角色例如,資訊工作者 」 角色的軟體驚之前執行工作,在可管理的數字的作法。

若要取得詳細的資料,您需要的代理程式)。 收集目錄為非微不足道,因為有許多方式來安裝 (MSI、 Xcopy、 在 Setup.exe,等) 的應用程式。 要尋找的所有影響您的應用程式。 大部分工具介面豐富型用戶端應用程式但呢,Web 應用程式、 ActiveX 控制項和 Microsoft Office 應用程式? 我還沒有找到一個工具,提供所有項目。

若您已經不擁有的應用程式清查,Application Compatibility Toolkit (ACT) 會是最佳品種的發生很重要的桌面應用程式,您: 讓您的應用程式和版本,您可以對應到支援陳述式設定。

順帶一提,使用方面 ACT 和其清查,我要清除一個誤解: 相容性評估工具所測試的替代的概念。 決定多少收集時,請權衡其值對此資料的成本。 您無法將不需要使用相容性評估工具的測試。 評估工具會調整為 (如此它們可以在實際執行環境中執行) 的效能,讓它們明確地不是為了攔截每個可能的問題 (這會降低使用者太多,是它甚至可能)。

相容性評估工具會有效地報告 deprecations (已從作業系統例如,在 GINA 的功能)。 但它只能執行的 Internet Explorer 7 及以上版本 (而且,因為您不太可能會部署在測試之前,相當多限制其使用實驗室或試驗電腦),是棒,Internet Explorer 相容性評估工具。 因為 UAC 評估工具不攔截許多檔案,並登錄模擬不自動修正它就會的而粗略的預測工具,以標準使用者身分執行的其他錯誤。 在摘要,它所攔截的事情會是所有完全相容性的錯誤您應該處理但鑑在有限的範圍它為不佳的預測工具如果而且如何錯誤整個應用程式會中斷。

我們權衡,成本)。 使用複雜的軟體部署系統在位置,時更容易且便宜來部署代理程式。 我也必須執行伺服器以支援資料集合,以及時間來收集資料時的價格。 處理每個記錄檔的 17 個秒的平均,我無法執行 3 天,1,000 個的電腦的集合上載的每個 8 的小時中的和處理序資料在 2 天。 但是,如果我想要收集在 000 席位企業中每部機器,30 天上, 載的每個 8 的小時我就必須等待接近 10 年 (!) 處理的資料。

如果您仍然是收集清單,合理收集的電腦,子集的相容性資料,而非 relentlessly 投資。 我看過太多相關收集此資料的大量的成本預估。

分析

您知道您有之後必須判斷您要 — 物品所需的狀態。 這需要企業間的共同作業和 IT,和一些困難的選擇。 結果我見過的 內容的圖 1 所示太過多次行以及繼續執行處理序,您只能算出哪些要之後,您已經在不想要的項目上花了大量金錢。

fig01.gif

[圖 1 Unwise 應用程式分析 — 運作不一定是您想要

決定您要根據哪些的運作方式,問題是您的結束啟動 keeping (和支援) 應用重複程式只是因為他們工作時,發生或決定以排除的應用程式之後您已經有花費金錢研究它,。

其意義更多算出您要先,並再投資您的錢研究] 和 [測試只能將值加入至您的商務決定這些應用程式。

若要進行更具生產力的應用程式的分析程序,我們建議您設定一些明確的目標,並在對它們測量進度。 建議的目標包括:

  • 應用程式的最大數目 設定您想要支援的應用程式的數的明確的目標。
  • Managed 應用程式容錯 設定容錯層級的應用程式成為管理 」 的應用程式,根據同時商務優先權] 和 [使用者數目時。
  • 管理層級 在分散式的組織設定應用程式管理,affording 自主,來實作本指南,適合企業的業務單位的整個組織的目標。
  • 商業軟體的版本控制標準 它可以永遠購買最新版本的所有您的軟體極昂貴,但您帶來的風險很舊的軟體]。 請考慮設定標準的 n (目前的版本) 或 n-1 (先前的版本) 為您的商務關鍵應用程式
  • 支援平台 限制支援平台協助您管理的複雜性。 您不想要位置 (建立新的版本,其唯一的功能是與.最新平台的相容性) 在執行時升級所有變得極大,而且成本。
  • 應用程式優先順序的目標 人會有非常不同的觀點,在哪些 「 關鍵 」 表示。 您要設定百分比目標或一些目標的準則將此清除

記住這些目標的牽涉到企業端的動作的人的時間 —,知道如何和原因,使用軟體的人。 規模較小的組織這可能 one-on-one。 對於較大的組織,您可以使用 SharePoint 入口網站來收集資料,通知分析處理程序。 雖然要簡化您也要確定您可以擷取像是,「 我們必須保留之前的聯邦法律所使用某個地方,此稅金軟體的七個版本 」 的資料。

一個重要的練習: 最佳化在您的小組,沒有正式的人的時間。 企業擁有者通常會協助您與一點到沒有直接的獎賞。

您如何收集是已知有關您的應用程式的資訊? 在共用商業軟體的相關資訊, Windows 相容性中心但是您必須符合您的清單,與此網站上的資料。 Application Compatibility Toolkit 5.5 將自動化此對應。

剪下早期和通常這個原則會套用在整個。 高值資源排除在 30 秒內應用程式是比低值資源花費研究它一小時便宜的。 明顯的噪音之前先移除您從商務的擁有者 」 和 「 只企業擁有者協助決定您要讓周圍的 [參考資料] 應用程式中收集資料。 慣用的方法來研究應用程式如 [圖 2 ] 所示。

fig02.gif

[圖 2] 時它 ’s 便宜,早期,應用程式的清單向下篩選

如何這運作? 與一位客戶,我們會花費大約 1,200 54 不同電腦的應用程式的清單。 透過午餐的小時,我們移除了明顯的雜訊,根據其商務規則來。 我們會縮小,大約 450 的應用程式的清單,並無法可能縮小它更多額外的時間。 這是在一個小時中移除超過 700 不重要的應用程式 — 在節省大量的成本。

您現在可以修改您成本預估,根據您所需的狀態。 您可以進一步通知的估計,使用的商業軟體的已知的相容性狀態,並可能使用靜態分析工具協助您瞭解您所預期運作,或有問題。

測試

接下來,您需要判斷使用者即將參與測試的程序。 小組的考量:

  • 內部的小組結構 強式專案管理員而且技術的專家,內部前置小組,確保您可協調數個角色 (軟體測試人員、 偵錯工具,開發小組、 使用者、 商務的擁有者和等等)。
  • 相關的協力電腦 許多組織牽涉到的夥伴,協助處理程序。 考慮其中它們符合 (目標的技能增加、 人員強化寶石,Factory 的方法和其他人),並將如何它們會與使用者的商業功能測試整合

您也會想要規劃,您要使用的技術。 請考慮下列技術:

  • 虛擬機器 復原磁碟 」 和 「 快照集的功能會節省您很多時間從 (舉例來說,「 第一次執行 」 的錯誤,錯誤的永久損毀狀態的電腦)
  • 終端機服務] / [遠端協助 這些很測試,提供的簡單的方式,快速讓 Windows Vista 電腦的人存取的使用者非常有用的。 並協助錯誤重製和調查的遠端協助 」。
  • 試驗的電腦 讓使用者第一次存取 hotrod 新膝上型電腦在交換進行測試的應用程式可以非常 motivating。

接下來,對應測試的程序。 [圖 3 ] 顯示基本架構的工作流程:

fig03.gif

[圖 3 : 應用程式的測試程序

您可以確保明顯的無執行中斷之前,您需要使用者。 沒有任何更令人沮喪,比最後說服您只能將安裝程式攻擊的效果設定其表面在實驗室到又使用者。

同樣地,確定軟體測試人員不結束測試您願意修正內容。 如果支援是必要的只測試就會支援版本。

重新進行

若要有效率的測試,您要測試與記住修正程式。 偵錯失敗應用程式,直到您決定它適合的補救措施 Bucket ; 一旦您擁有一個 Bucket,停止。

不用說如果要這樣做軟體測試人員必須知道 considering,和時間,您的連結。 crisply 定義補救策略。 大部分的組織所考慮的補救選項包括:

  • 取得一個新 這很可能工作,是,並提供您的廠商支援 (這可能您的應用程式的某些重要)。 這會是最昂貴的方法與開發或購買的成本。 通常,使用這個方法是您可以將它負擔任何時間 !
  • Shim it. 這是節省成本的路由,藉由修改呼叫作業系統之前,它們有取得說明應用程式。 您可以修正如果沒有至原始程式檔的存取權] 或 [不變更它們的應用程式。 您帶來最少的額外管理負荷 (在 Shim 資料庫),並可以修正合理的應用程式數目這種方式。 缺點是支援,因為大多數廠商不支援 shimmed 應用程式。 您無法修正使用修正每個應用程式。 大多數的人通常會考慮的廠商出商業、 軟體不是策略性足夠必須支援,或它們只是要買一些時間,應用程式的修正。
  • 變更原則。 當特定的功能會中斷許多應用程式時, 可能要停用該功能。 優點是類似於使用修正,您不需要變更,或甚至可以存取原始程式碼。 而缺點類似以及 — 缺乏支援和無法修正所有項目。 有些人會考慮 Web 應用程式的修正不的選項,這個方法。 部分安全性功能可以控制個別和停用做為 stopgap 解決方案。 一個常見的選擇會停用的近端內部網路區域的預設執行 Internet Explorer 8) 的受保護的模式。 請注意,但是,任何時間您修改系統的預設安全性,您要採取的決策,非常嚴重。 例如,停用 UAC 可以 decimate 作業系統遷移的商業價值。
  • 應用程式虛擬化。 沒有大量的應用程式虛擬化解決做為的應用程式相容性解決方案的混淆。 我已經聽說它視為應用程式的完整分開,在基礎的 OS 和因此完整且絕對的解決方案。 這是 emphatically untrue 今天。 唯一的例外是當將檔案和登錄的呼叫會應用程式仍會呼叫在基礎的 OS 並任何相容性問題,在檔案系統或登錄之外保持未修正。 是絕佳的應用程式對應用程式的衝突,但不是泛型解決方案的應用程式作業系統的衝突。 因為不是每個公司支援在應用程式虛擬化軟體,即使它原本就支援作業系統上,則支援狀態是未知但可能不在您的偏好的。 典型的案例,客戶會使用此解決方案: 當問題是檔案系統及登錄,問題與另一個應用程式在核心載入,衝突所引起時,或因為它們喜歡背後虛擬化應用程式部署故事,那就好的財富,它也修正了相容性問題。
  • 電腦的虛擬化 」 和 「 終端機服務。 您的暴力方法機器虛擬化。 您知道它將工作,因為您實際上執行它的作業系統的舊版上是否在本機電腦上,或在某處伺服器上。 它幾乎都讓您在支援的案例之後,您實際上在支援的作業系統上執行它。 但是,而有人說 「 virtualize 所有,今天,遷移稍後修正動作 」,我更小心。 管理負荷,因為您正在管理可能按兩下每個使用者的作業系統的數目。 如果您正在使用本機模擬,然後您會需要使用資源 (特別是記憶體) 來支援兩個同時的作業系統的電腦。 使用者經驗今天不一定的好,當他們看到的兩個,大部分的使用者 perplexed [開始] 按鈕 (雖然有 Microsoft 和合作夥伴來改善此解決方案中)。 大部分的 [我的客戶,通常做為這個最後的方法應用程式的問題。 (在實際上許多客戶設定測試的閾值 ; 如果,補救措施小組無法修正問題的時間內,它估計為每個而可能永遠上, 執行的應用程式就停止,並放置到先前的作業系統環境的應用程式)。
  • 除去 it. 別忘了這個選項 ! 有時候值得不以重新進行一個低商務值的應用程式或軟體的容錯一。 而淘汰。

結論

我們有探討透過一些規劃的應用程式相容性] 專案,最重要考量。 我已完成此計劃 (專案實際開始之前,請產生完整的專案計畫) 的一個實心區塊,在並且我曾經與上述一個完成後每個階段規劃的客戶。 關鍵點是瞭解您可以 [做在每個步驟,以儲存您的時間和金錢更新版本。

雖然有的層面在處理序中工程 craftsmanship 大的挑戰,與應用程式相容性專案管理大量且刺激不 incented,協助您的人。 應該協助這些秘訣與指導方針。

Chris Jackson 都是在 Microsoft Windows 應用程式經驗 SWAT 小組在技術指導人員。 他已經從事世界的企業客戶,幫助他們調查,並降低應用程式相容性問題,以及許多的產業活動提供說明有關 Windows 應用程式相容性的訓練。 Chris 可連絡到在 blogs.msdn.com/cjacks.