• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Rational ALM 工具使持續部署變得切實可行

    發表于:2013-03-05來源:IBM作者:Steve Arnold點擊數: 標簽:rational
    么是持續部署,為什么對它感興趣,它有助于解決哪些問題? 對于許多組織來說,業務和開發團隊的愿望是更快、更頻繁地生產可用軟件,而運營團隊的責任是以規避風險的方式管理組織的基礎架構,從而確保業務的連續性,在這兩者之間,往往存在著分歧。

      么是持續部署,為什么對它感興趣,它有助于解決哪些問題?

      對于許多組織來說,業務和開發團隊的愿望是更快、更頻繁地生產可用軟件,而運營團隊的責任是以規避風險的方式管理組織的基礎架構,從而確保業務的連續性,在這兩者之間,往往存在著分歧。不幸的是,這種分歧往往導致將開發團隊所 “完成” 的功能塊部署到生產中的時間大幅延遲。然而,為了確??梢?a href='http://www.kjueaiud.com/ceshi/ceshijishu/aqcs/' target='_blank'>安全地部署變更,并且不會導致系統可用性的損失,延遲往往是必要的。此延遲是由于必要的嚴謹以及降低風險所需的流程導致的,因為部署流程往往包括許多之前幾乎沒有做過的手動步驟。因此,許多組織的部署往往在周末進行,這被認為是非常危險的,而且常常會失敗。

      持續部署是將每個軟件變更部署到一個環境中的流程,該環境有可能是開發、測試、預生產或生產階段。這類似于許多人使用持續集成來構建每個變更的方式。這種做法意味著,無論何時簽入變更,持續部署流程都會確保該變更可以成功地部署。所以,持續部署不僅消除了部署階段中手動的、高風險的步驟,并且在您開始將它部署到生產時,它實際上是一項普通的日常工作(不會比編譯一塊源代碼的風險更高),而不是第一次執行一項新工作。

      這為組織提供了多種好處:

      更少停機時間和更多升級,從而帶來更好的生產力和軟件的增值。

      業務可以更快速獲得軟件變更,所以您可以提高您在軟件開發上的投資回報。

      測試團隊在配置環境和部署軟件上花費的時間更少。

      更早發現回歸缺陷,因此可以用更少的時間和更低的成本來解決它們。

      如果這聽起來有點牽強,持續部署的另一種考慮方法是,它是現有方法的邏輯發展。在 21 世紀初,有些實踐變得很普遍:大多數 IDE 生成的持續編譯(在保存文件時編譯代碼),以及持續集成(已經構建了代碼,并且在將代碼簽入源代碼控制時,會運行一組單元測試)。這些實踐都提高了生產率。持續編譯提高個人的生產力,而持續集成則提高開發團隊的生產力,持續部署是通過自動化和減少發布風險來提高組織生產力的一個自然發展趨勢。小型變更可能很容易部署,因此您可以從軟件中更快、更頻繁地獲得價值。

      圖 1. 持續編譯、集成和部署的價值

    該圖比較了 3 種持續更新

      持續部署可以提供許多強大的好處,但在成功實現它時會遇到一些獨特的挑戰。本文的其余部分將更深入探討這些挑戰,并解釋 IBM Rational ALM 解決方案如何克服這些困難,使持續部署變得切實可行。

      建立持續部署的挑戰

      有幾個與創建持續部署環境有關的挑戰。

      設計和溝通部署

      溝通和設計部署往往需要讓來自多個學科(軟件架構師、部署工程師、運營、數據庫管理員、項目經理,等等)、不同部門、不同地點的人進行相互溝通。所需的協作非常復雜,并且需要許多人提供相關意見。通常情況下,如果重要信息丟失或從未記錄這些信息,都有可能導致部署失敗。此外,缺乏一種一致地完整描述部署的方式,人們很難看見部署設置,很難對其進行推理分析,因此降低了及早發現非功能性問題(如性能、備份和可擴展性)的可能性。

      在持續部署方法中,通過有意識的定期部署,可以在某種程度上降低這種風險。但是,在這種情況下,會出現另一種風險。如果您的持續部署環境與生產環境不同,并且您不能重用腳本,該怎么辦?(這是一種很可能性出現的場景。)那么,雖然您可以通過開發獲得很多好處,但您的生產腳本很有可能出現缺陷,在以專用 方式描述部署的時候尤其如此。因此,存在以下兩個重大挑戰:

      如何定義部署的關鍵要素,使它可以用來描述如何將應用程序部署到多種不同環境

      如何有效地使所有利益相關各方在部署計劃上進行協作,從而最大程度地提高質量并減少所涉及的風險和時間

      自動化部署流程

      如今的部署比以前明顯更加復雜,大多數應用程序都需要配置中間件(在應用程序服務器上創建數據源,或建立一個消息隊列)。這種自動化配置可能很復雜。它往往需要專門的技能,這是許多組織在部署應用程序時自動化程度極低的原因之一。

      畢竟,俗話說得好,輕松的工作每個人都會做。

      治理可部署的構件

      最后,一個常見的挑戰是治理將要部署的構件。有兩個顯而易見的解決方法,但它們都存在缺陷:

      第一個方法是,您可以將每個版本放在文件系統中的指定位置。這很簡單;但是,這種方法可能相當不安全,并且它幾乎沒有任何措施可以確保您測試過的文件與您部署到生產的文件是相同的(它們很容易就會被修改或覆蓋)。所以,如果您需要證明您測試的文件就是您部署的文件,那么這種方法無法令人感到滿意。

      第二種選擇是使用您的源代碼控制系統來管理文件。這至少可以提供您需要的治理。然而,它也需要您為部署團隊提供訪問每一個源代碼控制庫中的每一個項目的權限,而該要求在一個中型組織中可能會變得無法管理。

      這兩種方法都無法幫助解決關于應用程序彼此之間、應用程序與其他組件以及開源庫之間的依賴關系問題。

      雖然這些挑戰很艱巨,但不建立持續部署將帶來更多艱巨的挑戰:

      部署軟件需要更長的時間,因此,從部署軟件中獲取價值亦需要更長的時間。

      在部署新軟件時,業務的風險會增加,這可能會降低生產力和銷售,甚至危害您的聲譽、品牌和客戶忠誠度。

      如果您不能滿足非功能性需求,成本可能會增加。

      回頁首

      如何配合使用 IBM Rational ALM 解決方案

      本節介紹如何配合使用 IBM Rational 軟件的三個工具來解決上一節中所述的挑戰。

      IBM® Rational® Software Architect

      一個建模工具,可以用來對部署的拓撲結構進行描述和協作,并生成部署腳本。

      IBM® Rational® Automation Framework

      一個部署自動化引擎,它還提供了常見自動化任務的庫。

    原文轉自:http://www.ibm.com/developerworks/cn/rational/continuous-deployment-rational-alm/index.html

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>