開発者

スクラムチーム

この記事では、

・スクラム開発での開発者って何すればいいの?
・ウォーターフォール開発の場合とマインド変える必要あるの?

と悩んでいる方に向けて

・スクラム開発における開発者の役割、具体的な業務
を説明します。

この記事を読むことで以下のことがわかります。

この記事で読んでわかること!
  • スクラム開発における開発者とは何か
  • 開発者の役割と責任
  • 具体的な業務
  • スクラム開発での開発者として活躍するためのTips

スクラムチームの概要を確認したい方は、以下記事をご確認ください。

スクラムチームの構成・役割
スクラムチームの構成や各ロールの役割を簡単に説明しています。プロダクトオーナーやスクラムマスター、開発者と実際に現場で担当する前にポイントを押さえておきましょう!また、スクラムチーム内の関係やステークホルダーとの関わり方も図示しています。

スクラムにおける開発者とは?

スクラム開発における開発者とは、スプリントを通して、利用可能なインクリメントを作成する人のことです。


ウォータフォール開発では、
・プログラマーであれば、プロダクトの設計・製造
・デザイナーであれば、ユーザーが利用するWeb画面の検討・作成
・テスターであれば、プロダクトに対するテスト設計・実施
・アナリストであれば、プロダクトやデータの分析・解析
というように、役割ごと担当する業務が分かれていることが一般的でした。

スクラム開発では、開発者は以下4つを心がける必要があります。
機能横断:仕事を成し遂げるために必要なすべてのスキルを持つ
自己組織化:どうやって仕事を進めるか(How)は自分たちで決める
自己管理:1スプリントにどれくらいできるかは自分たちで決める
協調的:全員で協力してスプリントゴールを目指す

これら4つを実現するためには、自身の専門性を発揮しながら、専門外のスキルを学び、それを教えられるレベルまで学習しようとする姿勢が大切です。

上記のようなマインドの人材を「T字型の人材」と言います。

役割・責任

開発者が必要とするスキルは、幅広く、作業の領域によって異なりますが、「スクラムガイド」では、以下の内容が開発者の責任として記載されています。

・開発者の責任
 - 各スプリントにおいて、利用可能なインクリメント及び、それに関連する全てもの側面に責任を持つ
 - 専門家として、各自インクリメントや作成物に責任を持つ

上記責任を果たすために、以下の役割を担います。

・開発者の役割
 - スプリントの計画を作成する(スプリントバックログを作成する)
 - 完成の定義を守り、品質を作り込む
 - スプリントゴールに向けて、毎日計画をアップデートする

具体的な業務

開発者は、インクリメント及びそれに関連する全ての側面に責任を持つ必要があります。
プロジェクト立ち上げ時期では、そのプロジェクトにアサインされていないことも多いと思いますが、あらかじめプロジェクトに関わることが決まっている場合もありますので、それぞれの時期でどのような業務を実施するか確認しておきましょう。

・プロジェクト立ち上げ時期
 - インセプションデッキの内容を確認をする

特に「やらないことリスト」「技術的な解決策を描く」「夜も眠れない問題」に関しては、開発者観点で記載に漏れがないか確認しておきましょう!

「インセプションデッキ」に関しては、以下記事で詳しく解説しています。

インセプションデッキ
スクラム開発では「インセプションデッキ」を作成するのが一般的です。チームでプロジェクトの共通認識を持つための重要な作成物となっています。この記事では、インセプションデッキの目的・メリット・作り方を簡単にまとめています。実際にスクラム開発を実施する前に、一読いただくことで、目的を見失わずに、スムーズに開発に取りかかれると思います。皆さんのお役に立てると嬉しいです。

・プロダクトバックログ作成時
 - ユーザーストーリーの内容を確認をする
 - スプリントスケジュール(期間・イベントの実施日・タイムボックスなど)を決める
 - 初回スプリントのプロダクトバックログアイテムの見積りをする

ユーザーストーリーは、ユーザーの要望が反映されたものになっているか、優先順位に違和感がないか、開発者の観点で不足している機能がないか、などを確認しましょう!

「ユーザーストーリー」に関しては、以下記事で詳しく解説しています。

ユーザーストーリー
スクラム開発では「ユーザーストーリー」を作成するのが一般的です。ターゲットとするユーザーを決定し、そのユーザーに対して、プロダクトを通して「どのようなことを価値」を提供するかを整理するために重要な作成物となっています。この記事では、ユーザーストーリーの目的・メリット・作り方を簡単にまとめています。実際にスクラム開発を実施する前に、一読いただくことで、目的を見失わずに、スムーズに開発に取りかかれると思います。皆さんのお役に立てると嬉しいです。

