EAの功罪-3 EAは桃源郷を語る

昨今、DX(デジタル・トランスフォーメーション)という言葉が賑わっているが、実は過去にも似たようなデジタル化の潮流があった。いま思い出すのも恐ろしい、そして、もう二度と関わり合いたくないEA(Enterprise Architecture)である。

先般、EAというIT開発方法論の概要を述べ、こと日本企業においては組織力学が働くことからなかなか理想通りには行かないことをお話した。
EAの功罪-1 理想のIT開発論とその現実 - 新鮮?
EAの功罪-2 地獄への道は善意で舗装されている - 新鮮?

今回はEAの功罪として功の部分、EAの良い部分に触れてみたいと思う。

EAは企業全体のウォーターフォール開発

EAは理想であって実際に適用するのは難しい。しかしながら、世界でも有数の天才たちが考え抜いた結晶だけあって、やはり有用な部分は多数ある。というより、いまでもなおIT開発の教科書としてこれ以上のものはないのではないだろうか。

とりわけ有用なのは「EAフレームワーク」だ。これを知っているだけでも違う。

EAでは、最上流フレームワークとして、複雑系である「業務とIT」を4つのレイヤで表現している。結構シンプルだ。各レイヤの詳細だったり具体的な成果物だったりは参考書籍をみたりググったりしてみればよいが端的には下記の通り。

#レイヤ代表的成果物
1業務 Business Architectureミッション、業務一覧、業務フロー
2データ Data ArchitectureERD/CRUD、データディクショナリ、コード表
3機能 Application Architecture機能マップ、機能要件、IT間連携
4技術 Technology Architecture非機能要件、採用プロダクト標準

業務プロセスを整理し、扱うデータを決め、機能要件や非機能要件を定義する。

こう書いてみると「普通の考え方」じゃん?と思うかもしれない。

そう、普通の考え方だ。

EAの基本的な立て付けは、個別IT開発における「普通の考え方」を会社全体のレベルにまで拡張し、複数ITが混在する環境においても適用してやろうぜ、ということだ。僕の理解では、EAは企業全体のウォーターフォール開発と解釈している。

EAは桃源郷を語る

さて、この「普通の考え方」というのがとても重要だ。

実際のところ、あなたの会社は普通でないことになっている。

たとえば、あなたの会社に「唯一の業務一覧ドキュメント」はあるだろうか。営業・開発・生産・調達・運用・人事・総務などたくさんの業務機能について、すべての業務フローを一元的に集約管理し、誰でも参照可能にしているだろうか。他部署の工夫を自部署に取り入れて組織力をあげる仕組みがあるだろうか。

たとえば、あなたの会社に「唯一のデータモデル(ERD/CRUD)」はあるだろうか。業務の変更にあわせてリアルタイムに更新しているだろうか。「顧客ID」と「お客様番号」と「得意先コード」が混在してたりはしないだろうか。

たとえば、あなたの会社では複数のITの画面構成は一定のルールに基づいているだろうか。あるITではメニューが横にあったり、他のITではメニューが縦にあったりしないだろうか。

データ可視化ツール(Tableau, PowerBI, QlikSenseなど)を無秩序に導入していないだろうか。Java, C#, Pythonなどプログラミング言語に採用基準はあるだろうか。Oracle, MySQL, MS SQL ServerなどをSIerのいいなりで導入していないだろうか。Zabbix, JP1, OpenView, Systemwakerなどが乱立していないだろうか。

 

もしも、だ。

企業全体で、業務・データ・機能・技術を一元的に統制管理できたらどうだろうか。

誰でも適切な業務ができるし、ITの画面ポリシーはすべて同じで使い勝手が良い。開発工数も少ないし、集中購買によって調達価格を下げるとこともできる。運用面で見ても扱うミドルウェアが少なければ効率的だし、ナレッジが溜まりやすいので人材育成も容易だろう。その結果、企業全体として品質・費用・納期ともに大きく改善するのではないだろうか。

EAはこうした桃源郷を語る。

経営層がコンサルに説得されるのも無理もないだろう。

たしかにこの「普通の考え方」が実現できるなら、業務とITのムリ・ムダ・ムラがなくなる。ムダな業務フローはなくなり、法外なIT開発費を支払わずに済む。それはすなわち、莫大な利益を目論むことができる。

まあ、すなわちウォーターフォール開発だ。

もしユーザニーズや市場動向などが変わらず、完全に数年後の未来予知ができて、ユーザが未来の業務プロセスをキッチリ決められるなら。そんな仮定が成立すれば、言うまでもなくウォーターフォール開発は理想的な開発手法だ。それと同じように、EAもやはり理想的な業務とITの最適化方法なのだ。

 

そしてDXにもつながる重要な点は、このレイヤの順番にある。

ちょっと長くなったので別エントリで話そう。

つづく。