Microsoft における DevOps への道のりのご紹介

2019年11月8日 に投稿済み

Sr. Product Marketing Manager, Microsoft Azure

今日、ますます多くの組織が、顧客に新しいデジタル ソリューションを提供することに注力しており、俊敏性の強化、プロセスの向上、および開発チームと運用チームのコラボレーションへのニーズを把握することがビジネスにおいて不可欠であることを認識しています。10 年以上にわたって、DevOps はこうした課題に対する答えとなっています。DevOps へのニーズを把握することと、実環境で実際に DevOps を導入することはまったく別の課題です。複数のチームと、既存のプロセスが深く根付いた複数のプロジェクトがあり、レガシ ソフトウェアを多数持つ組織が、その方法を変革して DevOps を導入するにはどうすればよいでしょうか。

Microsoft には、こうした課題についてある程度の知識があります。何十年にもわたりソフトウェアを構築してきた企業として、Microsoft には世界中に数千人のエンジニアがおり、多種多様な製品を提供しています。Office から Azure、Xbox に至るまでの製品において、ソフトウェアを提供する新たな方法に適応する必要があることも分かりました。クラウドの新時代は、より豊富で優れたエクスペリエンスへの顧客の増大する需用を満たすための大きな可能性をもたらしましたが、一方で、競争の激しさが和らぐことはありません。イノベーションの促進と働き方の変革へのニーズは、現実のものであり、急を要します。

変革の道のりは容易ではなく、この困難な道のりを進むための最適な道は、既にそこを乗り越えた足跡をたどることです。だからこそ、Microsoft における DevOps への道のりを、DevOps の導入を通して働き方を変革した Microsoft のチームからの教訓と併せてご紹介できることを嬉しく思います。

 

単なるツールではない

組織の成功は、エンジニアに最良のツールと最新のプラクティスを提供することによって実現します。Microsoft では、社内の各チームにおける高パフォーマンスを実現するために One Engineering System (1ES) チームがさまざまな取り組みを促進しています。このチームは当初、ツールの標準化に重点を置き、ソース管理の問題の減少や、ビルド時間とビルドの信頼性向上などの優れた成果を上げました。ただし、時間の経過と共に、ツールに注力するだけでは不十分であることが分かりました。チームを支援するために、1ES は文化的な変革にも注力する必要がありました。文化的変革へのアプローチは一筋縄ではいきません。短期間で成果を上げることから始めるのか、大規模な根本的変革を目指すのか、どちらを選択すればよいのでしょうか。規模や成熟度の異なるチームにおいて、何が適切なエンゲージメント モデルとなるのでしょうか。One Engineering System チームの実験的な取り組みについて、ご覧ください。

IT の役割と職務の再定義

クラウドへの移行により、組織における職務の定義が困難になる場合があります。開発チームでクラウドのイノベーションが導入されると、IT 運用チームでは、インフラストラクチャに対する従来の所有権のモデルが適用できなくなることに気が付きます。Microsoft Core Service グループ (旧称 Microsoft IT) の Manageability Platforms チームは、Azure への移行に伴い、IT と開発チームが連携する方法を見直す必要があることに気が付きました。どのようにしたら、一元的な IT モデルを非一元化して、チームを日常的な作業から解放し、同時に開発チームとの関係を向上できるでしょうか。Manageability Platforms チームによる変革をご覧ください。

開発者のコラボレーションの効率化

開発者のコラボレーションは、イノベーションの重要な要素です。これを踏まえて、Microsoft は.NET フレームワークをオープンソース化し、.NET でのコラボレーションとイノベーションを実現するコミュニティを招待しました。このプロジェクトは長い時間をかけてオープンソース化され、その規模と複雑さは明白です。プロジェクトは多数のリポジトリにわたり、各リポジトリは複数のさまざまな継続的インテグレーション (CI) システムを使用する独自の構造を持ち、開発者がリポジトリ間を移動するのが困難でした。Microsoft の .NET インフラストラクチャ チームは、開発者のプロセスを効率化することを決定しました。この課題へのアプローチは、リポジトリ構造と共有ツールを標準化し、1 つの CI システムに集約することに注力し、内部と外部の両方の作成者にメリットがもたされるようにするものでした。.NET インフラストラクチャ チームによる投資の詳細をご覧ください。

継続的な学習の道のり

Microsoft における DevOps は道のりであり、目的地ではありません。各チームでは、新しいことを採用して試し、変革および改善方法について継続的に学習しています。学ぶことは常にたくさんあるため、今後数か月にわたって、Microsoft の他のチームにおける変革のストーリーを継続してご紹介します。この継続的な社内での学習の道のりを延長して、Microsoft は皆様をこの道のりにご招待します。より優れたソリューションを迅速に構築して提供し、顧客の満足度を向上させるために、DevOps を導入してチームを強化する方法について学びましょう。

Microsoft における DevOps

関連資料


Azure。目的を持って創造する。