AZ-400学習リソースを共有します 1-3 [DevOps プラクティスを発展させる –ソフトウェア開発のアジャイルアプローチを選択する]

こんにちは。 AZPower クラウドサービス開発本部 森です。

先日、Microsoft資格試験 AZ-400:Designing and Implementing Microsoft DevOps Solutionsを取得しました。

せっかくですので、これらの取得の際に作成した学習リソースを共有したいと思います。
長期にわたっての記事となりますので、大変ですがお付き合いのほどをよろしくお願いします。

なお、この前の記事は「AZ-400学習リソースを共有します 1-2 DevOps プラクティスを発展させる – Azure DevOpsをはじめよう」です・

AZ-400 とは

AZ-400は開発プロセスで必要となるさまざまなツール(簡単にいうとAzure DevOpsとGit, VSCodeあたり)やプラクティスの知識を持っていて、
Azureの管理・開発に精通しているということを試される試験です。

そのため、受験資格としてAZ-103, AZ-104(Microsoft Azure Administrator)またはAZ-203, AZ-204(Developing Solutions for Microsoft Azure)の資格を保有している必要があります。

AZ-400とMS Learn

私がAZ-400の取得に活用したのが、MS Learnです。
簡単にいえば、こちらを一通り覚えておけば、取得できるのではないかと思います。

ただ、2020年8月6日時点でAZ-400のラーニングパスにある記事はすべて英語でした。

そのため、この学習リソースを利用するには少しハードルが高いこともあり、資格取得の学習のため、これらをすべて翻訳しました。

翻訳は専門ではないので、微妙な翻訳になっているかもしれませんが、ご容赦のほどを…。

現在のラーニングパス

2020年8月11日時点で確認したところ、AZ-400用ラーニングパス(もちろん日本語)が新しく更新されていました。
こちらは古いラーニングパスに基づくコンテンツですが、内容が古くなっているということはないので引き続き投稿しています。

DevOps プラクティスを発展させる

DevOpsとは、エンド ユーザーに対する価値継続的に届けることを可能にする、人、プロセス、製品の総称です。
その価値の継続的デリバリーに必要なツールを与える一連のサービスがAzure DevOpsです。
Azure DevOpsを利用すれば、あらゆるアプリケーションをビルドし、テストし、クラウドまたはオンプレミスにデプロイできます。
透明性、共同作業、継続的デリバリー、継続的デプロイを可能にするDevOpsプラクティスは、今後のソフトウェア開発ライフサイクルとして広がることでしょう。

このラーニング パスでは、DevOpsの旅を始めることになります。 このチュートリアルの内容は次のとおりです。

  • 現在のプロセスとテクノロジを評価する場合に利用する、Value Stream Map(バリュー・ストリーム・マップ)がどのように役立つかを確認する
  • Azure DevOps Organizationに無料でサインアップする
  • Azure Boardsを使った作業項目の計画および追跡方法を学習する
  • 複数のアジャイル チームにわたるスプリント ワークロードの最適化

ソフトウェア開発のアジャイルアプローチを選択する

Azure ボードの透明性とチーム連携という DevOps の価値観を発展することを学びます。

このモジュールでは、以下を行います。

Azure DevOps プロジェクトを作成する
基本プロセスを使用してAzureボードに作業項目を追加する
チームメンバーへの作業項目の割り当て

Introduction

あなたはここまでにTailspinチームに出会い、彼らの問題について少し理解しました。
最新のチームメンバーであるマーラは、Azure DevOpsのサービスを利用したDevOpsアプローチが問題を解決するための素晴らしい方法であることをチームメイトに説得しようとしています。
彼女は自分でバリュー・ストリーム・マッピング(VSM)のエクササイズを行い、その結果を全員に紹介しました。

彼女の次の目標は、アジャイルアプローチとAzure DevOpsスイートの一部であるAzure Boardsを使用して、TailspinチームにDevOpsの最初の一歩を踏み出すように説得することです。
Azure Boardsは、チームがコラボレーションし、より良い仕事の計画を立てるのに役立ちます。
このモジュールでは、チームが最初のボードを作成する方法を示します。

