アジャイル開発の向かない環境

Share on: このエントリーをはてなブックマークに追加

先日、9月19日(土)にXP祭り2020というイベントで5分間のLTをやってきました。

テーマはアジャイル開発の向かない環境

当日の発表資料はこちらになります。

内容について

私自身はアジャイルをやり方や各プラクティスよりも変化に対応するための考え方だと捉えています。 変化が生じない、あるいは最初からゴールもそこに至るまでのプロセスが明確な場合はウォーターフォールの方が良いとすら思っています。

その上で、アジャイル開発に関する知見は数々の書籍、記事、ブログ等で紹介されていますが、アジャイル開発が適さない環境について触れられていることが少ないと感じていました。 アジャイルが適さない環境、アジャイル開発を取り入れようとしても一筋縄ではいかない環境というものはどういう環境でどういう壁があるのかを紹介したものになっています。

本ブログでは資料の意図や、LTということで端折ってしまった部分を中心に記載しています。

1. 請負契約

請負契約の定義を「仕事の完成を約束して、完成することで報酬が得られる契約」としました。

開発サイクルを回し、顧客が実際に動くものをみる・触ることで微妙な追加や細かい変更が出やすくなります。 そして要望が出てくることで細かい軌道修正をし、価値を高めていくことが狙いですが請負契約の場合ですと、契約にある完成がどういう状態なのかブレやすくなります。

また、発注側は請負契約にすることによって金額が決まっていることが多いので追加要望に対する追加予算が取れるかどうかは不透明な事が多く、結果的に顧客は要望を出すことによって期待値は上がるが予算が無いため結果的に尻すぼみになったような印象を残すことも起こりえます。

既に信頼関係の成り立っている顧客とであれば不可能ではないと思いますが、やはりまずは契約形態を適したものに見直すのが必須だと思います。

2. 既存システムのリプレイス

リプレイスを「機能を変えず中身を作り変える」と定義しました。 「機能を変えず」というのがちょっと限定的で分かりづらくなってしまいますが、例えばバックエンドで使われている言語やフレームワークのバージョンアップ、オンプレからクラウドへの移行などを想定しています。

このケースを挙げた意図はやることが明確になっているという点です。 この場合、テストコードや作業手順などで網羅し一つずつ潰していくという進め方になると思います。 また、自分がPMだった場合はリプレイスと仕様変更や機能追加をできるだけ一緒に行わないように気を配ると思います。

3. 正確性、安全性、信頼性が重視されるプロジェクト

これは言い換えると失敗が許されないプロジェクトのことを指しています。 失敗を何と定義するかという問題がありますが、バグが許容されないシステム・後から変更をしづらいシステムを想定していました。 資料内では基幹システムや外部ベンダーとの連携が必要なシステムを例に挙げましたが、共通しているのは何度もやり直せない環境であることです。

アジャイル開発の進み方を表現すると、ゴールに向かって一直線ではなく細かい方向修正を繰り返しながら向かうようなものだと思います。 この細かい修正に対し、(人的・金銭的に)多大なコストが発生する場合はなかなか難しくなるので挙げました。

この場合に関してはいかに失敗出来る環境・やり直せる環境を作れるかで大きく変わると思います。

LTをやった感想・反省点など

リモートでのLT発表は初めてだったのですが、Zoomを使った様々な改善点がありました。

モニタは2台必要

プレゼンテーションモードにしてZoomで画面共有をすると次の画面やメモが見えないので、流れを暗記して挑む必要がありました。

参加者の表情が見えない不安

自分が普段何か発表をしたり、会議で発言をする際には相手の表情や仕草といった反応に気を配っています。 例えば重要なポイントを話した時に、頷いているのか無反応なのか首を捻っているのか笑っているのか、などの反応を見て、 それによってさらに強調するのか噛み砕いた例を述べるようにするのかなどを判断しています。

ところが今回は前述のようにモニタ1台でフルスクリーンにしていたため、閲覧者の表情が映せませんでした。 加えて、リモートのマナーとして閲覧者はミュートにしていることが多いので、相手の顔が見えない&音も聞こえないためソロで録画しているような変な緊張感がありました。

初参加のイベントの空気感

XP祭りというイベント自体への参加が初めてだったので、LTの空気感もよく分かっていませんでしたが相当カジュアルでした。 自分だけちょっと堅すぎる発表になってしまったので、もし事前にXP祭りでのLTの雰囲気を知っていたら「こんな環境じゃアジャイルできない!」というタイトルでフリップ芸のようにしてテンポ良くしたんじゃないかな、と思います。

まとめ

LTをやることで自分の考えを整理する機会になるし、期日があるので確実にアウトプットできるので発表できて本当に良かったと思います。

今後も引き続きイベントを見つけてはLTやセッション公募に申し込んでいこうと思います。