なぜ事実を正確に記述できるのか(1)
以下はアンケートに正美氏への質問欄があったので書いてきたこと。
回答がいただければ(そしてそれが理解できれば)確実に次の段階に入れる。非常に楽しみ。
TMDと「単なるお絵かき」の違い
TMによる事業解析は、管理過程の情報を入力として「事実を正確に記述する」ことを第一段階の目的としている。
TMD(TM Diagram. T字形ER図)の姿かたちをしていても、事実が正確に記述されていない図は、「単なるお絵かき」とされる。
事実を正確に記述したTMDを見る人が見れば、その会社の事業が丸見えになり、強みも弱みも全部読める。
ところで、そういう素晴らしいTMDがあったとして、その絵は現行システムのデータベースをリバースしたER図とはぜんぜん違うだろう。
現行DBがTMで構築されていなければ、従業員マスタに部門コードがあったり、データを横持ちしていたり、「パフォーマンス向上のための非正規化」が施されていたりするかもしれない。
そういうDBにはそういうDB特有の問題があり、ある部分では事業の足を引っ張っているだろう。そしてその問題は「正確なTMD」には表されていない。
ここでわからなくなった。
TMDが「正しい」のはなぜか
正美氏は上流工程のoutputについて「それが正しいことを証明できますか?」と何度も問うていた。
「正しい」とは「現実を正確に記述している」ということだろう。正しいTMDを出力できたとしたら
と、こうなる。何だか不思議な感じがする。
TMDと現行DBの差は、アプリケーションが埋めているのだと考えれば、そんなに不思議ではないかもしれない。
一般に、現行システムのDBを見れば何でもわかるかというと、そんなことはない。アプリケーションのソースコードを突き合せてみないと何やってるか分からないことはよくある。
現実ではプログラムで表現されていることが、TMDではデータ構造で表現される。だからリバースしたER図だけ見ても分からないことが、TMDを見れば分かる。
... と考えれば、別に何でもないような気もする。
が、強み弱みが全部読めるという所が理解できない。ハズレや見落としが発生しないのはなぜだろう。
- ハズレ: TMDから読める弱みを指摘したら、アプリケーションですごいトリッキーな対策が取ってあって「別にそんな弱点はありません」て言われないか。
- 見落し: 現実のDBが原因の、TMDに表れていない弱みを見落とさないか。それはTMで再構築すると自動的に消えるから考えなくていいのか。
というわけで「正しい」とは、あるいは「事実を正確に記述する」とは何か、というものすごい入り口のところで躓いている。