🌻

Azure DevOpsでProjectをカスタマイズしてチームに最適化したwork item運用環境を作る

2023/08/22に公開

Azure DevOps(以下AzDO)でカスタマイズしたProject(以下PJ)をつくる方法について紹介します。

Process Templateをカスタマイズ

AzDOでPJを作る際、デフォルトでは以下のProcessがあります。
各Processでどのようなwork itemを中心に運用していくかが異なります。

  • Basic
  • Agile
  • Scrum
  • CMMI

詳しくはこちらをCheck
https://learn.microsoft.com/ja-jp/azure/devops/boards/work-items/guidance/choose-process?view=azure-devops&tabs=agile-process

基本的にはこのいずれかのProcessを選択してProjectを作成しますが、以下のような要件がある場合は、デフォルトの上記4つのProcessをベースにカスタマイズしたProcessを作成し、それをベースにカスタマイズしたAzDO PJを作成することができます。

  • オリジナルのwork itemを追加したい
  • 新しいフィールドを追加したい
  • 特定のフィールドを非表示にしたり、フィールド名を変更したい

Inherited Processの作成

Organization Settingsの左メニューでBoards > Processを選択し、Origanizationで使用しているProcessの一覧画面に遷移します。

ベースにするProcessの・・・のメニューから、Create inherited processを選択

適当にProcess Templateの名前を付けて、Create Processで作成

こんな感じでProcess Templateが作成されます。

Processのカスタマイズ

作成したProcessの名前をクリックして、Processの設定画面に遷移します。
work item typesのタブではこのProcessで使用するwork itemを、
Backlog levelsでは各work itemをどのBacklogの階層で使用するかを設定し、
ProjectsではこのProcessを使用しているProjectを確認できます。

オリジナルのwork itemを追加

Work item typesの下の+ New work item typeでオリジナルのwork itemを追加できます。

ダイアログのNameでwork itemの名称を、Descriptionではこのwork itemに対する説明(どのようなworkを設定すべきなのか)IconとIcon Colorでアイコンとアイコンの色を設定します。

※チームでスクラム開発を実施するにあたっておすすめのwork item

  • Event
    スクラムイベントやチームで共通して運営していくイベント(定例等の会議とか)を登録
    例)Sprint Planning, Daily Scrum, Sprint Review etc..
  • Question
    作業を進めていく上での要確認事項や聞きたいこと
    例)APIからのレスポンスはどれぐらい短縮すればよいのか? 、現状使用されていないpipelineはいくつあるか?
  • Risk
    Retrospective等で提案された、まだ起きていないけれど将来的なリスクになりうる不安(起きていないことに対する不安)
    例)デプロイが全て手動なのでリリース時にミスが頻発しそう、UT Codeが書かれていないメソッドが多くてリファクタリングに時間が掛かりそう
  • Issue
    現状すでに発生している課題で今後も対応が必要なもの
    例)単体テストが自動化されていない、Wikiが整備されていない
  • Architecture Spike
    特定の技術的課題や未解決の問題を調査するための短期の、実験的なタスクや活動。
    不確実性を減少させ、技術的なリスクを評価するためのもので、具体的な実装の前に知識や理解を深めるのを助ける。
    例)React vs Vue でのフロントエンド開発の利点比較、 データベースのレスポンス遅延の原因調査、 ユーザーオンボーディングのフロー改善のアイディア収集
  • Change Request
    プロジェクトの途中で新たに追加や変更される要件や機能
    例)ユーザープロフィールに電話番号の項目追加、ショッピングカート機能の導入

作成したwork itemを選択すると、このwork itemのチケットのレイアウトや、このwork itemが持つstate等が設定できます。

目的に応じたwork itemを作成すると、どのようなworkなのか容易に識別できる、大量のTagができない等のメリットがあるのでチームで必要とされているworkに応じてwork itemsを作成してください。

追加したwork itemのbacklog levelを指定

追加したwork itemが既存のどのwork itemと同じ階層で使うかを設定します。
backlogで上記で追加した新しいwork itemをProduct Backlog Itemと同じ階層としてBacklogに登録していきたい場合、Requirement Backlog > Backlog items の・・・からEdit/Renameを選択する。

以下のように、PBIと同じ階層でBacklogに登録したいwork item typeをチェックする。

これで、BoardsのBacklogからwork itemが選択できるようになる。

新しいフィールドを追加&フィールドを非表示

Organaization Setting > Boards > Process > All Process > {該当のProcess} のWokr Item typesでフィールドを追加したいwork itemを選択します。

AzDOの既存のフィールド名を使用したい場合はUse an existing fieldで使用したいフィールドを選択する。
新規にカスタムフィールドを作成したい場合は、Create a fieldのNameでフィールド名を、Typeでフィールドのデータ型を、Descriptionでフィールドに対する説明を追加
下記画像では、Product Backlog Itemのwork itemに、FigmaのデザインのURLを指定するためのフィールドを追加しています。

Optionsでは、このフィールドを必須設定項目にするかどうか(Required)と、フィールドに設定されるデフォルトの値(Default value)が設定できます。

フィールドの設定が完了したらAdd fieldのボタンでフィールドを追加。
フィールドが追加されたことが確認できます。

逆に、フィールドをwork itemから非表示にしたい場合は、以下のように非表示にしたいフィールドのHide from layoutでwork itemからフィールドを非表示にできます。

PJ作成

Processのカスタマイズが完了したら、PJ作成の際にwork item processでカスタマイズしたProcessが選べるようになっているので、選択してPJを作成する。

Referene

https://learn.microsoft.com/ja-jp/azure/devops/organizations/settings/work/inheritance-process-model?view=azure-devops&tabs=agile-process

https://learn.microsoft.com/ja-jp/azure/devops/organizations/settings/work/add-custom-field?view=azure-devops

https://learn.microsoft.com/ja-jp/azure/devops/organizations/settings/work/add-custom-wit?view=azure-devops

Discussion