「DevOps」はリーン・スタートアップ実践のための言葉、米IBMIBM Innovate 2013で強調

米IBMは、同社のイベント「IBM Innovate 2013」で、「DevOps」という言葉を連呼した。だが、同社のいうDevOpsは、一般的に理解されている意味ではない。

» 2013年06月06日 16時56分 公開
[三木泉@IT]

 米IBMが6月第2週に米国フロリダ州で開催したソフトウェア開発系イベント「IBM Innovate 2013」で、同社がキーワードとして持ち込んだ言葉は「DevOps」だ。だが、同社がこの言葉で表現しようとしていることは、多くの人が考えるような意味よりも幅広く、概念的だ。

 多くの人は、「アジャイルな開発プロセスとソフトウェアの頻繁なリリースを支えるために、開発者と運用担当者の関係を密接にする、あるいは開発者がリリースプロセス、そして場合によってはその後の運用をコントロールする」といった意味だと考える。一部の人々はさらに具体的に、ChefやPuppet、Opsworksなどのツールを活用して、開発者がアプリケーションのリリースを日常的に行う作業を思い浮かべる。いずれにしても、デプロイ/リリース(とその後の運用)に注目した言葉だと、ほとんどの人は考える。

 IBMは、DevOpsを「企業が市場機会をつかみ、自社の顧客からのフィードバックを受け取るのに掛かる時間を短縮する、コンティニュアス・デリバリのためのエンタープライズ機能」と定義している。ふわっとしていて分かりにくいが、非常に短くまとめれば、今回のカンファレンスに基調講演者としても登場したエリック・リース(Eric Ries)氏が著書「リーン・スタートアップ」で述べている世界に企業が近づくことを支援することを目的として、ソフトウェアライフサイクル全体にわたるプロセス改善を図っていくことを指しているようだ。

ここでいう「デリバリ」は提供の最終段階だけを指すのではない

 リース氏は、組織の規模に関係なく、リーン・スタートアップが可能だとする。そのうえで、「スタートアップとは実験と同義だ」という。そして、長い時間を掛けて「完成品」を企画し、開発するのでなく、必要最小限の機能だけでできるだけ早く提供を始め、ユーザーからのフィードバックを受けて次の機能強化や改善を施して次のバージョンを提供するというサイクルを、高速に回していくことが成功への道だと説く。「時にはビジョンを変えずに戦略を変更しなければならないこともある」という(同氏はこれを「ピボット」と呼ぶ。バスケットボールでいうピボットと同じ意味だ)。ある技術を当初とはまったく異なる用途に使うことで大成功した企業は多数存在しているといい、PayPalなどの例を挙げる。

「リーン・スタートアップ」のリース氏は、フィードバックサイクルを高速に回していくことが重要だと話している

 IBMはこれまで、アジャイルな開発について語ってきた。しかし、上記のような意味でのリーン・スタートアップをソフトウェアやオンラインサービスで実践しようとするなら、開発プロセスをアジャイルに進めるだけでは足りない、と言おうとしている。企画から開発につながるプロセスや、開発からテスト、デプロイ/リリース、運用モニタリングに至るプロセスを含めた、文字どおりのソフトウェアライフサイクル全体を改善し、フィードバックループを有効なものにしていく必要がある、という。このことを、開発プロセスにとどまらない活動として、「DevOps」と呼びたいようだ。「DevOps」という言葉の使い方については、IBM Rationalゼネラル・マネージャのクリストフ・クロックナー(Kristof Kloeckner)氏に直接質問したので、別記事でお伝えする。

デプロイ/リリースだけでは足りない部分を埋める

 DevOpsという言葉を、多くの人々よりも広い意味で使っていることは、混乱や誤解を招く可能性もある。だが、IBMが「DevOps関連製品」として説明するものについて具体的に考えると、多少分かりやすくなる。

 まず、デプロイ/リリース関連で、IBMはUrbanCodeという企業を4月下旬に買収した。UrbanCodeはデプロイ/リリースの自動化/管理ツールを提供する企業。UrbanCodeの幹部は、今後の機能強化の予定として、次の点を挙げている。

 デプロイ/リリースの自動化をさらに進めるという観点では、例えば各種クラウドサービスのAPIサポートによる統合の強化がある。現在のAmazon Web Services、VMware vSphereに加え、OpenStack、さらにIBMの各種IaaS/クラウドシステムをサポートしていくという。また、Facebookのウォールからタイムラインへの移行のような、大規模なアップデートの実行テクニックも重要なテーマになる。この幹部はモバイルとクラウドの普及があったからこそ、ソフトウェアのリリースを継続的な実験として実行できるようになったと話す。

 一方、IBMのアプリケーションライフサイクル管理製品との連携がある。IBMに買収されたのだから、IBMのソフトウェア開発製品と連携するのは当然だ。だが、ソフトウェアのリリースが、例えば社内の基幹システムとのデータ連携機能の改変と同期しなければならないなら、確実な同期を管理する必要がある、デプロイ/リリースはソフトウェアのライフサイクル全体と統合されなければならないという。

最近買収した「DevOps」関連企業だけでもこれだけある

 さらにUrbanCodeの幹部は、コードをオペレーション段階でも管理し、顧客からのフィードバックを受けて修正を適用するという、頻繁に繰り返される実験のプロセスをさらに支援していきたいと話した。そこには、ユーザー体験やパフォーマンスに関する定量的情報を取得・解析して、ソフトウェアの機能あるいは運用手法を変えることが含まれる。そこで、ユーザー体験情報分析ツールのTealeaf、Web分析・WebマーケティングツールのCoremetricsなどを活用できる。

 「継続的な実験」としての大規模なソフトウェアリリースには、オペレーションを含めた多様な社内外のステークホルダの関わりが必要で、それがIBMの言っているDevOpsの中核にあると、この幹部は説明している。

関連特集:DevOpsで変わる情シスの未来

今やクラウド、ビッグデータに次ぐキーワードになったDevOps。だが前者2つが通過したようにDevOpsも言葉だけが先行している段階にあり、その意義や価値に対する理解はまだ浸透しているとはいえない。ではなぜ今、DevOpsが必要なのか? DevOpsは企業や開発・運用現場に何をもたらすものなのか?――本特集では国内DevOpsトレンドのキーマンにあらゆる角度からインタビュー。DevOpsの基礎から、企業や情シスへのインパクト、実践の課題と今後の可能性までを見渡し、その真のカタチを明らかにする。




Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。