変化の激しいビジネス環境に対し、高品質の製品やサービス、アプリケーションを短期間で市場に投入するためにはどうすればよいのか。この問いに対するアイ・ビー・エム(IBM)の答えが、開発と運用の連携だけでなく、企画から開発、運用までのフィードバックを次の企画に反映することで企業の競争力強化を支援する「IBM DevOps」である。
ソフトウエア開発&運用の新たな潮流「DevOps」
モバイルやソーシャル、クラウドなどの言葉とともに注目されている2013年のキーワードのひとつに「DevOps(デブオプス)」がある。一般的にDevOpsとは、開発(Development)と運用(Operations)を組み合わせた造語で、開発と運用を密に連携することにより、ソフトウェアの開発から実装までを短期間で実現するための仕組みと定義されている。
しかし、どんなに開発から運用までの期間を短くしたところで、市場ニーズを反映しきれず、魅力の無いソフトウェアを公開したのでは意味がない。市場投入したソフトウェアに対するユーザーの声をモニターし、そのフィードバックを次の企画に反映させることにより、市場が求めるソフトウェアを提供していくというライフサイクルを継続的に運用していかなければ、ビジネスに貢献できるソフトウェアの開発は実現できない。
IBMでは、DevOpsをより広いビジネスの視点で捉え、ソフトウエアの企画から設計、開発、テスト、リリース、デプロイまではもちろん、モニターと最適化を含むデリバリーライフサイクル全体の管理を自動化する「IBM DevOps」として再定義。そして、開発から運用までの自動化・最適化で得られた余剰リソースはコアビジネスに集中させることで、企業の競争力強化を図る。
IBM DevOpsは、ソフトウェアデリバリーを加速するテクノロジープラットフォームである「Jazz」をベースに、「計画と計測」「開発とテスト」「リリースとデプロイ」「モニターと最適化」という4つのコンポーネントで構成されるDevOps基盤により、開発・実装からフィードバック、改善に至る継続的なイノベーションを実現する。
IBM DevOpsを実践するためには、4つのコンポーネントがエントリポイントとなるが、どのコンポーネントからでもスタートできる製品群を展開している。2013年4月に買収を完了した「UrbanCode(アーバンコード)」もその1つであり、これによりリリースの自動化を強化するとともに、IBM DevOpsに必要な機能の体系化を完成させている。
また現在、企業システムは、トランザクション処理を中心としたシステムであるSystems of Recordから、ソーシャル、モバイル、アナリティクス、クラウドなどの技術を中心に、企業や個人とインタラクティブにつながるためのシステムであるSystems of Engagementへの転換期を迎えている。こうした役割の変化に対応するには、今後はソフトウェア開発を最適化させていくことが必須になってくる。
IBM DevOpsは、Systems of Record、およびSystems of Engagementの双方に有効だが、特にSystems of Engagementを実現するためのアプローチとして注目されている。より具体的なIBM DevOpsの内容および今後の展開に関しては、日本IBMが10月28日にロイヤルパークホテル(東京都中央区)で開催する「Innovate2013 The IBM Technology Summit(以下、Innovate2013)」で紹介される。