見出し画像

【開発哲学5_3】『データベース・リファクタリング データベースの体質改善テクニック』第3章 データベース・リファクタリングのプロセス

感想

DBに関しても、やはり、

ペアプログラミング

が大事だねえ〜〜〜〜🕺

社内政治家は、、、

いつの時代も、システム設計の弊害でしかないなあ。
そういう人はいづれ淘汰されるんだけど、淘汰される時期を待っていたら、今の時代は変化が早いから、会社の方が先に淘汰されるかもしれないねえ。

ま、だからこそ

大掛かりなリファクタリングの前に、小さな改善を積み上げていって、社内に浸透させた方が早い。

その方法が良いと体感すればみんな、言わなくとも取り入れてやるからねえ。

詳細

見出しとしては、

  1. データベース・リファクタリングを行うべきか確認する

  2. もっとも適切なデータベース・リファクタリングを選択する

  3. 元のデータベールスキーマを廃止予定にする

  4. 変更前/変更中/変更後にテストする

  5. データベーススキーマを変更する

  6. ソースデータを移行する

  7. DBアクセスプログラムをリファクタリングする

  8. 回帰テストを実行する

  9. 作業のバージョン管理を行う

  10. リファクタリングを通知する

  11. この章で学んだこと

てな感じ。

全体を通して、

リファクタリングの鉄則

変更がそもそも必要か。
小さな変更を加えたら、すぐにテストをする。

についてコンパクトにまとまってる印象。

前章で

DB管理における最悪なパターン=増え続けるクエリと列

て書いたけど、そうなる大きな要因のひとつ

垂直的な統合が取れていない

について書かれてるなあって感じ。

垂直的な統合が取れない原因

・海外:DBや最新の機能に合わせて、組織のやり方を変える👉機能優先
・日本:組織のやり方に合わせて、DBや最新の機能を変える
👉組織優先

組織のやり方優先

社内政治=ユーザー度外視

使いにくいツールをユーザーが使い続けないといけない義務はない

ユーザーから使われなくなる = 淘汰の始まり

それでも目線がユーザーではなく社内にしか向いていない

DBやシステムに接する考え方は変わらない
=同じ歴史を繰り返す。

会社自体が社会から淘汰される。

ブランディングデザインの教科書でも

各部署は自分の部署の売上やノルマ達成にしか意識がいってないから、

ブランディング=マーケティング

と混同して、会議で民主的に進めると、あれも必要、これも必要になって、
ブランディング自体がおぼつかなくなる。

て書いてたんだけど、DBやツールも、

プロトタイピングやモックアップ前の段階で、

雁首揃えて会議は繰り返すのに、この列は必要とか、こういう統計も取れるような機能が欲しいなど、パンパンに盛り込みたがり、そこに部署間のパワーバランスや人間関係なんかで、

「あれ?その値なら、ここの列で同じもの入ってますよ〜〜〜」

と言っても、

「いや、うち専用の名称でここの値を別の列で独立させてほしい」、

「どうしても名前を入れないと嫌だ」

でどんどん列が増えるみたいなこともあったなあ。

正直そんなん、他の列の値で代用や流用するか、クエリや列名を別名で定義して、クエリを追加させたりできるのに。

「マスターテーブルに自部署の名前がないと!!!!」

と、自分達の意見を押し通そうとするだけなんだよねえ。
存在意義か何かと思ってんのかねえ。

クエリでできることをテーブルに盛り込んだら、
もはやマスターじゃないんだけどね。

で、会議で一度決まってしまうと、

「DBがパンパンだから、減らしましょうか?」

と提案しても、

引き算が苦手
(増やすことはできても減らす勇気はない)

だから、

「それをSEで何とかしろ」

と言い始めるんだよねえ。

で実際、

ADOとかDAOで処理速度やロールバック、セッションなんかを綺麗にしても、
今度は自分達の目先の作業を追い求めて、
増えすぎた列からどれを使って良いかもわからなくなったり、
勝手によくわかってないSEに列を増やす依頼したり
して、収集がつかなくなってたなあ。

「自分達でこの列は自分の部署専用で必要な列だって強硬に言ってましたよね?なんでその会議で決まったことすら忘れてんの?」

個人間の人間関係、世代間の上下関係、部署間の力関係じゃ、

DBもツールも動かない

のにな 笑
そ他の記事で書いたけど、どこかの三大メガバンクの一角なんか、統合前の旧銀行間の派閥争いで、システムに障害起こしまくったな💦

結局、、、

どこの組織も、自由を追い求めて、
データ自体に規則性がなくなり、自動化すらできないが関の山。
やりくりして何とかしても、その例外でさらに想定外が発生するし、
今後、こうと言っても、バグデータを量産する人ほど抵抗するか自分のやり方を追い求める。

規則がないと動けない国民性なのに、
入力規則なんかを作ることに一番抵抗する
何が自由か
わかってないからねえ。

まとめ

💃全てのイノベーションの弊害=社内政治🕺
まさに、
船頭多くして船山登る

この記事が気に入ったらサポートをしてみませんか?