オートメーションの実装に関するレコメンデーション

この Power Platform Well-Architected オペレーショナル エクセレンス チェックリストの推奨事項に適用されます:

OE:08 人間の介入による洞察力や適応性から恩恵を受けず、高度に手順化されており、自動化への投資に対する利益を生み出す有効期限があるすべてのタスクを自動化します。 自動化には、カスタム実装が可能な場合は、既製のソフトウェアを優先します。 すべての自動化をワークロード コンポーネントとして扱い、Well-Architected の柱を設計と実装に適用します。

このガイドでは、ワークロード内のオートメーションを採用するためのレコメンデーションについて説明します。 チームが効率性を高め、標準に準拠するために、反復的で人為的エラーが発生しやすいタスクを自動化できます。 自動化により、運用チームとエンジニアリング チームは他の改善に取り組む時間が増えるため、効率が向上します。 オートメーションは、ワークロード管理のあらゆる側面において強力なツールです。 組織を強化するために、オートメーションを慎重に実装します。

主要な設計戦略

ワークロードを開発する際には、自動化を活用して管理の負担を軽減し、人的エラーを最小限に抑える機会を探してください。 これらの機会を評価し、それが組織にもたらす価値を検討してください。 自動化への投資価値を最大化するには、単純で手順が明確で、保存期間が長いタスクを優先します。 オートメーションの適用は、一か八かの戦略ではありません。 意思決定ポイントなど、人間の介入が必要な操作が含まれる可能性があるワークストリームがあります。 これらのワークストリームは、他のタスクを実行するためのオートメーションのメリットを享受できます。

自動化するタスクをターゲットにする

オートメーションによって最もメリットが得られるタスクに優先順位を付けるには、次のレコメンデーションを考慮してください。

  • 簡単に達成できる目標を掲げましょう。 非常に手順が多く、人的ミスの影響を受けやすいタスクに重点を置きます。 これらのタスクは高度に自動化できます。 これらは明確に定義されており、複雑さを増す変数がなく、通常の操作の一部として実行されます。 逆に、変化する現象に対応するために複雑なスクリプトを記述する必要があるタスクや、めったに発生しないタスクの自動化を優先しないでください。 高度に自動化可能なタスクの例としては、アクセス許可の付与、環境の作成、環境へのポリシーの適用などが挙げられます。 これらのタスクは、スケジュールに従って、イベントや監視アラートへの応答として、または外部要因に基づいて必要に応じて実行される場合があります。

  • オペレーターに権限を与え、SME の負担を軽減する方法を探します。 組織内には、不要なエスカレーションを頼りにする分野の専門家 (SME) がいる場合があります。 たとえば、Power Platform 管理者は、新しいワークロードの開発が開始されたときに、新しい環境を作成したり、環境にデータ ポリシーを適用したりする要求を定期的に受け取る場合があります。 要求管理ポータルをビルドすると、開発者が承認後に自動的に作成される環境を要求できるようになります。 特定のチームからの要求を自動的に承認することもできます。

  • 投資収益率に焦点を当てます。 価値の高いオートメーションでは、管理オーバーヘッドが最小限で済み、実証可能なレベルの効率性が向上します。 たとえば、環境の作成を自動化することで運用チームの時間を毎日 1 時間節約できれば、改善できる他の領域を見つける時間を確保できます。

オートメーションを実装するための領域

開発から日常的な管理まで、ワークロードのライフサイクル全体にわたって自動化を導入します。 次の例を参考にして、自動化のメリットを享受できるワークロード ライフ サイクルの幅広い領域を検討してください。

  • パイプラインの定義、実行、管理: Azure DevOps およびその他の DevOps ツールのような継続的インテグレーションおよび継続的デリバリー (CI/CD) ツールを使用して、パイプラインとその実行方法を自動的に定義します。 これらのツールは、CI/CD タスクやレポートの作成などのその他のタスクを自動化するのに役立ちます。

  • 展開: Azure Resource Manager テンプレート、Bicep、Terraform、Ansible などのツールを使用して、ワークロードの開発とリリースのプロセスを自動化します。

  • テスト: テスト プロセスを自動化するためのツールがいくつかあります。 これらのツールは、品質保証チームの負担を大幅に軽減し、テストが標準化され信頼できるものになることを保証します。

  • 監視とアラート: 監視ソリューションで利用可能なツールを使用して、新しく展開されたリソースを自動的に登録し、アラートによってトリガーされるアクションを構成して、問題が発生した場合の修復を迅速化します。

  • 構成管理: オーケストレーションとポリシー ツールを使用して、すべてのリソースが同じ構成で実行され、ワー​​クロード全体でコンプライアンス要件が適用されるようにします。

  • その他の管理タスク: スクリプトを使用して、環境の作成やポリシーの適用などの反復タスクを自動化します。

  • 承認: システムが事前定義されたルールに基づいて承認の決定を自動的に行えるようにし、承認ゲートを持つワークフローの効率を向上させます。 この方法では、標準化されたフォームとテンプレートの使用が促進され、プロセスの効率が向上します。 高負荷環境での自動承認はリスクを伴う場合があります。 自動承認に厳密に焦点を当ててテストし、承認を与えるための特定の基準が定義されていることを確認します。

  • 新規ユーザーおよび新入社員のオンボーディング: 権限の付与やリソースへのアクセスなど、新しいアプリケーション ユーザーや新入社員のオンボーディングに関連する多くのタスクを自動化できます。