このモジュールでは、以下を行います。

  • Azure DevOps プロジェクトを作成する
  • Basic プロセスを利用した環境でAzure Boardに作業項目を追加する
  • チームメンバーへの作業項目の割り当てを行う

前提条件

この学習パスのモジュールは段階的にラーニングパスを構成しています。

そのため、このモジュールに取り組む前に、Evolve your DevOps practicesのラーニングパスから始めることをお勧めします。

このモジュールだけを行いたい場合は、Azure DevOps Organizationをセットアップが必要になるので、Get started with Azure DevOps を実施してください。

開発チームと再開

あらためて、一緒に仕事をするTailspin ToysのSpace Gameウェブチームを紹介しよう。

アンディの漫画

開発リードのアンディ

アミタの漫画描写

品質管理部(QA)のアミタ

ティムの漫画描写

運用チームのティム

マーラの漫画描写

開発者として入社したばかりのマーラ。アンディの部下になります。

マーラはDevOpsの経験があり、Azure DevOps を使用してチームがより合理化されたプロセスを採用するのを支援しています。

Agileって何?

アジャイルとは、ソフトウェア開発へのアプローチを説明するために使われる用語で、インクリメンタルなデリバリー、チームコラボレーション、継続的なプランニング、継続的な学習などを行うことを強調しています。
アジャイルはプロセスではなく、チームが行う作業を計画するための哲学や考え方です。
アジャイルは反復的な開発に基づいており、ソフトウェア開発で起こる避けられない変化に対してチームがより良い計画を立て、対応するのに役立ちます。
最新のリリース後のアンディとのマーラの議論を聞いてみましょう。

マーラ氏は、DevOpsでチームに興味を持ってもらうための小さなステップをいくつか踏んだと感じていましたが、進捗は停滞していました。
チームは前回のリリースのバグ修正に忙殺されて、他のことを考えることができなませんでした。

プロダクトマネージャーのアーウィンは、レーシングゲームのウェブサイトについて、チームは顧客からかなり批判的なのフィードバックされたことを知らせました。
これらの問題を解決するのはあまり楽しい仕事ではありませんでした。
アンディとマーラはコードを書き、それをテスターのアミタに渡していました。
アミタはいつも新しいバグを見つけて、コードを返さなければなりませんでした。
ビルドサーバーが故障し、
ティムが開発とテストで動作したゲームのウェブサイトも、本番では動作しませんでした。
誰もが長時間働き、週末の数日を失ってしまいました。

リリースを出荷した後、マーラとアンディはコーヒーを飲みに座りました。
二人とも疲れていました。
マーラは落胆していましたが、アンディは違う態度でした。

アンディ: なぜあなたがこの状況に驚いているのかわかりません。
ソフトウェアを世に送り出すのは大変なことだ。
いつも大変なんだよ。
今までとは違ったやり方を経験したことがあると言うのかい?

マーラ: 経験がありますし、ここでももっと簡単にできると思っています。
DevOpsが私たちを助けてくれると信じています。

アンディ: バリューストリームマッピングをしたのは覚えていますが、次は何をするつもりだい?
新しいリリースに取り掛からなければならないし、DevOpsはもう終わったかと思っていたよ。

マーラ: まだまだできることはたくさんあります。
最初の一歩を踏み出して、アジャイルな計画を立てるべきだと思います。
Azure Boardsを利用することで、改善すると思います。

アンディ: アジャイルとはどういう意味ですか?

マーラ: アジャイルとは、ソフトウェア開発に対するアプローチのことです。
「アジャイル」という用語は、2001年にAgile Manifesto で作られました。
マニフェストは、ソフトウェア開発へのより良いアプローチのためのいくつかの指導原則を確立しました。
マニフェストには次のように書かれています。

