読書感想 - Web API設計実践入門 ――API仕様ファーストによるテスト駆動開発

2024-08-20
Go 読書

Web API設計実践入門 ――API仕様ファーストによるテスト駆動開発

読了。

理論で終わらない、現場で使えるテスト駆動開発の正解例のひとつが提示されていると思う。

個人的に最も刺さったのは、E2E自動テストをやる目的が、読みやすい仕様書を書いて保守し続けることであること。仕様書をちゃんと書いて最新の状態に保つためのE2E自動テストである、という部分。

めっちゃわかる。自分もこれまで、仕様がよくわからないソフトウェアの保守運用、仕様がよくわからないUIの開発を通して辛酸を舐めてきた。

仕様がある程度明確であれば、その他の条件が悪かったとしても、ソフトウェア開発は何とかなる。逆に、仕様が明確ではないという状況下では開発組織のリードタイムが思ったよりも上がらない、といったことがよくある。仕様が明確であるかどうか、という点が、ソフトウェア開発における大きなボトルネックの1つ。あらゆる自動化を考える前に、仕様を明確にすること、仕様の明確さを保つこと、にもっと注力したらみんな幸せになる、と自分は思う。 APIの仕様を明確にし、その明確さを保守してゆくための手法として、本書で紹介されているAPI仕様開発フローが活かせると思う。おまけにメルペイでの実績があるというお墨付き。

難点としては、組織によっては、E2Eフレームワークの構築の難しさがありそうだということ。APIに依存するサービスの数が多い、とか、あらゆる理由によりソースコードのリファクタリングが難しい、とかである場合がこれに該当するかもしれない。

とはいえ、開発チームの中でもし自分が何でも自由に決められるのであれば、API仕様ファースト開発をぜひとも導入したい。