DevOpsで大事なのはマインドセットや考え方だ
牛尾氏と寺田氏による「そろそろ俺たちの本気を見せてやるぜ!~ マイクロソフトとOSSごった煮 DevOps 衝撃デモシリーズ!」と名付けられたセッションは、「Are you Ready?」という牛尾氏によるコール&レスポンスにより始まった。3度目の牛尾氏のコールには、ほぼ満席の参加者から「イエーイ!」という大きなレスポンスが起こり、開始早々にもかかわらず、会場は熱い空気に満たされた。
牛尾氏と寺田氏はマイクロソフトの社員ながら、「Windowsのことはよくわかっていない」と明かす。寺田氏は「私はUNIXとJavaの人。本社にもフィードバック済みだが、Windowsのターミナルでコマンドの使い勝手が良くなれば、Windowsも使いたい」とも語った。さらには「OSSからのスパイである」と牛尾氏は語り、会場の笑いを誘った。そのため、プレゼンテーションの操作もMacで行っていた。「とにかく今日はエンタテインメント性に溢れた面白いデモを見て、ほくそ笑んで帰ってほしい」と牛尾氏は熱く会場に語りかけた。
デモに入る前に、まずDevOpsの簡単な説明が牛尾氏により行われた。DevOpsはビジネス・DEV(開発)・OPS(運用)が協力してソフトウェアのライフスタイルを改善し、ビジネスの価値の創出を改善する活動である。したがって「ツールを入れればDevOpsです、とよくツールベンダーは言うが、それは全てウソ、そんなものではない」と牛尾氏は注意を促す。DevOpsのゴールは3ステップあり、リードタイムを短縮(1way)、本番環境/ユーザからのフィードバック(2way)、継続的な実験と学び(3way)を実現することだ牛尾氏は説明する(参考:『本番環境の「聖域化」を再考する - DevOps の「リードタイムの短縮」の次に来るもの』(メソッド屋のブログ))。いずれにしてもDevOpsでは、技術はもちろん、人々のマインドセット、プラクティス等の考え方が重要だと牛尾氏は強調する。
つまり「開発と運用のライフサイクルを見える化し、無駄がないかをまず考え、その上で、1日に10回デプロイできるほどリードタイムを短縮するためにはどうすべきかということを考える。これらを熟考した上で、初めてツールを選択し利用することになる」と牛尾氏は語った。
現在、マイクロソフトでもDevOpsの考え方を整理しているとのことだ。DevOpsのプラクティスの例としては、Infrastructure as Code(IaC)、継続的インテグレーション、自動テスト、継続的デプロイなどがあるという。寺田氏が「実際にDevOpsを会社の中で実践している方」と会場に問いかけたところ、手を挙げた人はまだ少なかった。
ここからはデモ時間。まずは牛尾氏による「Kanban(かんばん)」のデモ。かんばんというプラクティスのポイントは、「見ようとしなくても目に飛び込んでくるようにすること」と牛尾氏は語る。つまり共有フォルダに情報が置いてあるだけでは意味がないというのである。「このプラクティスを実践するときは常に大きなディスプレイに写して見られるようにする。目に入ってくるという状況を作ることだ」と牛尾氏は重ねて強調した。
かんばん型タスク管理ツールの中で牛尾氏が最近気に入っているのが、「Visual Studio Team Services(VSTS)」だという。それ以外なら「Pivotal Trackerが好み」らしい。牛尾氏によると使い勝手はとても快適だそうだ。ただ惜しむらくはGitHubとの連携がなされていないこと。「そこが改善されると嬉しい」と牛尾氏は言う。
さらに横道にそれてVSTSの面白い機能として、タスクの進捗確認ツール(タイマー)を紹介。「作業に使った時間を自分で把握するのに便利に使える。ただ、マネージャーにバレると評価に使われることもあるので、それは全力で阻止しないといけない」と紹介すると、会場には大きな笑いが起こった。