チョイネタ:大規模システム開発時にはサブシステムのMockを作るべし

 本当にチョイの小ネタ。

大規模システムを開発する時はサブシステムのモック(Mock : インターフェースは同じで機能を大幅に制限したダミー)を用意しましょう、ってこと。

例えば、何かの業務システムがあって、その中に「認証システム」があってそれが基幹の従業員DBを参照していたとする。(よくある構成だよね)
その場合、認証システムのMockを作っておかないと開発環境やテスト環境まで本番の基幹従業員DBに接続する必要ができてしまって、業務ポリシーとかセキュリティーとかで問題になる。(更新機能があったりした場合は目も当てられない)

付随して、開発者が個別の開発環境を作る為の設定とか前提条件が多くなりすぎて作業の立ち上げの敷居が高くなってしまう。
開発環境構築するまでにDBの接続申請して~とかってヤでしょ?

できればMockはリモートのDBにすら接続しない、それで完結した独立モジュールが好ましいと思う。
Javaで開発しているのであれば、本番のサブシステムjarをMockのjarで差し替えておけばOKグライノヤツで。

特に「認証サブシステム」「DB」「印刷出力」はMock化しておかないと開発とテストが面倒で死んでしまう。

当たり前と言われそうだが、知っておくべき小ネタということで。