なぜ既存ドメインを理解せずに開発を続けるのか - 構造主義的視点からの考察
ぽえむです。
はじめに - 不思議な現象
社歴が浅いこの現場で、機能をローンチした経験のない私に、なぜか既存ドメインについての質問をいただく。 質問してくださる方々は、私より社歴が長く、実際にプロダクトを開発・運用してきたご経験を持っている。
この状況から見えてくるのは、多くの開発者が ドメインを理解せずに開発を続けている という仮設である。
「よくある」では済まされない問題
「多くの開発現場では、既存システムの全体像や設計思想を深く理解せずに、局所的な修正や機能追加を繰り返すことがよくある」
確かに「よくある」かもしれない。しかし、情報が溢れ、設計パターンやドメイン駆動設計の知識が広く共有されている現代において、なお思考停止的な開発を続けることがなぜ起こるのだろうか。
「よくある」と言えてしまうぐらい一般的な問題だからこそ、私たちはそれを打破すべきなのだ。
構造主義的視点 - なぜ人は構造に囚われるのか
この状況を見ていると、構造主義と脱構築の問題を思い出す。人は既存の構造に無意識に従い、その構造自体を問い直すことができない。
開発現場における構造とは:
- 「動けばいい」という暗黙の価値観
- 短期的な成果を重視する評価システム
- 要件を機械的にコードに落とす作業フロー
多くの開発者は、この構造の中で思考停止し、要件を短視眼的な設計に落とし込む。技術的負債を生み出しながら、それを「成果」として評価される。まるでギャンブルで得られる一時的な快楽に依存するように。
なぜ私は構造に抵抗するのか
振り返ってみると、私には「プリミティブな体験」があった。挫折を経て、できるようになりたいと一念発起し、時間を忘れて勉強した。誰よりも一所懸命取り組んだ。
しかし、なぜ他の人はそうしないのか?
ニーチェの「力への意志」
ニーチェは人間の根本的な駆動力を「力への意志」と呼んだ。これは単なる権力欲ではなく、「自己を超克し、成長し、創造する意志」を指す。
私の行動は、まさにこの「力への意志」の現れかもしれない: - 既存の「動けばいい」という価値観を拒否 - より高次の設計を追求 - 新たな価値(持続可能な開発)を創造しようとする
一方、既存の構造に安住する人々は、ニーチェの言う「畜群」的な生き方をしているのかもしれない。
加速主義的視点 - 破綻は変革の契機となるか
「人は痛みや危機感なしに既存の構造から脱却することは難しい」
この観察は加速主義的な視点を含んでいる。現在の思考停止的な開発を続けることで、いずれシステムは破綻する。その破綻が、真の変革のきっかけとなる可能性がある。
しかし、意図的に破綻を加速させることは倫理的に正しいだろうか?顧客や事業に実害をもたらすことを待つべきだろうか?
より建設的な道へ
単純な破壊や加速ではなく、以下のようなアプローチが必要かもしれない:
構造の可視化
- 現在の開発プロセスの問題点を明確に示す
- 技術的負債の真のコストを数値化する
小さな成功体験の創出
- ドメインを理解した設計の価値を実証する
- 部分的にでも、より良い設計を導入する
対話と教育
- 「なぜ?」を問い続ける文化の醸成
- ドメイン理解の重要性を共有する
おわりに - 孤独な戦いから協働へ
構造を認識し、それを脱構築しようとする道は孤独だ。しかし、その孤独な戦いを通じて、少しずつでも組織の文化を変えていくことができるかもしれない。
「よくある」を「あってはならない」に変える。その意識と行動が、より良い開発文化を作る第一歩となる。
思考停止的な開発から脱却し、ドメインと向き合う。それは単なる技術的な課題ではなく、私たち開発者の生き方そのものへの問いかけなのかもしれない。