私たちの価値:
* プロセスやツールよりも個人と対話を重視するを
* 包括的なドキュメンテーションより動くソフトウェアを
* 契約交渉より顧客との協調を
* 計画に従うことよりも変化への対応を

アンディ:聞いてくれ。
もし、君が知ってる魔法の方法が我々の生活を楽にしてくれるというなら大賛成だ。
私が家に帰る頃には私の子供たちはいつも眠っている。
君が言うことは具体的な解決策が示されてない、とても表面的な言葉に受け取れるよ

マーラ:魔法ではありません。
少しずつではありますが、Azure DevOpsは、アジャイルプラクティスを実現するために必要なツールを提供してくれます。
まず、計画を立てたいときにはAzure Boardsを使うことができます。  
それでは、大きな問題点を洗い出すのため、これからビルドプロセスを説明していただけませんか?

たくさんのコーヒーを飲んだ後、マーラとアンディはビルドプロセスの最大の問題点を探します。
すべての問題は前回のリリース時に出てきたものです。
アンディが去った後、マーラは走り書きしたメモを見て、自分で少しだけアジャイル計画を実行することにした。
彼女は自分でAzure BoardsのBasicプロセスを使って、すべての問題を一箇所にまとめます。

彼女の次のステップは、ボードをチームに見せてチームを巻き込むことです。

アジャイル採用のススメ

チームは、アジャイルを採用するための最初の一歩を踏み出す準備をしています。
ここでは、どのチームでもアジャイルを組織に取り入れるために使える一般的な推奨事項をいくつか紹介します。

アジャイルの実践をサポートする組織構造を作る

ほとんどの組織にとって、アジャイルを採用することは難しいことです。
それは、組織内の多くの既存のポリシーやプロセスに挑戦するマインドシフトとカルチャーシフトを必要します。

伝統的に、ほとんどの企業は水平的なチーム構造を採用しています。
これは、チームがソフトウェアアーキテクチャーの部分に対応していることを意味します。
例えば、アプリケーションのユーザーインターフェースを担当するチーム、データアクセスを担当する別のチーム、そしてサービス指向アーキテクチャを担当する別のチームがあるかもしれません。

しかし、アジャイルプロジェクトでは、垂直的チームの方がより良い結果をもたらします。
垂直的なチームは、ソフトウェアアーキテクチャにまたがっており、製品の成果と一致しています。
例えば、アプリのメール部分を担当するチームがあり、チームメンバーは上述の3つの分野のすべてから来ているとします。
垂直的なチーム構造のもう一つの利点は、チームを追加することでスケーリングが可能になることです。

アジャイル技術とプラクティスについてチームメンバーをメンターする

アジャイル技術やプラクティスを採用する際に外部コーチを雇うチームもあります。
コーチは、組織の障害や自己中心的な仕事のやり方を取り除くために複数のチームと一緒に仕事をすることもあるので、指導と管理の両方のスキルを持っている場合が多いです。
また、コーチはチームメンバーにスタンドアップミーティングやレビューミーティングの運営方法などのアジャイルテクニックをトレーニングすることもできます。
しかし、時間が経つにつれて、チームメンバーがお互いを指導する能力を身につけることが重要になってきます。
つまり、ほとんどの仕事は、ほとんどの時間を一人で過ごしている個人ではなく、共同で行うべきだということです。

チーム内およびチーム間のコラボレーションを可能にする

アジャイルで成功するためにはコラボレーションが鍵になるとしたら、それを奨励する方法は何かあるのか?
ここではいくつかのアイデアをご紹介します。

文化変える

文化を変えるときには、いくつかのことを心に留めておきましょう。
まず、チームメンバーが静かで快適に仕事ができる場所を確保することが重要です。
気晴らしや騒音のない、集中できるスペースが必要です。

ミーティングは日常茶飯事であり、人の仕事人生を支配しているように感じることもあります。
チームメンバーがよりコントロールできるようにするためには、ミーティングにはアジェンダと厳格な時間枠が必要です。

