前回から、DOA(データ中心アプローチ)をテーマにしています。もともと私は本ブログを、ITアーキテクトを目指す方や、同じ志を持つ実践者に向けて書いていますが、こうした方々にとってはDOAの考え方は馴染み深いでしょう。近年の複雑なソフトウェア開発では、DOAなしで進めると悲惨な結果を招きかねません。私も多くの失敗プロジェクトを見てきましたが、DOAの考え方があれば結果が違ったものも多々あります。プロジェクトの状況にもよりますが、良識あるプロジェクトマネジャーやアーキテクトが率いる開発では、DOAは常識と言えます。しかし、このように構築された個々の情報システムが現在、デジタル変革の足枷となっていることも事実です。これはなぜでしょうか。従来のDOAはソフトウェア工学としては大きな進歩でしたが、企業の経営マネジメントとしては大きな課題が残されたままと言えるのかもしれません。今回はこの視点から始めたいと思います。
***
<ソフトウェア開発現場におけるDOA的課題>
1960~70年代には、業務プロセスやシステムの機能に焦点を当てた「POA(プロセス中心アプローチ)」が主流でした。しかし、業務システムが複雑化するにつれ、データの重複やシステムの保守性低下など、POAの問題点が顕在化してきました。そこで、データに着目してシステムの分析・設計・実装を行う「DOA(データ中心アプローチ)」が登場しました。
企業にとってデータは「資産」であり、将来にわたって組織的に管理・活用する必要があります。DOAでは、すべてのプログラムが共通に利用するデータ構造を、重複や不整合のない形でモデリングします(データモデリング)。ここで、一つのデータは原則として一つしか存在させず(複製を作らない)、この原則を「one fact in one place(1つの事実は1カ所で管理する)」と呼びます。機能や状態遷移(実行順序)などは、データモデルとは別にモデリングします。DOAでは、データ構造とプログラムが切り離されています。さらに、一度モデリングしたデータ構造は長期にわたって変化しにくいとされます。そのため、POAに比べてシステムの保守や拡張が容易で、構造的に安定したシステム構築が可能になるという考え方です。
私の前職時代でも、複雑なソフトウェア開発においては、データ構造の設計を最優先とし、データベース設計を基盤にアプリケーション開発を進めるのが基本戦略でした。この戦略は、変化の激しい現代のソフトウェア開発でも依然として有効です。しかし、このアプローチが全ての問題を解決するわけではありませんでした。課題として、次のような点が挙げられます。
全体設計・ガバナンスの欠如
部分的に最適化されたシステムが乱立し、全体的なシステムアーキテクチャの視点が欠けているため、統一的な管理やガバナンスが難しくなっています。その結果、システム全体が複雑化し、運用や保守に多大な労力を要するようになっています。従来のDOAがプログラムを手段ではなく目的化してしまったことが一因でしょう。ユーザーが求めるのは、経営や業務に役立つ情報やデータですが、データはプログラムの脇役として扱われてきました。サイロ化(部門ごとのデータ孤立)
その結果、部門ごとに個別最適化されたシステムが独立して構築され、システム間でのデータ連携が不十分となり、データの重複や不整合が発生しやすくなりました。このため、全社的なデータの統一性が失われ、正確な意思決定が困難になっています。データ統合の困難さ
さらに、システム間でデータフォーマットや定義が異なるため、データ統合が難しくなり、システム全体の一貫性が保てません。これにより、データの分析や活用が困難となり、経営戦略の立案や実行に支障をきたしています。
要するに、エンタープライズの視点が欠けているのです。今こそ「プログラマーの復権」ならぬ、「データ中心の復権」が求められています。ソフトウェア中心の考え方から、真の意味でのデータ中心へと発想を転換する必要があります。現代はデジタル社会に向かっており、それに適応するためには、企業の情報システムも設計を見直すことが求められます。部分最適化されたシステムがその障害となっている現状を打破するためには、視点を高め、DOAアプローチをスパイラル的に発展させていくことが不可欠です。現代において、DOAに期待される要素は以下の通りです。
エンタープライズデータモデルの導入と推進
データ中心アプローチは、個別システムごとのデータ管理から脱却し、企業全体のデータモデルを策定し、それに基づいてデータを設計・管理する形へ進化する必要があります。これにより、部門ごとのデータサイロ化を解消し、全社的にデータの一貫性を確保することが重要です。データガバナンスの強化
データの整合性や品質を保つためには、データガバナンスを強化し、明確なルールや役割分担を設定することが不可欠です。具体的には、データの標準化、メタデータ管理、アクセス権限管理、データライフサイクルの管理を強化し、データの信頼性を向上させる必要があります。データ中心アプローチの文化的変革
技術的な進化だけでなく、組織全体でデータを重視する文化を醸成することも大切です。経営層から現場まで、データの重要性を理解し、データに基づいた意思決定を行うことが企業の競争力向上につながります。そのためには、データリテラシーの向上やデータ主導の文化を組織に定着させる努力が必要です。
DOAは従来の個別システム最適化から脱却し、全社的なデータ統合やガバナンスを強化し、デジタル時代に対応する形へと変わっていくことが求められています。このように、組織全体でDOAに取り組むことで、単なる個別アプリケーションの最適化にとどまらず、全社的なデジタル変革やグローバル規模でのアプリケーション構築が実現できるでしょう。
<企業情報システムの経糸を捉えよう>
ここで視点を変えて考えてみましょう。以前のコラムで「プロダクトとしてのデータ」という概念に触れました。今回は、メーカーにとって基本である「生産の構造」を例に考察を進めます。ものづくりにおいて、生産の構造を正しく理解することは非常に重要です。
「生産の構造」は、図のように「工程と作業の網目構造」として捉えることができます。
工程(Process): 材料から製品に至る流れで、時間や空間と共に変化する過程
作業(Operation): 人や機械が時間や空間の中で製品に働きかける過程
工程は、材料から製品に至る流れであり、これが「経(たて)糸」となります。そして、その経糸に対して「緯(よこ)糸」として、人や機械が次々に品物に働きかける過程が作業です。すなわち、すべての生産工場は「工程と作業の網目構造」として理解できます。ここで重要な点は、「工程の改善は作業の改善に先行して行われるべきだ」という点です。
情報システムの生産過程においても、同様の考え方が当てはまります。その理解に有効なのが「AP鳥瞰図」です。AP鳥瞰図は企業の背骨(スケルトン)であり、企業活動を支える基盤を示すものです。この背骨を明確にし、適切にマネジメントすることが、情報システムにおける「工程(Process)管理」に相当します。AP鳥瞰図は、上空から全体を俯瞰する「バーズ・アイ」視点で、企業全体を俯瞰的に捉え、ビジネスにとって重要なデータに焦点を当てます。
近年、情報システムの範囲は広がり、LOB(Line of Business、事業部門)から全社レベル、さらにはグローバルなグループ企業群へと拡大しています。ここでのLOBとは、各事業本部が業務を遂行するための主要な基幹アプリケーションを指しますが、「業務ドメイン」と言い換えてもよいでしょう。
AP鳥瞰図については以前のコラムで詳しく解説しているのでそちらに譲りますが、ここで強調したいのは、これからのDOAでは、エンタープライズレベルのモデルが不可欠であるという点です。現代のソフトウェア開発の現場では、「作業(Operation)」レベルの話が賑わいがちです。開発民主化や最新技術の活用の視点も大事でしょう。しかし、それに先行して取り組むべきは「工程(Process)」レベルの改善なのです。現代のソフトウェア開発において、DOAがますます重要になっていると考えます。
<主要データはどこにある?>
先ほど「主要なデータ」という言葉を使いましたが、それは何を指すのでしょうか?「主要なデータ」とは、企業活動を支える背骨を形作る「もの」や「こと」を表すデータです。これを明確にしてマネジメントすることが、プロセス管理に相当します。さらに言えば、企業にとって「主要なデータ」が何かを突き詰めて考える必要があります。特に、経営マネジメントのPDCAサイクルに関わるデータ(例: 取引実績データ)は、必ず押さえておくべきです。日々のオペレーションに必要なデータだけでなく、マネジメントの分析に必要なデータにはどのようなものがあるでしょうか?また、その企業にとって他社との差別化要因となる「自社の強み」を示すデータは何でしょうか?データを経営資産として捉えていますか?
「主要なデータ」とは、組織の運営、意思決定、パフォーマンス向上を支える重要な資源です。繰り返しになりますが、企業情報システムの経糸として、ドメイン横断的に企業を支えるデータに着目することが重要です。それは業種業態によって様々ですが、以下に、一例をあげてみます。
1. 財務データ
企業の経済的な状態を把握するためのデータ
2. 顧客データ
顧客の属性や行動に関するデータ
3. 製品およびサービスデータ
企業が提供する製品やサービスに関するデータ
4. 人事データ
従業員に関するデータ
5. サプライチェーンデータ
原材料の調達、製品の製造、配送に関わるデータ
6. 販売およびマーケティングデータ
マーケティング活動の効果や販売状況を分析するためのデータ
7. 運用データ
稼働率データ、保守・修理履歴、サービス提供状況など、データ日常業務の効率性を測るためのデータ
8. 法務およびコンプライアンスデータ
企業の法的義務やコンプライアンス遵守に関するデータ
9. パフォーマンスデータ
KPI(主要業績評価指標)や、生産性指標、収益性指標企といった企業全体の業績や戦略目標の達成度を測定するためのデータ
***
企業情報システムを織物に例えると、経糸(たていと)がデータで、緯糸(よこいと)が情報システムの基盤や業務プロセスだと言えます。 経糸であるデータは、織物全体の基本的な構造を形成し、しっかりと張られることで全体の安定性を保ちます。そこに緯糸であるシステムやプロセスが織り込まれることで、具体的な機能や価値が生まれます。このように、データ(経糸)が正確で一貫性があることで、情報システム(緯糸)との組み合わせによって高品質な「織物」が完成します。つまり、経糸としてのデータは情報システムの土台であり、その上に緯糸としてのシステムやプロセスが組み合わさることで、企業にとって価値ある情報基盤が構築されるわけです。