Skip to main content

Projects のベスト プラクティス

プロジェクトを管理するためのヒントについて説明します。

Projects を使って、issue や pull request がある GitHub 上での作業を管理できます。 プロジェクトを効率的かつ効果的に管理するためのヒントを読んでください。 Projects の詳細については、「Projects について」を参照してください。

大きなIssueを小さなIssueに分割する

大きなIssueを小さなIssueに分割すると、作業が管理しやすくなり、Teamのメンバーが並列に作業できるようになります。 そうすることでPull Requestも小さくなり、レビューしやすくなります。

比較的小さいイシューが大きな目標にどのように適合するかを追跡するには、タスク一覧を使用します。 マイルストーンまたはラベル。詳細については、「タスクリストの作成」、「マイルストーンについて」、「ラベルを管理する」を参照してください。

コミュニケーション

IssueとPull Requestには、コラボレータと容易にコミュニケーションが取れるようにする組み込みの機能があります。 @mentions を使い、個人や Team 全体に対してコメントに関するアラートを発します。 責任を伝えるために、Issueにコラボレータをアサインしてください。 関連性を伝えるために、関連するIssueやPull Requestにリンクしてください。

説明、Readme、ステータスの更新を活用する

プロジェクトの説明とREADMEを使って、プロジェクトに関する情報を共有してください。

たとえば次のような点です。

  • プロジェクトの目的の説明。
  • プロジェクトのビューとその利用方法の説明。
  • 関連するリンクや、詳細情報のための連絡先を含める。

プロジェクトのREADMEはMarkdownをサポートしており、画像や、リンク、リスト、ヘッダといった高度なフォーマットを使用できます。 詳しくは、「project の作成」を参照してください。

ステータスの更新を投稿することで、プロジェクトの他のユーザーと高レベルの更新を共有することもできます。 ステータスの更新を使用すると、プロジェクトに "順調" や "危機的状況" などのステータスのマークを付けたり、開始日や目標日を設定したり、書き込まれた更新をチームと共有したりできます。 詳しくは、「project 更新の共有」を参照してください。

ビューの利用

プロジェクトビューを使って、プロジェクトを様々な角度から見てください。

たとえば次のような点です。

  • 開始していないすべてのアイテムを見るためにステータスでフィルタ
  • カスタムの優先度フィールドでグループ化して、高優先度のアイテムの量をモニター
  • 最短の出荷ターゲット日でアイテムを見るために、カスタムの日付フィールドでソート

詳しくは、「ビューのレイアウトを変更する」を参照してください。

信頼できる唯一の情報源を持つ

情報がずれてしまわないようにするために、信頼できる唯一の情報源を管理してください。 たとえば、ターゲットの出荷日は複数のフィールドに分散させず、一カ所で追跡してください。 そうすれば、ターゲットの出荷日が変更された場合、一カ所で日付を更新するだけでよくなります。

Projects は、担当者、マイルストーン、ラベルなどの GitHub データと自動的に最新の状態に同期されます。 これらのフィールドのいずれかがIssueあるいはPull Requestで変更されると、その変更は自動的にプロジェクトにも反映されます。

自動化の利用

意味の無い作業に費やす時間を減らし、プロジェクト自体にかける時間を増やすために、タスクを自動化できます。 手動でやることを覚えておく必要が減れば、それだけプロジェクトは最新の状態に保たれるようになります。

Projects には組み込みのワークフローが用意されています。 たとえば、Issueがクローズされると自動的にステータスを「Done」に設定できます。 また、組み込みワークフローを構成して、特定の条件を満たすアイテムを自動的にアーカイブしたり、フィルターに一致したアイテムをリポジトリから自動的に追加したりできます。

加えて、GitHub Actions と GraphQL API を使うと、ルーチンのプロジェクト管理タスクを自動化できます。 たとえば、レビュー待ちのPull Requestを追跡するために、Pull Requestをプロジェクトに追加し、そのステータスを"needs review"に設定するようなワークフローを作成できます。このプロセスは、Pull Requestが"ready for review"としてマークされたときに自動的にトリガーできます。

様々なフィールドタイプの利用

様々なフィールドタイプを活用して、要求を満たしてください。

繰り返しフィールドを使って、作業をスケジュールしたり、タイムラインを作成したりしてください。 繰り返しをグループ化して、アイテムが繰り返し間でバランスしているかを見たり、あるいは繰り返しの1つに焦点を当てるためにフィルタリングできます。 繰り返しフィールドを使えば、過去の繰り返しで完了した作業を見ることもでき、それを速度の計画とチームの成果への反映に役立てられます。 繰り返しフィールドは、あなたとあなたのチームが繰り返しから離れる時間を取っている時を示す休憩もサポートします。 詳しくは、「繰り返しフィールドについて」を参照してください。

単一の選択フィールドを利用して、事前設定された値のリストに基づき、タスクに関する情報を追跡してください。 たとえば、優先度やプロジェクトのフェーズを追跡してください。 値は事前設定されたリストから選択されるので、グループ化や特定の値のアイテムに集中するためのフィルタリングが容易です。

さまざまなフィールドの種類については、「フィールドについて」を参照してください。