ソフトウェア開発は技芸(アート)か工学か、という問題についてときどき思い起こして考える。アジャイル開発やその周辺について学び考えている時はソフトウェア開発を技芸と捉えていることが多い。ソフトウェアは、高いマインドセットを持つ少数のエンジニアによって作られる作品だ。大規模ソフトウェアや、システムオブシステムズといった複雑なソフトウェアについて考えるときには、ソフトウェア開発を工学として考えている。生産性と品質を管理し、作業のパイプラインが淀みなく流れていくようにマネジメントするのだ。どちらが正しくて、どちらが誤っているということはない。境界に立って、腕をまくる・・・。 2011年9月に刊行された「Making Software ―エビデンスが変えるソフトウェア開発」を読んで、ソフトウェア開発の工学的な側面についてまた考えることになった。 本書はひとことで言うと(私の理解では)『ソフトウェア開