
伸びるDevOps時代に、APM活用戦略を建てる!スピードと品質を両立させるには
DevOpsは実は2009年には提唱されていたのをご存知でしょうか?
いまだ聞きなれない言葉という方もいるかも知れません。新しい手法の採用には、技術的・心理的に越えるべきハードルが多いためです。例えば、ウォーターフォール開発を継続採用されている企業が多いこともあるでしょう。これまでの文化を一気に変えることは、なかなか難しいことですよね。
しかしながらITの進化はめざましく、DevSecOpsという言葉も出てきています。GitやCI/CDに代表されるツールによる自動化が受け入れられ、ウォーターフォール開発においてもDevOpsのエッセンスを取り込むことも増えてきました。
そこで、今回は「DevOps」と「APM」が組み合わさることのメリットをお話しします。
ぜひご覧になってください!
DevOpsはわかるけど、APMがよくわからない、という方はこちらの記事をご覧ください!
https://note.com/ibmj_csm/n/naae77c590ff1
この記事は7分で読めます。
DevOpsを知り、変化に対応する
まずはDevOpsを簡単におさらいするところから始めましょう。DevOpsの目的を理解することは、APMの必要性を裏打ちするために必要な項目です。
DevOpsを実現することにより、企業のビジネス成長速度の向上やシステム安定化の両立が期待できます。
DevOpsによって、開発と運用の垣根をなくす
これまで、開発と運用は別々の領域であり、サイロ化されていました。開発チーム、運用チーム、さらにはセキュリティチームと分割されていたことで、責任は各チームで背負うことになります。
これは各チームの連携不足を生み出し、結果的にスピードの低下、リリース頻度の低下、顧客の満足度の低下のサイクルにつながってしまうでしょう。
DevOpsではその垣根を取り去り、チーム統合が実現されることで、エンジニアが開発・運用と関わることができます。効率的なチーム形成が可能になることで、開発段階で運用の要素を取り入れた状態で始めることができるのです。

CI/CDの重要度を理解しよう
顧客視点からすれば、CI/CD (継続的インテグレーション/デリバリー)が実現されることで、生産性の高いチームから、品質の良い製品がリリースされるということです。
また、ビジネス変化に対しても、DevOpsの考え方で動くチームは運用視点、セキュリティ視点を組み込んだ状態を実現します。
統合されたチームで開発に取り組み、エラーやバグを取り去った状態で、迅速なアプリケーションの展開が期待されるのです。
DevOpsとAPMが交わるポイントを知ろう
「文化」と「製品」が交わるってどういうこと?と感じる人もいるでしょう。DevOpsとAPMが組み合わさるとなぜ効果的なのでしょうか?
この2つは遠く離れているように見えて、実はとても近い存在であるといえます。
まずはどのように関係するのかを理解していきましょう。
DevOpsとAPMは同時に注目される関係
DevOpsでは迅速かつ確実な展開、安定した運用、そして頻繁なリリースが期待されます。
APMでは展開されたアプリケーションに対して、迅速なインシデント通知、リアルタイム計測、分析による問題点把握が挙げられます。
こう見ると2つは、相性が良い関係といえるでしょう。
「確実な展開」と「インシデント通知」
「安定した運用」と「リアルタイム計測」
「リリース頻度」と「問題点把握」
DevOpsとAPMは支え合い、同時に注目される関係であると言えるのです。
変化する技術についていくためのスピードと品質担保
DevOpsが目指す「頻繁なリリース」と「継続的な改善」には品質を担保する存在が必要です。
変化する技術、セキュリティの問題、ビジネス要求に対して、品質を担保しつつリリースを実現するためには、パフォーマンスの可視化は避けられません。
つまり、「アプリケーションパフォーマンス」を主軸に置くAPMは、DevOpsにおけるスピードと品質を担保し、開発・運用のどちらにも適応することができると言えるのです。
APMとDevOpsを連携させることは、必要不可欠でしょう。
APMを導入したDevOpsプロセスのメリット
DevOpsとAPMを組み合わせることで生まれるメリット、相乗効果を説明します。
APMとDevOpsの文化を持ったチームの利点を把握することで、ビジネス要求に迅速に対応するチームは醸成されていきます。
ここではそのメリットを明確にしていきましょう。
開発と提供のサイクルが短くなる中でも、問題対応の迅速化
APMの特徴はリアルタイムな監視による、ボトルネックや障害の早期発見です。これによって、リリース前後での問題が可視化されます。短い開発期間の中でも的確に問題点を指摘し、パフォーマンス向上に繋がるでしょう。
もし開発で見つからなくても、リリース後にも継続的な監視は続きます。そのため、顧客体験は常に最新化され、向上することが期待されるのです。
不具合は即座に発見され、CI/CDの観点から、継続的かつ迅速に改善・最適化のフィードバックが行われる体制が続いていくのです。

開発運用チームとしてのコラボ強化
トレース情報は各メトリックとして残ります。これは次の開発・改善のループに活用され、製品のさらなる品質向上に役立つでしょう。
また、運用側で見るメトリックと、開発側で見るメトリックには違いがあるかもしれません。しかしDevOpsの文化で進んでいるチームにおいて、それらは共通言語であり、「開発だから・運用だから」わからない、知らない。ということがなくなります。
コラボレーションが強化された統合されたチームに、グラフやメトリックの共有が行われることでさらにコミュニケーションが活発化されたチームに醸成されます。
DevOpsとAPMの導入されたチームは、迅速化と安定、そしてチームとしてのコミュニケーションを手に入れることができると言えるでしょう。
第4回〆:DevOpsとAPMで持続的改善を実現していこう!
DevOpsで、APMが果たす役割の大きさを理解していただけたでしょうか。セキュリティの観点が入ったDevSecOpsでも、APMはDevOpsと同様に効果を発揮します。
今後DevOpsはさらに大きな転換点を迎えることでしょう。
まずはDevOpsとAPMのコラボレーションの理解を深めてみてください。開発の手法は様々ですが、DevOpsの考え方は適材適所で活用することができるでしょう。
今回、スピードと品質を高めるひとつの施策として、DevOpsにAPMを活用する内容をお伝えしました。生産性を高めるための一助になれば幸いです!
次回は、APM製品のメトリックについて、資料と共にご紹介します!
フォローしていただくと、新着記事が出た際に分かりますのでご活用ください。スキやコメント、記事についてもご意見お待ちしております。
閲覧ありがとうございます!
執筆
日本アイ・ビー・エム株式会社
テクノロジー事業本部
カスタマーサクセスマネージャー
小石川 将晃