最近、DevOpsが大きな注目を集めている。これはソフトウェア開発者と、その他のより運用寄りのITプロフェッショナルとの間の協力と協調を重視した方法論だ。DevOpsは、アジャイル開発やリーン開発で用いられる、反復型の効率性の高い手法と密接に関連している。
DevOpsは、IT部門がビジネスの需要に応じて継続的に改良され続けるサービスを生み出すのに役立つ。Gartnerのアナリストは、2016年にはDevOpsが世界の組織の4つに1つで使われるようになり、主流のアプローチとして認知されるようになると予想している。
では、最高情報責任者(CIO)がDevOpsを最大限に生かすにはどうすればよいだろうか?
提供:iStock
1.注意深く成果を評価する
金融大手ING傘下のING Belgiumでマネージングディレクター兼CIOを務めるJohan Kestens氏は、同社にとっては、DevOpsと結びついた創造的な形態の開発が極めて重要だと述べている。「ソフトウェアは想像力から始まる」と同氏は言う。INGはアジャイル開発の手法を、要件の急速な変化や、アプリケーションの計画、変更、導入に積極的に対応するために使用している。Kestens氏によれば、INGは全部で400件のDevOpsプロジェクトを進めている。
複数のプロジェクトが未処理の状態に置かれており、開発部門の優先順位決定を事業部門が支援する。その後、プロジェクトは2週間から4週間のスプリントで進められる。同銀行はまた、規制の改正にともなう複雑なマイグレーション作業を進めており、このようなケースでは40から50のアプリケーションに変更が及ぶことも多いという。
INGでは、DevOpsの手法を用いることで、チームベースのソフトウェア開発アプローチを取ることが可能になっていると、Kestens氏は述べている。古い仕事の進め方に囚われず、アジャイル開発の手法を用いることで、エンジニアはより創造的に働くことができる。ただし、CIOは注意深く成果を評価する必要がある。Kestens氏は、DevOpsの成果を追跡するのに、テストが重要な役割を果たすと述べている。
「テストを、ほかの部門にどれだけ改善されたかを示すためのツールとして使うことだ。正しいツールを使い、計測手法の限界を理解していれば、CIOは品質や生産性についての指標が、実際には何を示しているかを、より正確に理解できるようになる」(Kestens氏)
2.正しいビジネスケースを見つける
ホテルグループglhの最高技術責任者(CTO)Chris Hewertson氏によれば、同社のアプリケーションプログラミングインターフェース(API)プラットフォームはDevOpsを利用して開発された。同社はクラウドサービスを多用しており、APIレイヤによってバックエンドの資産管理システムへのリンクを提供している。
glhで「当社にとってDevOpsが重要なのは、素早くアウトプットを出す必要のある小さなチームしか持っていないからだ」と述べている。同社はクラウドを通じて提供される外部サービスに依存しており、社内のITチームには13人しかいない。
Hewertson氏は、glhでこれまでに進めてきた大規模な変革を振り返って、「当社では、非常に小規模な多くのアジャイルチームを動かしてきた」「当社が作ってきたものは、教科書に載っているようなものではなかった。プロジェクトを進めながら学び、方向転換をする必要があったし、それを素早く行う必要があった」と話した。
同氏は、glhのAPIプラットフォームを構築するには、DevOpsは理想的な開発手法だと語る。「DevOpsは何にでも使えるわけではない。だが、APIは1日24時間365日動かし続ける必要があり、DevOpsは、ただ長時間座っているだけの専門のチームを持つよりも、適したアプローチだ」(Hewertson氏)
3.優秀な人材を見つけるのは困難であることを認識する
Camden Councilの暫定CIOを務めるOmid Shiraji氏は、特に持続的に高品質なプログラムを生み出していくためには、DevOpsが重要だと考えている。「コードを書いた開発者が長期的な開発に関心を持つことは重要だ」と同氏は言う。