| 開発者 | IBM |
|---|---|
| 安定リリース | 5.0.0 / 2013年9月 |
| 書かれた | ジャワ |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | 継続的インテグレーション、継続的デリバリー、アプリケーションライフサイクル管理 (ALM)、アプリケーションリリース自動化、DevOps |
| ライセンス | 独自 |
| Webサイト | developer.ibm.com/urbancode/ [リンク切れ ] |
AnthillPro は、最初の継続的インテグレーション サーバーの 1 つとして開発され、リリースされたソフトウェア ツールです。AnthillPro は、ソフトウェア プロジェクトにコードを組み込み、テストしてプロジェクトの品質が維持されていることを確認するプロセスを自動化します。ソフトウェア開発者は、AnthillPro を使用して、共同で管理されているコンピュータ コード本体の変更をリアルタイムで追跡、照合、テストすることで、バグやエラーを早期に特定できます。
AnthillProは2001年にリリースされました。2006年に、AnthillProは継続的インテグレーション、[3] : 59 デプロイメント自動化、[3] : 126 アプリケーションライフサイクル管理(ALM)、[4]および新興のDevOps方法論をサポートするエンタープライズ統合および配信[1] [2]自動化プラットフォームに拡張されました。[5]
AnthillProは、 .NET、Java、C/C++、その他のプログラミング言語での分散およびクロスプラットフォームビルドをサポートしています。2009年時点で、AnthillProは世界中に400社以上の企業顧客を抱えていました。[6] UrbanCodeは2013年4月にIBMに買収されました。[7]
2017年8月28日、AnthillProは廃止され、2018年10月31日以降はサポートされなくなることが発表されました。 [8]市場ではIBM UrbanCode BuildとIBM UrbanCode Deployに置き換えられました。
歴史的観点
継続的インテグレーション
ソース構成管理 (SCM) を使用するソフトウェア開発組織では、開発者はまず、コードの本体である「メイン コード ライン」を分析してコードを削除します。次に、開発者は削除したコードを変更し、変更したコードをメイン コード ラインに埋め込みます。このプロセスは「チェックイン」と呼ばれます。コードがチェックインされると、プロジェクト全体をビルドしてテストできます。
ビルド プロセス中にエラーが発生しなかった場合、ビルドはテスト環境にデプロイされ、ユニット テストが行われ、前回のビルド以降にプロジェクトの品質が低下していないことが確認されます。チェックインされたコードごとに「ビルド、デプロイ、ユニット テスト」を実行するこのプロセスは、継続的インテグレーション (CI)と呼ばれます。[引用が必要]
2001年にリリースされたオリジナルのAnthillソフトウェアツールは、シンプルな継続的インテグレーションサーバーであり、現在でも利用可能です。CruiseControlなどのツールとともに、Anthillは継続的インテグレーションの実践のための標準ツールの確立に貢献しました。[3]
ビルド/統合サイクルがより頻繁になる
もともと、「ビルド」という用語は、ソース コードをコンパイルして実行可能コードにリンクするプロセスを指していました。通常、これらの実行可能コードは、Microsoft Word や Adobe Photoshop などのスタンドアロン アプリケーションです。1990 年代には、アプリケーション (Microsoft Windowsオペレーティング システムなど) の一般的なリリース サイクルは 12 ~ 24 か月でした。[9]
当時の伝統的なソフトウェア開発では、開発者は通常、1日に1回コードをチェックインし、すべてのコードがチェックインされた後に「夜間ビルド」を実行していました。[10]コードが正常にビルドされた場合、一連のユニットテストと一般的な機能テストが実行され、一般に「スモークテスト」と呼ばれます。テストのいずれかが失敗した場合、ビルドは失敗と見なされ、すぐに修正する必要がありました。テストに合格した場合、ビルドはテストシステムに展開され、さらにテストされる可能性があります。[11]
アプリケーションの構築/統合がより複雑になる
クライアントサーバーから始まり、サービス指向アーキテクチャへと進化した多層アーキテクチャの出現により、ビルドは単にコードをコンパイルしてリンクするよりもはるかに複雑になりました。ビルドには、データベースの変更の適用、コンテンツ管理システムからの静的コンテンツの読み込み、ソフトウェアコンポーネントの構成、ビルドの全部または一部の展開など、他の多くの種類のアクティビティが含まれます。 [12] : 4
UrbanCodeは、オリジナルのAnthill OSをビルド管理用の無料ツールとしてリリースしました。[13] : 397–401 [14] : 275–278 Anthill OSの人気を受けて、UrbanCodeはAnthillProを商用製品として開発しました。[12] : 360 UrbanCodeは2002年にAnthillProの最初の商用版をリリースしました。当時、ビルドの健全性に関するフィードバックを開発者に提供することだけに焦点を当てていたCruiseControlとは異なり、AnthillProはビルド管理と、あるプロジェクトのビルドの結果を他のプロジェクトの依存関係として使用することに重点を置いていました。[15]
アプリケーションのリリースサイクルが短縮され、ビルドサイクルがより頻繁になる
ビルド/リリース サイクルの複雑さが増すだけでなく、ソフトウェア プロジェクトの一般的なリリース サイクルも大幅に短縮され続けています。[16]アジャイル手法がより一般的に実践されるようになると、統合とビルドのペースは 1 日に 1 回からコード変更のたびに変化しました。アジャイル ソフトウェア開発によれば、メイン ラインのコードはいつでも出荷できる状態である必要があり、機能が完全でなくても、リリース可能な品質でなければなりません。[12] : 49
AnthillPro は、組織のさまざまなソース コントロール システムを監視し、開発者が変更をコミットしたときにビルドをトリガーすることで、このような方法論[引用が必要]をサポートします。ビルドは、統合を検証する最初の (そして通常は最も重要な) テストを提供します。ビルドが完了すると、AnthillPro はビルド製品をキャプチャし、さらにテストと展開を行います。ビルドで追加のテストが実行されると、チームは新しいコードの統合に対する自信を高めることができます。
2006年、UrbanCodeはAnthillProの第3世代をリリースしました。[17]このリリースは完全な書き直しで、AnthillProの機能を継続的な統合を超えて自動デプロイメントにまで拡張しました。ビルド中心のほとんどのCIサーバーとは異なり、この新しいバージョンのAnthillProはビルドを初期テストとしてのみ使用しました。ビルドが完了すると、AnthillProはバイナリ成果物を作成し、それがテストされ、デプロイされ、ライフサイクルを通じてプロモートされて、実稼働リリースに至りました。このバージョンのAnthillProには、強化されたレポート、リリース管理、強化されたセキュリティ、リモートマシンでワークフローステップを実行する機能など、多くの新機能が含まれていました。
報告
AnthillProはビルドやテストのプロセスで生成されたレポートを収集し、開発者、テスター、管理者が確認できるようにAnthillProサーバーのWebインターフェースに表示することができます。[18]
リリース管理
AnthillProは、リリース管理チームの取り組みをサポートするように設計されています。[19] AnthillProは、ビルドをそのソースコードにリンクし、そのビルドに対して実行されたすべてのデプロイメントとテストにリンクする監査証跡を提供します。監査機能は、リリースマネージャーがビルドが本番環境に入る準備ができているかどうかを評価するのに役立ちます。[20] AnthillProは、チームが本番環境のデプロイメントに同様の自動化プロセスを使用することを推奨し、デプロイメントのリスクを軽減します。[21]
自動展開
AnthillProは、ユーザーが設定した環境へのビルドの自動展開をサポートしています。[22]管理者は各環境間にゲートを設定して、ユーザーの手動介入を要求し、監査証跡を提供することができます。[3] : 255 ロールベースのセキュリティを設定して、どのロール(つまりどのユーザー)がどの環境に展開できるかを制御できます。
外部システムとの統合
AnthillPro が継続的インテグレーションサーバーから複雑なデプロイメントが可能な自動化フレームワークに移行するにつれ、[12] : 264–266 UrbanCode は AnthillPro の機能を拡張し、すぐにサードパーティのツールと統合できるようにしました。2012 年 2 月にリリースされた AnthillPro バージョン 3.8 は、J2EE サーバー、データベース、ビルドシステム、インフラストラクチャ、Microsoft プラットフォームなど、60 を超える[要出典]サードパーティ製品と統合されています。さらに、AnthillPro は、コマンドラインから実行できるほぼすべてのソフトウェアに対応するように自動化フレームワークを拡張する外部プラグインをサポートしています。[23]
リリース履歴
オリジナルの Anthill は 2001 年にリリースされたシンプルな継続的インテグレーション サーバーで、現在でも利用可能です。2002 年に UrbanCode は AnthillPro の最初の商用版をリリースしました。2006 年に UrbanCode は AnthillPro の第 3 世代をリリースしました。これは分散ビルドのサポートとビルド後のライフサイクルの制御を追加した完全な書き直しです。[17]
AnthillProバージョン3.6(2008年リリース)では、ツールセットがアプリケーションライフサイクル管理(ALM)[24]に拡張され、ビルド、デプロイ、テストの集中管理自動化が採用されました。このリリースでは、アーティファクトリポジトリ、SCM、問題追跡、テスト自動化、変更管理システム、プロジェクト管理システムなど、多数のサードパーティALMポイントソリューションとの統合が追加されました。[18]この統合をサポートするその他の新機能には、過去のテスト結果の詳細なレビュー、柔軟なリソースロック、プリフライトビルドなどがあります。[25]
AnthillPro バージョン 3.7 (2009 年リリース) では、継続的インテグレーション、ビルド自動化、ALM スペースにおける他のポイント ツールとの統合機能が強化されました。新機能として、最も広く使用されている 7 つのソース コード分析ツールの統合プラグインが追加されました。このリリースでは、ユーザーが独自のカスタム統合プラグインを作成できる新しいプラグイン API が導入されました。[26]このリリースでは、ユーザーがコマンド ラインからスクリプト アクションを作成し、AnthillPro リポジトリのデータにアクセスできるようにする AHP ツールも導入されました。また、エージェント ユーザー偽装も導入され、エージェントによって実行されるスクリプトを管理者がさらに制御できるようになりました。[23]
競合他社
参考文献
- ^ Fredrick, Jeffrey; Minick, Eric (2011). 「エンタープライズ継続的デリバリー成熟度モデル」(PDF)。UrbanCode。p. 14。2014-02-22のオリジナル(PDF)からアーカイブ。2012 年2 月 17 日閲覧。
- ^ Julius, Paul (2009 年 9 月 11 日)。「エンタープライズ CI の文化的成熟度」。UrbanCodeブログ。UrbanCode。2012年2 月 17 日閲覧。
- ^ abcd Humble, Jez; Farley, David (2010).継続的デリバリー: ビルド、テスト、デプロイメントの自動化による信頼性の高いソフトウェアリリース(第 3 版)。Addison Wesley。p. 463。ISBN 978-0-321-60191-9。
- ^ Ellis Agência Web (2018 年 7 月 19 日)。「Urbancode による真のアプリケーションライフサイクル管理」2022 年 7 月 19 日閲覧。
- ^ 「UrbanCode DevOps プラットフォーム™」。UrbanCode。2013 年 2 月 25 日時点のオリジナルよりアーカイブ。2013 年2 月 11 日閲覧。
- ^ 「Urbancode の AnthillPro が過去最高の四半期でマイルストーンとなる 400 番目の顧客に到達」 (プレス リリース)。オハイオ州クリーブランド: UrbanCode。2009 年 12 月 7 日。2012年2 月 10 日閲覧。
- ^ 「IBM、UrbanCodeを買収し、企業のモバイル、クラウド、ビッグデータ、ソーシャルソフトウェアの迅速な提供を支援」www-03.ibm.com。IBM。2013年4月23日時点のオリジナルよりアーカイブ。 2014年8月6日閲覧。
- ^ “AnthillProの引退”. Urbancode.com . 2020年6月17日時点のオリジナルよりアーカイブ。2020年6月17日閲覧。
- ^ MSDN (2007 年 1 月 18 日)。「PRJ: Microsoft Project for Windows のバージョン履歴」。記事 ID: 98026 - 最終更新日: 2007 年 1 月 18 日 - リビジョン: 3.1。MSDN。2012年3月 14 日に取得。
- ^ 「Nightly Builds: the blood edge」. mozilla . mozilla.org. 2011年2月1日. 2012年2月18日時点のオリジナルよりアーカイブ。 2012年3月1日閲覧。
- ^ 「イテレーション アクティビティのローリングと夜間ビルド」。MSDN ライブラリ。2008 年 2 月 7 日。2013 年 1 月 28 日時点のオリジナルよりアーカイブ。2012年3 月 1 日閲覧。
- ^ abcd Duvall, Paul M.; Matyas, Steve; Glover, Andrew (2007 年 6 月)。継続的インテグレーション: ソフトウェア品質の向上とリスクの削減。アッパー サドル リバー、ニュージャージー: Addison-Wesley。p. 283。ISBN 978-0-321-33638-5。
- ^ Hatcher, Erik; Loughran, Steve (2003). Java Development with Ant: How to automate your build, test and deploying processes . Greenwich, CT: Manning. pp. 634. ISBN 1-930110-58-8。
- ^ ラーマン、クレイグ (2004)。アジャイルと反復開発:マネージャーガイド。ボストン、マサチューセッツ州:アディソンウェスレー。p. 342。ISBN 0-13-111155-8。
- ^ クラーク、マイク(2004 年 7 月 1 日)。プラグマティック プロジェクト オートメーション: Java アプリケーションの構築、展開、監視の方法。米国: Pragmatic Bookshelf。p. 176。ISBN 978-0-9745140-3-1。
- ^ Bradley Holt (2011年8月8日). 「ラピッドリリースサイクルのケース」. Bradley-Holt . 2012年3月14日閲覧。
- ^ ab Minick, Eric (2006 年 10 月 26 日). 「Urbancode がライフサイクル自動化サーバー AnthillPro 3.0 を発表」TheServerSide.com . 2012 年2 月 22 日閲覧。
- ^ ab Dr. Dobb's Journal (2008 年 1 月 27 日)。「Urbancode が継続的インテグレーション ツールのアップグレードをリリース」。Dr . Dobb's。2012年2 月 14 日閲覧。
- ^ 「リリース管理」。ウィキブック。 2012 年 2 月 10 日に取得。
- ^ Wyser, Della; Kurz, Jon (2007 年 3 月 13 日)。「Jolts 2007: 変更および構成管理」。Dr . Dobb's Journal。2012年2 月 13 日閲覧。[永久リンク切れ ]
- ^ Colville, Ronni J.; Brittain, Kris; Scott, Donna (2011). 「リリース管理における注目のベンダー、2011」。Gartner . Gartner . 2012 年2 月 23 日閲覧。[リンク切れ ]
- ^ Sayko, Michael (2008 年 9 月 15 日)。「商用ツールを使用したビルドおよびデプロイメント プロセスの自動化」。CM Crossroads。2012年 2 月 3 日閲覧。
- ^ ab Feinman, Jeff (2009年10月9日). 「AnthillProに追加されたコマンドライン機能」. SD Times . 2010年1月31日時点のオリジナルよりアーカイブ。 2012年2月14日閲覧。
- ^ Rubinstein, David (2011 年 11 月 4 日)。「調査によると、アジャイル プロセスは広く採用されている」。SD Times。2012年2 月 11 日閲覧。
- ^ Dr. Dobb's Journal (2008 年 10 月 28 日)。「UrbanCode が PreFlight ビルドを追加」。Dr . Dobb's。2012年 2 月 10 日閲覧。
- ^ 「AnthillPro 3.7 リリース」。Agile Journal。2009年 10 月 5 日。2012年2 月 14 日閲覧。
外部リンク
- アーバンコード公式サイト