Eメールやメッセージなどの非同期のコミュニケーションには圧倒され、すぐに返事をしなければならないと感じてしまうこともあります。
これらのコミュニケーションのすべてにおいて、「すぐに対応する必要がないこと」を明確にしましょう。

今や多くの企業では、リモートチームメンバーの存在が当たり前になっています。  
誰もが、すべてのチームメンバーがオフィスにいても、オフサイトで仕事をしていても、快適に感じ、平等に接する必要があります。  
コミュニケーションを通じたコラボレーションは、組織のDNAの一部になっているはずです。

たとえ意見の相違があったとしても、良好なコミュニケーションの重要性を強調しすぎることはできません。  
紛争解決は、アジャイルチームが持つべき良いスキルです。

クロスファンクショナル(機能横断的な)チーム

チームメンバーが協力して仕事をすることが重要であるように、チームにとってもお互いに協力し合うことが重要です。
機能横断的なチームは、新しいスキルや視点を追加し、全員が創造的に課題を解決する能力を広げることができます。
機能横断的なチームはまた、組織全体の結束力を高めます。
縄張り争いを減らし、全員が共通の目標に向かって仕事をしているという意識を高めることができます。

コラボレーションのためのツール

良いツールは、チーム内でも他のチームでも、アジャイルチームのメンバーがより効果的にコラボレーションするのに役立ちます。  
ここでは、あなたが始めるのに役立ついくつかの提案を紹介します。

  • Microsoft Teams . これは、チャット、会議、メモ、ファイル保存のためのワークプレイスを提供するアプリケーションです。
  • Skype . Skypeは使いやすく、汎用性の高いツールです。多くの人がすでにインストールしています。
  • Slack . Slackは、1つのインターフェイスから多くの個別のコミュニケーションチャンネルを提供します。
    これらは、プロジェクト、チーム、トピックなど、さまざまな方法で整理することができます。
    会話は保持され、検索も可能です。
    社内外のチームメンバーを簡単に追加することができます。
    Slackは、ソースコード用のGitHubのような多くのサードパーティツールと直接統合しています。

その他の一般的なツールとしては、Google Hangouts、Asana、Trello、GoToMeeting、monday.comなどがあります。
どれが自分のチームや会社のニーズに合っているのかを確認するために、オプションに慣れ親しんでみてください。

What is Azure Boards?

Azure BoardsはAzure DevOpsの中のツールのひとつで、チームが行う必要のある作業を計画するのに役立ちます。
Tailspinチームはこのツールを使って、どのような作業を行う必要があるのか、どのように優先順位をつけるべきなのか、より良いアイデアを得ることができます。

マーラさんは、Basicプロセスを使ってAzure Boards上で独自のプロジェクトを作成しました。
それは、彼女とアンディが特定したビルドプロセスの問題点を示しています。
マーラは簡単なデモのためにチームを集めます。

マーラ: こんにちは、皆さん。
私はAzure Boardsをセットアップして、私が思いついたWork Itemをいくつかお見せしたいと思いました。

アンディ:Work Itemって何ですか?

マーラ: Work Itemはプロジェクトの計画と管理をするために使用します。
そして、あらゆる種類の活動を追跡することために作成します。
具体的なWork Itemの種類としては、Todo タスク、修正すべきバグ、その他の問題などがあります。
これらのWork Itemに人に割り当てて、その進捗を追跡することができます。

具体的にお見せするほうがわかりやすいでしょう。ここにBasicプロセスを使ったAzure Boardsがあります。

最初の3つのタスクを示すAzure Boards

アミタ: まず、Basic プロセスについて教えてください。このプロセスは他にも選択肢はありますか?

