クラウド情報モデル
(CIM) の Supplier エンティティは、特殊な Party Role(当事者の役割)です。これは、企業に商品またはサービスを供給する役割を果たす当事者 (組織または個人) を表します。CIM は Party (企業または個人の永続的なアイデンティティ) をそれが果たす Role (役割) から分離するため、マスターデータを複製することなく、同じ当事者が同時に Customer、Supplier、および Partner になることができます。これがこのモデルの中核となる相互運用性の約束です。つまり、調達、ERP、物流、および分析システムが「サプライヤー」とは何かについて合意できるようにする、アプリケーションに依存しない共有ボキャブラリーを提供することです。
Supplier エンティティには、ID と分類 (サプライヤーが誰であるか) と パフォーマンス スコアリング (サプライヤーのパフォーマンスの程度) という 2 つの幅広い属性グループがあります。スコアリング属性は、契約 (contract)、満足度 (satisfaction)、競争力 (competitive) の 3 つの重み付けされたカテゴリにグループ化され、単一の supplierScore に集約されます。これらの要素がどのように組み合わされるかを理解することは、CIM 上にサプライヤー スコアカード、ベンダー マスター データ、または調達分析を実装するすべての人にとって不可欠です。
重要なポイント
- Supplier はスタンドアロン エンティティではなく、Party Role です。 Party からアイデンティティを継承し、ロール固有の属性を追加するため、顧客マスターデータからサプライヤー マスターデータをフォークさせる必要はありません。
- スコアリングは、重み付けされた 3 カテゴリ モデルです。 契約、満足度、および競争力の各指標には、それぞれ
weightPercentとweightScoreがあり、全体的なsupplierScoreはそれらを組み合わせたものです。 - ほとんどのレート フィールドは、パーセンテージまたはカウントを表す整数として表現されます。これによりモデルは単純に保たれますが、丸めや正規化の決定は実装側に委ねられます。
idとactiveFromDateは必須です。 すべてのサプライヤー レコードには、安定した GUID 主キーと、アクティブ期間の開始日が必要です。isCarrierは軽量な特殊化フラグであり、物流ロジックが別個のエンティティを設けずに輸送業者 (例: FedEx, UPS) を識別できるようにします。- CIM は拡張されるように設計されています。 このモデルはオープンソースであり、フォークして適応させることが意図されています。したがって、これらの属性をクローズドなスキーマではなく、ベースライン コントラクトとして扱ってください。
なぜ Supplier が Party Role としてモデル化されるのか
CIM における最も重要な設計上の決定は、Party / Party Role の分離です。このパターンは、TM Forum の情報フレームワーク (SID) などの確立されたエンタープライズ モデルや、一般的なマスターデータ管理の実践にも見られます。Party とは、法人、組織、または個人といった永続的な存在です。Party Role は、その当事者が企業と結ぶ期間限定の関係です。
これが重要である理由は、実際のビジネスでは一つの組織が多くの役割を担うためです。受託製造業者は、完成品を販売し (Supplier)、コンポーネントを購入し (Customer)、製品を共同開発する (Partner) ことがあります。それぞれを個別のレコードとしてモデル化すると、ベンダー/顧客マスターの重複、照合の悪夢、および不整合な階層が発生します。Supplier をロールにすることで、CIM は単一の Party を複数のロールに関連付け、一つの「ゴールデンレコード」を保持することを可能にします。
実務上の影響:
- 重複排除は Party レベルで行われます。 同じ Party を指す 2 つの Supplier レコードは、同一の法人です。
- ロールは時間的なものです。
activeFromDateおよびactiveToDateフィールドにより、履歴を削除することなくサプライヤー関係の開始と終了を管理できます。 - ロール固有のデータはロールに保持されます。 ベンダーのランキングやスコアカードの指標は、サプライヤーとしてのコンテキストでのみ意味を持つため、Party ではなく Supplier に属します。
ID と分類の属性
ID 属性は意図的に最小限に抑えられています。これは、多くのソース システムにきれいにマッピングされる必要がある共有モデルの典型的な設計です。
関連: — ハイブリッドクラウドとオンプレミスの統合のためのエンタープライズ iPaaS.
id(guid, 必須) — 主キー。ナチュラルキーではなく GUID を使用することで、複数のシステムからレコードをマージする際の衝突を回避します。activeFromDate(date, 必須) — サプライヤー関係がアクティブになった日。activeToDate(date) — 終了した場合の終了日。supplierType(string) — 小売業者 (Retailer)、販売業者 (Distributor)、製造業者 (Manufacturer)、商人 (Merchant) などの自由形式の分類。isCarrier(boolean) — サプライヤーが FedEx や UPS などの輸送業者の場合に true。supplierSpend(integer) — そのサプライヤーから製品を調達するために費やされた合計コスト。
supplierType に関する注意: これは単純な文字列であるため、スキーマによる制限ではなく、慣習による制御語彙 (controlled vocabulary) です。実際の導入では、列挙型 (enumeration) や参照データリストで制限する必要があります。そうしないと、「Manufacturer」、「manufacturer」、「Mfg」のように表記が分かれ、レポートが断片化してしまいます。これは共有モデルにおける柔軟性と一貫性の古典的なトレードオフであり、CIM は実装者が厳格に管理することを期待して柔軟性に傾いています。
同様に、supplierSpend が整数であることは、通貨とスケールの問題を提起します。このモデルでは通貨や最小単位の規則が指定されていないため、地域をまたいで支出を集計する前に、最小単位で保存し、独自の拡張機能で通貨コード フィールドとペアにするなどの決定を行う必要があります。
サプライヤー スコアカード: 契約、満足度、競争力
Supplier エンティティの中核となるのは、3 つの測定カテゴリを重み付けして合成した スコアカード です。各カテゴリには、weightPercent (合計にどれだけ寄与するか) と weightScore (そのカテゴリの指標を分析した後に割り当てられるスコア) があります。全体的な supplierScore は次のように定義されます:
私たちの選択: — ビジネスチームが実際に構築できる自動化主導の iPaaS.
(契約の重み × スコア) + (満足度の重み × スコア) + (コスト/競争力の重み割合 × スコア)
契約パフォーマンス指標
これらは、購入契約に紐づいた客観的な運用指標です:
contractOnTimeDeliveryRate— 約束した日付に対する期日どおりの納品数 ÷ 納品合計。contractDeliveryCorrectnessRate— 正しい数量での納品数 ÷ 総納品数。contractProductQualityRate— 欠陥のある製品の割合。contractProductReturnRate— 返品された製品の割合。contractInvoiceAccuracyRate— 過去12か月間に請求書が間違っていた頻度。contractSLAIssueRate— 過去12か月間にSLAが違反された回数。contractBudgetCostRate— 合意された発注価格を上回る単位コストの差異の割合。contractSourcingCycleDays— 調達開始から契約署名までの日数。
満足度の測定
これらはより主観的で、関係性を重視した評価です:
satisfactionCustomerServiceRank— アカウント管理の問題がどのようにルーティングされ、解決されるか。satisfactionTechnicalSupportRank— トレーニングとドキュメントがどのように評価されているか。satisfactionEthicsRank— 労働慣行、安全な労働条件、および配送資格。
競争力の測定
これらは、サプライヤーが代替案と比較してどのような位置にあるかを捉えたものです:
competitiveCostAvoidanceRank— 無料のトレーニング、配送、および同様の譲歩を通じて提供された価値。competitiveMarketingRank— サプライヤーに関連付けられたグッドウィル(営業権・信用)の程度。competitiveProductPriceRank— 関係期間を通じて、最安値またはそれに準ずる価格を得られる可能性。competitiveWarrantyRank— 他のサプライヤーと比較して提供される保証。
各カテゴリは、ロールアップに対して competitiveWeightPercent / competitiveWeightScore、contractWeightPercent / contractWeightScore、および satisfactionWeightPercent / satisfactionWeightScore を寄与させます。
具体的な例
調達チームが3つのカテゴリに次のように重み付けし、それぞれに0~100のスコアを割り当てたとします:
| カテゴリ | 重み % | スコア | 加重貢献度 |
|---|---|---|---|
| 契約 (Contract) | 50 | 90 | 45.0 |
| 満足度 (Satisfaction) | 20 | 80 | 16.0 |
| 競争力 (Competitive) | 30 | 70 | 21.0 |
合計 (supplierScore) | 100 | — | 82.0 |
重要な規律は、3つの weightPercent 値の合計が100にならなければならないということです。CIMはこれを強制しないため、実装側で検証する必要があります。合計が100にならない場合、複合スコアは正規化された数値として意味をなしません。一般的なガバナンスアプローチは、サプライヤーベース全体でスコアを比較可能にするために重みを一元的に固定し(例:50/20/30)、トレードオフが真に異なる特定のコモディティカテゴリに対してのみ重みを調整することです。
決定方法:実装者向けの実践的なガイダンス
Supplierエンティティを採用する際、スコアカードが信頼できるかどうかは、いくつかの決定事項によって決まります。
- 重み付けの前に正規化する。 生のレートフィールドは、異なるスケールのパーセンテージとカウントです。重みを適用する前に、すべての指標を共通の0~100スケール(または0~1)に変換してください。そうしないと、単一の大きな値のカウントが支配的になります。
- 方向性を明示的に決定する。 ほとんどのフィールドは高いほど良いですが、
contractProductReturnRate、contractSLAIssueRate、contractInvoiceAccuracyRate(「間違っていた回数」として)、およびcontractBudgetCostRate(合意価格を超える差異として)は 低いほど良い 指標です。スコアリング時にこれらを反転させてください。 - 欠落データを意図的に処理する。 新しいサプライヤーには12か月の履歴がありません。カテゴリを除外するか、中立的なスコアを補完するか、あるいは黙ってゼロとしてスコアリングするのではなく、サプライヤーに「データ不足」のフラグを立てるかを決定してください。
- 生の測定値を保持する。 後で再重み付けや再監査ができるよう、複合スコアとともに基礎となるレートを保存してください。根拠のない単一の
supplierScoreは、調達レビューにおいて正当性を主張できません。 - 重みのバージョンを管理する。 重みを変えると、過去のスコアと比較できなくなります。各スコアが計算されたときに適用されていた重みのセットを記録してください。
システム間でのサプライヤーデータの統合
CIMはアプリケーションに依存しないため、Supplierエンティティは統合のための カノニカルターゲット(標準的なターゲット) として最も価値があります。典型的なパイプラインでは、ERP(SAP、Oracle、Microsoft Dynamics)からベンダーマスターを、調達ツールやSRMツールからスコアカードデータを、輸送管理システムから運送業者フラグを抽出し、それらすべてをCIMのSupplierシェイプにマッピングします。
- 自然キーを
idにマッピングする。 各ソースシステムは独自のベンダー番号を持っているため、CIMのGUIDへの相互参照テーブルを維持します。 - Partyレベルで調整する。 同じ法人が二重にカウントされないよう、Partyエンティティを重複排除のアンカーとして使用します。
isCarrierをルーティングヒントとして扱う。 下流の物流ロジックでこれに基づいて分岐し、運送業者固有の処理を適用できます。- モデルをコントラクトとして公開する。 dbt、Apache Atlas、データカタログなどのツールを使用してCIMマッピングを文書化することで、アナリストが各フィールドの意味を理解できるようにします。
これを形式化するチームにとって、CIMがオープンソースであることは、コアのParty/Role構造を維持したまま、モデルをフォークしてビジネスに必要なエンティティや属性(例えば、supplierSpend のための通貨コードや supplierType のための制御された列挙型)を追加できることを意味します。連携する価値のある関連標準には、Party/Roleパターンに関する TM Forum Information Framework (SID) や、サプライヤーと製品のデータは頻繁に併せて扱われるため、製品および場所の識別子に関する GS1 が含まれます。
ガバナンスとデータ品質に関する考慮事項
サプライヤースコアカードは、そこに供給されるデータの質に依存します。また、サプライヤーデータは多くのシステムから発生し、時間の経過とともに変化するため、非常に乱雑であることで知られています。
- 所有権。 サプライヤーマスターデータのデータスチュワードを割り当ててください。スコアカードフィールドの所有者(調達部門)は、識別フィールドの所有者(財務部門またはMDM部門)と異なることがよくあります。
- 鮮度。 請求書の精度とSLAフィールドにおける12か月のウィンドウは、ローリングでの再計算を意味します。更新頻度を定義し、それを可視化してください。
- 監査可能性。 スコアが調達の決定を左右するため、入力値、重み、および計算された出力の監査証跡を保持してください。
- 倫理とコンプライアンス。
satisfactionEthicsRankフィールドは労働慣行や安全な労働条件に触れており、これらはサプライチェーンのデューデリジェンス規制の対象となる分野です。単なるソフトな評価ではなく、コンプライアンスのシグナルとして扱ってください。
よくある質問
クラウド情報モデルにおけるサプライヤーエンティティとは何ですか?
Supplierは、企業に商品またはサービスを供給する当事者を記述するCIMのParty Role(当事者の役割)です。Partyエンティティからアイデンティティを継承し、supplierType、isCarrier、supplierSpendなどのサプライヤー固有の属性、および完全なパフォーマンススコアカードを追加します。スタンドアロンのエンティティではなくロールとしてモデル化することで、マスターデータを重複させることなく、一つの当事者がサプライヤーと顧客の両方として機能できるようになります。
supplierScoreはどのように計算されますか?
supplierScoreは、「契約(contract)」、「満足度(satisfaction)」、「競争力(competitive)」という重み付けされた3つのカテゴリを組み合わせたものです。各カテゴリは、そのweightPercentにweightScoreを乗算して寄与し、その結果が合計されます。複合値を意味のあるものにするには、3つの重みパーセンテージの合計が100である必要があり、また、重み付けを行う前に基礎となる各指標を共通のスケールに正規化する必要があります。
どのSupplierフィールドが必須ですか?
必須フィールドは、id(GUID主キー)とactiveFromDate(サプライヤー関係が有効になった日付)の2つのみです。activeToDate、supplierType、およびすべてのスコアカード属性を含むそれ以外のすべてはオプションであり、これにより部分的なレコードを段階的にロードすることが可能です。
isCarrierフラグは何を意味しますか?
isCarrierは、サプライヤーがFedExやUPSなどの輸送業者である場合にtrueとなるブール値です。これにより、個別のエンティティやサブタイプを必要とせずに、物流および配送ロジックが輸送業者を識別するための軽量な方法が提供され、モデルをコンパクトに保つことができます。
スコアカードのほとんどのフィールドが整数であるのはなぜですか?
レートおよびランクのフィールドは整数型として定義されており、通常はパーセンテージまたはカウントを表します。これにより、モデルをシンプルに保ち、システム間での移植性を高めていますが、これは実装者がスキーマによる強制に頼るのではなく、丸め、スケール、および正規化の規則を自ら決定しなければならないことを意味します。
Supplierエンティティを拡張できますか?
はい。CIMは適応させることを目的としたオープンソースモデルであるため、属性(例えば、supplierSpend用の通貨コードやsupplierType用の制御された列挙型など)を追加したり、新しいエンティティを追加したりできます。拡張にあたっては、他のCIMベースのシステムとの相互運用性が維持されるよう、コアとなるParty/Party Role構造を保持する必要があります。
よくある質問
クラウド情報モデルにおけるサプライヤー エンティティとは何ですか?
サプライヤーは、企業に商品またはサービスを供給する当事者を表す CIM の当事者の役割です。 Party エンティティから ID を継承し、supplierType、isCarrier、supplierSpend、完全なパフォーマンス スコアカードなどのサプライヤー固有の属性を追加します。スタンドアロンのエンティティではなくロールとしてモデル化すると、マスター データが重複することなく、一方の当事者がサプライヤーと顧客の両方として機能できるようになります。
supplierScore はどのように計算されますか?
SupplyScore は、契約、満足、競争力という 3 つの重み付けされたカテゴリを組み合わせたものです。各カテゴリは、そのweightPercentにそのweightScoreを乗算して寄与し、結果が合計されます。複合値を意味のあるものにするには、3 つの重みのパーセンテージの合計が 100 になる必要があり、基礎となる各メジャーを重み付けする前に共通のスケールに正規化する必要があります。
サプライヤーのどのフィールドが必須ですか?
必須フィールドは、id (GUID 主キー) と activeFromDate (サプライヤー関係がアクティブになった日付) の 2 つのフィールドのみです。 activeToDate、supplierType、およびすべてのスコアカード属性を含むその他すべてはオプションであり、部分的なレコードを段階的にロードできます。
isCarrier フラグは何を意味しますか?
isCarrier は、サプライヤーが FedEx や UPS などの輸送業者である場合に true となるブール値です。これは、別個のエンティティやサブタイプを必要とせずに配送業者を識別するためのロジスティクスおよび出荷ロジックに軽量な方法を提供し、モデルをコンパクトに保ちます。
スコアカードのほとんどのフィールドが整数であるのはなぜですか?
レート フィールドとランク フィールドは整数として入力され、通常はパーセンテージまたはカウントを表します。これにより、モデルはシンプルでシステム間で移植可能に保たれますが、実装者は丸め、スケール、正規化の規則を適用するスキーマに依存するのではなく、それらの規則を自分で決定する必要があることを意味します。
サプライヤー エンティティを拡張できますか?
はい。 CIM は適応することを目的としたオープンソース モデルであるため、属性 (supplierSpend の通貨コードや、supplierType の制御された列挙など) を追加したり、新しいエンティティを追加したりできます。拡張機能は、他の CIM ベースのシステムとの相互運用性が維持されるように、コアのパーティ/パーティ ロール構造を保持する必要があります。
最初のパイプラインを 15 分以内にスピンアップします
実行し続けるフルマネージドの ELT パイプライン