TL;DR

Tactical Programming。新機能の追加やバグ修正などで、何かを早く動作させることに重きを置く開発の進め方である。戦略的プログラミングと対になる。

仕組み

戦術的プログラミングではタスクをできるだけ早く終わらせようとするので、より良い設計を求めない。妥協が積み重なり、システムの複雑さは少しずつ増えていく。問題が起きてもリファクタリングより目先の機能実装を優先するので、複雑さはさらに増える。

注意点

一度戦術的プログラミングを選ぶと、後から変えるのは難しい。複雑さを一掃するのに数か月の作業が必要になり、それを後回しにしてまた目先の実装を優先してしまう。初期の開発は速くなるが、時間がたつにつれて複雑さが蓄積し、開発は遅くなる。

戦術的プログラミングを極端に推し進める開発者を Tactical Tornado と呼ぶ。他の人よりはるかに速く機能を実装するので経営陣からは英雄視されるが、そのコードに触れるエンジニアからは英雄視されない。

関連

出典