プロジェクトの概要と組織のスケーリング
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Azure DevOps のプロジェクトは、ユーザーがソフトウェア ソリューションの構築を計画、追跡、共同作業を行う場所を提供します。 プロジェクトは、データとソース コードを格納できる基本的なコンテナーを表します。
プロジェクトを作成すると、Azure DevOps によって同じ名前のチームが自動的に作成されます。これは、小規模な組織に十分です。 エンタープライズ レベルの組織では、スケールアップして、より多くのチームやプロジェクトを作成することが必要になる場合があります。 Azure DevOps では、組織内に最大 1000 個のプロジェクトを含めることができます。
次の図は、1 つのプロジェクトとチームと、1 つの組織またはコレクション内の複数のプロジェクトとチームを示しています。
1 つのプロジェクト + チーム
複数のプロジェクト + チーム
この構造により、チームはツールを構成し、適切なレベルで管理タスクを完了できます。 組織が成長するにつれて、ツールが成長し、 チームの自律性と組織の連携の文化をサポートできます。
詳細については、「 作業の追跡、プロセス、プロジェクトの制限」および 「 組織構造の計画」を参照してください。
組織全体の作業を管理する
Azure DevOps に接続すると、組織に接続します。 そのコンテナー内で、1 つ以上のプロジェクトを定義できます。 システムを使用するには、少なくとも 1 つのプロジェクトを作成する必要があります。
次の方法で組織をスケーリングできます。
- さまざまな部署をサポートするプロジェクトを追加する
- プロジェクト内にチームを追加する
- リポジトリとブランチを追加する
- 継続的インテグレーションとデプロイをサポートするエージェント、エージェント プール、およびデプロイ プールを追加する
- Microsoft Entra ID を使用してアクセスを管理し、多数のユーザーを管理する
オンプレミスの Azure DevOps デプロイは、次の方法でスケーリングできます。
- パフォーマンスを向上させるためにサーバー インスタンスを追加する
- プロジェクト コレクションとプロジェクトを追加して、さまざまな部署をサポートする
- プロジェクト内にチームを追加する
- リポジトリとブランチを追加する
- 継続的インテグレーションとデプロイをサポートするエージェント、エージェント プール、およびデプロイ プールを追加する
- Active Directory を使用してアクセスを管理し、多数のユーザーを管理する
組織内のプロジェクトを表示する
[プロジェクト] ページを開いて、組織に対して定義されている プロジェクト を表示します。
[Azure DevOps] を選択
して [プロジェクト] を開きます。
プロジェクトの一覧からプロジェクトを選択します。
詳細については、「 プロジェクトを作成する」を参照してください。
プロジェクトの可視性を制限する
既定では、組織に追加されたユーザーは、すべての組織とプロジェクトの情報と設定を表示できます。
詳細については、「プロジェクトのユーザーの可視性を制限する」および「プロジェクトの可視性をパブリックまたはプライベートに変更する」を参照してください。
履歴データの表示
すべてのプロジェクト メンバーは、コメント、ディスカッション、または割り当てに追加された ID を表示できます。 たとえば、プロジェクト内のすべてのユーザー (新しい制限を持つユーザーも含む) は、ユーザーがプロジェクトに参加しなくなったときに、作業項目に割り当てられたユーザーの名前を引き続き表示できます。 PR、コメント、ディスカッションなどでも同様 @mentions です。
1 つのプロジェクトを使用する
推奨される方法の 1 つは、1 つのプロジェクトを使用して組織または企業をサポートすることです。 1 つのプロジェクトは、管理タスクのメンテナンスを最小限に抑えるのに役立ち、最も最適化され、柔軟性に優 れたクロスリンク オブジェクト エクスペリエンスをサポートします。
多数のチームが何百もの異なるアプリケーションやソフトウェア プロジェクトに取り組んでいる場合でも、1 つのプロジェクト内でそれらを簡単に管理できます。 プロジェクトは、その中に格納されているデータを分離するのに役立ちます。また、あるプロジェクトから別のプロジェクトにデータを簡単に移動することはできません。 あるプロジェクトから別のプロジェクトにデータを移動すると、通常、そのデータに関連付けられている履歴が失われます。
詳細については、「必要な プロジェクトの数」を参照してください。
別のプロジェクトを追加する
もう 1 つの実行可能なアプローチは、複数のプロジェクトを用意することです。これは、組織が次のシナリオに対応しようとしている場合に推奨されるアプローチです。
- グループを選択するプロジェクトに含まれる情報へのアクセスを禁止または管理するには
- 組織内の特定の部署のカスタム作業追跡プロセスをサポートするには
- 独自の管理ポリシーと管理者を持つ完全に個別の部署をサポートするには
- 作業プロジェクトに変更をロールアウトする前に、カスタマイズ アクティビティのテストまたは拡張機能の追加をサポートするには
- オープンソース ソフトウェア (OSS) プロジェクトをサポートするには
次のインスタンスに別のプロジェクトを追加することもできます。
- プロジェクトに含まれる情報へのアクセスを禁止または管理するには
- 組織内の特定の部署のカスタム作業追跡プロセスをサポートするには
- 独自の管理ポリシーと管理者を持つ完全に個別の部署をサポートするには
- 作業プロジェクトに変更をロールアウトする前に、カスタマイズ アクティビティのテストまたは拡張機能の追加をサポートするには
プライベートとパブリックのプロジェクトを使用する
プライベート プロジェクトとパブリック プロジェクトの両方を使用できます。 また、プロジェクトの可視性をどちらか一方から変更することもできます。
プライベート プロジェクト では、ユーザー アクセスを追加および管理する必要があります。 ユーザーは、読み取り専用アクセスであっても、プロジェクトにアクセスするためにサインインする必要があります。 すべてのプロジェクト メンバーは、プロジェクトと組織の情報にアクセスできます。 詳細については、「 プロジェクト メンバーに付与されるリソース」を参照してください。
パブリック プロジェクト では、ユーザーが次の多くのサービスへの読み取り専用アクセス権を取得するためにサインインする必要はありません。 パブリック プロジェクトでは、コードを他のユーザーと共有し、オープンソース ソフトウェアの継続的インテグレーション/継続的配置 (CI/CD) をサポートするサポートが提供されます。
詳細については、「プロジェクトの可視性を変更する」を参照してください 。
バージョン管理サポート
Git リポジトリは、HTTPS 経由でのみ参照および複製できます。 SSH および GVFS エンドポイントは使用できません。 Visual Studio や IntelliJ などのクライアントは HTTPS 複製 URL を操作しますが、作業項目やその他の資料への接続エクスペリエンスのリンクは提供しません。
ダッシュボード ウィジェットのサポート
次のダッシュボード ウィジェットには、メンバー以外のユーザーに役立つ情報は表示されません。
- 現在のユーザーに割り当て済み
- コード タイル
- 新しい作業項目
- Pull request
- Query results
- 要件の品質
- スプリント バーンダウン
- スプリント容量
- スプリントの概要
- チーム メンバー
- ようこそ
- 作業リンク
- その他のリンク
プロジェクトを構造化する
ビジネス ニーズをサポートするためにプロジェクトを構成するには、次の要素を使用します。
- サブプロジェクトまたはアプリケーションごとに Git リポジトリを作成するか、サブプロジェクトごとに TFVC リポジトリ内にルート フォルダーを作成します。 TFVC を使用し、結合されたプロジェクト モデルに向かう場合は、Git で個別のリポジトリを作成するのと同様に、さまざまなチームとプロジェクトのルート フォルダーを作成します。 必要に応じてフォルダーをセキュリティで保護し、職場マッピングでアクティブに使用しているリポジトリのセグメントを制御します。
- さまざまなサブプロジェクト、製品、機能、またはチームをサポートするエリア パスを定義します。
- チーム間で共有できるイテレーション パス (スプリントとも呼ばれます) を定義します。
- 製品の一連の機能を開発する製品チームごとにチームを追加します。 作成する各チームは、そのチームのセキュリティ グループを自動的に作成します。このグループを使用して、チームのアクセス許可を管理できます。 詳細については、「 ポートフォリオ管理」を参照してください。
- カスタム セキュリティ グループを使用して、特定の 機能へのアクセスを管理します。
- クエリ フォルダーを作成 して、チームまたは製品領域のクエリをフォルダーに整理します。
- プロジェクト レベルで設定された通知を定義または変更します。
プロジェクトをカスタマイズして構成する
ほとんどのサービスとアプリケーションを構成およびカスタマイズして、ビジネス ニーズやチームの作業方法をサポートできます。 各プロジェクト内で、次のタスクを実行できます。 構成できるリソースの包括的なビューについては、「 チーム、プロジェクト、および組織レベルの設定について」を参照してください。
- ダッシュボード: 各チームは、情報を共有し、進行状況を監視するように ダッシュボードのセットを構成 できます。
- ソース管理: Git リポジトリごとに、ブランチ ポリシーを適用し、ブランチのアクセス許可を定義できます。 TFVC リポジトリの場合は、チェックイン ポリシーを設定できます。
- 作業の追跡: フィールドの追加、ワークフローの変更、カスタム ルールの追加、およびほとんどの作業項目の種類の作業項目フォームへのカスタム ページの追加を行うことができます。 カスタム作業項目の種類を追加することもできます。 詳細については、「 継承プロセスをカスタマイズする」を参照してください。
- Azure Pipelines: ビルドパイプラインとリリース パイプラインを完全にカスタマイズし、ビルドステップ、リリース環境、デプロイスケジュールを定義できます。 詳細については、「Build and release (ビルドとリリース)」をご覧ください。
- Azure Test Plans: テスト 計画、テスト スイート、テスト ケース、テスト環境を定義および構成できます。 ビルド パイプライン内にテスト ステップを追加することもできます。 詳細については、「Exploratory テストと手動テスト」と「ビルドの継続的なテスト」を参照してください。
チームの追加
組織が成長するにつれて、構成可能なアジャイル ツールを備えたチームを追加して、各チームのワークフローを満たすことができます。 詳細については、次の記事を参照してください。
- アジャイルを大規模なチームに拡大する
- チームおよびアジャイル ツールについて
- バックログのポートフォリオを管理 し、進行状況を確認します。
- 配信計画を使用して 、予定表ビューに対して選択したチームのスプリント (イテレーション パス) 別にスケジュールされた作業項目を作成します。
- 組織内でより大きなリズムと流れを生み出し、顧客を引き付け、プロジェクトの可視性を向上させ、生産性の高い従業員を開発するために、スケーリングするプラクティスを段階的に採用します。
- プロジェクトを構造化して、チーム間で可視性を得 るか 、エピック、リリース トレーニング、複数のバックログをサポートして、スケーリングされたアジャイル フレームワークをサポートします。
他のクライアントとプロジェクトに接続する
Web ブラウザー経由で接続する以外に、次のクライアントからプロジェクトに接続できます。
- Visual Studio (Professional、Enterprise、Test Professional)
- Visual Studio Code
- Visual Studio コミュニティ
- Office Excel
- テストとフィードバック拡張機能
- Microsoft Feedback Client
詳細については、「Azure DevOps Server バージョンとの互換性」を参照してください。
重要な概念
プロジェクトとチームの管理に関連する概念とタスクにすばやくアクセスするには、次のインデックスを使用します。
ユーザータスクと管理タスク
次のいくつかのタスクでは、プロジェクト管理者グループのメンバーまたはチーム管理者に付与されたアクセス許可が必要です。
よく寄せられる質問 (FAQ)
Q: プロジェクトを別の組織またはコレクションに移動または転送できますか?
A: はい。ただし、データを失う必要はありません。 リソースを手動でコピーして残したり、REST API を使用してデータをコピーする OpsHub Visual Studio Migration Utility などのサードパーティ製ツールを使用したりできます。
Q: プロジェクトをサポートするプログラム ツールは何ですか?
A. 「Projects REST API」を参照してください。
az devops プロジェクト CLI を使用することもできます。