實踐出真知 電力行業的服務虛擬化和驗證實踐
【Jason English, 副總裁,營銷傳播, iTKO】
【Chris Kraus, LISA 產品經理和主管,EMEA Practice, iTKO】
今天的電力公司在控制成本的同時,還必須向客戶提供優良的服務可靠性。這些行業目前正在十年前技術的重壓下掙扎,必須現代化 IT 資源和現有技術來滿足當前業務和管理需求,實現良好的可視化和跨電網的電力控制。
今天,電力公司面臨最大挑戰的一個特定領域是 Advanced Metering Systems (AMS) 和位于一個新的智能電網架構頂層的支持軟件。我們把注意力集中在具體的行動上,討論 iTKO LISA™ 如何在較少的成本和時間延誤的風險下提交新功能。
縱覽全球能源行業,在網絡和消費者層都有急需優化能源基礎架構。政府已經強制執行了效能舉措,這是由客戶賬單和津貼資助的 — 根據 US Government Accountability Office (GAO) 資料顯示,2009 年共計 34億美元的資助經費用于 United States 的智能電網項目,214 億美元分配給世界各地。
本文中,我們將討論:
現代化智能電表和智能電網的挑戰。
服務虛擬化如何減輕促進高效開發和動態企業應用程序測試。
通過捕獲部署軟件資產行為,同時虛擬化那些尚未存在的行為,服務虛擬化可以幫助在電力行業中的開發和 QA 團隊來控制軟件生命周期中的依賴和約束,從而幫助確保可靠的服務交付。
現代化能源軟件基礎架構的風險
樣例基礎架構由大量新技術和現有技術組成,這些技術必須被整合來滿足分布式 IT 環境的需求(如圖 1 所示)。
圖 1. 復雜的 Utility IT 基礎架構
要使智能電表和智能電網計劃得以實施,電力行業提供商必須處理難以計數的大量軟件相互連接和遺留實現。在電網上安裝數百萬新設備可能會導致數以千計的新集成活動,這些集成活動在過去的電力公司中是完全不支持的。
更困難的是,電力公司必須在一個規定的、具有挑戰性的交付模式中提交先進的測量技術和智能電網技術 — 很顯然這必須是可靠的。
AMS 和智能電網危險因素包括:
◇ 新的端點和系統:一個電力客戶必須在一個首年 “試用” 窗口安裝 800,000 個新智能電表:一項復雜的工作,這個項目涉及到超過 600 種不同的電表、固件和軟件配置組合。這才是開始。
◇ 解除市場管制:因為在 US 大多數電力市場是不受控制的,有幾十個新零售商進入市場,他們區別客戶供應的產品,不僅僅考慮價格,也考慮定制基于 web 的系統和家用單元來管理能源使用。這創建了許多必須驗證的客戶使用案例。
◇ 遺留系統:現有電力公司的 IT 基礎設施已經過時,其中很多組件都是 10 年前、甚至 20 年前部署的,這些組件是為粗粒度數據和電網控制(包括測量像平均計量和計費之類的)設計的。這有一個更現代的多層方法,提供更多可視性、靈活性和更多的能源使用控制模式,但是遺留系統通常會發現適應資源需求很困難。
當您為了在期限內完成而推行一個新智能電網或者 AMS 實時系統時,如果系統提供不準確的數據或慢慢停下來時會怎么樣?如果系統在生產過程中失敗,可能會引發對整個網絡的性能和可靠性的懷疑,最終會對收益產生影響,或者導致公用行業供應商與監管機構發生爭執。
#p#
智能電表/智能電網現代化的挑戰
電力正在從一個變數和數據量相對較少的 IT 環境移入另一個環境中,在這個新環境中,每個客戶電表現在都是一個聯網的計算機,作為一個控制點將新數據推入電網并將數據傳播到底層遺留系統。技術數量、運算次數、以及任何一個能源公司的 IT 系統和基礎架構需要處理的數據量都呈指數增長。
我們來看一個非常簡化的典型能源軟件基礎架構視圖。圖 2 突出顯示了新的且令人印象深刻的高風險努力,實現了智能電網和智能電表,提供了新級別的控制和預測。
圖 2. 不可用系統和未完成系統如何約束新 “智能” 技術的交付
這個簡化圖展示了一個能源公司的典型軟件架構以及由此引起的約束推出新技術。
您的開發團隊期望如何交付一個巨大的任務,特別是一夜之間,使用一個互相依賴的軟件環境,而這些軟件并沒有全部建立或全部可用?
我們發現電力的 IT 團隊正在同這些交付問題作斗爭:
◇ 高度依賴不可用或者受限系統。
◇ 數據復雜度和可變性影響集成和測試效果。
◇ 在事務方面驚人的增長,通過整個電網影響系統。
◇ 無法驗證端到端系統的精確性和服務性能。
我們來仔細看看這些問題。
問題 1:增長的依賴性
開發團隊很難接受一個復雜的分布式系統支持新的使用場景:
◇ 一個 meter-to-customer 事務可能需要經過十幾個不同的消息協議來進行轉換,然后與記錄和服務系統進行通信,那些記錄的服務系統在您開發和集成系統來支持 AMS 時可能很少(或者幾乎不)訪問。
◇ 運營團隊可能會限制訪問關鍵系統,每周只向您的開發團隊預留 2 小時。
◇ 您的系統需要同第三方服務或系統進行通信,這在您的團隊控制之外。
◇ 一些您需要使用的組件可能還沒有開發。
從一個用戶角度來看,開發和 QA 團隊需要驗證系統中數千個事務場景 — 每次只有一個系統在使用環境,但是對于其他團隊來說它會污染環境中的數據。
問題 2:數據復雜性
電力 IT 團隊不得不根據實時系統和波動的事務模式來構建軟件;這種情況的一個主要副作用是很難建模真實、健壯的測試數據來貫穿整個軟件生命周期:
◇ 客戶和能源事務數據的波動性,以及跨實時系統跟隨狀態性事務的需求,使自動化 AMS 實現 VS 應用程序的測試看起來似乎不可能。
◇ 為了避免法規遵從和數據損壞問題,敏感的客戶賬戶信息和實時事務數對于測試和開發團隊需要被控制和屏蔽。
◇ 團隊經常要花費 60% 的測試周期或者更多時間來構建和拆卸數據,給其他團隊發電子郵件或者打電話來證實或者重置特定數據場景等等。這種效率和成本是不能接受的。
我們需要減輕測試數據對實時系統和架構中其他團隊的影響。
問題 3:增加的交易量
數千個新智能端點增加到一個正在運行的智能電網實現中將生成大量不確定性的系統可靠性:
◇ 如果大部分電表損壞,將會發生什么?它們能夠準確地記錄斷電時期嗎?如果數百萬的電表每小時向系統發送一次使用數據,電網會做何反應?成千上萬個 Transactions Per Second (TPS) 對基礎架構有何影響?
◇ 我們發現一些公司正在嘗試逐個測試遭受智能電表端點攻擊的系統的可靠性,通過將幾個物理電表釘在一個木板上然后在網絡中運行或者手工編碼偽造 “存根” 來模擬這些電表。但實踐不足以解釋所有可能的使用狀況和交易量需求。
傳統電力 IT 基礎架構從來不需要解釋這個水平的使用狀況。
問題 4: 無力驗證端到端系統
跨越現代電力系統的很多技術層和依賴性增加了驗證軟件可靠性的困難和成本:
◇ 人工測試 — 既可以在用戶接口進行、也可以在單個端點進行 — 是電力行業當時的規則。這些測試方法對根用戶提供較少的可視性,可能會引發很多問題。
◇ 驗證也是一個常見的人工任務;測試人員必須花費時間試著通過電話驗證輸出,人工在記錄系統中查看預期數據結果。
◇ 誤報和故障是常見的。例如,可能會有一個網站或者服務說它 “確定” 某個事務發生了,但實際上在首段沒有狀態改變。
團隊需要能夠以一個自動模式確定一個端到端命令是否被正確處理,以及數據是否依據預期策略在每個中間層傳遞。
#p#
解決方案:虛擬化依賴性,驗證可靠性
服務虛擬化 — 電力公司的一個備用的、不受云計算軟件約束的解決方案 — 采取下一個步驟完成硬件虛擬化,通過虛擬化行為、性能以及依賴性服務和應用程序的數據。很多團隊都是用這個實踐來虛擬化依賴性應用程序行為、自動化數據場景和構建可測試的系統模型(現在還沒有模型規范)。
服務虛擬化提供了一個解決方案來處理硬件虛擬化限制,比如:
◇ 為您提供每周 7 天每天 24 小時訪問服務終端。
◇ 移除系統和軟件容量約束。
◇ 跨分布式系統處理數據波動。
◇ 減少或消除第三方系統非生產使用的成本。
服務虛擬化用于模擬約束和/或不可用組件,允許電力行業的 IT 團隊以更少的風險和較低的總項目成本交付縮緊時間期限(圖 3)。
圖 3. 通過在軟件生命周期中自動化開發和測試依賴性,您可以消除電力約束
電力行業的開發和 QA 團隊可以利用服務虛擬化來減少軟件生命周期中的依賴項和約束性,可以延遲項目或者影響應用程序性能。表 1 展示了這個實踐如何被用來應對現代智能電表/智能電網實現的挑戰:
表 1. 解決問題的實踐方案
問題 | 解決方案 |
---|---|
不可用或者受限系統上的依賴項 | 虛擬服務環境允許開發和測試團隊虛擬化約束服務和組件行為,通過捕獲數據和事務上下文和提供一個在外觀和行為上看起來像真實事情的虛擬服務 來實現的在軟件生命周期中的開發和測試。 |
數據復雜性和多變性 | 使用虛擬服務測試數據管理。通過跨系統捕獲數據事務的復雜性,團隊獲得健壯、穩定的虛擬數據場景,以及有效響應逼真的模擬客戶會話、狀態交易、時間和數據等的復雜行為。您將需要對開發和測試過程的關鍵客戶和系統數據表現冷淡或者模糊不清,以至于安全性和私有策略不被妥協。 |
增長的交易量 | 虛擬化性能測試配置了一個大容量虛擬儀表 陣列,可以將數千個 TPS 推入系統或者當它們在負載下執行時模擬像儀表控制 和儀表數據管理系統 這類中間組件。使用這種方法,團隊可以使用 AMS 計劃需求的流量擴展他們的系統規模。 |
無力驗證端到端系統 | 連續的構建和驗證服務支持基于服務的端到端測試和組合應用程序類型。您可以在本機測試復雜的端到端工作流,并直接驗證在每個對給定事務流程有益的組件中是否出現期望行為。 |
#p#
服務虛擬化和連續驗證的益處
這些示例僅限于 AMS 和智能電網技術,不能代表所有的電力客戶場景(其中服務虛擬化和連續驗證可以取得巨大收益)。雖然如此,在復雜不斷變化的環境中推出新功能的挑戰可能會有所減緩。在 AMS 和智能網絡分類中,共同的客戶在很短時間內已經取得了令人信服的成果。客戶應該:
◇ 為了實現平行開發,減少系統約束性:
增加已交付和測試的軟件功能高達 68%。
實現快速上市(在 3 個月的周期中 10 周就可以交付)。
◇ 實現自動化和測試數據場景每周 7 天每天 24 小時可用:
在前 2 周減少 80% 的測試數據管理成本。
穩定波動數據和減少建立/拆卸效率。
◇ 模擬數百萬新端點的影響:
自動交付高容量模擬環境。
減少 90% 的測試實驗室環境創建成本。
◇ 以較少的故障啟動連續的驗證:
端到端工作流完全透明。
增加客戶規范和減少損失,因為服務級性能和質量不是很糟糕。
電力公司面臨著現代化 IT 資源和現有技術來滿足當前業務和管理需求的挑戰。在本文中,我們解釋了服務虛擬化如何減輕 AMS 動態企業級應用程序的開發和測試以及支持一個位于新智能電網架構頂部的軟件的實現,來確保可信和有效的服務交付。
作者簡介:
Jason English 在多年為技術和客戶公司,比如 HP、IBM、EDS、Delphi、TaylorMade、Sun、Realm、Adaptec、Motorola 和 Sprint,執行營銷計劃和設計面向客戶的業務流程的過程中獲得了許多經驗。作為 i2 Technologies 公司的 in2action 交互咨詢單元的執行監制人,他負責在大規模增長期間向國外發送消息來構建易于理解的工作流和 front-ends to B2B 合作系統。在此之前,他是一名 “首席架構師” ,管理 Agency.com 的 Fortune 500 客戶端的客戶體驗。除了生產傳統廣告和電視廣告之外,他也成功設計了幾個計算機游戲的國際版本。
Chris Kraus 是一名測試專家和架構戰略家,在計算軟件開發、產品管理和擴展企業軟件支持方面有 17 年的經驗。作為 iTKO's LISA SOA 測試軟件套件的產品經理,Chris 應用項目管理和開發經驗來細化 LISA 特性,貫穿整個軟件交付生命周期更好地適應客戶質量需求。Chris 之前是企業級軟件平臺公司 webMethods 的一名零售和制造業經理,監管需求、客戶售前展覽,并進行每年度 US$16M 的培訓。在供應鏈軟件提供商 i2 Technologies 公司中,他在 i2 基礎架構組中負責業務流程版本發布、工作流以及監控引擎。在 i2 之前,他在 software AG 公司工作,在 software AG,Chris 專攻跨平臺產品安裝和管理。作為一個軟件工程師、項目經理和解決方案架構師,Chris 從工作的公司,比如 like Citi、TD Ameritrade、Lenovo、Tandy、Rubbermaid、TI 和 TxDoT 學到了很多行業知識,確保應用程序交付生命周期的質量。
【編輯推薦】