適切なオートメーション ツールを選択する

社内で独自の自動化を開発するには時間がかかり、開発チームに管理上の負担がかかる可能性があります。 他の社内ソフトウェアと同様に、社内オートメーション ツールを維持する必要があります。 ニーズを満たすことができる場合は、既製のツールを使用することをお勧めします。 商用、オープンソース、クラウド プラットフォーム ツールなど、さまざまなオプションが利用可能です。 おそらく、必要なオートメーションをビルドするためにさまざまなツールを使用することになるでしょう。 オートメーションで対処する予定のタスクを検討し、それらのタスクに具体的に対処できるツールに投資します。 一般的に好むツールを調達し、その後にタスクを検討しないでください。

オートメーションをワークロードに統合する

オートメーションのビルドに使用するツールはすべて、オペレーターが簡単にアクセスでき、管理できるようにしてください。 ワークロード チームに明確で使いやすいインターフェースを提供します。 CI/CD パイプライン、API、ライブラリへのアクセスを提供できます。 オートメーションがサポートするワークロードと同様に、オートメーションを全体的に管理する必要があります。 他のワークロード コンポーネントと同程度にオートメーションを保護します。 オートメーションを監視し、他のワークロード コンポーネントと同じテスト プロトコルを適用します。

考慮事項

既製のソリューションが要件に合わない場合、自動化によって得られる効率性が、独自のソリューションを開発する管理上の負担を上回ることがあります。 このような場合、開発作業は慎重に行ってください。 既成のソリューションでは解決できないギャップを埋めるために必要なものだけを開発することに焦点を絞り、依存関係などの複雑さを最小限に抑えます。

高度なメンテナンスを必要とする複雑なオートメーションは、運用チームにとって管理やトラブルシューティングが困難になる可能性があります。 自動化タスクは、個別のジョブの実行のみに重点を置いてください。 他のツールやコンポーネントへの依存関係を最小限に抑えるようにしてください。

手動プロセスの使用については慎重に検討してください。 操作を自動化しないことに決めた場合は、オペレーター用の段階的なチェックリストを作成して、手動プロセスを徹底的に文書化してください。 この方法により、オペレーターが誤って間違ったプロセスを実行するなどの人為的エラーの可能性が軽減されます。 ドキュメントは、将来そのプロセスの自動化を設計する際にも役立ちます。

手動と自動を組み合わせたアプローチを使用する場合は、特に注意する必要があります。 スクリプトがプロセスの大部分を実行するが、特定の部分または決定については人間に委ねる場合、情報に基づいた意思決定を行うために必要なコンテキストと情報を人間に提供することが重要です。

Power Platform の促進

Power Automate ワークロードを自動化できます。たとえば、承認フローなどのワークロード タスクを処理するカスタム デジタル プロセス自動化などです。 Power Platform Power Automate を使用すると、組み込みのコネクタとテンプレートからワークフローを構築できます。 SaaS (サービスとしてのソフトウェア) コネクタの大規模なエコシステムにより、 Microsoft 365 Azureなどのアプリ、データ、デバイスをクラウドで 接続 できるようになります。 Power Platform 管理コネクタ を使用して、Power Platform サービス自体に接続し、環境の作成やアプリケーションの共有などの操作タスクを実行できます。

Power Automate 承認 (すぐに使用可能) または 承認キット (カスタム ソリューション) を使用すると、自動化シナリオに役立つ単純な承認フローと複雑な承認フローの両方を実装できます。 詳細については、 ビジネス承認テンプレートの概要をご覧ください。

GitHub Actions を使用すると、開発者は自動化されたソフトウェア開発ライフサイクル ワークフローを構築できます。 Microsoft Power Platform の GitHub アクション を使用して、リポジトリにワークフローを作成して、アプリをビルド、テスト、パッケージ化、リリース、デプロイし、自動化を実行し、ボットやその他のコンポーネントを Power Platform 上で管理できます。

Microsoft Power Platform ビルド ツールを使用することで、Power Platform でビルドされたアプリに関連する一般的な構築作業および導入タスクを自動化することができます。

ALM アクセラレータ は、継続的インテグレーション/継続的出荷プロセスを自動化するために設計されたアプリケーション、スクリプト、パイプラインのセットです。 ツールキットは Power Platform そして Azure DevOps を使って、ローコード開発者とプロフェッショナル開発者の両方にエンドツーエンドの ALM (アプリケーション ライフサイクル管理) エクスペリエンスを提供します。

Power PlatformCoE スターター キットは、Power Platform の採用とサポートのための戦略開発に役立つように設計されたコンポーネントおよびツールのコレクションを含む参照実装です。 CoE スターター キットには、所有者のいないアプリケーションや使用頻度の高いアプリケーションの特定など、管理タスクやガバナンス タスクを自動化する豊富なプロセス セットが含まれています。

プログラマビリティと拡張性ツールは、管理者がテナントの日常的なアクティビティを調整および自動化するために利用できます。 利用可能なツールには、コネクタ、Power Platform CLI、PowerShell コマンドレット、および API が挙げられます。

次の手順