・スプリント中
 [スプリントプランニング]
 - スプリントゴールを確認する
 - スプリントバックログを作成する
 - スプリントバックログの見積り時間が、スプリント中の稼働時間内に収まっているか確認する
 - プロダクトオーナーとスプリントスコープ(実施するPBI)に関して、調整する

 [デイリースクラム]
 - 昨日からの作業状況、本日の作業予定、課題・問題・解決したことの共有をする

 [リファインメント]
 - 現在のスプリントで、PBIの見積誤りがあれば、POに共有する
 - 追加・変更があったPBIの内容に関して、POに質問する
 - プロダクトビジョンの確認やリリース計画に関して、POと認識を合わせる

 [スプリントレビュー]
 - レビュー前に、スプリントで達成できなかったことをPOと認識を合わせる
 - レビュー前に、インクリメントを披露するデモの準備をする
 - インクリメントを参加者へ向けてデモする
 - 参加者からのフィードバックをメモする

 [レトロスペクティブ]
 - スプリント中の改善事項を検討し、次のスプリントでのアクションを検討する

「スクラムイベント」に関しては、以下記事をご確認ください。

5つのスクラムイベント
スクラムイベントの概要や推奨されるスプリント期間、スプリント中のスケジュール、各イベントの参加者や発言権に関して説明しています。各スクラムイベントの詳細を学習する前に、スクラムイベントの全体像をしっかりと把握・理解しておきましょう!

必要なスキル

・アジャイル開発プラクティス
チームは「機能横断」「自己組織化」されたチームであり続ける必要があります。
より広範な分野の業務ができるように、個人が成長できる機会を設けるため、スプリント中にプラクティスを適応し、各自の成長につながるプロセス作りをすることが大切です。
そのため、開発者は「ペアプログラミング」「自動化された回帰テスト」「テスト駆動開発」など、アジャイル開発で代表的なプラクティスは身につけておきましょう!

・コミュニケーション能力
自身の作業状況や課題、改善策をお互いに連携することでスプリントゴール達成へ向けた透明性が上がります。また、小まめにPOと状況の連携をすることで問題が発生した場合の対処が早くなり、リスクの軽減ができます。これを実現するために、開発者はコミュニケーション能力も必要です。

・改善力、順応性
これまでウォーターフォール開発を主体で実施してきた人は、一度決めた仕様を変更したり、直近の開発スコープが変わることに不安を覚えるかもしれません。スクラム開発では、顧客のフィードバックや市場状況の変化によって、プロダクトの方向性や次のスプリントで実施することが頻繁に変わります。アジャイルのフレームワークに順応し、スプリントを重ねながら、より良いプロセスに改善しようとする姿勢が大切です。

とも坊

はじめはスプリント計画通りに行かないことがほとんどです
必ずと言っていいほど失敗するけど、そこから改善し、より良くしていくのがスクラムだよ

スクラム開発者として活躍するためのTips

これから開発者としてスクラム開発に参加する人は以下を意識してみてください。
すでに実施している人は、自分がどのくらい実施できているかチェックしてみてください。

  1. プロジェクト開始時のリスクをPOに共有できる
  2. PBLがReadyの状態の定義(インプットやアウトプットなど)をPOと認識合わせができている
  3. PBIの内容が曖昧なままスプリントバックログを作成しない
  4. 優先度が高いPBIから実施できている
  5. 自身の専門分野のPBIばかり担当しない
  6. スウォーミングの考え方が実施できている
  7. 知識や技術がない場合は、調査のためのSpikeを登録できる
  8. スーパーエンジニアの場合(がいる場合)は技術サポート役になる
  9. ドキュメントや試験などをそのスプリント内で完了させる
  10. リファクタリングを小まめに実施し、技術的負債を最小限にする

スクラム開発者のオススメ資格

スクラム開発者の資格は、以下がオススメです。

・認定スクラムデベロッパー(CSD)


画像:Odd-e Japan社のHPより引用

Scrum Alliance認定スクラムトレーナーによる研修を受講し、受講後に認定試験の受験資格が与えられます。認定試験で合格すると「Scrum Alliance」から認定証が発行されます。

まとめ

  • スクラムにおける開発者とは、スプリントを通して、利用可能なインクリメントを作成する人
  • 開発者は、インクリメント及びそれに関連する全ての側面に責任を持つ
  • 開発者は、スプリントバックログを作成し、デイリーで進捗をアップデートする役割がある
  • プロジェクト立ち上げ期は、インセプションデッキの内容を開発者視点で漏れがないか確認する
  • プロダクトバックログ作成の時は、スプリントスケジュールを決め、PBIの見積りをする
  • スプリント中は、デイリー、リファインメントで進捗を見直し、レビューでインクリメントをデモする

参考資料

スクラムガイド
IPA-アジャイル開発の進め方
スクラムを失敗させる51のアンチパターン
Odd-e Japan

Sponsored Link

コメント

タイトルとURLをコピーしました