マーラ: 4つのプロセスが用意されています。

  • Capability Maturity Model Integration (CMMI). これは本当に大規模な組織向けで、かなり複雑なので私は使いませんでした。
  • Scrum. Scrumuは、スクラムチームを率いるスクラムマスターに依存しています。  
    スクラムマスターは、全員がスクラムの理論、実践、ルールを理解しているかどうかを確認します。  
    私たちにはスクラムマスターはいません。  
    通常、何らかのトレーニングを受けて認定を受けた人が担当するので、今回はこちらを選びませんでした。
  • Agile. 私はいつもアジャイルについて話しているので、こちらを選択すべきかと思いました。
    でも、Basic プロセスに比べると考慮すべきことがいくつかあります。
  • Basic. Basicは、その名前の通り基本的プロセスです。
    シンプルですが、すぐに効果的な計画を立てるのに十分な役に立つプロセスです。
    Basicのワークフローでは、To DoからDoingへ、DoingからDoneへとWork Itemを進めていきます。

アミタ: OK、さっそくこれを使って始めてみましょう。
他のものに切り替えてもいいですよね?

マーラ:早速始めましょう!
では、数週間後に修正できそうな作業項目をいくつかピックアップしてみましょう。

アンディなら、これらの問題を特定することができるでしょう。
ただ、他のチームは疑問を持っています。

ティム: これらはほとんどがdevにおけるの問題です。
しかし、この話題をしている間に、他のチームがコードの脆弱性について話しています。
そして、私たちのコードが安全であることを示すように求められています。
このような作業を追加する方法はありますか?

マーラ:リストが最初から完全ではないのは理解しています。
このBoardに記載した問題は、アンディと私が先ほど話したものだけです。
そして、ここに記載した問題の中には、さらに小さなタスクに分解しないといけないものもあります。
もちろん、あなたが懸念する私はコードの脆弱性については理解できます。
アンディはどう思いますか?

アンディ: 今の状態でビルドを外に出すことは難しいでしょう。
まず、基本的な問題のいくつかから始めましょう。
私は、問題を追跡できる場所があることを気に入っています。
準備ができたら、バックログに課題を追加して、優先順位をつけることができます。

マーラ: 課題を追加する前に、みんなが取り組んでいることについてもう少し話しましょう。

各チームメンバーは、自分たちが取り組んでいることやその他の懸念事項を共有します。
ブレーンストーミング活動として、ホワイトボードに付箋紙を貼り付けます。

ホワイトボードはすぐにいっぱいになります。

付箋紙を貼ったホワイトボード

最終的にチームは7つのトップの問題に落ち着きました。  

みんなが見守る中、アンディはボランティアでAzure Boardsにタスクを追加します。  
ボードは以下のようになっています。

タスクのバックログ

アミタ:うわー、たくさんの問題があるわね。
これをどうやって全部直していくの?

マーラ: すぐにすべての問題を解決する必要はありません。
今のところ、私たちはバックログや仕事のリストを確認しています。
私たちが仕事を計画するときには、緊急性の高いものや重要なものを選ぶようにしています。

さらに議論を重ねた後、チームはマーラが最初に提案した3つの課題に取り組むことを決定しました。

  • ビルドサーバーの安定化
  • Gitベースのワークフローを作成する
  • ユニットテストを作成する

マーラ: これらは最も簡単な課題のように思えますし、最近出てきた課題にも対応しています。
プロジェクト、チーム、スプリントを設定しましょう。
そうすれば、誰が何をするかを決めることができます。

ティム: スプリントって何ですか?

マーラ: いい質問ね。
スプリントとは、私たちがタスクを完了するために持っている時間の量です。
スプリントは私たちの集中力を保つのに役立ちます。
最後に、達成したことを共有するための短い回顧会議を開きます。
その後、次の計画を立てることができます。

みんな緊張していますね。

マーラ:私たちはまだ勉強中です。
スプリントは通常、2週間から4週間です。
2週間と言ってみて、どうなるか見てみましょう。
これらはアンディと私が取り組めるタスクがほとんどです。
進捗状況を共有しながら進めていきます。
皆を巻き込む方法を考えよう

マーラとチームは良いスタートを切りました。

次のモジュールでは、プロジェクト、チーム、そしてAzure Boards上でいくつかのタスクを設定します。

Exercise – Azure Boardsを使って作業を計画する

