あらすじ:
平凡な30代のシステムエンジニア たかし が、ブックオフで何気なく見かけて買った『孫子の兵法』の本。
家で読んでいると孫子の兵法を教えてくれる謎のマスコット「そんしくん」が現れ、 たかし の様々な問題に孫子の兵法を使って解決に導いてくれるのであった。
そしてなぜかそんしくんはシステムエンジニアリングに詳しい。。。
第7章:地形 – テクノロジースタックの選択
たかしは、新しいプロジェクトのためにテクノロジースタックを選択する必要があった。しかし、どの技術を使うべきか迷っていた。そこで、そんしくんに相談した。
「そんしくん、どうすればいいの?」
「孫子の兵法によると、地形は敵味方の勢力を左右する重要な要素だよ。地形に応じて戦略を立てることが勝利のカギだよ」
「地形?テクノロジースタックと何の関係があるの?」
「テクノロジースタックは、プロジェクトの地形と言えるんだ。技術の選択は、開発のスピードや品質やコストに影響するでしょ。だから、プロジェクトの目的や要件や予算や期限に合わせて、最適なテクノロジースタックを選ぶ必要があるよ」
「なるほど。でも、どうやって選ぶの?」
「孫子の兵法には、六種の地形があると書いてあるよ。それぞれに特徴や対策があるよ。テクノロジースタックも同じように分類できるよ」
「え?どういうこと?」
「例えば、孫子の兵法では、通行しやすくて敵味方が互角な地形を平地と呼ぶんだ。これは、一般的で安定したテクノロジースタックに当たるよ。JavaやPHPやRubyなどがそうだよ。平地では、敵と正面から戦うことが多いんだ。だから、競争力を高めるためには、技術力や経験やチームワークが重要だよ」
「へえ、なるほど」
「また、孫子の兵法では、通行しにくくて敵味方が不利な地形を険地と呼ぶんだ。これは、新しいかつ難しいテクノロジースタックに当たるよ。AIやブロックチェーンやVRなどがそうだよ。険地では、敵に先手を取られると危険なんだ。だから、スピードやイノベーションやリスク管理が重要だよ」
「うんうん」
「他にも、孫子の兵法では、通行できない地形を閉地と呼ぶんだ。これは、古くて使われなくなったテクノロジースタックに当たるよ。COBOLやVB6やFlashなどがそうだよ。閉地では、敵に包囲されると脱出できないんだ。だから、早く転換するか、保守するかの判断が重要だよ」
「そうか」
「さて、たかしくんはどんなテクノロジースタックを選ぶべきだと思う?」
「うーん……」
(続く)
コメント