Q. ログインや共通処理はいつ作ればいいですか?

効率を重視する開発の場合、画面遷移のなかで必ず通過するログイン処理や、機能を開発するときに利用する共通処理のようなものを先に作りたくなります。

しかし、アジャイル開発で最初に追求しなければいけないのは、「効率ではなく効果」です。 作っているプロダクトが効果がありそうかどうかをなるべく早く明らかにすることが重要であり、そこで効果がないと分かれば、ピボットしたり開発を止めたりといった判断をします。 この判断は早いほど、時間とお金の無駄が少なくなります。

つまりログインや共通処理のようなものを先に作って、本来早期に評価すべきものを後回しにするのは良いやり方ではないということになります。 スプリントレビューにステークホルダーを呼び、そこでログインできることだけを見せても、何ら評価ができません。

まずはプロダクトとして早く評価や検証を行いたい箇所を先に作りましょう。 その上で、ある程度検証ができた段階からログインのような処理を作っていきます。コードをきれいな状態に保っていれば、既に書いたコードの多くに手をいれなくてもログインのような処理は組み込むことができます。

また、共通処理は自然発生的であることを認識しておきましょう。 機能を開発している過程で似たようなことをやりたい、同じコードをコピーペーストしたいといったタイミングで共通処理として切り出していきます。 最初から将来のことを考えて共通処理を作っても、それを全部使うかどうかが分からないので無駄です。