ここでは、Azure DevOpsでプロジェクト、チーム、ボードを作成します。

Tailspinチームは、Azure Boardsがどのように機能するのか見てみたいと思っています。
事前の計画が終わったので、ツールの使用を開始し、計画したソリューションを構築することができます。

Basicプロセスを使用してAzure Boardsをセットアップする

このパートでは、TailspinチームのAzure DevOpsプロジェクトとAzure Boardsをセットアップします。

プロジェクトを作成する

ここでは、Azure DevOps プロジェクトを作成します。

  1. dev.azure.comでアカウントにサインインします。
  2. + New project をクリックします
    Create new project ダイアログボックスが開きます。
  3. Project namt フィールドに、Space Game – webと入力します。
  4. Descriptionフィールドに、「The Space Game website」と入力します。
  5. Visibilityは、プロジェクトを公開(Public)するか非公開(Private)にするかを選択します。今のところ、Privateを選択してください。
    オープンソースプロジェクトの作成者は、他の人がアクティブな課題やビルド状況を見ることができるように、多くの場合、Publicを選択します。
  6. Advanced をクリックします。
  7. Version controlはGitが選択されていることを確認します。
    Work item processBasic が選択されていることを確認します。
  8. Createを選択します。

しばらくすると、新しいプロジェクトの画面が表示されます。

Teamを作成する

ここでは、プロジェクトのチームを作成します。

  1. 左下のProject settingsをクリックします。
  2. Project detailsページのGeneralTeamsを選択します。
    プロジェクト名に基づいたデフォルトのチームSpace Game - web Teamが作成されているのが確認できます。
    ここではこのチームを使用しますが、実際には同じプロジェクトにContributeする複数のチームを作成することができます。
  3. Space Game - web Teamをクリックします。

すでにこのチームのメンバーになっていることがわかります。メンバーを追加してみましょう。

チームメンバーを追加する

今はチームにメンバーを追加するのに良い時期です。
必須ではありませんが、Azure DevOps Organizationに同僚を追加したい場合は、次のように行います。

  1. Membersの中で、Add をクリックします。
  2. 追加するユーザーのメールアドレスを入力します。次に、Save をクリックします。
  3. 追加したい他のメンバーに対して、このプロセスを繰り返します。

マーラは、自分とチームメンバーのエントリを追加します。
"andy@tailspintoys.com""mita@tailspintoys.com""mara@tailspintoys.com""tim@tailspintoys.com"

実際には、Azure Active Directory のようなアイデンティティとアクセス管理サービスを使ってチームを管理し、各チームメンバーに適切なパーミッションレベルを設定することもできます。
このモジュールの最後に、より多くの参考資料を紹介しましょう。

ボードを作成する

マーラたちはいくつかの課題を洗い出しましたが、ここでは、マーラがもともとBoardsに提案していた3つの作業項目を追加し、そのプロセスを実践してみましょう。

  1. 左側の列でBoardsをポイントし、表示されるメニューからBoardsを選択します。
  2. Space Game - web Team boardsを選択します。空のボードが表示されます。

最初は空のボードが表示されているAzure Boards

Basic プロセスを使用していることを思い出してください。
Basicプロセスには、To DoDoingDoneの3つのタスク状態があります。

スクラムなどの別のプロセスを選択した場合は、そのプロセスをサポートするレイアウトが表示されます。

  1. To DoカラムにあるNew itemの横にある緑色の + ボタンをクリックします。
  2. ビルドサーバーの安定化 と入力し、Enter を押します。
  3. 表示されたチケットにマウスオーバーし、省略記号 (….) にマウスを合わせて、[Open] を選択します。
  4. Descriptionフィールドに以下のテキストを入力します。

ビルドサーバーがフェイルオーバーし続けています。
OSであるUbuntu 16.04は、セキュリティパッチとアップデートが必要です。
また、ビルドツールなどのソフトウェアを最新の状態に保つ必要があります。

  1. Save & Closeをクリックします。
  2. 次の2つの項目も同様の手順を踏んでください。
Title Description
Gitベースのワークフローを作成する ソースコードをGitHubに移行し、どのように連携するかを定義します。
ユニットテストを作成する プロジェクトにユニットテストを追加して、リグレッションバグを最小限に抑える
  1. ビルドサーバーの安定化 を積み重なっているチケットの一番上にドラッグします。
    そして、「Git ベースのワークフローを作成する」を 2 番目の項目にドラッグします。
    最終的なボードは次のようになります。

最初の3つのタスクを示すAzureボード

スプリントの定義

マーラ:いい感じになりましたね。 それでは、スプリントを定義してみましょう。

Azure Boardsプロジェクトを作成すると、Sprint 1という初期スプリントが作成されます。
あとはスプリントに日付を割り当てて、タスクを追加するだけです。ここでは、チームに沿ってフォローする方法を説明します。

  1. 左側のメニューから、Sprintsを選択します。

スプリントメニューの場所が表示

  1. 右上のSet datesをクリックします。
  2. Iteration nameSprint 1 のままにしておきます。
  3. Start dateフィールドで、カレンダーを選択し、今日の日付を選択します
  4. End dateフィールドで、カレンダーを選択し、今日から2週間後の日付を選択します。
  5. Save and closeをクリックします。

タスクの割り当てとイテレーションの設定

IterationはSprintの別名です。

最初のSprintのWork Itemとタイムラインが設定されています。
ここでは、作業項目をスプリントに関連付け、自分にタスクを割り当てます。

  1. Boards で Work item を選択します。
  2. ビルドサーバーの安定化を選択して開きます。
  3. Iterationのドロップダウンリストで、Sprint 1を選択します。
    IterationにSprintを割り当てる
  4. 同じウィンドウから、Unassigned をクリックし、自分をタスクの所有者に設定し、Save & Closeをクリックします。
    タスクの所有者を割り当てる
  5. 他の2つの作業項目についても同様の処理を繰り返します。
    • Git ベースのワークフローを作成する
    • ユニットテストの作成

マーラ:できましたね。
Azure Boardsで最初のプロジェクトを作成して、最初に担当するタスクを割当ました。
これは素晴らしいですね。
アンディと私がこの作業をしていく中で、各作業項目をDoingの状態に移動させていきます。

アミタ: これはいいですね。
みんなで集まって、今自分たちにとって何が重要なのかを決めるのが楽しかったです。
そして、アンディが言っていたように、今はすべてを一箇所で見ることができるようになりました。

まとめ

このモジュールでは、TailspinチームはDevOpsプラクティスの採用に向けて最初の一歩を踏み出しました。
あなたは彼らと一緒に作業し、アジャイルな作業計画を始めるためにAzure Boardsを使用する方法を学びました。
Azure Boardsは、プロジェクトで何が起こっているかを簡単に確認し、作業を管理する方法を提供します。
Azure Boards を使って学んだことの中には、次のようなものがあります。

  • プロジェクトの作成
  • Work Itemの作成
  • チームメンバーへWork Itemの割り当て
  • Work ItemをSprint、またはIterationに関連付ける

さらに学ぶには

このモジュールでは、アジャイルとアジャイルプロセスに触れますが、学ぶべきことはまだまだたくさんあります。

アジャイルの利点についてもっと学びたい方は、アジャイル開発とは何か?(What is Agile Development?)をチェックしてください。

このモジュールでは、基本的なプロセスに従いました。
次のモジュールでは、このプロセスを使い続けます。
あなた自身のプロジェクトのために、あなたのチームに最も適したプロセスを選択する方法を学びましょう。

また、Azure Boards がサポートしている各プロセスについても詳しく知ることができます。

また、このモジュールでは、架空のチームメンバーをプロジェクトに追加しました。組織やプロジェクトにユーザーを追加する方法の詳細については、こちらを参照してください。

Azure Boards を使用して作業を計画し、追跡する際には、Azure Boardsのドキュメントを参照して、Azure Boards を最大限に活用することができます。