# architect 適切に設計されたツール (well-architected-tools) - Full Documentation # ⚠️ アンチパターンエクスプローラー Salesforce の Trust、使いやすさ、および適応性を損なう一般的な落とし穴。 ## 信頼済み セキュリティ、コンプライアンス、または信頼性を低下させるプラクティスとその回避方法。
信頼済み - アンチパターン
安全 適合 信頼性
## 簡単 複雑さが増したり、自動化が進まなかったり、ユーザーエクスペリエンスに影響したりするプラクティス。
簡単 - アンチパターン
意図的 自動 エンゲージメント
## 適応可能 レジリエンスを低下させたり、構成可能性を制限したり、変更を難しくしたりするプラクティス。
適応可能 - アンチパターン
耐障害性 コンポーザブル
# ✅ パターンエクスプローラー Salesforce で信頼性が高く、簡単で適応性の高いソリューションを構築するための実証済みパターン。 ## 信頼済み システムとデータを保護し、法的および倫理的な基準を満たし、利用可能なパフォーマンスに優れたソリューションを提供します。
信頼済み - パターン
安全 適合 信頼性
## 簡単 明確さ、自動化、魅力的なユーザーエクスペリエンスを実現する設計。
簡単 - パターン
意図的 自動 エンゲージメント
## 適応可能 レジリエントな運用と構成可能なアーキテクチャで変化に対応。
適応可能 - パターン
耐障害性 コンポーザブル
# Composable - 懸念の分離 ### 機能単位パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性の詳細 → [構成可能](/docs/architect/ja-jp/well-architected/guide/composable) → [懸念事項の分離](/docs/architect/ja-jp/well-architected/guide/composable#懸念事項の分離) → [機能単位](/docs/architect/ja-jp/well-architected/guide/composable#機能単位) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| 組織 | ✅ プロンプトテンプレートで反復処理して応答に影響する入力を把握する プロンプトテンプレートで反復処理して、部品のモデルの応答への影響を把握する | | プラットフォーム \| 設計標準 | ✅ 現在定義されているすべての機能単位 (および関連する命名規則) のリストが存在する | | プラットフォーム \| 設計標準 | ✅ 機能単位の追加・変更の提案基準が存在する | | プラットフォーム \| 設計標準 | ✅ 命名規則では、機能単位を示す方法について説明します。 | | プラットフォーム \| ドキュメント | ✅ すべてのドキュメントと実装図にコンポーネントの機能単位が明確に示されている | | プラットフォーム \| ドキュメント | ✅ 機能単位内のすべてのコンポーネントが検索可能で見つけやすい | | プラットフォーム \| ドキュメント | ✅ 組織内の機能単位を明確に示すシステムランドスケープダイアグラム | | プラットフォーム \| ドキュメント | ✅ 個々のコンポーネントのドキュメントには、コンポーネントの機能単位の対応付けが含まれます。 | | プラットフォーム \| 組織 | ✅ 特定のメタデータ(フロー、Apex クラス、Lightning ページなど)の機能単位の配置をすばやく特定できます。 | | プラットフォーム \| 組織 | ✅ 機能単位はビジネスにわかりやすい表示ラベルで表示 | ### 状態管理パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性の詳細 → [構成可能](/docs/architect/ja-jp/well-architected/guide/composable) → [懸念の分離](/docs/architect/ja-jp/well-architected/guide/composable#懸念事項の分離) → [状態管理](/docs/architect/ja-jp/well-architected/guide/composable#状態管理) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ✅ すべてのデータ操作でセーブポイントとロールバック動作が使用される | | プラットフォーム \| 設計標準 | ✅ ステートフル設計とステートレス設計の使用事例が明確である | | プラットフォーム \| 設計標準 | ✅ ステートフルなコミュニケーションの承認パターンが存在する | | プラットフォーム \| 設計標準 | ✅ ステートレス通信の承認パターンが存在する | | プラットフォーム \| 設計標準 | ✅ 都道府県のカテゴリをクリア | | プラットフォーム \| ドキュメント | ✅ ステートフルおよび/またはステートレス通信を処理するすべてのコンポーネントは、実装されたパターンを示します。 | | プラットフォーム \| ドキュメント | ✅ プロセス図とインタラクション図には、状態カテゴリと引き継ぎに関する詳細が表示されます。 | | プラットフォーム \| ドキュメント | ✅ 特定のステートフル/ステートレスパターンを実装したすべてのコンポーネントを検索して見つけることができます。 | | プラットフォーム \| フロー | ✅ 障害パスと \[レコードをロールバック] 要素が使用されている | --- ### 機能単位のアンチパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性の詳細 → [構成可能](/docs/architect/ja-jp/well-architected/guide/composable) → [懸念事項の分離](/docs/architect/ja-jp/well-architected/guide/composable#懸念事項の分離) → [機能単位](/docs/architect/ja-jp/well-architected/guide/composable#機能単位) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しない、または機能単位や使用事例を扱っていない | | プラットフォーム \| ドキュメント | ⚠️ 特定の機能単位を検索できない、または検索が機能単位内のすべてのコンポーネントの識別に役立たない | | プラットフォーム \| ドキュメント | ⚠️ コンポーネントのドキュメントには、コンポーネントが属する機能単位が記載されていますが、その機能単位の定義が表示されるのは、その機能単位のみです。 | | プラットフォーム \| ドキュメント | ⚠️ コンポーネントのドキュメントが存在しない | | プラットフォーム \| 組織 | ⚠️ メタデータの機能単位の配置を特定できない | | プラットフォーム \| 組織 | ⚠️ 機能単位情報の不一致または不正確 | | プラットフォーム \| 組織 | ⚠️ 機能単位情報は、ビジネスユーザーにとって無意味なエンジニアリング重視の用語で表示ラベルが付けられている | ### 状態管理のアンチパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性の詳細 → [構成可能](/docs/architect/ja-jp/well-architected/guide/composable) → [懸念の分離](/docs/architect/ja-jp/well-architected/guide/composable#懸念事項の分離) → [状態管理](/docs/architect/ja-jp/well-architected/guide/composable#状態管理) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ セーブポイントとロールバック動作が使用されない | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しない、または状態/ステートレスパターンと使用事例を扱っていない | | プラットフォーム \| ドキュメント | ⚠️ コンポーネントのドキュメントが存在しない | | プラットフォーム \| ドキュメント | ⚠️ コンポーネントのドキュメントには、実装されたステートフル/ステートレスパターンが記載されていますが、定義が表示されるのはここのみです。 | | プラットフォーム \| ドキュメント | ⚠️ 特定のパターンを検索することはできません。また、検索はそのパターンを使用するすべてのコンポーネントの識別に役立つわけではありません。 | | プラットフォーム \| フロー | ⚠️ \[レコードをロールバック] 要素が使用されていない | --- # Engaging - Helpful (エンゲージメント - 役に立つ) ### アプリケーション内ガイダンスパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な操作 → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [役立つ](/docs/architect/ja-jp/well-architected/guide/engaging#役に立つ) → [アプリケーション内ガイダンス](/docs/architect/ja-jp/well-architected/guide/engaging#アプリケーション内ガイダンス)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ✅ プロンプトとウォークスルーのデザインパターン | | プラットフォーム \| 設計標準 | ✅ アプリケーション内ガイダンスの承認済み使用事例 | | プラットフォーム \| ドキュメント | ✅ ユーザー、アプリケーション、有効なアプリケーション内ガイダンスの明確なマトリックス | | プラットフォーム \| 組織 | ✅ \[アプリケーション内ガイダンス間の遅延] の設定でデフォルト値または Salesforce が提供するデフォルト (24 時間) 期間よりも長いカスタム値が使用されている | | プラットフォーム \| 組織 | ✅ 複数の有効なウォークスルーがあるアプリケーションはありません | | プラットフォーム \| 組織 | ✅ ウォークスルーの \[表示する回数] が 10 より大きい設定がない | | プラットフォーム \| 組織 | ✅「任意のページ、任意のアプリケーション」または「このページ、任意のアプリケーション」のプロンプトは有効化されません | ### 通知とメッセージのパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な方法 → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [役立つ](/docs/architect/ja-jp/well-architected/guide/engaging#役に立つ) → [通知とメッセージ](/docs/architect/ja-jp/well-architected/guide/engaging#通知とメッセージ) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Einstein \| エージェント | ✅ エージェントの歓迎メッセージでエージェントが AI アシスタントとして紹介される 歓迎メッセージは、ユーザーが人間とチャットしていないことを通知する必要があります。 | | Einstein \| ビジネス | ✅ 生成された出力に関するフィードバックを従業員に求める | | プラットフォーム \| アプリケーション | ✅ 人間が関与していないエンドユーザーには生成応答が直接送信されない | | プラットフォーム \| 設計標準 | ✅ 通知、乾杯、通知の承認済み使用事例 | | プラットフォーム \| 設計標準 | ✅ トーストのバリエーションと通知のデザインパターン | | プラットフォーム \| 設計標準 | ✅ エラーメッセージのデザインパターン | | プラットフォーム \| 組織 | ✅ AI の免責事項は、ユーザーにとって明確でわかりやすい言葉で記載されています。 | | プラットフォーム \| 組織 | ✅ ボットはユーザーとの最初のインタラクションの前に自分自身を明確に識別する | | プラットフォーム \| 組織 | ✅ 生成された回答で常に使用されるデータソースを特定 | | プラットフォーム \| 組織 | ✅ 生成 AI に関連するリスクの免責事項は、最初のインタラクションの前にユーザーに表示されます。 | | プラットフォーム \| 組織 | ✅ 通知が主要なメッセージング形式 | | プラットフォーム \| 組織 | ✅ 乾杯メッセージはバリエーションを使用します | | プラットフォーム \| 組織 | ✅ \[`mode`] が [`sticky`] に設定されたトーストメッセージが存在しない | | プラットフォーム \| 組織 | ✅ お知らせは、ほとんど使用されません。 | ### レコグニション & 報奨パターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)さ → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [役立つ](/docs/architect/ja-jp/well-architected/guide/engaging#役に立つ) → [評価と報奨](/docs/architect/ja-jp/well-architected/guide/engaging#recognition-rewards)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 組織 | ✅ アプリケーションでは埋め込み分析を使用して、関連する目標の進行状況と生産性の統計をユーザーに表示します。 | | プラットフォーム \| 組織 | ✅ パスのお祝いはユーザーの同意がある場合のみ有効 | | プラットフォーム \| 組織 | ✅ 通知とメッセージングにはユーザー認識が含まれ、通知を受けるユーザーと通知をトリガーするユーザーの設定が反映されます。 | --- ### アプリケーション内ガイダンスのアンチパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な操作 → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [役立つ](/docs/architect/ja-jp/well-architected/guide/engaging#役に立つ) → [アプリケーション内ガイダンス](/docs/architect/ja-jp/well-architected/guide/engaging#アプリケーション内ガイダンス)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ ドキュメントにユーザー、アプリケーション、有効なアプリケーション内ガイダンスを示す明確なマトリックスが含まれていない | | プラットフォーム \| 設計標準 | ⚠️ アプリケーション内ガイダンスに対処しない | | プラットフォーム \| 組織 | ⚠️ \[アプリケーション内ガイダンス間の遅延] の設定が、Salesforce が提供するデフォルト (24 時間) よりも短い期間に設定されている | | プラットフォーム \| 組織 | ⚠️ アプリケーションに複数の有効なウォークスルーがある | | プラットフォーム \| 組織 | ⚠️ 多くのウォークスルーの \[表示する時間] 設定が 10 より大きい (最大値が 30 のウォークスルーもある) | | プラットフォーム \| 組織 | ⚠️ プロンプトはアドホックで有効化され、多くは \[任意のページ、任意のアプリケーション] または \[このページ、任意のアプリケーション] 設定になっています。 | ### 通知とメッセージのアンチパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な方法 → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [役立つ](/docs/architect/ja-jp/well-architected/guide/engaging#役に立つ) → [通知とメッセージ](/docs/architect/ja-jp/well-architected/guide/engaging#通知とメッセージ) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------- | | プラットフォーム \| アプリケーション | ⚠️ 生成応答は、人の関与なしでエンドユーザーに直接送信される | | プラットフォーム \| 設計標準 | ⚠️ 設計標準がまったく定義されていない場合、エラーや通知に対処できない | | プラットフォーム \| 組織 | ⚠️ `mode` が `sticky` に設定されたトーストメッセージが存在する | | プラットフォーム \| 組織 | ⚠️ トーストメッセージでバリエーションが一貫して使用されていない | | プラットフォーム \| 組織 | ⚠️ 生成応答では、使用されたデータソースが特定されない | | プラットフォーム \| 組織 | ⚠️ 生成 AI リスクに関する免責事項はユーザーに表示されません。 | | プラットフォーム \| 組織 | ⚠️ AI の免責事項がユーザーにとって明確で理解可能な言語でない | | プラットフォーム \| 組織 | ⚠️ ボットはユーザーとの最初のやりとりの前に自分自身を明確に識別しない | | プラットフォーム \| 組織 | ⚠️ メールは主要なメッセージング形式 | | プラットフォーム \| 組織 | ⚠️ メッセージ種別に一貫したアプローチがない | | プラットフォーム \| 組織 | ⚠️ 通知はその場限りで使用される | ### レコグニション & 報奨アンチパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)さ → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [役立つ](/docs/architect/ja-jp/well-architected/guide/engaging#役に立つ) → [評価と報奨](/docs/architect/ja-jp/well-architected/guide/engaging#recognition-rewards)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 組織 | ⚠️ 目標の進行状況と生産性統計に関連する Analytics は、レポートまたはマネージャーダッシュボードでのみ使用できます。 | | プラットフォーム \| 組織 | ⚠️ ユーザーの同意を確認せずにパスのお祝いが有効になっている | | プラットフォーム \| 組織 | ⚠️ 通知やメッセージングにユーザー認識が含まれていない、またはユーザーの好みが反映されておらず、騒がしい、仕掛けられていると感じる | --- # Engaging - 合理化 ### アプリケーションの複雑さパターン 適切に設計された[容易さ](/docs/architect/ja-jp/well-architected/guide/easy-overview) → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [合理化](/docs/architect/ja-jp/well-architected/guide/engaging#合理化) → [アプリケーションの複雑](/docs/architect/ja-jp/well-architected/guide/engaging#アプリケーションの複雑さ)さについての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 組織 | ✅ システム管理者が指定したデフォルト設定でアプリケーションのタブ数が 10 個未満である | | プラットフォーム \| 組織 | ✅ \[このアプリケーションのナビゲーション項目のエンドユーザーパーソナライズを無効化] が true に設定されているアプリケーションはありません | ### フォーム要素パターン 適切に設計され[た容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)さ → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [合理化](/docs/architect/ja-jp/well-architected/guide/engaging#合理化) → [フォーム要素](/docs/architect/ja-jp/well-architected/guide/engaging#フォーム要素)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Aura | ✅ アプリケーションビルダーで使用可能なカスタム Aura コンポーネントは、それぞれの設計ファイルでサポートされるフォーム要素を宣言する | | プラットフォーム \| Aura | ✅ アプリケーションビルダーで使用できるカスタム Aura コンポーネントで幅対応のスタイルパターンを実装 | | プラットフォーム \| Aura | ✅ カスタム Lightning ページテンプレートでは、Aura コンポーネント設計ファイルで`design:supportedFormFactors`と`design:supportedFormFactor`を使用します。 | | プラットフォーム \| デスクトップ | ✅ データ入力項目やナビゲーションコントロールが画面内に収まり、意図したとおりに操作できる | | プラットフォーム \| デスクトップ | ✅ ページの有効化の割り当てルールに基づいて、レコードページとアプリケーションページが正しく表示される | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ アプリケーションビルダーで使用可能なカスタム LWC は幅対応のスタイルパターンを実装 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ アプリケーションビルダーで使用可能なカスタム LWC は、それぞれの設計ファイルでサポートされるフォーム要素を宣言する | | プラットフォーム \| モバイルデバイス | ✅ 小さいフォーム要素用に最適化されたモバイルナビゲーションメニューが表示される | | プラットフォーム \| モバイルデバイス | ✅ データ入力とナビゲーションコントロールが正しく表示される | | プラットフォーム \| モバイルデバイス | ✅ データ入力が簡単 | | プラットフォーム \| モバイルデバイス | ✅ コンパクトレイアウトがレコードレベルで表示される | | プラットフォーム \| 組織 | ✅Salesforce が提供する Lightning ページ テンプレートは、すべてまたはほとんどのページで使用されます。 | ### フォームパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な方法 → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [合理化](/docs/architect/ja-jp/well-architected/guide/engaging#合理化) → [フォーム](/docs/architect/ja-jp/well-architected/guide/engaging#フォーム) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | | プラットフォーム \| アプリケーション | ✅ データ入力エラーは、ユーザーが移動したりデータを送信したりする前に表示されます。 | | プラットフォーム \| アプリケーション | ✅ 項目は論理グルーピングに従う | | プラットフォーム \| アプリケーション | ✅ データ登録は 1 回のみ | | プラットフォーム \| アプリケーション | ✅ アクションとナビゲーションの表示ラベルが明確 | | プラットフォーム \| アプリケーション | ✅ ボタンクリックなどのユーザーアクションを確認するためのタイムリーで視覚的なフィードバックを提供 | | プラットフォーム \| アプリケーション | ✅ ナビゲーションボタン (「移動」、「次へ」、「戻る」など) を UI 全体に一貫して配置 | | プラットフォーム \| アプリケーション | ✅ データ入力項目は 5 個以下のグループで表示されます。 | | プラットフォーム \| アプリケーション | ✅ データ入力エラーが明確で、項目レベルで表示される | | プラットフォーム \| アプリケーション | ✅ ページ設定コントロールでステップ間の移動が可能 | | プラットフォーム \| フォームロジック | ✅ 項目は可能な限り事前入力またはオートコンプリート | | プラットフォーム \| フォームロジック | ✅ ユーザーは、実行時間の長いサーバー側アクションが完了するまで待つ必要はありません。 | | プラットフォーム \| フォームロジック | ✅ データ操作は 1 回のみ | | プラットフォーム \| フォームロジック | ✅ カスタムコンポーネントは、データ操作を含まないサーバーベースのアクションに`cacheable=true`を使用します。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ LWC では、データ操作を含まないすべてのアクションを`@wire`アダプターで処理します。 | --- ### アプリケーションの複雑さ対策パターン 適切に設計された[容易さ](/docs/architect/ja-jp/well-architected/guide/easy-overview) → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [合理化](/docs/architect/ja-jp/well-architected/guide/engaging#合理化) → [アプリケーションの複雑](/docs/architect/ja-jp/well-architected/guide/engaging#アプリケーションの複雑さ)さについての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 組織 | ⚠️ 多くのアプリケーションで \[このアプリケーションのナビゲーション項目のエンドユーザーパーソナライズを無効化] が true に設定されているか、ナビゲーション項目をカスタマイズする権限が組織全体で無効になっている | | プラットフォーム \| 組織 | ⚠️ システム管理者が指定したデフォルト設定で、アプリケーションに 10 個を超えるタブが日常的にある | ### フォームファクタのアンチパターン 適切に設計され[た容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)さ → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [合理化](/docs/architect/ja-jp/well-architected/guide/engaging#合理化) → [フォーム要素](/docs/architect/ja-jp/well-architected/guide/engaging#フォーム要素)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Aura | ⚠️ カスタム Lightning ページテンプレートでは、Aura コンポーネント設計ファイルの`design:supportedFormFactors`と`design:supportedFormFactor`が一様に使用されるわけではありません。 | | プラットフォーム \| Aura | ⚠️ アプリケーションビルダーで使用可能なカスタム Aura コンポーネントでは、サポートされるフォーム要素がそれぞれの設計ファイルで一貫して宣言されません。 | | プラットフォーム \| Aura | ⚠️ カスタム Aura コンポーネントでは、さまざまなフォーム要素のスタイルは、純粋に CSS のハードコードされた`px`または`%`値によって決まります。 | | プラットフォーム \| Aura | ⚠️ Aura カスタムコンポーネントでは、Salesforce が提供するインターフェースでは幅を認識するスタイルは実装されません。 | | プラットフォーム \| デスクトップ | ⚠️ データ入力項目とナビゲーションコントロールが画面の意図した場所に表示されない | | プラットフォーム \| デスクトップ | ⚠️ データ入力項目やナビゲーションコントロールとのインタラクションが必須動作と一致しない | | プラットフォーム \| デスクトップ | ⚠️ ページ有効化の割り当てルールがないため、すべてのユーザーに同じレコードページとアプリケーションページが表示される | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ カスタム LWC では、Salesforce が提供するインターフェースでは幅を認識するスタイルは実装されません。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ カスタム LWC では、さまざまなフォーム要素のスタイルは、純粋に CSS のハードコードされた`px`または`%`値によって決まります。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ アプリケーションビルダーで使用できるカスタム LWC では、サポートされるフォーム要素がそれぞれの設計ファイルで一貫して宣言されません。 | | プラットフォーム \| モバイルデバイス | ⚠️ データ入力とナビゲーションコントロールが一貫して表示されない、または正しく表示されない | | プラットフォーム \| モバイルデバイス | ⚠️ ユーザーが簡単にデータを入力できない | | プラットフォーム \| モバイルデバイス | ⚠️ コンパクトレイアウトがレコードレベルで設定されていない | | プラットフォーム \| モバイルデバイス | ⚠️ モバイルナビゲーションメニューはデスクトップナビゲーションと区別できません | | プラットフォーム \| 組織 | ⚠️ Classic はまだ有効 | ### フォームのアンチパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な方法 → [エンゲージメント](/docs/architect/ja-jp/well-architected/guide/engaging) → [合理化](/docs/architect/ja-jp/well-architected/guide/engaging#合理化) → [フォーム](/docs/architect/ja-jp/well-architected/guide/engaging#フォーム) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| アプリケーション | ⚠️ データ入力項目が 5 より大きいグループで表示される | | プラットフォーム \| アプリケーション | ⚠️ データ入力項目が論理的にグループ化されていないため、ユーザーがフォームに入力する際に大量のコンテキストを切り替える必要がある | | プラットフォーム \| アプリケーション | ⚠️ ステップとグルーピングが明確ではないため、ナビゲーションが困難 | | プラットフォーム \| アプリケーション | ⚠️ データ入力エラーは、フォームの送信ボタンをクリックしたときにのみ表示されます。 | | プラットフォーム \| アプリケーション | ⚠️ アクションとナビゲーションの表示ラベルは、基盤となるシステム機能に精通していないユーザーに混乱を招く | | プラットフォーム \| アプリケーション | ⚠️ ユーザーアクションの視覚的な確認が提供されない | | プラットフォーム \| アプリケーション | ⚠️ ナビゲーションボタンが UI 全体の任意の場所に表示される | | プラットフォーム \| アプリケーション | ⚠️ データ入力エラーには、システムの内部の仕組みを理解しているユーザーのみが解釈できる不可解な情報が含まれています。 | | プラットフォーム \| アプリケーション | ⚠️ データ入力プロセス全体でデータ登録が複数回行われる | | プラットフォーム \| フォームロジック | ⚠️ 事前入力またはオートコンプリートが可能な項目は手動で入力する必要があります | | プラットフォーム \| フォームロジック | ⚠️ ユーザーは送信プロセス中に作業を停止してサーバー側アクションが完了するまで待機する必要がある | | プラットフォーム \| フォームロジック | ⚠️ カスタムコンポーネントセット`cacheable=false` | --- # Intentional - Strategy (意図的 - 戦略) ### ガバナンスパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な方法 → [意図的](/docs/architect/ja-jp/well-architected/guide/intentional)な方法 → [戦略](/docs/architect/ja-jp/well-architected/guide/intentional#戦略) → [ガバナンス](/docs/architect/ja-jp/well-architected/guide/intentional#ガバナンス)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ チームメンバーは、アプリケーションライフサイクル全体で誰が何を担当するかを把握できます。 | | プラットフォーム \| ビジネス | ✅ チームやプロジェクトは、ビジネス用途で承認された AI モデルのみを使用します。 | | プラットフォーム \| ビジネス | ✅ ホットフィックスは生産までの明確なパスがある | | プラットフォーム \| ビジネス | ✅ バグ報告や機能リクエストが簡単にできる | | プラットフォーム \| ビジネス | ✅ 作業項目の優先順位付けプロセスが文書化され、すべての関係者に公開されます。 | | プラットフォーム \| ビジネス | ✅ 環境戦略が明確に文書化され、開発環境が文書化されている | | プラットフォーム \| ビジネス | ✅ 生産サポートプロセスが明確である | | プラットフォーム \| ビジネス | ✅ リリース計画は予測可能で、すべてのデリバリチームメンバーに透過的 | | プラットフォーム \| ビジネス | ✅ リリースはユーザーと配送/メンテナンスチームにとって明確である | ### 優先順位付けパターン 適切に構築された \[[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)] → \[[意図的]](/docs/architect/ja-jp/well-architected/guide/intentional) → \[[戦略]](/docs/architect/ja-jp/well-architected/guide/intentional#戦略) → \[[優先](/docs/architect/ja-jp/well-architected/guide/intentional#優先順位付け)順位付け] の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 会社 | ✅ すべての KPI で実装コストとメンテナンスコストが特定されている | | プラットフォーム \| 会社 | ✅ 機能の要求は、ビジネスへの影響、提供に必要な新しい作業の量、メンテナンスに必要な作業の量に基づいて優先順位が付けられます。 | | プラットフォーム \| ドキュメント | ✅ ビジネス上の価値に基づいて自動化が優先されることがロードマップに示されている | | プラットフォーム \| ドキュメント | ✅ すべての新しい作業項目に明確なビジネス価値評価指標がある (収益の増加、プロセスの最適化によるコスト削減など) | ### ロードマップパターン 適切に設計された「[容易」](/docs/architect/ja-jp/well-architected/guide/easy-overview) → [「意図的](/docs/architect/ja-jp/well-architected/guide/intentional)」 → [「戦略](/docs/architect/ja-jp/well-architected/guide/intentional#戦略)」 → 「[ロードマップ](/docs/architect/ja-jp/well-architected/guide/intentional#ロードマップ)」についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ 配送チームは、長期的な優先度に対してバックログ項目を評価する方法を知っている | | プラットフォーム \| ビジネス | ✅ チームは、誰が何をし、どのように連動関係を管理するかを把握 | | プラットフォーム \| ビジネス | ✅ 関係者が作業項目の「理由」を把握する | | プラットフォーム \| ビジネス | ✅ 優先度をすばやく変更する必要がある場合でも、作業は意図的です。 | | プラットフォーム \| ロードマップ | ✅ 前提条件と連動関係の表示 | | プラットフォーム \| ロードマップ | ✅ 利用者 (ビジネスまたは技術) に合わせた情報を伝える | | プラットフォーム \| ロードマップ | ✅ 正しい詳細レベルで情報を伝える | | プラットフォーム \| ロードマップ | ✅ 開始日と終了日を表示 | --- ### ガバナンス対策パターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)な方法 → [意図的](/docs/architect/ja-jp/well-architected/guide/intentional)な方法 → [戦略](/docs/architect/ja-jp/well-architected/guide/intentional#戦略) → [ガバナンス](/docs/architect/ja-jp/well-architected/guide/intentional#ガバナンス)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ チームは誰が何を担当するかわからない | | プラットフォーム \| ビジネス | ⚠️ チームはアドホックで AI モデルを選択する | | プラットフォーム \| ビジネス | ⚠️ 作業項目に明確な優先順位がない | | プラットフォーム \| ビジネス | ⚠️ 環境はアドホックにプロビジョニングされ、予測どおりに更新されないことがあります。開発者は多くの場合、必要な環境とアクセス権を持っていません。 | | プラットフォーム \| ビジネス | ⚠️ ドキュメントに簡単にアクセスできない | | プラットフォーム \| ビジネス | ⚠️ あなたのバックログが古くなり停滞している「アイデアバンク」になっている | | プラットフォーム \| ビジネス | ⚠️ リリースは配送チームとユーザーにとって予測できない | | プラットフォーム \| ビジネス | ⚠️ ガバナンス組織は、サポート要請をトラブルシューティングするヘルプデスクとして機能します。 | | プラットフォーム \| ビジネス | ⚠️ ホットフィックスはアドホックで対応 | | プラットフォーム \| ビジネス | ⚠️ バグレポートと機能リクエストはアドホック | ### 優先度設定アンチパターン 適切に構築された \[[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)] → \[[意図的]](/docs/architect/ja-jp/well-architected/guide/intentional) → \[[戦略]](/docs/architect/ja-jp/well-architected/guide/intentional#戦略) → \[[優先](/docs/architect/ja-jp/well-architected/guide/intentional#優先順位付け)順位付け] の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------- | | プラットフォーム \| 会社 | ⚠️ 自動化の実装と維持に関連するコストが明確でない | | プラットフォーム \| 会社 | ⚠️ 要請はアドホックまたは先入れ先出し方式で提供される | | プラットフォーム \| ドキュメント | ⚠️ ロードマップが存在しない | | プラットフォーム \| ドキュメント | ⚠️ 作業に関連するビジネス価値が明確でない、または存在しない | ### ロードマップのアンチパターン 適切に設計された「[容易」](/docs/architect/ja-jp/well-architected/guide/easy-overview) → [「意図的](/docs/architect/ja-jp/well-architected/guide/intentional)」 → [「戦略](/docs/architect/ja-jp/well-architected/guide/intentional#戦略)」 → 「[ロードマップ](/docs/architect/ja-jp/well-architected/guide/intentional#ロードマップ)」についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ 関係者の多くは、現状にストレスや困惑を感じ、新機能がいつ提供されるかわからない | | プラットフォーム \| ビジネス | ⚠️ バックログにあるものから作業が取り込まれ、明確な「理由」がない | | プラットフォーム \| ビジネス | ⚠️ チームは相互依存する作業の調整が難しく、気づかないうちに作業を繰り返してしまう | | プラットフォーム \| ビジネス | ⚠️ 仕事は反応型が多い | | プラットフォーム \| ロードマップ | ⚠️ プロジェクトのキックオフ資料として使用され、成果物として提供されない | | プラットフォーム \| ロードマップ | ⚠️ 関係者とデリバリチームの連携を支援しない | | プラットフォーム \| ロードマップ | ⚠️ 利用者に合わせて調整されていない情報 (同じロードマップ内のビジネス機能やシステムなど) が含まれている | | プラットフォーム \| ロードマップ | ⚠️ 複数の詳細レベルを組み合わせる (同じロードマップにシステムとコンポーネントを含めるなど) | --- # Trusted Patterns and Anti-Patterns Explorer (信頼済みパターンおよびアンチパターンエクスプローラー) システムとデータを保護し、法的および倫理的な基準を満たし、利用可能なパフォーマンスに優れたソリューションを提供します。
✅ 信頼済み - パターン
安全 適合 信頼性
セキュリティ、コンプライアンス、または信頼性を低下させるプラクティスとその回避方法。
⚠️ 信頼済み - アンチパターン
安全 適合 信頼性
# コンポーザブル - パッケージ化可能 ### 連動関係管理パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [コンポーザブル](/docs/architect/ja-jp/well-architected/guide/composable) → [パッケージ化可能](/docs/architect/ja-jp/well-architected/guide/composable#パッケージ性) → [連動関係管理](/docs/architect/ja-jp/well-architected/guide/composable#連動関係管理)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ✅ 連動関係の導入・変更基準が存在する | | プラットフォーム \| 設計標準 | ✅ 連動関係の申告基準が存在する | | プラットフォーム \| パッケージ | ✅ パッケージ間でメタデータが重複しない | | プラットフォーム \| パッケージ | ✅ パッケージ開発では、初期段階の開発作業はすべてスクラッチ組織で実施 | | プラットフォーム \| ソース管理 | ✅ 開発者はソース管理からスクラッチ組織を作成し、パッケージメタデータを正常にリリースできます。 | | プラットフォーム \| ソース管理 | ✅ ロック解除済みパッケージのパッケージバージョンでは、別名 (`LATEST`) を使用して`sfdx-project.json`マニフェストで連動関係を宣言します。 | ### 疎結合パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [コンポーザブル](/docs/architect/ja-jp/well-architected/guide/composable) → [パッケージ化可能](/docs/architect/ja-jp/well-architected/guide/composable#パッケージ性) → [疎結合](/docs/architect/ja-jp/well-architected/guide/composable#疎結合) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ✅ 動的な実行時情報に依存するメソッドは、適切なカスタムメタデータ型を参照します。 | | プラットフォーム \| Apex | ✅ Common Services とボイラープレートコードは、抽象または仮想 Apex クラスを使用して定義 | | プラットフォーム \| 設計標準 | ✅ (省略可能) カスタム設定の承認済み使用事例がすべて明記されている (ある場合) | | プラットフォーム \| 設計標準 | ✅ 命名規則では、パッケージ単位の表記方法について説明します。 | | プラットフォーム \| 設計標準 | ✅ 現在定義されているすべてのパッケージ単位 (および関連する命名規則) のリストを検索して見つけることができます。 | | プラットフォーム \| 設計標準 | ✅ パッケージ単位の追加・変更提案基準が存在する | | プラットフォーム \| 組織 | ✅ カスタムメタデータ型は、コードや宣言型カスタマイズの動的で実行時の情報を提供します。 | | プラットフォーム \| 組織 | ✅ コードまたは宣言型カスタマイズの動的かつ実行時情報を提供するカスタムオブジェクトが存在しない | | プラットフォーム \| 組織 | ✅ カスタム設定が存在しない、またはカスタム設定がほとんど存在せず、パッケージ化された機能に関連するものがない | | プラットフォーム \| パッケージ | ✅ 本番または Sandbox で未管理パッケージが定義されていない | | プラットフォーム \| パッケージ | ✅ 組織依存のロック解除済みパッケージは、初期段階または概念実証実験にのみ使用されます。 | | プラットフォーム \| ソース管理 | ✅ `package.xml`ファイルは、初期段階または概念実証プロジェクトのマニフェストにのみ表示されます。 | --- ### 連動関係管理アンチパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [コンポーザブル](/docs/architect/ja-jp/well-architected/guide/composable) → [パッケージ化可能](/docs/architect/ja-jp/well-architected/guide/composable#パッケージ性) → [連動関係管理](/docs/architect/ja-jp/well-architected/guide/composable#連動関係管理)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しない、または連動関係の宣言方法を取り扱っていない | | プラットフォーム \| パッケージ | ⚠️ 異なるパッケージでメタデータを複製することで連動関係を回避 | | プラットフォーム \| パッケージ | ⚠️ 早期パッケージ開発は Developer Sandbox で行われるか、早期パッケージ開発はスクラッチ組織では実行できません。 | | プラットフォーム \| ソース管理 | ⚠️ 開発者がソース管理を使用してスクラッチ組織で正常に作業できない | | プラットフォーム \| ソース管理 | ⚠️ ロック解除済みパッケージのパッケージバージョンが`sfdx-project.json`マニフェストで明示的に宣言されている (`LATEST`の別名がない) | ### 疎結合アンチパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [コンポーザブル](/docs/architect/ja-jp/well-architected/guide/composable) → [パッケージ化可能](/docs/architect/ja-jp/well-architected/guide/composable#パッケージ性) → [疎結合](/docs/architect/ja-jp/well-architected/guide/composable#疎結合) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ 共通サービスとボイラープレートコードが他のクラスと容易に区別できない | | プラットフォーム \| Apex | ⚠️ メソッドで動的で実行時の情報にアクセスするための一貫したアプローチが使用されていないか、メソッドがカスタムオブジェクトで実行時の動作情報を照会しているか、コードでカスタム設定を参照していない | | プラットフォーム \| Apex | ⚠️ クラスやメソッド間の内部参照は追跡が難しく、コードベース全体で一貫性がありません。 | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しない、またはパッケージ単位と使用事例を扱っていない | | プラットフォーム \| 組織 | ⚠️ カスタム設定が使用される | | プラットフォーム \| 組織 | ⚠️ カスタムオブジェクトは、コードまたは宣言型カスタマイズの動的で実行時の情報を提供するために存在する | | プラットフォーム \| 組織 | ⚠️ カスタムメタデータ型は、コードおよび宣言型カスタマイズの動的で実行時の情報を提供するのに使用されない (または一貫して使用されない) | | プラットフォーム \| パッケージ | ⚠️ 未管理パッケージが本番または Sandbox で定義されている | | プラットフォーム \| パッケージ | ⚠️ すべてのパッケージが組織依存のロック解除済みパッケージである | | プラットフォーム \| ソース管理 | ⚠️ `package.xml` ファイルはメタデータリリースの制御に使用されます。 | --- # セキュリティ - セッションセキュリティ ### デバイスアクセスパターン \[Well-Architected [Trusted](/docs/architect/ja-jp/well-architected/guide/trusted-overview) (適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Session Security (セッションセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#セッションセキュリティ))] → \[[Device Access (デバイスアクセス](/docs/architect/ja-jp/well-architected/guide/secure#デバイスアクセス))] の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ✅ セキュリティ人格が適切なデバイスの使用状況とポリシーに明確に対応付けられている | | プラットフォーム \| ドキュメント | ✅ デバイスポリシーが明確で検出可能 | | プラットフォーム \| 組織 | ✅ Salesforce モバイル接続アプリケーション設定では、無操作時に PIN/パスコードロック解除が必要 | | プラットフォーム \| 組織 | ✅ Salesforce モバイルにアクセスできるユーザーの厳格な制御がビジネスニーズで必要な場合、API アクセス制御が有効になり、Salesforce モバイルアプリケーションのすべてのユーザーに権限セットが割り当てられます。 | ### セッション管理パターン \[Well-Architected [Trusted (](/docs/architect/ja-jp/well-architected/guide/trusted-overview)適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Session Security](/docs/architect/ja-jp/well-architected/guide/secure#セッションセキュリティ) (セッションセキュリティ)] → \[[Session Management (セッション管理](/docs/architect/ja-jp/well-architected/guide/secure#セッション管理))] の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ✅ カスタムログインフローが存在する場合、関連するすべてのカスタムコードで適切な SessionManagement メソッドを使用してセッションレベルセキュリティを割り当てる | | プラットフォーム \| Aura | ✅ カスタム ログイン フローが存在する場合は、必要な`SessionManagement`メソッドを備えた Apex コントローラーを使用してセッション レベル セキュリティを割り当てます。 | | プラットフォーム \| 設計標準 | ✅ セキュリティ人格は、各人格の承認済みセッション種別とタイムアウト/期間設定を明確にリストします。 | | プラットフォーム \| 設計標準 | ✅ 高度なセッションレベルセキュリティを必要とする活動に対して標準が定義されている | | プラットフォーム \| 設計標準 | ✅ 権限の昇格が必要な活動には、標準が定義されています。 | | プラットフォーム \| 設計標準 | ✅ 接続アプリケーションの範囲とトークン管理ポリシーが明確で検出可能 | | プラットフォーム \| ドキュメント | ✅ 接続アプリケーションの範囲とトークン管理ポリシーが明確で検出可能 | | プラットフォーム \| ドキュメント | ✅ ログイン時間が指定されている(または不要と識別されている) | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ カスタム ログイン フローが存在する場合は、必要な`SessionManagement`メソッドを備えた Apex コントローラーを使用してセッション レベル セキュリティを割り当てます。 | | プラットフォーム \| 組織 | ✅ ユーザーがファイアウォールの内側から Salesforce にアクセスする場合、ファイアウォールは IP アドレスではなく必須ドメインの許可リストを使用して、Salesforce との間の通信を保護します。 | | プラットフォーム \| 組織 | ✅ 無効なセッションタイムアウト間隔がデフォルト (2 時間) を超えていない | | プラットフォーム \| 組織 | ✅ \[設定] ページのクリックジャック保護 - \[設定] 以外の Salesforce ページのクリックジャック保護 - クロスサイトリクエストフォージェリ (CSRF) 保護 - クロスサイトスクリプティング (XSS) 保護 - コンテンツ盗聴保護の有効化 - 参照元 URL 保護 - Salesforce の外部にリダイレクトされる前にユーザーに警告 | | プラットフォーム \| 組織 | ✅ セッション監査では、ユーザーは予期されるセッション種別でのみ Salesforce にアクセスできます。 | | プラットフォーム \| 組織 | ✅ 「API 限定ユーザー」アクセス権の明確な有効な権限セットがあり (「API 限定」権限が TRUE に設定されている)、すべてのインテグレーションユーザーと自動化ユーザーが割り当てられている | ### 脅威の検出と対応パターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [セキュリティ](/docs/architect/ja-jp/well-architected/guide/secure) → [セッションセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#セッションセキュリティ) → [脅威の検出](/docs/architect/ja-jp/well-architected/guide/secure#threat-detection-response)と対応についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| エージェント | ✅ エージェントイベントログに会話データが含まれている 会話データをマスクする必要がある重大な理由がない限り、強化されたイベントログの設定を有効にする | | Einstein \| Einstein Trust Layer | ✅ 生成 AI 機能は定期的に監査 Einstein フィードバック設定ページから Einstein 生成 AI 監査データが有効になっています。生成 AI の会話 (プロンプトとその応答を含む) は定期的に監査およびレビューされる | | プラットフォーム \| 会社 | ✅ 監査データは、ビジネス関係者が理解してアクセスできるレポートで利用できます。 | | プラットフォーム \| 会社 | ✅ 監査履歴・報告の定期的な見直し | | プラットフォーム \| ドキュメント | ✅ すべての自動応答が明確に文書化されている | | プラットフォーム \| ドキュメント | ✅ Salesforce 内で使用可能なログを確認する手順が文書化されている | | プラットフォーム \| ドキュメント | ✅ データモデルのすべてのオブジェクトで監査レベルが指定されている | | プラットフォーム \| ドキュメント | ✅ セキュリティポリシーには、応答をトリガーする必要があるイベントのリストと適切な応答種別が含まれます。 | | プラットフォーム \| 組織 | ✅ ユーザーアカウントを無効化したり、異常な利用状況が検出された場合にリソースへのアクセスをリアルタイムでブロックしたりすることで、脅威に対応する自動化が導入されています。 | | プラットフォーム \| 組織 | ✅ 異常活動について適切なユーザーに通知するように通知とアラートが設定されている | | プラットフォーム \| 組織 | ✅ 項目履歴管理は、非公開データまたは機密データを含むすべての項目で有効 | --- ### デバイスアクセスのアンチパターン \[Well-Architected [Trusted](/docs/architect/ja-jp/well-architected/guide/trusted-overview) (適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Session Security (セッションセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#セッションセキュリティ))] → \[[Device Access (デバイスアクセス](/docs/architect/ja-jp/well-architected/guide/secure#デバイスアクセス))] の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ⚠️ セキュリティポリシーが存在しない、またはデバイスアクセスに関する情報が含まれていない | | プラットフォーム \| 組織 | ⚠️ Salesforce モバイル接続アプリケーションが、無操作時に PIN/パスコードロック解除を要求するように設定されていない | | プラットフォーム \| 組織 | ⚠️ ビジネスニーズにより、Salesforce モバイルにアクセスできるユーザーの厳格な制御が必要であるが、API アクセスコントロールが有効になっていない、または権限セットを使用して Salesforce モバイルアプリケーションへのアクセスを制御していない | ### セッション管理のアンチパターン \[Well-Architected [Trusted (](/docs/architect/ja-jp/well-architected/guide/trusted-overview)適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Session Security](/docs/architect/ja-jp/well-architected/guide/secure#セッションセキュリティ) (セッションセキュリティ)] → \[[Session Management (セッション管理](/docs/architect/ja-jp/well-architected/guide/secure#セッション管理))] の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ カスタムログインフローが存在する場合、セッションレベルセキュリティを割り当てるロジックはありません | | プラットフォーム \| Aura | ⚠️ カスタムログインフローが存在する場合、セッションレベルセキュリティを割り当てるロジックはありません | | プラットフォーム \| 設計標準 | ⚠️ 高度なセッションレベルセキュリティを必要とする活動の標準が定義されていない | | プラットフォーム \| 設計標準 | ⚠️ 割り当てる権限の引き上げが必要な活動の標準が定義されていない | | プラットフォーム \| 設計標準 | ⚠️ セキュリティポリシーに接続アプリケーション範囲やトークン管理に関する情報が含まれていない | | プラットフォーム \| 設計標準 | ⚠️ セキュリティ人格が存在しないか、セッション種別とタイムアウト/期間設定に関する情報が不足している | | プラットフォーム \| ドキュメント | ⚠️ 接続アプリケーションの範囲とトークン管理ポリシーが文書化されていない | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ カスタムログインフローが存在する場合、セッションレベルセキュリティを割り当てるロジックはありません | | プラットフォーム \| 組織 | ⚠️ ユーザーが持つべきセッション種別の定義がない | | プラットフォーム \| 組織 | ⚠️ インテグレーションおよび自動化ユーザーで「API 限定」権限が不明瞭または欠落している | | プラットフォーム \| 組織 | ⚠️ 定期的なセッション監査はありません | | プラットフォーム \| 組織 | ⚠️ ユーザーがファイアウォールの内側から Salesforce にアクセスする場合、ファイアウォールはハードコードされた IP アドレスを使用して Salesforce との間の通信を保護します。 | | プラットフォーム \| 組織 | ⚠️ 無効なセッションタイムアウト間隔がデフォルト (2 時間) を超えている | | プラットフォーム \| 組織 | ⚠️ \[設定] ページのクリックジャック保護 - \[設定] 以外の Salesforce ページのクリックジャック保護 - クロスサイトリクエストフォージェリ (CSRF) 保護 - クロスサイトスクリプティング (XSS) 保護 - コンテンツ盗聴保護の有効化 - 参照元 URL 保護 - Salesforce 外にリダイレクトされる前にユーザーに警告する | ### 脅威検知および対応アンチパターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [セキュリティ](/docs/architect/ja-jp/well-architected/guide/secure) → [セッションセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#セッションセキュリティ) → [脅威の検出](/docs/architect/ja-jp/well-architected/guide/secure#threat-detection-response)と対応についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| 組織 | ⚠️ 生成 AI 機能が監査されていない 生成 AI の会話 (プロンプトとその応答を含む) が定期的に監査されていない | | プラットフォーム \| 会社 | ⚠️ 監査データは、アクセスと解釈に専門分野の専門知識が必要なログファイルでのみ使用できます。 | | プラットフォーム \| 会社 | ⚠️ 監査情報をレビューするプロセスが存在しない | | プラットフォーム \| ドキュメント | ⚠️ セキュリティポリシーが存在しないか、脅威の検出とアラートに関する情報が含まれていない | | プラットフォーム \| ドキュメント | ⚠️ 自動レスポンスのドキュメントが存在しないか不明瞭である | | プラットフォーム \| 組織 | ⚠️ 脅威に対応するための自動化が確立されていない | | プラットフォーム \| 組織 | ⚠️ 通知とアラートが、異常な活動について適切なユーザーに通知するように設定されていないか、異常な活動に関連する通知とアラートがいくつか存在するが、それらはアドホックである | | プラットフォーム \| 組織 | ⚠️ 非公開データまたは機密データを含む項目で項目履歴管理が一貫して有効になっていない | --- # セキュリティ - データセキュリティ ### 共有および表示パターン 適切に構築された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [セキュリティ](/docs/architect/ja-jp/well-architected/guide/secure) → [データセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#データセキュリティ) → [共有と表示](/docs/architect/ja-jp/well-architected/guide/secure#sharing-visibility) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Data 360 \| 組織 | ✅ データスペースでデータ分離を適用 データスペースは、Data 360 データを分離し、適切に表示するために存在します。 | | Einstein \| ボット | ✅ ボットが開始するフローはボットユーザーコンテキストで実行されます。ボットが開始するフローは、ボットに関連付けられたユーザープロファイルと権限セットを使用して、フローのオブジェクト権限と項目レベルのアクセス権を決定します。 | | プラットフォーム \| Apex | ✅ データにアクセスするすべてのコード (SOQL/SOSL) またはデータ操作を実行するすべてのコード (DML/Database Class メソッド) で共有キーワードを使用 | | プラットフォーム \| 設計標準 | ✅ 外部ユーザーと内部ユーザーで異なるデータアクセス標準を使用 (該当する場合) | | プラットフォーム \| ドキュメント | ✅ 各ユーザー人格がアクセスできるデータの概要がセキュリティマトリックスに示されている | | プラットフォーム \| フロー | ✅ 可能な限りユーザーコンテキストで画面フローを実行する システムコンテキストで画面フローを実行するのは避けてください。これを避けることができない場合は、画面フロー全体をシステムコンテキストで実行するように設定するのではなく、サブフロー要素を使用して、実行ユーザー以外の権限が必要なアクションのみを含むサブフローを起動します。 | | プラットフォーム \| フロー | ✅ システムコンテキストで実行されているフローによって保存される項目の指定 システムコンテキストで実行されている \[レコードを取得] 要素を使用する場合、常に保存する項目を指定する | | プラットフォーム \| 組織 | ✅ 生成 AI はユーザーモードでのみ動作するか、一部のシステムアクセスの使用に明確なビジネス上の正当性がある | | プラットフォーム \| 組織 | ✅ コンプライアンス要件により、内部ユーザーの組織の共有設定 (OWD) は \[公開/参照]、内部ユーザーの OWD は \[非公開] | | プラットフォーム \| 組織 | ✅ 外部ユーザーの OWD は非公開 | ### 暗号化パターンの使用 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [セキュリティ](/docs/architect/ja-jp/well-architected/guide/secure) → [データセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#データセキュリティ) → [暗号化の使用](/docs/architect/ja-jp/well-architected/guide/secure#暗号化の使用)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ✅ ビジネスニーズで転送中のデータ保護を強化する必要がある場合、インテグレーションに関連するすべてのコードは、Crypto Class メソッドを使用してロジックを実行し、送信前にデータを暗号化したり、受信時にデータを復号化したりします。 | | プラットフォーム \| 設計標準 | ✅ 転送中および (必要に応じて) 保存中のデータ暗号化の使用事例が明確で検出可能 | | プラットフォーム \| 設計標準 | ✅ 承認された暗号化プロトコルが明確にリストされている | | プラットフォーム \| ドキュメント | ✅ コードドキュメントには、暗号化が使用されている場所と使用されているプロトコルが明記されています。 | | プラットフォーム \| 組織 | ✅ 保存時のデータ保護を強化する必要があるセキュリティ リスクが特定された場合、Hyperforce または Salesforce Shield のいずれかで保存時の暗号化が提供されます。 | --- ### 共有および表示対策パターン 適切に構築された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [セキュリティ](/docs/architect/ja-jp/well-architected/guide/secure) → [データセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#データセキュリティ) → [共有と表示](/docs/architect/ja-jp/well-architected/guide/secure#sharing-visibility) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| ボット | ⚠️ ボットが開始するフローはシステムコンテキストで実行されます。ボットが開始するフローはシステムモードで実行されます。これは、設定のリリース更新セクションで \[ボットユーザーコンテキストでフローを実行] 更新を有効にしていない場合に発生する可能性があります。 | | プラットフォーム \| Apex | ⚠️ 共有キーワードの使用が一貫していない | | プラットフォーム \| ドキュメント | ⚠️ ドキュメントが存在しないか、セキュリティマトリックスが含まれていない | | プラットフォーム \| ドキュメント | ⚠️ セキュリティマトリックスが存在する場合、ユーザー人格のデータアクセスの概要が説明されていない | | プラットフォーム \| フロー | ⚠️ 外部ユーザーに表示される画面フローではシステムコンテキストが使用されます。画面フロー全体では、外部ユーザーが共有モデルを介してアクセスする権限を持たないデータを表示するためにシステムコンテキストが使用されます。 | | プラットフォーム \| フロー | ⚠️ \[レコードを取得] 要素をシステムコンテキストで使用するときにすべての項目を保存するシステムコンテキストで実行される \[レコードを取得] 要素を設定するときに \[すべての項目を自動的に保存] オプションを選択する | | プラットフォーム \| 組織 | ⚠️ 内部ユーザーの OWD が \[ビジネスの正当性のない非公開] に設定されているか、内部ユーザーの OWD が \[公開/参照・更新可能] に設定されている | | プラットフォーム \| 組織 | ⚠️ 生成 AI はビジネス上の理由なくシステムモードで動作します。 | | プラットフォーム \| 組織 | ⚠️ 外部ユーザーの OWD が、ビジネス上の理由なく \[非公開] 以外に設定されている | ### 暗号化アンチパターンの使用 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [セキュリティ](/docs/architect/ja-jp/well-architected/guide/secure) → [データセキュリティ](/docs/architect/ja-jp/well-architected/guide/secure#データセキュリティ) → [暗号化の使用](/docs/architect/ja-jp/well-architected/guide/secure#暗号化の使用)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ ビジネスニーズにより、転送中のデータ保護を強化する必要があるが、インテグレーションに関連するコードで、送信前または受信時にデータを暗号化せずにロジックを実行する、または暗号化クラスのメソッドをアドホックに使用する | | プラットフォーム \| 設計標準 | ⚠️ 承認された暗号化プロトコルが明確でない、またはリストに記載されていない | | プラットフォーム \| 設計標準 | ⚠️ コードが文書化されていない、またはコードのどこでどのように暗号化が使用されているかに関するドキュメントが明確でない | | プラットフォーム \| 組織 | ⚠️ ビジネス ニーズにより保存時のデータ保護を強化する必要があるが、Hyperforce も Salesforce Shield も使用していない | --- # セキュリティ - 組織のセキュリティ ### 認証パターン \[Well-Architected [Trusted](/docs/architect/ja-jp/well-architected/guide/trusted-overview) (適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Organizational Security](/docs/architect/ja-jp/well-architected/guide/secure#組織のセキュリティ) (組織のセキュリティ)] → \[[Authentication (認証](/docs/architect/ja-jp/well-architected/guide/secure#認証))] の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ✅ 認証を実行するメソッドは、指定ログイン情報を使用してユーザー名/パスワードフローを処理します。 | | プラットフォーム \| Apex | ✅ ユーザー名やパスワードが判読可能な形式でコードに表示されない (ハードコードされた値や文字列がない) | | プラットフォーム \| Apex | ✅ カスタム ログイン フローが存在する場合、関連するすべてのカスタム Apex で適切な`SessionManagement`方法が使用される | | プラットフォーム \| Aura | ✅ ユーザー名やパスワードが判読可能な形式でコードに表示されない (ハードコードされた値や文字列がない) | | プラットフォーム \| Aura | ✅ 認証を実行するメソッドは、指定ログイン情報を使用してユーザー名/パスワードフローを処理します。 | | プラットフォーム \| ドキュメント | ✅ 承認されたセキュリティ人格が明確に定義され、リストされている | | プラットフォーム \| ドキュメント | ✅ セキュリティマトリックスにセキュリティ人格と許可された認証スキーム (UI、API) の対応付けが存在する | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ 認証を実行するメソッドは、指定ログイン情報を使用してユーザー名/パスワードフローを処理します。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ ユーザー名やパスワードが判読可能な形式でコードに表示されない (ハードコードされた値や文字列がない) | | プラットフォーム \| 組織 | ✅ API アクセスコントロールにより、未承認の接続アプリケーションによるユーザーの認証を防止 | | プラットフォーム \| 組織 | ✅ Salesforce にログインしているユーザーとエンティティのリレーションは 1 対 1 (共有ユーザーなし) | | プラットフォーム \| 組織 | ✅ Salesforce MFA チェックに合わせたログイン設定 | | プラットフォーム \| 組織 | ✅ SSO が有効になっている場合、承認された管理者ユーザーには直接ログインアクセス権が付与されます。 | | プラットフォーム \| 組織 | ✅ ログインフォレンジックは、ログイン履歴を 6 か月以上保存する必要がある場合に使用されます。 ログインフォレンジックは、ログイン履歴を 6 か月~ 10 年間保存する必要がある場合に使用されます。 | ### 認証パターン \[Well-Architected [Trusted (](/docs/architect/ja-jp/well-architected/guide/trusted-overview)適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Organizational Security](/docs/architect/ja-jp/well-architected/guide/secure#組織のセキュリティ) (組織のセキュリティ)] → \[[Authorization (承認](/docs/architect/ja-jp/well-architected/guide/secure#authorization))] の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| ボット | ✅ ビジネス使用事例ごとに一意のボット ユーザーが設定されているボット構成の\[Einstein ボット ビルダーの概要]セクションでは、最小権限の原則に従って、選択したボット ユーザーが、ボットが目的とするビジネスの目的を実行するために必要な最小限のアクセス権のみを提供します。 | | プラットフォーム \| Apex | ✅ DB 操作では、項目レベルおよびオブジェクトレベルのアクセスチェックを適切に実行 DML およびデータベース DML ステートメントでは、データ操作のユーザーモードまたはシステムモードを宣言します。また、DML およびデータベース DML ステートメントでは、データ操作の前に`stripInaccessible`メソッドを使用します。 | | プラットフォーム \| Apex | ✅ データベース操作で項目レベルおよびオブジェクトレベルのアクセスチェックを適切に実行 SOQL および SOSL ステートメントでは、`WITH USER_MODE` および `WITH SYSTEM_MODE` キーワードを使用 AND/OR `stripInaccessible` メソッドを使用してクエリおよびサブクエリの結果を絞り込む | | プラットフォーム \| Apex | ✅ データベース操作で項目レベルおよびオブジェクトレベルのアクセスチェックを適切に実行 sObject describe result メソッド(`isAccessible`、`isCreateable`、`isUpdateable`、`isDeletable`)は慎重に使用 | | プラットフォーム \| 設計標準 | ✅ 昇格した権限を付与する使用事例が明確にリストされています。たとえば、「すべてのデータの編集」権限、「すべてのデータの参照」権限などがあります。 | | プラットフォーム \| ドキュメント | ✅ Salesforce へのアクセス権を持つすべてのユーザーとシステムがセキュリティマトリックスの 1 つ以上の人格に対応付けられる | | プラットフォーム \| ドキュメント | ✅ セキュリティマトリックスには、メタデータ権限と割り当てられたユーザー人格が明確にリストされています。 | | プラットフォーム \| 組織 | ✅ 権限セットと権限セットグループは、メタデータへのアクセスを制御するために使用されます。 | | プラットフォーム \| 組織 | ✅ 権限セットと権限セットグループはビジネス機能に合わせて調整 | | プラットフォーム \| 組織 | ✅ すべてのインテグレーションに一意の API 限定インテグレーションユーザーが設定されている | | プラットフォーム \| 組織 | ✅ プロファイルはログイン IP アドレス範囲とログイン時間を制御するためにのみ最小限使用されます。 | | プラットフォーム \| 組織 | ✅ ユーザーに割り当てられた権限はセキュリティマトリックス定義に従う | --- ### 認証アンチパターン \[Well-Architected [Trusted](/docs/architect/ja-jp/well-architected/guide/trusted-overview) (適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Organizational Security](/docs/architect/ja-jp/well-architected/guide/secure#組織のセキュリティ) (組織のセキュリティ)] → \[[Authentication (認証](/docs/architect/ja-jp/well-architected/guide/secure#認証))] の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ ユーザー名とパスワードがコードに表示される | | プラットフォーム \| Apex | ⚠️ カスタムログインフローが存在する場合、セッションレベルセキュリティを割り当てるロジックはありません | | プラットフォーム \| Apex | ⚠️ 認証がアドホックで処理される | | プラットフォーム \| Aura | ⚠️ 認証がアドホックで処理される | | プラットフォーム \| Aura | ⚠️ ユーザー名とパスワードがコードに表示される | | プラットフォーム \| ビジネス | ⚠️ ユーザーのプロビジョニングとプロビジョニング解除の SLA と要件が存在しない | | プラットフォーム \| ドキュメント | ⚠️ セキュリティ人格は含まれません | | プラットフォーム \| ドキュメント | ⚠️ セキュリティマトリックスにセキュリティ人格と許可された認証スキームの明確な対応付けがない | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ 認証がアドホックで処理される | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ ユーザー名とパスワードがコードに表示される | | プラットフォーム \| 組織 | ⚠️ API アクセスコントロールが有効になっていない | | プラットフォーム \| 組織 | ⚠️ ユーザーがファイアウォールの内側から Salesforce にアクセスする場合、ファイアウォールはハードコードされた IP アドレスを使用して Salesforce との間の通信を保護します。 | | プラットフォーム \| 組織 | ⚠️ Salesforce にログインしているユーザーとエンティティのリレーションが 1 対 1 ではない (共有ユーザーアカウントがある) | | プラットフォーム \| 組織 | ⚠️ SSO が有効になっている場合、承認済みのシステム管理者は直接ログインできません。 | | プラットフォーム \| 組織 | ⚠️ ログイン設定が Salesforce MFA チェックと一致していない | | プラットフォーム \| 組織 | ⚠️ 従来の指定ログイン情報は外部システムへの認証に使用されます。 従来の指定ログイン情報を使用してコールアウトエンドポイントの URL とその必要な認証パラメーターを指定する | ### 認証アンチパターン \[Well-Architected [Trusted (](/docs/architect/ja-jp/well-architected/guide/trusted-overview)適切に構築された信頼済み)] → \[[Secure (安全](/docs/architect/ja-jp/well-architected/guide/secure))] → \[[Organizational Security](/docs/architect/ja-jp/well-architected/guide/secure#組織のセキュリティ) (組織のセキュリティ)] → \[[Authorization (承認](/docs/architect/ja-jp/well-architected/guide/secure#authorization))] の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| ボット | ⚠️ Einstein ボットが基本チャットボット ユーザーまたは「汎用」ボット ユーザーを使用しているボット構成の[Einstein ボット ビルダーの概要]セクションで、選択されたボット ユーザーは基本チャットボット ユーザーまたはさまざまなビジネス目的で使用されるボット間で共有される「汎用」カスタム チャットボット ユーザーです。 | | プラットフォーム \| Apex | ⚠️ DML、データベースクラスのメソッド、SOQL、SOSL がデフォルトのシステムモードで実行される | | プラットフォーム \| Apex | ⚠️ データベース操作でアクセスチェックが適切に実行されない SOQL クエリでは、アクセス制限に `WITH SECURITY_ENFORCED` キーワードが排他的に使用される | | プラットフォーム \| Apex | ⚠️ データベース操作でアクセスチェックが適切に実行されない DML またはデータベースクラスのメソッドでは、sObject および項目レベルのアクセスに対して `isAccessible`、`isCreateable`、`isUpdateable`、`isDeletable` チェックが排他的に使用される | | プラットフォーム \| 設計標準 | ⚠️ 「すべてのデータの編集」権限 - 「すべてのデータの参照」権限など、昇格した権限を付与する使用事例が明確にリストされていない | | プラットフォーム \| ドキュメント | ⚠️ メタデータ権限と割り当てられた人格が明確に記載されていない | | プラットフォーム \| ドキュメント | ⚠️ ドキュメントにセキュリティマトリックスは含まれません | | プラットフォーム \| 組織 | ⚠️ ユーザーに割り当てられた権限がセキュリティマトリックス定義に従っていない | | プラットフォーム \| 組織 | ⚠️ プロファイルにはメタデータのアクセス制御が含まれます。 | | プラットフォーム \| 組織 | ⚠️ 権限セットがアドホックに設定されている | | プラットフォーム \| 組織 | ⚠️ 権限セットグループがビジネス機能に基づいてアクセスできるように設定されていない | | プラットフォーム \| 組織 | ⚠️ API 限定ユーザーが設定されていないか、複数のインテグレーションで共有されている | | プラットフォーム \| 組織 | ⚠️ 権限セットが冗長であるか、大幅に重複しており、明確な機能ロジックやセット間の違いを理解するのが難しい | --- # 信頼性 - パフォーマンス ### 遅延パターン 適切に設計された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [パフォーマンス](/docs/architect/ja-jp/well-architected/guide/reliable#performance) → [レイテンシ](/docs/architect/ja-jp/well-architected/guide/reliable#遅延)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ✅ データストリームでは、可能な場合はフル更新ではなく更新/挿入を使用します。フル更新では、テーブルが完全にクリアされ、データが再入力されます。フル更新が本当に必要でない限り、新規または更新されたレコードのみを取得するように更新/挿入を選択します。これにより、処理時間が短縮され、クレジット使用量が減少します。 | | Einstein \| エージェント | ✅ 特定のトピックに割り当てられたアクションがエージェントに 15 個以下である (エージェントビルダーの \[このトピックのアクション] タブに 15 個以下のアクションが表示されている) | | Einstein \| Search Indexes (インデックスの検索) | ✅ エージェントのレイテンシを削減するために検索インデックスからカーディナリティの低いフィールドを除外する カーディナリティが非常に低いフィールド (リスト内の個別の要素の数) やエントロピーが低いフィールド (リストエントリが少数の値に集中している) を取り込むと、関連性とレイテンシに影響する可能性があります。検索インデックスビルダーの高度な設定を使用して、関連するフィールドのみを選択してチャンクします。これにより、検索インデックスのサイズが小さくなり、エージェントの待機時間が短縮されます。 | | プラットフォーム \| フロー | ✅ \[レコードを取得] 内の項目を指定してパフォーマンスを向上 \[レコードを取得] 要素で保存する項目を指定すると、サーバーから返されてクライアントに渡されるデータの量が減ります。データテーブルがこの要素の出力を消費している場合、コンポーネントのパフォーマンスが大幅に向上する可能性があります。 | | プラットフォーム \| 組織 | ✅ レポートは 1 つの特定の目的を果たす | | プラットフォーム \| 組織 | ✅ レポートには、意思決定に必要な最小限の行数と列数が含まれます。 | | プラットフォーム \| 組織 | ✅ 検索条件は \[次の文字列と一致する/等しくない] を使用します。 | | プラットフォーム \| 組織 | ✅ 検索条件に数式項目が含まれていない | | プラットフォーム \| 組織 | ✅ 共有モデルは可能な限り簡略化 | | プラットフォーム \| 組織 | ✅ カスタム UI コンポーネントで Lightning Web コンポーネントを使用 | | プラットフォーム \| 組織 | ✅ LWC はデータ操作に Lightning Data Service を使用 | | プラットフォーム \| 組織 | ✅ リストデータの並び替えや絞り込みはクライアント側で JavaScript で処理 | | プラットフォーム \| 組織 | ✅ リストビュー、レポート、ダッシュボードのパフォーマンスが監査されます。定期的なレビューでパフォーマンスの問題 (ランタイム/DB CPU 消費量が多い) を特定し、パフォーマンスの低いリストビュー、レポート、ダッシュボードを更新または削除します。 | | プラットフォーム \| 組織 | ✅ Salesforce Edge が有効になっている | ### スループットパターン Well-Architected [Trusted](/docs/architect/ja-jp/well-architected/guide/trusted-overview) (適切に構築された信頼) → [Reliable](/docs/architect/ja-jp/well-architected/guide/reliable) (信頼性) → [Performance](/docs/architect/ja-jp/well-architected/guide/reliable#performance) (パフォーマンス) → [Throughput (スループット](/docs/architect/ja-jp/well-architected/guide/reliable#スループット)) の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ✅ Bulk API のバッチサイズは慎重に調整されます。バッチサイズは、オブジェクトの性質、操作、オブジェクトの基盤となる自動化によってジョブ間で異なる場合があります。科学ではなく、ちょっとした技術では、できるだけ多くの作業を実行し、実行時間が 10 分を超えないようにバッチサイズを調整することが重要です。 | | プラットフォーム \| 設計標準 | ✅ プラットフォームキャッシュの使用方法に関するガイダンスは、プラットフォームキャッシュのベストプラクティスに準拠しています。 | | プラットフォーム \| 組織 | ✅ Apex では DML またはデータベースのメソッドが常にコレクションに対して動作 | | プラットフォーム \| 組織 | ✅ SOQL ステートメントは選択的です。SOQL では`LIKE`の比較や部分的なテキストの比較は使用されません。 | | プラットフォーム \| 組織 | ✅ SOQL ステートメントは選択的な比較演算子であり、SOQL ステートメントの主ロジックまたは唯一のロジックとして肯定的なロジック(`INCLUDES`、`IN`)を使用します。 | | プラットフォーム \| 組織 | ✅ SOQL ステートメントは選択的な`= NULL`の使用、`!= NULL`はまれ、または SOQL ステートメントで常に肯定的な比較演算子に従う、またはその両方 | | プラットフォーム \| 組織 | ✅ SOQL ステートメントは選択的です。SOQL に `LIMIT 1` ステートメントは表示されません。 | | プラットフォーム \| 組織 | ✅ ループ内に SOQL が表示されない | | プラットフォーム \| 組織 | ✅ SOSL にすべてのワイルドカード条件が表示される | | プラットフォーム \| 組織 | ✅ 一括処理は、データおよびシステム操作に使用されます。 | | プラットフォーム \| 組織 | ✅ 可能な場合は非同期処理が好まれる | | プラットフォーム \| 組織 | ✅ プラットフォームキャッシュパーティションが設定されている | | プラットフォーム \| 組織 | ✅ SOQL ステートメントは選択的です。 | | プラットフォーム \| 組織 | ✅ SOQL ステートメントは選択的です。SOQL ステートメントに `ALL ROWS` キーワードは使用されません。 | --- ### 遅延対策パターン 適切に設計された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [パフォーマンス](/docs/architect/ja-jp/well-architected/guide/reliable#performance) → [レイテンシ](/docs/architect/ja-jp/well-architected/guide/reliable#遅延)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ⚠️ データストリームの更新モードはデフォルトで \[フル更新] に設定されています。すべてまたはほとんどのデータストリームの更新モードは \[フル更新] です。 | | Einstein \| エージェント | ⚠️ エージェントが特定のトピックに 15 件以上のアクションを割り当てている 15 件以上のアクションがエージェントビルダーの \[このトピックのアクション] タブにリストされている | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ アプリケーションイベントは、コンポーネントが使用されているときにのみ実行されると仮定します。Lightning コンソールでは、フォーカスされていないタブに含まれるコンポーネントは、表示されていなくてもアプリケーションイベントをリスンできます。 | | プラットフォーム \| 組織 | ⚠️ 共有モデルは複雑 | | プラットフォーム \| 組織 | ⚠️ カスタム UI コンポーネントで Aura または Visualforce を使用 | | プラットフォーム \| 組織 | ⚠️ LWC はデータ操作に Apex を使用 | | プラットフォーム \| 組織 | ⚠️ リストデータの並び替えと絞り込みは、Apex を使用してサーバー側で処理する | | プラットフォーム \| 組織 | ⚠️ Filters uses contains/does not contain (検索条件で次の文字列を含む/含まない) | | プラットフォーム \| 組織 | ⚠️ 検索条件に数式項目が含まれている | | プラットフォーム \| 組織 | ⚠️ Salesforce Edge が有効になっていない | | プラットフォーム \| 組織 | ⚠️ レポートには複数の目的があります。 | | プラットフォーム \| 組織 | ⚠️ レポートには、意思決定に不要な行と列が含まれています。 | ### スループットアンチパターン Well-Architected [Trusted](/docs/architect/ja-jp/well-architected/guide/trusted-overview) (適切に構築された信頼) → [Reliable](/docs/architect/ja-jp/well-architected/guide/reliable) (信頼性) → [Performance](/docs/architect/ja-jp/well-architected/guide/reliable#performance) (パフォーマンス) → [Throughput (スループット](/docs/architect/ja-jp/well-architected/guide/reliable#スループット)) の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | | プラットフォーム \| Apex | ⚠️ 1 つの同期アクションから複数の Future または Queueable メソッドをキューに入れる 1 つの同期アクションから複数の非同期メソッドをキューに入れる | | プラットフォーム \| Apex | ⚠️ Bulk API バッチ間で親/子ペアが分割される 複数のバッチに同じ親に関連する子レコードが含まれる | | プラットフォーム \| 設計標準 | ⚠️ プラットフォームキャッシュの利用状況に関する指針がある場合、それが不明確であるか、推奨されるベストプラクティスと一致していない | | プラットフォーム \| 組織 | ⚠️ SOQL ステートメントは非選択`= NULL`であり、`!= NULL`条件は SOQL ステートメントの主演算子または唯一の比較演算子として使用されます。 | | プラットフォーム \| 組織 | ⚠️ SOQL ステートメントは、SOQL に表示される非選択的な `LIMIT 1` ステートメントです。 | | プラットフォーム \| 組織 | ⚠️ SOQL ステートメントは SOQL ステートメントで非選択的 `ALL ROWS` キーワードが使用されている | | プラットフォーム \| 組織 | ⚠️ DML ステートメントは一括処理されません | | プラットフォーム \| 組織 | ⚠️ 同期プロセスが好まれる | | プラットフォーム \| 組織 | ⚠️ ループ内に SOQL が表示される | | プラットフォーム \| 組織 | ⚠️ 特定の時間に非同期操作が終了するように計画する 特定の時間または特定の SLA 内で非同期操作が終了することを想定したプロセスまたはソリューションを設計する。 | | プラットフォーム \| 組織 | ⚠️ 同期操作からの一括処理ジョブのキューイング Apex 一括処理ジョブは、同期エンド ユーザー アクティビティまたはインテグレーション API コールから開始されます。 | | プラットフォーム \| 組織 | ⚠️ Apex の 1 つのレコードに対して DML またはデータベースメソッドを操作 | | プラットフォーム \| 組織 | ⚠️ SOQL ステートメントは非選択`LIKE`であり、ワイルドカード検索条件は SOQL ステートメントに表示されます。 | | プラットフォーム \| 組織 | ⚠️ SOQL ステートメントは、`NOT` を使用した非選択的な比較です。`NOT IN`条件は、SOQL ステートメントの主または唯一の比較演算子として使用されます。 | | プラットフォーム \| 組織 | ⚠️ Visualforce ビューの状態はアプリケーションのキャッシュに使用されます。 | | プラットフォーム \| 組織 | ⚠️ SOSL がワイルドカード選択条件で使用されることはほとんどありません。 | | プラットフォーム \| Visualforce | ⚠️ Visualforce リモート中の過剰なポーリング 高トラフィックの Visualforce ページでは、データベースが 5 分ごとよりも頻繁にポーリングされる | --- # 信頼性 - 可用性 ### 障害の軽減パターン 適切に構築された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [可用性](/docs/architect/ja-jp/well-architected/guide/reliable#可用性) → [障害の軽減](/docs/architect/ja-jp/well-architected/guide/reliable#障害の軽減) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ 障害軽減計画は頻繁にテストされる 障害軽減計画は定期的 (1 ~ 2 年ごと) に、事後の一環として重大インシデントの後に反応的に、主要なビジネスイベントや IT イベントの前にプロアクティブにテストされます。 | | プラットフォーム \| 組織 | ✅ 緩和コントロールがすぐに導入され、経時的に成熟し、できるだけ早く自動化を組み込む | | プラットフォーム \| 組織 | ✅ 非同期プロセスが監視される 非同期プロセスは、Proactive Monitoring を使用するか、外部スケジュール済みジョブによって実行された AsyncApexJob を照会して監視されます。問題を早期に検出するためのアラートが提供され、検出時間 (TTD) とエンゲージメント時間 (TTE) が短縮されます。 | | プラットフォーム \| 組織 | ✅ トレーニングを受けたエンドユーザーのサブセットがリストビュー、レポート、ダッシュボードを作成 トレーニングを受けたエンドユーザーは、文書化されたガイドラインと定期的なレビューを含む組織全体のレポート戦略の一環としてレポート、リストビュー、ダッシュボードを作成します。 | | プラットフォーム \| 組織 | ✅ 障害点トリガーとそれに対応する緩和計画は、人、プロセス、技術で分類されます。 | ### リスク管理パターン 適切に構築された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [可用性](/docs/architect/ja-jp/well-architected/guide/reliable#可用性) → [リスク管理](/docs/architect/ja-jp/well-architected/guide/reliable#リスク管理)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ 確立されたリスク評価フレームワークが使用されている | | プラットフォーム \| ビジネス | ✅ リスク評価は、さまざまなステークホルダーグループによって承認されています。 | | プラットフォーム \| ビジネス | ✅ リスク評価フレームワークは、業界および会社の標準に準拠しています。ISO/IEC 27001、NIST サイバーセキュリティフレームワーク (CSF)、COBIT (情報および関連技術の統制目標)、ISO/IEC 27005、GDPR (一般データ保護規則)、OWASP (オープン Web アプリケーションセキュリティプロジェクト)、CSA Cloud 統制マトリックス (CCM)、PCI DSS (Payment Card Industry Data Security Standard)、または SOC 2 (System and Organization Controls) | | プラットフォーム \| ビジネス | ✅ 大きな変更を導入する前にリスクを評価する ビジネスや実装に大きな変化が発生する前にリスクを積極的に評価する。Signature Success のお客様は、Key Events Management を活用します。 | | プラットフォーム \| ビジネス | ✅ 季節ごとのスパイクは事前に計画されています。 ピーク利用状況イベント (トラフィックの季節的なスパイクなど) は事前に計画されています。Signature Success のお客様は、Key Events Management を活用します。 | | プラットフォーム \| ビジネス | ✅ リスク評価は頻繁にレビューされます。 リスク評価は、重大インシデントまたは危機対応コールの後、新製品、機能のロールアウト、新規ビジネスユニットのオンボーディングの前、主要なビジネスイベント (季節的な急増、重大なビジネスの変化) の前、定期的 (1 ~ 2 年ごと) に反応的にレビューされます。 | | プラットフォーム \| ビジネス | ✅ リスクは、人、プロセス、テクノロジーの領域に分類 | | プラットフォーム \| ドキュメント | ✅ 顧客への影響に基づいてリスクの重要度を分類して評価する | | プラットフォーム \| ドキュメント | ✅ リスク軽減・対応計画に優先順位を付け、優先度の高いリスクに焦点を絞る | --- ### 障害軽減対策パターン 適切に構築された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [可用性](/docs/architect/ja-jp/well-architected/guide/reliable#可用性) → [障害の軽減](/docs/architect/ja-jp/well-architected/guide/reliable#障害の軽減) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ 障害軽減計画は十分にテストされていない 障害軽減はテストされないか、最初の設計/構築フェーズ後にのみテストされる | | プラットフォーム \| ビジネス | ⚠️ 季節的な急増が事前に考慮されていない (トラフィックの季節的な急増など) ピーク利用状況イベントが事前に計画されていない | | プラットフォーム \| 組織 | ⚠️ 緩和ではオートメーションが使用されません | | プラットフォーム \| 組織 | ⚠️ 障害点トリガーは分類されません。軽減アプローチはアドホックまたは存在しない | | プラットフォーム \| 組織 | ⚠️ 緩和措置が再検討または進化していない | | プラットフォーム \| 組織 | ⚠️ 非同期プロセスがプロアクティブに監視されていない 非同期プロセスは、非同期プロセス自体の一部であるカスタムエラーログメカニズムに依存しているか、まったく監視されていない | | プラットフォーム \| 組織 | ⚠️ リストビュー、レポート、ダッシュボードについてはエンドユーザーが単独で責任を負います。エンドユーザーは公開レポート、リストビュー、ダッシュボードを自由に作成でき、これらのメタデータ項目の定期的なパフォーマンスレビューは存在しません。 | ### リスク管理のアンチパターン 適切に構築された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [可用性](/docs/architect/ja-jp/well-architected/guide/reliable#可用性) → [リスク管理](/docs/architect/ja-jp/well-architected/guide/reliable#リスク管理)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ リスクが明確でない | | プラットフォーム \| ビジネス | ⚠️ Salesforce のリスク評価フレームワークはアドホックである | | プラットフォーム \| ビジネス | ⚠️ リスク評価フレームワークはサイロで開発されています。リスク評価フレームワークは 1 つのチームが個別に開発しており、会社のガイドラインや業界標準に準拠していません。 | | プラットフォーム \| ビジネス | ⚠️ リスク管理は「1 回限り」の活動とみなされ、リスク評価が 1 回のみ実行されるか、リスク評価フレームワークが定期的に更新されていない | | プラットフォーム \| ドキュメント | ⚠️ リスクの重要度やカテゴリを評価するときに顧客の視点が考慮されない | | プラットフォーム \| ドキュメント | ⚠️ リスク軽減および対応計画は、考えられるすべてのリスクを把握しようとします。 | --- # 信頼性 - 拡張性 ### データモデリングパターン 適切に設計された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [拡張性](/docs/architect/ja-jp/well-architected/guide/reliable#拡張性) → [データモデリング](/docs/architect/ja-jp/well-architected/guide/reliable#データモデリング) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ✅ マッピングの前にデータ変換を使用してデータを非正規化し、すべての連絡先を標準連絡先オブジェクトに個別に取り込めるようにソースデータを変換します。 | | プラットフォーム \| ビジネス | ✅ ローコードビルダーは、Salesforce でサポートされているさまざまなデータ型を理解し、データ型を選択する前にレポートと暗号化の要件を評価します。 | | プラットフォーム \| ビジネス | ✅ オブジェクト間の主従関係を確立する前に、共有とデータスキューの影響が評価されます。 | | プラットフォーム \| データモデル | ✅ スケールに合わせて非正規化されたテーブル | | プラットフォーム \| データモデル | ✅ 可能な限り標準オブジェクトを使用 | | プラットフォーム \| 設計標準 | ✅ カスタムオブジェクトが存在することをビジネスの理由付けとする基準と指針 | ### データ量パターン 適切に設計された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [拡張性](/docs/architect/ja-jp/well-architected/guide/reliable#拡張性) → [データ量](/docs/architect/ja-jp/well-architected/guide/reliable#データ量)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| テスト計画 | ✅ 一括読み込みの計算では、0 日目のデータ読み込みが考慮されます。 ソリューションの稼働開始 (0 日目とも呼ばれる) 前に移行する必要があることが多い大量のデータを計画し、スケジュールされた実行あたりの最大ファイルサイズと最大ファイル数に同時に達しないことを確認している。 | | プラットフォーム \| Apex | ✅ データの歪みが問題になるシナリオで、子レコードの数を複数の親レコードに分散するロジックが存在する | | プラットフォーム \| Apex | ✅ インテグレーションを介してインポートまたは複製されたときに、すべてのレコードを適切なユーザーに割り当てるロジックが存在する | | プラットフォーム \| ビジネス | ✅ データのアーカイブおよび消去戦略を文書化して実装している | | プラットフォーム \| ビジネス | ✅ 一括データ読み込み戦略は、サーバー消費を最適化するために最適化されています。 サーバー消費を効率化するために、一括読み込み戦略では読み込み時間、データシーケンス、レコードロック、自動化、一括共有プロセスが考慮されています。 | | プラットフォーム \| データ | ✅ 10,000 件を超える子レコードを持つ親レコードはありません | | プラットフォーム \| データ | ✅ 10,000 件を超える同じオブジェクト種別のレコードにユーザーが割り当てられていない | | プラットフォーム \| データ | ✅ 10,000 件を超えるレコードに同じレコードを参照する参照項目があるインスタンスが存在しない | | プラットフォーム \| データ | ✅ 本番への一括データ読み込みがピーク営業時間中に発生しない | | プラットフォーム \| データ | ✅ 一括データの読み込みは、`ParentId`項目値に従ってバッチに並び替えられます。 | | プラットフォーム \| データ | ✅ 一括データ読み込みには、ビジネス上の意思決定に必要な最小限のデータのみが含まれます。 | | プラットフォーム \| フロー | ✅ データの歪みが問題になるシナリオで、子レコードの数を複数の親レコードに分散するロジックが存在する | | プラットフォーム \| フロー | ✅ インテグレーションを介してインポートまたは複製されたときに、すべてのレコードを適切なユーザーに割り当てるロジックが存在する | | プラットフォーム \| 組織 | ✅ 大量のデータの読み込み中はデータの後処理が延期されます。 大量のデータの読み込みが終了するまで、後処理の自動化は延期されます。 | | プラットフォーム \| テスト計画 | ✅ Full Copy Sandbox で Bulk API 読み込み戦略をテスト Full Copy Sandbox で Bulk API を使用してデータ読み込みを計画し、パターン、読み込みの順序、発生する可能性のあるロックの問題を特定します。 | --- ### データモデリングのアンチパターン 適切に設計された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [拡張性](/docs/architect/ja-jp/well-architected/guide/reliable#拡張性) → [データモデリング](/docs/architect/ja-jp/well-architected/guide/reliable#データモデリング) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ ローコードビルダーは、下流のレポートと暗号化の要件を評価せずにデータ型を選択する | | プラットフォーム \| ビジネス | ⚠️ オブジェクト間の主従関係を確立する前に共有とデータスキューが考慮されない | | プラットフォーム \| データモデル | ⚠️ テーブルは冗長性を避けるために正規化されています | | プラットフォーム \| データモデル | ⚠️ 複製された標準オブジェクトがある | | プラットフォーム \| 設計標準 | ⚠️ カスタムオブジェクトを作成するための標準が存在しない | ### データ量のアンチパターン 適切に設計された[信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [信頼性](/docs/architect/ja-jp/well-architected/guide/reliable) → [拡張性](/docs/architect/ja-jp/well-architected/guide/reliable#拡張性) → [データ量](/docs/architect/ja-jp/well-architected/guide/reliable#データ量)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| テスト計画 | ⚠️ 一括読み込みの計算に 0 日目のデータ読み込みが含まれていない、0 日目の読み込みの計算が実行されていない、または文書化されている場合、ファイルサイズと同時実行ファイル数の両方が最大値に近い | | プラットフォーム \| Apex | ⚠️ データ読み込みまたはインテグレーションで作成されたレコードは、一般的な「インテグレーションユーザー」に割り当てられます。 | | プラットフォーム \| Apex | ⚠️ 子レコードは、すでに割り当てられている既存の子レコードの数に関係なく、親レコードに任意に割り当てられます。 | | プラットフォーム \| ビジネス | ⚠️ データのアーカイブおよび消去戦略がないか、戦略が文書化されているが実装されていない | | プラットフォーム \| ビジネス | ⚠️ 一括データ読み込みは、スケールを計画せずに実行されます。 一括データ読み込みを実行する前に、データシーケンス、レコードロック、自動化、一括共有プロセスが考慮されません。 | | プラットフォーム \| データ | ⚠️ 本番へのデータの一括読み込みは、ピーク営業時間中に行われます。 | | プラットフォーム \| データ | ⚠️ 一括データ読み込みは、ビジネス上の意思決定に必要な最小限のデータに限定されない | | プラットフォーム \| データ | ⚠️ 10,000 件を超える子レコードが存在する | | プラットフォーム \| データ | ⚠️ ユーザーが同じ種別の 10,000 件を超えるレコードに割り当てられている | | プラットフォーム \| データ | ⚠️ 10,000 件を超えるレコードに同じレコードを参照する参照項目があるインスタンスが存在する | | プラットフォーム \| データ | ⚠️ 一括データ読み込みは、`ParentId`項目値に従ってバッチに並び替えられない | | プラットフォーム \| フロー | ⚠️ データ読み込みまたはインテグレーションで作成されたレコードは、一般的な「インテグレーションユーザー」に割り当てられます。 | | プラットフォーム \| フロー | ⚠️ 子レコードは、すでに割り当てられている既存の子レコードの数に関係なく、親レコードに任意に割り当てられます。 | | プラットフォーム \| 組織 | ⚠️ Bulk API 読み込み戦略は Partial Copy Sandbox でテストされます。Bulk API 読み込みテストでは、Partial Copy Sandbox のデータのサブセットに対してバッチ読み込み時間が実施されます。 | | プラットフォーム \| 組織 | ⚠️ レコードをロックする他の操作と並行して一括データ読み込みを実行 データ読み込みと並行して一括処理 Apex を実行 | | プラットフォーム \| 組織 | ⚠️ データセットのサイズを考慮しない API の選択 SOAP API は、500,000 件を超えるレコードの読み込みに使用されます。 | | プラットフォーム \| 組織 | ⚠️ レポート要件によりロール階層設計を促進 レポート要件を使用して、必要なロール階層レベルまたは必要なロール階層レベルを決定する | | プラットフォーム \| 組織 | ⚠️ ロール階層に空のロールがある 空のプレースホルダーロールが将来のために作成される | | プラットフォーム \| 組織 | ⚠️ ロール階層は組織図を模倣しています。ロール階層で組織構造を再現し、会社の役職ごとに個別のロールを作成しています。 | --- # 意図的 - メンテナンス性 ### 標準とカスタムの機能パターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「意図的](/docs/architect/ja-jp/well-architected/guide/intentional)」 → [「メンテナンス性](/docs/architect/ja-jp/well-architected/guide/intentional#メンテナンス性)」 → 「[標準機能とカスタム](/docs/architect/ja-jp/well-architected/guide/intentional#standard-vs-custom-functionality)機能」の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ✅ 可能な限り標準コネクタを使用します。標準コネクタを使用できる場合は、カスタムデータストリームの実装の影響を慎重に検討してください。カスタムストリームでは、標準機能の機能強化を活用できません。 | | Einstein \| 組織 | ✅ 既存のプロンプトから始めて、ニーズに合わせてカスタマイズします。新しいプロンプトを最初からドラフトするのではなく、サンプルプロンプトテンプレートライブラリのベストプラクティスを活用する | | Einstein \| プロンプトテンプレート | ✅ プロンプト テンプレートで Einstein Search Retrievers for RAG を使用 プロンプト テンプレートで取得の拡張生成を使用する場合、カスタム Apex の代わりに Low-code Search Retrievers を使用 | | プラットフォーム \| Apex | ✅ 標準ページビューメカニズムを上書きするコードが存在しない | | プラットフォーム \| Aura | ✅ 標準ページビューメカニズムを上書きするコードが存在しない | | プラットフォーム \| Aura | ✅ プラットフォームの実行順序を上書きまたは回避しようとするコードがない | | プラットフォーム \| データモデル | ✅ 標準オブジェクトと重複する名前や機能を持つオブジェクトがない | | プラットフォーム \| データモデル | ✅ 標準オブジェクトが目的の範囲をはるかに逸脱した目的で使用されていない | | プラットフォーム \| 決定レコード | ✅ ソリューションの構築または購入を選択するときに、短期および長期のコストの計算が表示される決定レコード | | プラットフォーム \| 設計標準 | ✅ ソリューションの指針は、次の優先度を使用します。1\.組み込みプラットフォームサービスを使用します。 2.カスタムソリューションを作成する前に AppExchange アプリケーションを検討します。 3.コードを記述する前にローコードのカスタマイズを使用する | | プラットフォーム \| 設計標準 | ✅ 不要なカスタマイズからソリューションを守る明確な指針がある | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ 標準ページビューメカニズムを上書きするコードが存在しない | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ プラットフォームの実行順序を上書きまたは回避しようとするコードがない | | プラットフォーム \| Visualforce | ✅ プラットフォームの実行順序を上書きまたは回避しようとするコードがない | ### 技術的負債パターン 適切に設計された \[[容易]](/docs/architect/ja-jp/well-architected/guide/easy-overview) → \[[意図的]](/docs/architect/ja-jp/well-architected/guide/intentional) → \[[メンテナンス性]](/docs/architect/ja-jp/well-architected/guide/intentional#メンテナンス性) → \[[技術的負債](/docs/architect/ja-jp/well-architected/guide/intentional#技術的負債)] についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 決定レコード | ✅ テクノロジー導入前/導入後の負債修復の KPI が明確に文書化されている | | プラットフォーム \| 決定レコード | ✅ アクションとアクションのトレードオフに関するディスカッションでビジネスのコストまたは利益に焦点を絞る | | プラットフォーム \| 組織 | ✅ Salesforce Connect の組織間アダプターを使用する有効な Salesforce 組織の接続で、サポート対象外のテクノロジーや従来のテクノロジーがない | | プラットフォーム \| 組織 | ✅ サポートされないテクノロジーやレガシー テクノロジーがアクティブでない 次のものが含まれます。 - すべてのユーザーが Lightning Experience で作業している - Apex で`@future`を使用しないか、ほとんど使用していない(Queueable が使用されている) - すべてのサードパーティ Apex が AppExchange パッケージに属している - 有効なワークフロー ルールがない(フローが使用されている) - PushTopic イベント(変更データキャプチャが使用されている) - 一般的なイベント(プラットフォーム イベントが使用されている) - 30.0 より前の API バージョン - Salesforce 組織の接続で Salesforce Connect の組織間アダプタを使用している | | プラットフォーム \| 組織 | ✅ サポートされていないテクノロジーや有効なレガシー テクノロジーがない Apex で`@future`を使用していないか、ほとんど使用していない(Queueable が使用されている) | | プラットフォーム \| 組織 | ✅ サポートされていないテクノロジーや有効なレガシーテクノロジーがない すべてのサードパーティ Apex が AppExchange パッケージに属している | | プラットフォーム \| 組織 | ✅ サポート対象外のテクノロジーや有効なレガシー テクノロジーはありません。すべてのユーザーが Lightning Experience で作業しています。 | | プラットフォーム \| 組織 | ✅ サポートされないテクノロジーや従来のテクノロジーが有効になっていない (フローが使用されている) | | プラットフォーム \| 組織 | ✅ サポートされないテクノロジーや従来のテクノロジーが有効になっていないプロセスビルダープロセスがない (フローが使用されている) | | プラットフォーム \| 組織 | ✅ サポートされていないテクノロジーや従来のテクノロジーが有効な PushTopic イベントがない (変更データキャプチャが使用されている) | | プラットフォーム \| 組織 | ✅ 30.0 より前の有効な API バージョンでサポートされていないテクノロジーや従来のテクノロジーがない | | プラットフォーム \| 組織 | ✅ サポートされないテクノロジーや従来のテクノロジーが有効でない汎用イベント (プラットフォームイベントが使用される) | | プラットフォーム \| ロードマップ | ✅ 成果物と開始/終了日が明確である | | プラットフォーム \| ロードマップ | ✅ 技術的な負債に対処する作業が存在する | --- ### 標準対カスタム機能のアンチパターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「意図的](/docs/architect/ja-jp/well-architected/guide/intentional)」 → [「メンテナンス性](/docs/architect/ja-jp/well-architected/guide/intentional#メンテナンス性)」 → 「[標準機能とカスタム](/docs/architect/ja-jp/well-architected/guide/intentional#standard-vs-custom-functionality)機能」の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ⚠️ 標準コネクタの使用頻度が低い場合 標準コネクタで可能な一括またはストリーミング取り込みを使用したカスタムデータストリームの実装 | | Einstein \| プロンプトテンプレート | ⚠️ プロンプトテンプレートは最初から作成されます。 プロンプトテンプレートは、さまざまなスタイル、言い回し、書式で最初から作成されます。 | | Einstein \| プロンプトテンプレート | ⚠️ プロンプト テンプレートで RAG 用のカスタム Apex を活用プロンプト テンプレートでカスタム Apex リソースを使用して RAG を実装 | | プラットフォーム \| Apex | ⚠️ プラットフォームの実行順序を上書きまたは回避するコードの試行 | | プラットフォーム \| Aura | ⚠️ 標準ページビューメカニズムを上書きするコード (多くの場合、単一ページアプリケーションの形式) | | プラットフォーム \| Aura | ⚠️ プラットフォームの実行順序を上書きまたは回避するコードの試行 | | プラットフォーム \| データモデル | ⚠️ 標準オブジェクトの名前や機能が重複するオブジェクト | | プラットフォーム \| データモデル | ⚠️ 標準オブジェクトが意図する範囲外の目的で使用されている | | プラットフォーム \| 決定レコード | ⚠️ 決定レコードでは、ソリューションの構築または購入を選択するときに短期コストと長期コストの両方が考慮されません。 | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しないか、不要なカスタマイズやコードを回避するための明確な根拠がない | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ 標準ページビューメカニズムを上書きするコード (多くの場合、単一ページアプリケーションの形式) | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ プラットフォームの実行順序を上書きまたは回避するコードの試行 | | プラットフォーム \| Visualforce | ⚠️ 標準ページビューメカニズムを上書きするコード (多くの場合、単一ページアプリケーションの形式) | ### 技術的負債対策パターン 適切に設計された \[[容易]](/docs/architect/ja-jp/well-architected/guide/easy-overview) → \[[意図的]](/docs/architect/ja-jp/well-architected/guide/intentional) → \[[メンテナンス性]](/docs/architect/ja-jp/well-architected/guide/intentional#メンテナンス性) → \[[技術的負債](/docs/architect/ja-jp/well-architected/guide/intentional#技術的負債)] についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 決定レコード | ⚠️ テクノロジー負債の修復には測定可能な KPI がない | | プラットフォーム \| 決定レコード | ⚠️ テクノロジー負債は、ビジネスとの関連性はなく、技術的または IT に焦点を絞った用語で考慮されます。 | | プラットフォーム \| 組織 | ⚠️ サポートされないテクノロジーまたは従来のテクノロジーが 30.0 より前の有効な API バージョンである | | プラットフォーム \| 組織 | ⚠️ サポートされていないテクノロジーまたは従来のテクノロジーが有効なワークフロールール | | プラットフォーム \| 組織 | ⚠️ サポートされていないテクノロジーまたは従来のテクノロジーが有効な PushTopic イベント | | プラットフォーム \| 組織 | ⚠️ サポートされていないテクノロジーまたは従来のテクノロジーが有効なプロセスビルダープロセスである | | プラットフォーム \| 組織 | ⚠️ サポートされないテクノロジーまたは従来のテクノロジーが有効になっている一般的なイベント | | プラットフォーム \| 組織 | ⚠️ サポートされていないテクノロジーまたは従来のテクノロジーが有効 Salesforce Classic で作業しているユーザー | | プラットフォーム \| 組織 | ⚠️ サポートされていないテクノロジーまたは従来のテクノロジーが有効な Salesforce から Salesforce への接続 | | プラットフォーム \| 組織 | ⚠️ サポートされないテクノロジーまたはレガシー テクノロジーが有効である。次のものが含まれる: - Salesforce Classic で作業するユーザー - Apex での`@future`の使用 - AppExchange 以外のソースからのサードパーティ Apex - ワークフロー ルール - プロセス ビルダー プロセス - PushTopic イベント - 一般的なイベント - 30.0 より前の API バージョン - Salesforce から Salesforce への接続 | | プラットフォーム \| 組織 | ⚠️ サポートされないテクノロジーまたは従来のテクノロジーが Apex で`@future`を使用している | | プラットフォーム \| 組織 | ⚠️ サポートされないテクノロジーまたは従来のテクノロジーが有効 AppExchange 以外のソースのサードパーティ Apex | | プラットフォーム \| ロードマップ | ⚠️ 技術的な負債に対処する作業が予定されていない | | プラットフォーム \| ロードマップ | ⚠️ 成果物があいまいで、開始日/終了日が明確でない | --- # 意図的 - 読みやすさ ### 設計標準パターン 適切に設計された \[[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)] → \[[意図的]](/docs/architect/ja-jp/well-architected/guide/intentional) → \[[読みやすさ](/docs/architect/ja-jp/well-architected/guide/intentional#読みやすさ)] → \[[設計標準]](/docs/architect/ja-jp/well-architected/guide/intentional#設計標準) についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| エージェント | ✅ エージェントの言語設定が会社の口調と一致する 会社の口調が金融機関など正式な場合、エージェントの口調設定は「正式」になります。会社が非公式の場合、トーン設定は「カジュアル」になります。それ以外の場合、トーン設定は「ニュートラル」になります。 | | Einstein \| 組織 | ✅ プロンプトテンプレートでは書式設定を活用して LLM にコンテキストを提供します。 1 つのハッシュを使用して、短いテキストブロックをプロンプトテンプレートコンテキストの 1 つの単位としてマークします。 | | Einstein \| 組織 | ✅ プロンプトテンプレートでは一貫した書き方が使用されます。単語の選択、書式設定、絵文字、句読点はテンプレート全体で一貫しています。 | | Einstein \| 組織 | ✅ プロンプトテンプレートは簡潔でわかりやすく、自然言語を使用します。テンプレートは業界の専門用語や専門用語を避ける | | Einstein \| 組織 | ✅ プロンプトテンプレートは、コンテキストと手順を明確に示します。プロンプトでコンテキストを指定したら、テキスト「Instructions」で新しい行を開始し、その後に指示を三重引用符 ("") で囲みます。 | | プラットフォーム \| ビジネス | ✅ 承認された AI モデルが明確に識別され、目的が含まれている | | プラットフォーム \| ビジネス | ✅ 承認済みデザインパターンは使用事例で見つけやすく識別しやすい | | プラットフォーム \| ビジネス | ✅ チームは、作業を完了するために使用すべき (使用すべきでない) ツールを把握する | | プラットフォーム \| 組織 | ✅ コードおよび宣言型カスタマイズには、一貫性のある判読可能な名前を付ける | | プラットフォーム \| 組織 | ✅ データモデルには、オブジェクトと項目の一貫した統一した名前が付けられている | | プラットフォーム \| 組織 | ✅ 監査では、項目が一貫して入力され、レポートなどで参照されていることが示されます。 | ### ドキュメントパターン 適切に設計された [容易](/docs/architect/ja-jp/well-architected/guide/easy-overview) → [意図的](/docs/architect/ja-jp/well-architected/guide/intentional) → [読みやすさ](/docs/architect/ja-jp/well-architected/guide/intentional#読みやすさ) → [ドキュメント](/docs/architect/ja-jp/well-architected/guide/intentional#ドキュメント) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| ドキュメント | ✅ ソースシステムはデータ辞書でインベントリされる Data 360 データソースは、ソースシステムとターゲットシステム、および 2 つの間の項目の対応付けを含むデータ辞書を使用してソリューション設計プロセスで文書化されます。 | | プラットフォーム \| ビジネス | ✅ すべてのソリューションのビジネス能力と技術的な実装の詳細を示す図が存在する | | プラットフォーム \| ビジネス | ✅ コードおよび宣言型カスタマイズで誰が/いつ/どのような情報ログが存在するかを示す鍵 | | プラットフォーム \| ビジネス | ✅ 関連ドキュメントを検索して見つけることができる | | プラットフォーム \| 組織 | ✅ コードと宣言型カスタマイズには明確な説明がある | --- ### Design Standards Anti-Pattern (設計標準アンチパターン) 適切に設計された \[[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)] → \[[意図的]](/docs/architect/ja-jp/well-architected/guide/intentional) → \[[読みやすさ](/docs/architect/ja-jp/well-architected/guide/intentional#読みやすさ)] → \[[設計標準]](/docs/architect/ja-jp/well-architected/guide/intentional#設計標準) についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | | Einstein \| プロンプトテンプレート | ⚠️ プロンプトテンプレートで専門用語や専門用語が使用されている プロンプトテンプレートには、簡潔な自然言語ではなく専門用語、略語、専門用語が含まれている | | プラットフォーム \| ビジネス | ⚠️ 承認された AI モデルが明確に識別されておらず、その使用目的が明確でない | | プラットフォーム \| ビジネス | ⚠️ チームは多くの異なるツールを使用して同様の作業を実行する | | プラットフォーム \| ビジネス | ⚠️ 承認されたデザインパターンがない | | プラットフォーム \| ビジネス | ⚠️ ベンダーや新入社員のオンボーディングに時間がかかる | | プラットフォーム \| 組織 | ⚠️ コードと宣言型カスタマイズの名前が統一されていない | | プラットフォーム \| 組織 | ⚠️ データモデルの名前に一貫性がなく、多くのオブジェクトと項目が冗長であるように見える | | プラットフォーム \| 組織 | ⚠️ 監査では、使用されていない項目やさまざまなレベルの利用状況が表示され、レポートなどへのリンクが一貫していない。 | ### ドキュメントのアンチパターン 適切に設計された [容易](/docs/architect/ja-jp/well-architected/guide/easy-overview) → [意図的](/docs/architect/ja-jp/well-architected/guide/intentional) → [読みやすさ](/docs/architect/ja-jp/well-architected/guide/intentional#読みやすさ) → [ドキュメント](/docs/architect/ja-jp/well-architected/guide/intentional#ドキュメント) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ⚠️ ソースからターゲットへの対応付けは、データマッピングキャンバスでのみ文書化されます。データソース項目は、Data 360 のデータマッピングキャンバスでの設定時にデータモデルオブジェクト項目にその場で対応付けられます。 | | プラットフォーム \| ビジネス | ⚠️ ソリューションの内容/方法/理由を見つけるのが難しく、ほとんどのチームが使用できない可能性がある | | プラットフォーム \| ビジネス | ⚠️ 使用しているソリューションやシステムを理解するのに苦労している | | プラットフォーム \| ビジネス | ⚠️ ベンダーや新入社員のオンボーディングに時間がかかる | | プラットフォーム \| 組織 | ⚠️ コードおよび宣言型カスタマイズに説明がない、説明がわかりづらい、またはカスタマイズが実際に行っていることと一致しないように見える | --- # 構成可能 - 相互運用性 ### API 管理パターン \[Well-Architected [Adaptable](/docs/architect/ja-jp/well-architected/guide/adaptable-overview) (適切に設計された適応可能)] → \[[Composable (構成](/docs/architect/ja-jp/well-architected/guide/composable)可能)] → \[[Interoperability (相互](/docs/architect/ja-jp/well-architected/guide/composable#相互運用性)運用性)] → \[[API Management (](/docs/architect/ja-jp/well-architected/guide/composable#api-管理)API 管理)] の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ クライアントアプリケーションが最新の API バージョンを使用して Salesforce Platform API をコールする Salesforce クライアントアプリケーションが、使用している API バージョンを定期的に更新する | | プラットフォーム \| 設計標準 | ✅ コンポーネント間通信用の明確なプロトコル (API) が存在する | | プラットフォーム \| 設計標準 | ✅ プロトコル/API は、ビルダーが検索および見つけられる論理グループにまとめられています。 | | プラットフォーム \| 設計標準 | ✅ プロトコル/API では、変数のデータ型、変数名、必須または省略可能を定義し、使用する状況を明確に説明します。 | | プラットフォーム \| ドキュメント | ✅ 特定の API やプロトコルを検索し、実装しているコンポーネントを特定可能 | | プラットフォーム \| ドキュメント | ✅ すべてのコンポーネントのドキュメントに、実装済みの API/通信プロトコルが明記されている | | プラットフォーム \| 組織 | ✅ 内部コミュニケーション用の API メッセージ形式と変数をカスタムメタデータ型で定義 | | プラットフォーム \| 組織 | ✅ 内部コミュニケーション用の API メッセージ形式と変数はプラットフォームイベントで定義 | | プラットフォーム \| 組織 | ✅ コードおよび宣言型カスタマイズでは、情報を送受信するために適切なカスタムメタデータ型 (またはプラットフォームイベント) を参照します。 | ### メッセージングおよびイベントパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [構成可能](/docs/architect/ja-jp/well-architected/guide/composable) → [相互運用性](/docs/architect/ja-jp/well-architected/guide/composable#相互運用性) → [メッセージングとイベント](/docs/architect/ja-jp/well-architected/guide/composable#メッセージングとイベント)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Data 360 \| 組織 | ✅ プラットフォームイベントとのデータアクションを使用した既存のインテグレーションパターンの再利用 プラットフォームイベントの活用 既存の Pub Sub API およびイベントリレーインテグレーションを活用した外部システムでのデータアクションの使用 | | プラットフォーム \| Apex | ✅ カスタムイベント定義の範囲は制限されます (システム全体のイベントやメッセージはコードで定義されません) | | プラットフォーム \| Apex | ✅ Apex のシステム全体のメッセージング サービスまたはイベント サービスには、Salesforce フロー ツールで使用できるようにアノテーションが付けられます。 | | プラットフォーム \| 設計標準 | ✅ 同期パターン (メッセージング) と非同期パターン (イベント) の明確な標準が存在する | | プラットフォーム \| 設計標準 | ✅ イベントやメッセージの構造には明確な基準がある | | プラットフォーム \| フロー | ✅ Salesforce フローツールは、システム全体のメッセージングまたはイベントサービスを参照します。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ カスタムイベント定義の範囲は制限されます (システム全体のイベントやメッセージはコードで定義されません) | | プラットフォーム \| 組織 | ✅ 一貫したメッセージングとイベントパターンがフローとコードに表示される | | プラットフォーム \| プラットフォームイベント | ✅ 内部システムメッセージングで使用されるプラットフォームイベントの表示ラベルが明確になっている | --- ### API 管理アンチパターン \[Well-Architected [Adaptable](/docs/architect/ja-jp/well-architected/guide/adaptable-overview) (適切に設計された適応可能)] → \[[Composable (構成](/docs/architect/ja-jp/well-architected/guide/composable)可能)] → \[[Interoperability (相互](/docs/architect/ja-jp/well-architected/guide/composable#相互運用性)運用性)] → \[[API Management (](/docs/architect/ja-jp/well-architected/guide/composable#api-管理)API 管理)] の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ クライアントアプリケーションが古い API バージョンを使用して Salesforce Platform API をコールする Salesforce クライアントアプリケーションは、使用している API バージョンを定期的に最新バージョンに更新する必要があります。 | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しないか、API と使用事例を定義していない | | プラットフォーム \| ドキュメント | ⚠️ コンポーネントのドキュメントが存在しない | | プラットフォーム \| ドキュメント | ⚠️ コンポーネントドキュメントにはコンポーネント内に実装された API が記述されていますが、API 定義が表示されるのはここのみです。 | | プラットフォーム \| ドキュメント | ⚠️ 特定の API またはプロトコルを検索することはできず、検索は API またはプロトコルが実装されたコンポーネントの識別に役立ちません。 | | プラットフォーム \| 組織 | ⚠️ API は、Salesforce と外部システム間の通信専用に定義されています。 | | プラットフォーム \| 組織 | ⚠️ システムのコンポーネント間 (コードおよび宣言型カスタマイズ) の通信がアドホックである | ### メッセージングおよびイベント対策パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [構成可能](/docs/architect/ja-jp/well-architected/guide/composable) → [相互運用性](/docs/architect/ja-jp/well-architected/guide/composable#相互運用性) → [メッセージングとイベント](/docs/architect/ja-jp/well-architected/guide/composable#メッセージングとイベント)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ システム全体のメッセージやイベントの構造がコードで定義されている | | プラットフォーム \| Apex | ⚠️ Apex で定義されたシステム全体のイベント構造またはメッセージ構造をフローなどのツールで使用できない | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しないか、同期パターンと非同期パターンの明確な標準やメッセージまたはイベント構造の明確な標準がない | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ システム全体のメッセージやイベントの構造がコードで定義されている | | プラットフォーム \| 組織 | ⚠️ メッセージングとイベントパターンのさまざまな戦略がフローとコードで表示される | | プラットフォーム \| プラットフォームイベント | ⚠️ 内部システムメッセージングに使用されるプラットフォームイベントの表示ラベルが明確でない、または存在しない | --- # 準拠 - アクセシビリティ ### データ入力パターン 適切に設計され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [アクセシビリティ](/docs/architect/ja-jp/well-architected/guide/compliant#アクセシビリティ) → [データ入力](/docs/architect/ja-jp/well-architected/guide/compliant#データエントリ) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ✅ 標準のキーボードやマウス以外のデータ入力に使用できるすべてのデバイスが表示されます。 | | プラットフォーム \| 設計標準 | ✅ テキスト値とサポートされるすべての言語への翻訳が表示されます。 | | プラットフォーム \| 組織 | ✅ サポートされる言語の翻訳はトランスレーションワークベンチに保存されます。 | | プラットフォーム \| テスト計画 | ✅ テストステップには、複数種類の入力デバイスを使用したデータ入力が含まれます。 | | プラットフォーム \| テスト計画 | ✅ テストステップには複数言語でのデータ入力が含まれます。 | ### ナビゲーションパターン 適切に設計された[信頼済み](/docs/architect/ja-jp/well-architected/guide/trusted-overview) → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [アクセシビリティ](/docs/architect/ja-jp/well-architected/guide/compliant#アクセシビリティ) → [ナビゲーション](/docs/architect/ja-jp/well-architected/guide/compliant#ナビゲーション)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ✅ ナビゲーションに使用できるすべてのデバイス (標準のキーボードとマウスだけでなく) が明確にリストされている | | プラットフォーム \| 設計標準 | ✅ UI/UX 標準では、すべてのナビゲーションコントロールの種別とスタイルを指定します。 | | プラットフォーム \| 設計標準 | ✅ 意味や状態を伝えるために承認される視覚的な合図の種類が明確にリストされ、色は主要な合図ではない | | プラットフォーム \| テスト計画 | ✅ テスト計画には、UI/UX テストを使用してナビゲーションパスの一貫性を確保することが含まれます。 | | プラットフォーム \| テスト計画 | ✅ テストステップには、複数の種類の入力デバイスを使用したナビゲーションが含まれます。 | --- ### データエントリのアンチパターン 適切に設計され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [アクセシビリティ](/docs/architect/ja-jp/well-architected/guide/compliant#アクセシビリティ) → [データ入力](/docs/architect/ja-jp/well-architected/guide/compliant#データエントリ) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ 標準キーボードとマウス以外のデータ入力に使用できるデバイスの一部のみ、またはまったく含まれていないデバイスのみが表示されます。 | | プラットフォーム \| 設計標準 | ⚠️ サポートされる言語と翻訳する UI 要素のリスト | | プラットフォーム \| 組織 | ⚠️ 翻訳はカスタム表示ラベルに保存されます | | プラットフォーム \| テスト計画 | ⚠️ アクセシビリティテストが含まれていない、またはアクセス可能なデータエントリのテストがアドホックである | ### ナビゲーションのアンチパターン 適切に設計された[信頼済み](/docs/architect/ja-jp/well-architected/guide/trusted-overview) → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [アクセシビリティ](/docs/architect/ja-jp/well-architected/guide/compliant#アクセシビリティ) → [ナビゲーション](/docs/architect/ja-jp/well-architected/guide/compliant#ナビゲーション)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しないか、ナビゲーションコントロールのアクセシビリティ要件を考慮していない | | プラットフォーム \| 設計標準 | ⚠️ ナビゲーションの UI/UX 標準が一貫していない | | プラットフォーム \| 設計標準 | ⚠️ 意味や状態の視覚的手がかりが色に依存する、またはビルダーの視覚的手がかりの明確なリストがない | | プラットフォーム \| テスト計画 | ⚠️ アクセシビリティテストが含まれていない、またはアクセシビリティナビゲーションのテストがアドホックである | --- # 準拠 - 倫理基準 ### 人工知能パターン 適切に構築された[信頼済み](/docs/architect/ja-jp/well-architected/guide/trusted-overview) → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [倫理基準](/docs/architect/ja-jp/well-architected/guide/compliant#倫理基準) → [人工知能](/docs/architect/ja-jp/well-architected/guide/compliant#人工知能)の詳細情報 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | Einstein \| 設計標準 | ✅ 生成応答により、AI モデルで使用されるデータソースを常に特定 | | Einstein \| 設計標準 | ✅ プロンプトエンジニアリングに使用できる/使用できないデータセットが文書化されている | | Einstein \| 設計標準 | ✅ ボットと生成 AI 応答がユーザーに明確に識別される | | Einstein \| 設計標準 | ✅ ユーザーにとって AI を特定する必要があるポイントを明確に定義 | | Einstein \| 設計標準 | ✅ 生成 AI の免責事項を使用するタイミングと方法の基準が明確になっている | | Einstein \| 設計標準 | ✅ AI ソリューション設計に人間が関与するポイントを文書化する方法に関する明確な要件が存在する | | Einstein \| 設計標準 | ✅ 人間が関与していないエンドユーザーには生成応答が直接送信されない | | Einstein \| 設計標準 | ✅ AI ソリューション設計における直接および間接フィードバックパスの文書化基準が存在する | | Einstein \| 設計標準 | ✅ AI アプリケーションのポリシーと承認済み使用事例が明確で見つけやすい | | Einstein \| 設計標準 | ✅ チャットボットのメッセージングと会話フローの標準が文書化されている | | Einstein \| ドキュメント | ✅ AI 機能が含まれる設定およびカスタマイズのドキュメントには、すべてのプロセスロジックの詳細な説明が含まれ、法務チームまたは監査人がアクセスできる一元的な場所に保存されます。 | | Einstein \| ドキュメント | ✅ 予測とおすすめを促進するモデルが、該当するデータセグメントを含めて明確に文書化されている | | Einstein \| ドキュメント | ✅ 会話ロジックとチャットボットメッセージが徹底的に文書化されている | | Einstein \| ドキュメント | ✅ データのドリフト、公平性とバイアススコアの変化、正確性、堅牢性に関する組織の AI モデルを監視するプロセスがある | | Einstein \| ドキュメント | ✅ すべての AI プロセスで使用されるトレーニング、評価、テストデータの説明が保持されている | | Einstein \| ドキュメント | ✅ AI 関連のデータクリーンアップの説明は、バイアステスト、関連付けられた結果、パフォーマンス/精度スコア (F1 スコアなど) と共に管理されます。 | | Einstein \| 組織 | ✅ プロンプトテンプレートの品質がテストされ、プロンプトテンプレートのテスト結果がプロンプトテンプレート応答の関連性、完全性、スタイル/トーン、実際の正確性、一貫性、有害性、バイアスを文書化されます。 | | Einstein \| 組織 | ✅ 生成 AI を人間のアシスタントとして使用 生成 AI を開始する場合は、応答の正確性と実用性をレビューできる「実権者」が存在することを確認します。 | | Einstein \| 組織 | ✅ AI モデルは Trust Data を使用します。コンテキストは、ゼロ パーティ(お客様から直接提供)またはファースト パーティ(お客様とビジネスのやり取りに基づいて収集)データを使用して Gen AI に提供されます。 | ### 会社保険契約パターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)できる組織 → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [倫理基準](/docs/architect/ja-jp/well-architected/guide/compliant#倫理基準) → [会社のポリシー](/docs/architect/ja-jp/well-architected/guide/compliant#会社の方針)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | プラットフォーム \| 設計標準 | ✅ 基準には、会社の方針の影響を受ける領域に関する明確な指針が含まれます。 | | プラットフォーム \| ドキュメント | ✅ 設定とカスタマイズに関するドキュメントには、サポートされている会社の値への参照が含まれます。 | | プラットフォーム \| 組織 | ✅ 会社のポリシー関連のコンプライアンスの対象となるすべてのオブジェクトと項目で、\[コンプライアンス分類]、\[データ所有者]、\[データ機密性レベル]、\[項目の利用状況] が設定されている | --- ### 人工知能のアンチパターン 適切に構築された[信頼済み](/docs/architect/ja-jp/well-architected/guide/trusted-overview) → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [倫理基準](/docs/architect/ja-jp/well-architected/guide/compliant#倫理基準) → [人工知能](/docs/architect/ja-jp/well-architected/guide/compliant#人工知能)の詳細情報 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| 設計標準 | ⚠️ 生成応答では AI モデルで使用されるデータソースが特定されない | | Einstein \| 設計標準 | ⚠️ ボットと生成 AI 応答がユーザーに識別されない | | Einstein \| 設計標準 | ⚠️ 生成応答は、人の関与なしでエンドユーザーに直接送信される | | Einstein \| 設計標準 | ⚠️ プロンプトエンジニアリングで使用されるデータセットが文書化されていない | | Einstein \| 設計標準 | ⚠️ AI ソリューション設計に人間が関与するポイントを文書化するための要件が存在しない | | Einstein \| 設計標準 | ⚠️ 設計基準でユーザーに AI を識別する必要があるポイントが示されていない | | Einstein \| 設計標準 | ⚠️ 生成応答に関する免責事項がない | | Einstein \| 設計標準 | ⚠️ AI ソリューション設計の直接および間接的なフィードバックパスを文書化するための基準が存在しない | | Einstein \| 設計標準 | ⚠️ 設計標準が存在しないか、AI アプリケーションの明確なポリシーと承認済み使用事例が含まれていない | | Einstein \| 設計標準 | ⚠️ チャットボットのメッセージングと会話設計の明確な標準が存在しない (ただしチャットボットは使用されている) | | Einstein \| ドキュメント | ⚠️ AI 監視プロセスが存在しないか文書化されていない | | Einstein \| ドキュメント | ⚠️ AI 機能が含まれる設定およびカスタマイズのドキュメントが欠落しているか、不完全であるか、アクセスできない場所に保存されている | | Einstein \| ドキュメント | ⚠️ 予測またはおすすめが、モデルの文書化なしで組織に実装されている | | Einstein \| ドキュメント | ⚠️ すべての AI プロセスで使用されるトレーニング、評価、テストデータに関する情報が不明瞭または利用不可である | | Einstein \| ドキュメント | ⚠️ AI 関連のデータクリーンアップ、バイアステスト、結果に関する情報が不明瞭または入手できない | | Einstein \| ドキュメント | ⚠️ チャットボットがメッセージと会話フローの文書化なしで組織に実装されている | | Einstein \| プロンプトテンプレート | ⚠️ AI はサードパーティデータに依存します。プロンプトテンプレートはサードパーティデータのみに依存します。ゼロまたはファーストパーティデータは含まれません。 | ### 会社ポリシーのアンチパターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)できる組織 → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [倫理基準](/docs/architect/ja-jp/well-architected/guide/compliant#倫理基準) → [会社のポリシー](/docs/architect/ja-jp/well-architected/guide/compliant#会社の方針)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ 設計標準が存在しない、または会社のポリシーの対象となる領域に関する明確な指針が提供されていない | | プラットフォーム \| ドキュメント | ⚠️ 設定およびカスタマイズのドキュメントが会社の値やポリシーを参照していない | | プラットフォーム \| 組織 | ⚠️ 会社のポリシー関連のコンプライアンスの対象となるオブジェクトで、コンプライアンス分類、データ所有者、データ機密性レベル、項目使用量の設定がない | --- # 準拠 - 法的遵守 ### データプライバシーパターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [法的遵守](/docs/architect/ja-jp/well-architected/guide/compliant#法的遵守) → [データ プライバシー](/docs/architect/ja-jp/well-architected/guide/compliant#データプライバシー)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| Einstein Trust Layer | ✅ コンプライアンス カテゴリ別に項目をマスキング Einstein Trust Layer は、ビジネス ルールと項目のコンプライアンス カテゴリに基づいて項目をマスキングするようにカスタマイズされています。 | | Einstein \| Einstein Trust Layer | ✅ 機密性レベルによるフィールドのマスキング Einstein Trust Layer は、ビジネス ルールとフィールドの機密性レベルに基づいてフィールドをマスキングするようにカスタマイズされています。 | | プラットフォーム \| ドキュメント | ✅ 項目レベルの名前、説明、分類を含む最新のデータ辞書がある | | プラットフォーム \| ドキュメント | ✅ どのユーザーがどのデータにアクセスできるかを識別する最新のセキュリティマトリックスがある | | プラットフォーム \| ドキュメント | ✅ 規制要件に対応するために作成された自動化の標準と図を含む最新の設計ドキュメントがある | | プラットフォーム \| 組織 | ✅ 機密情報が含まれるオブジェクトと項目、またはデータプライバシー規制の対象となる項目は、すべて \[コンプライアンス分類]、\[データ所有者]、\[データ機密性レベル]、\[項目の利用状況] が設定されている | ### ローカライズパターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)のおけるソリューション → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [法的準拠](/docs/architect/ja-jp/well-architected/guide/compliant#法的遵守) → [ローカライズ](/docs/architect/ja-jp/well-architected/guide/compliant#ローカライズ) | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ✅ 適用されるすべてのデータレジデンシー要件に準拠するためにデータを保存および管理する組織戦略がある | | プラットフォーム \| ドキュメント | ✅ 国境を越えてデータを複製するための受け入れ可能なシナリオとプロセスをまとめた統合戦略がある | | プラットフォーム \| ドキュメント | ✅ 地域、国、グローバルレベルでレポートとダッシュボードに含めることができる粒度のレベルの概要を示す分析戦略がある | --- ### データプライバシーのアンチパターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)性 → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [法的遵守](/docs/architect/ja-jp/well-architected/guide/compliant#法的遵守) → [データ プライバシー](/docs/architect/ja-jp/well-architected/guide/compliant#データプライバシー)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ⚠️ データ辞書が存在しないか、最新の状態に保たれていない | | プラットフォーム \| ドキュメント | ⚠️ 共有および表示に関するドキュメントが存在しないか、最新の状態に保たれていない | | プラットフォーム \| ドキュメント | ⚠️ 規制要件に対応する自動化の設計標準、図、ドキュメントが存在しないか、最新の状態に保たれていない | | プラットフォーム \| 組織 | ⚠️ 機密情報が含まれるオブジェクトおよび項目、またはデータプライバシー規制の対象となる項目に、コンプライアンス分類、データ所有者、データ機密性レベル、項目の利用状況の設定がない。 | ### ローカライズ対策パターン 適切に構築され[た信頼](/docs/architect/ja-jp/well-architected/guide/trusted-overview)のおけるソリューション → [準拠](/docs/architect/ja-jp/well-architected/guide/compliant) → [法的準拠](/docs/architect/ja-jp/well-architected/guide/compliant#法的遵守) → [ローカライズ](/docs/architect/ja-jp/well-architected/guide/compliant#ローカライズ) | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ⚠️ 分析戦略がないか、分析戦略がデータのローカライズとレジデンシーの要件に対応していない | | プラットフォーム \| ドキュメント | ⚠️ 組織戦略がない、または組織戦略でデータのローカライズとレジデンシーの要件に対応できない | | プラットフォーム \| ドキュメント | ⚠️ インテグレーション戦略がないか、インテグレーション戦略でデータのローカライズとレジデンシーの要件に対応できない | --- # 簡単なパターンとアンチパターンエクスプローラー 明確さ、自動化、魅力的なユーザーエクスペリエンスを実現する設計。
✅ 簡単 - パターン
意図的 自動 エンゲージメント
複雑さが増したり、自動化が進まなかったり、ユーザーエクスペリエンスに影響したりするプラクティス。
⚠️ 簡単 - アンチパターン
意図的 自動 エンゲージメント
# 耐障害性 - アプリケーションライフサイクル管理 ### 環境戦略パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [アプリケーションライフサイクル管理](/docs/architect/ja-jp/well-architected/guide/resilient#アプリケーションライフサイクル管理) → [環境戦略](/docs/architect/ja-jp/well-architected/guide/resilient#環境戦略)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------- | | プラットフォーム \| 組織 | ✅ 特定の環境のメタデータはリリースアーティファクトから独立している | | プラットフォーム \| 組織 | ✅ 環境はリリースパスに直接対応していません | | プラットフォーム \| 組織 | ✅ 変更のリリースパスは、変更の種別 (高リスク、中リスク、低リスク) によって異なります。 | | プラットフォーム \| 組織 | ✅ 過密環境が存在しない | | プラットフォーム \| 組織 | ✅ 本番でリスクの高い設定変更を直接行うことはありません | | プラットフォーム \| 組織 | ✅ ピーク営業時間中にリリースが発生しない | | プラットフォーム \| 組織 | ✅ ソース駆動の開発・リリースモデルを採用 | | プラットフォーム \| Sandbox | ✅ Developer Sandbox および Developer Pro Sandbox でソース追跡が有効になっている | ### リリース管理パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [アプリケーション ライフサイクル管理](/docs/architect/ja-jp/well-architected/guide/resilient#アプリケーションライフサイクル管理) → [リリース管理](/docs/architect/ja-jp/well-architected/guide/resilient#リリース管理)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ✅ リリース名が明確 | | プラットフォーム \| 設計標準 | ✅ チームは、アーティファクト、開発項目、その他の作業に正しいリリース名でタグ付けするための明確なガイドラインを見つけて従うことができます。 | | プラットフォーム \| ドキュメント | ✅ リリース名は検索および検出可能 | | プラットフォーム \| ドキュメント | ✅ リリース名別にリリースマニフェストを明確にまとめることができる | | プラットフォーム \| KPI | ✅ 生成 AI アプリケーションの品質しきい値は、さまざまな開発フェーズで定義されます。 | | プラットフォーム \| 本番 | ✅ メタデータで安定したリリースメカニズムが使用されていることが示されています。メタデータ API を使用したリリースでは、`source`形式が使用されます。 | | プラットフォーム \| 本番 | ✅ 安定したリリースメカニズムが使用されていることを示すメタデータがロック解除済みパッケージに整理されている | | プラットフォーム \| 本番 | ✅ リリースログに使用可能な履歴内の失敗したリリースが表示されない | | プラットフォーム \| 本番 | ✅ リリース履歴には、リリース期間内の明確なリリースケイデンスおよびかなり統一されたリリースクラスターが表示されます。 | | プラットフォーム \| 本番 | ✅ DevOps センターが有効でインストール済みである | | プラットフォーム \| 本番 | ✅ メタデータで安定したリリースメカニズムが使用されていることが示される変更セットは変更のリリースに使用されない | | プラットフォーム \| ロードマップ | ✅ 機能が特定の名前付きリリースに明確に関連付けられている | | プラットフォーム \| ロードマップ | ✅ リリース名が明確 | | プラットフォーム \| ロードマップ | ✅ リリース名は検索および検出可能 | ### テスト戦略パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [アプリケーションライフサイクル管理](/docs/architect/ja-jp/well-architected/guide/resilient#アプリケーションライフサイクル管理) → [テスト戦略](/docs/architect/ja-jp/well-architected/guide/resilient#テスト戦略)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| Apex | ✅ Apex テストクラスには、Data Cloud オブジェクトに対して実行されるクエリの対象範囲が含まれます。テストクラスは System.SoqlStubProvider クラスを拡張し、handleSoqlQuery() メソッドを上書きします。DMO インスタンスは Test.createStubQueryRow() または Test.createStubQueryRows() を使用して作成されます。 | | プラットフォーム \| Apex | ✅ 単体テストにデータファクトリパターンを使用 | | プラットフォーム \| Apex | ✅ モック/スタブを使用して API 応答をシミュレーション | | プラットフォーム \| ビジネス | ✅ B2C 規模のアプリケーション、大量のユーザー、大量のデータがある場合、QA プロセスにスケールテストを含める | | プラットフォーム \| ビジネス | ✅ スケールテストの基準が明確に定義されている | | プラットフォーム \| ビジネス | ✅ Full Sandbox でスケール テストを実施する | | プラットフォーム \| ビジネス | ✅ スケールテストは、システムの優先度の高い側面に焦点を絞ります。 | | プラットフォーム \| ビジネス | ✅ シミュレーターを使用して本番同様の条件を再現し、拡張性とパフォーマンステストを実施 | | プラットフォーム \| ビジネス | ✅ 変更がソース管理に取り込まれると、テストが自動的に実行されます。 | | プラットフォーム \| ビジネス | ✅ アプリケーション開発サイクルで耐久テスト、ストレステスト、パフォーマンステスト、スケールテストを複数の間隔で実行し、進行中のタスクとして考慮 | | プラットフォーム \| ビジネス | ✅ 人間による品質レビューを含むプロンプトエンジニアリング | | プラットフォーム \| ビジネス | ✅ ユーザビリティテストでは、さまざまなデバイスと支援技術が使用されます。 | | プラットフォーム \| 組織 | ✅ すべてのテストデータは機密データと識別データで精緻化されます。 | | プラットフォーム \| テスト計画 | ✅ サポート可能なテストの種類によって環境が分類される | | プラットフォーム \| テスト計画 | ✅ リスク、使用事例、複雑さに応じて適切なテスト体制が指定されている | --- ### 環境戦略パターン対策 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [アプリケーションライフサイクル管理](/docs/architect/ja-jp/well-architected/guide/resilient#アプリケーションライフサイクル管理) → [環境戦略](/docs/architect/ja-jp/well-architected/guide/resilient#環境戦略)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------- | | プラットフォーム \| 組織 | ⚠️ 環境はリリースパスに直接対応 | | プラットフォーム \| 組織 | ⚠️ すべての変更のリリースパスが同じである | | プラットフォーム \| 組織 | ⚠️ 過密環境が存在する | | プラットフォーム \| 組織 | ⚠️ リスクの高い設定変更は本番で直接行われる | | プラットフォーム \| 組織 | ⚠️ 組織ベースの開発・リリースモデルを採用 | | プラットフォーム \| 組織 | ⚠️ リリースは営業時間のピーク時に行われます。 | | プラットフォーム \| 組織 | ⚠️ 特定の環境のメタデータがリリースアーティファクトである | | プラットフォーム \| Sandbox | ⚠️ Developer Sandbox および Developer Pro Sandbox ではソース追跡が有効になっていません。 | ### リリース管理アンチパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [アプリケーション ライフサイクル管理](/docs/architect/ja-jp/well-architected/guide/resilient#アプリケーションライフサイクル管理) → [リリース管理](/docs/architect/ja-jp/well-architected/guide/resilient#リリース管理)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 設計標準 | ⚠️ リリース名がありません | | プラットフォーム \| 設計標準 | ⚠️ チームはアーティファクト、開発項目、その他の作業を異なる方法で参照します。 | | プラットフォーム \| ドキュメント | ⚠️ リリース名が一時的であるか、存在しない | | プラットフォーム \| ドキュメント | ⚠️ リリース名を使用してリリースマニフェストの明確なビューをまとめることはできません | | プラットフォーム \| KPI | ⚠️ 生成 AI アプリケーションの品質しきい値が定義されていない、または異なる開発フェーズで定義されていない | | プラットフォーム \| 本番 | ⚠️ メタデータは、メタデータ API を使用した組織ベースのリリースメカニズムの使用を示す`package.xml`形式 | | プラットフォーム \| 本番 | ⚠️ メタデータは、組織ベースのリリースメカニズムを使用していることを示します。 | | プラットフォーム \| 本番 | ⚠️ リリースログには、使用可能な履歴内の失敗したリリースの繰り返しが表示されます。 | | プラットフォーム \| 本番 | ⚠️ リリースに識別可能なケイデンスがないか、リリースのクラスターが不規則である (ホットフィックスおよびアドホックロールバックの兆候) | | プラットフォーム \| 本番 | ⚠️ DevOps センターが有効になっておらず、インストールされていない | | プラットフォーム \| ロードマップ | ⚠️ 機能が特定のリリースに明確に関連付けられていない | | プラットフォーム \| ロードマップ | ⚠️ リリース名がありません | | プラットフォーム \| ロードマップ | ⚠️ リリース名が一時的であるか、存在しない | ### テスト戦略のアンチパターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [アプリケーションライフサイクル管理](/docs/architect/ja-jp/well-architected/guide/resilient#アプリケーションライフサイクル管理) → [テスト戦略](/docs/architect/ja-jp/well-architected/guide/resilient#テスト戦略)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| Apex | ⚠️ Data Cloud オブジェクトに対して実行された SOQL クエリのテスト対象範囲が存在しない DMO に対する SOQL クエリは Apex テストメソッドの対象ではない | | プラットフォーム \| Apex | ⚠️ 単体テストは組織データに依存します。 | | プラットフォーム \| Apex | ⚠️ モック/スタブは使用されません | | プラットフォーム \| ビジネス | ⚠️ スケールテストに優先度が設定されていない | | プラットフォーム \| ビジネス | ⚠️ QA プロセスの一環としてスケールテストを実施しておらず、B2C スケールのアプリケーション、大量のユーザー、大量のデータがある | | プラットフォーム \| ビジネス | ⚠️ スケールテストに明確な条件がない | | プラットフォーム \| ビジネス | ⚠️ Partial Copy Sandbox または Developer Sandbox でスケール テストを実行する | | プラットフォーム \| ビジネス | ⚠️ ユーザビリティテストが実施されていない、または一部のデバイスで実施されている | | プラットフォーム \| ビジネス | ⚠️ 本番のようなユーザー要求の量、API トラフィック、ネットワーク速度の変動はテストされません。 | | プラットフォーム \| ビジネス | ⚠️ テストの自動化が行われていない | | プラットフォーム \| ビジネス | ⚠️ 人間による品質レビューがないプロンプトエンジニアリング | | プラットフォーム \| ビジネス | ⚠️ 耐久、応力、性能、スケールテストは、開発のフェーズまたはフェーズとみなされます。 | | プラットフォーム \| 組織 | ⚠️ テストデータは本番データと同一 | | プラットフォーム \| テスト計画 | ⚠️ どの環境でどの種類のテストをサポートできるかが明確でない | | プラットフォーム \| テスト計画 | ⚠️ テスト計画はリスク、使用事例、複雑さで分類されない | | プラットフォーム \| テスト計画 | ⚠️ カスタム LWC のパフォーマンス テストは後付けです。カスタム Lightning コンポーネントのテストは開発サイクルの終わりまで待機します。 | | プラットフォーム \| テスト計画 | ⚠️ 予想されるユーザートラフィックの 50% 未満でインテグレーションをテストする インテグレーションテストは十分であると考える少数のユーザーの結果に依存する | --- # 耐障害性 - インシデント対応 ### パターンのトリアージ機能 適切に構築された[適応性](/docs/architect/ja-jp/well-architected/guide/adaptable-overview) → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [インシデント対応](/docs/architect/ja-jp/well-architected/guide/resilient#インシデント対応) → [優先順位付け能力](/docs/architect/ja-jp/well-architected/guide/resilient#優先順位を付ける機能)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ 複雑な問題をサポートするためにアラートを出す必要がある SME または関係者をインシデントが発生する前に特定 | | プラットフォーム \| ビジネス | ✅ 配送チームとサポートチーム間の引き継ぎは稼働開始の一部 | | プラットフォーム \| ビジネス | ✅ 相談があれば、Salesforce アーキテクトが迅速に対応し、チームが復旧に集中できるようにします。 | | プラットフォーム \| ドキュメント | ✅ 特定のソリューションで使用されているシステムおよび設計パターンがサポートスタッフによって検出および参照可能 | | プラットフォーム \| 組織 | ✅ ログとカスタムエラーメッセージがシステム全体の実行パスに組み込まれます。 | ### 監視とアラートパターン 適切に構築された[適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [インシデント対応](/docs/architect/ja-jp/well-architected/guide/resilient#インシデント対応) → [監視とアラート](/docs/architect/ja-jp/well-architected/guide/resilient#監視とアラート)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ✅ プロンプトチューニングアラートのエントリ条件は、直接および間接的な生成 AI フィードバック評価指標に基づいて定義されます。 | | プラットフォーム \| 組織 | ✅ アラートは、人の介入が必要なシナリオをユーザーに通知するためにのみ使用されます。その他の失敗はログに記録され、報告可能です。 | | プラットフォーム \| 組織 | ✅ 対応可能なユーザーにアラートが送信される | | プラットフォーム \| 組織 | ✅ 可能な場合は、潜在的な障害を事前に通知 | ### Time to Recover Pattern (リカバリ時間パターン) 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [インシデント対応](/docs/architect/ja-jp/well-architected/guide/resilient#インシデント対応) → [復旧時間](/docs/architect/ja-jp/well-architected/guide/resilient#time-to-recover-リカバリ時間)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ チームは、本番で所有するサービスについて把握できます。 | | プラットフォーム \| ビジネス | ✅ リカバリープロトコルを定期的に練習する | | プラットフォーム \| ドキュメント | ✅ リカバリー戦略はインシデント種別とトリガーで定義および分類されます | | プラットフォーム \| ドキュメント | ✅ インシデント対応の終了基準が SLO に存在し、明確である | | プラットフォーム \| ドキュメント | ✅ インシデント中の権限昇格の有効化条件と割り当てロジックが明確である | | プラットフォーム \| ドキュメント | ✅ インシデント対応の権限セットと承認が明確にリストされている | | プラットフォーム \| 組織 | ✅ インシデント対応のセッションベースの権限セットが存在し、復旧時にサポートスタッフに割り当てることができます。 | | プラットフォーム \| 組織 | ✅ \[Setup Audit Trail (設定監査履歴)] には、指定されたリカバリテスト担当者が合意されたスケジュールどおりにテスト環境にログインし、リカバリテストスクリプトに従っていることが示されます。 | | プラットフォーム \| テスト計画 | ✅ リカバリテスト用のテストスクリプトが存在し、反復可能である | | プラットフォーム \| テスト計画 | ✅ インシデントシミュレーションの環境が明確に記載されている | --- ### アンチパターンのトリアージ機能 適切に構築された[適応性](/docs/architect/ja-jp/well-architected/guide/adaptable-overview) → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [インシデント対応](/docs/architect/ja-jp/well-architected/guide/resilient#インシデント対応) → [優先順位付け能力](/docs/architect/ja-jp/well-architected/guide/resilient#優先順位を付ける機能)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ アラートを受け取る必要がある SME または関係者は、インシデントが発生するまで特定されない | | プラットフォーム \| ビジネス | ⚠️ 配送チームとサポートチーム間の引き継ぎはリリースプロセスに含まれない | | プラットフォーム \| ビジネス | ⚠️ Salesforce アーキテクトはインシデント対応は自分の業務範囲外と考える | | プラットフォーム \| ドキュメント | ⚠️ 特定のソリューションで使用されているシステムおよびデザインパターンをサポートスタッフがすぐに使用できない | | プラットフォーム \| 組織 | ⚠️ ログとカスタムエラーメッセージは使用されません | ### アンチパターンの監視とアラート 適切に構築された[適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [インシデント対応](/docs/architect/ja-jp/well-architected/guide/resilient#インシデント対応) → [監視とアラート](/docs/architect/ja-jp/well-architected/guide/resilient#監視とアラート)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ドキュメント | ⚠️ 生成 AI アプリケーションのプロンプトチューニングアラートをトリガーする条件が定義されていない | | プラットフォーム \| 組織 | ⚠️ フォローアップアクションが必要かどうかに関係なく、何らかの障害が発生した場合にアラートが送信されます。 | | プラットフォーム \| 組織 | ⚠️ 技術的な解決策が必要な問題についてのアラートがビジネスユーザーに配信される | | プラットフォーム \| 組織 | ⚠️ アラートはすでに発生した失敗に対してのみ配信されます。 | ### アンチパターンの回復時間 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [インシデント対応](/docs/architect/ja-jp/well-architected/guide/resilient#インシデント対応) → [復旧時間](/docs/architect/ja-jp/well-architected/guide/resilient#time-to-recover-リカバリ時間)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ 本番でさまざまなサービスを担当するチームが不明である | | プラットフォーム \| ビジネス | ⚠️ リカバリープロトコルが存在しないか、定期的に練習されていない | | プラットフォーム \| ドキュメント | ⚠️ インシデント対応がアドホックに実行される | | プラットフォーム \| ドキュメント | ⚠️ インシデント対応の終了条件が存在しない | | プラットフォーム \| ドキュメント | ⚠️ 昇格した権限が割り当てられていないか、アドホックに割り当てられている | | プラットフォーム \| ドキュメント | ⚠️ インシデント対応権限セットと承認がリストされていない | | プラットフォーム \| 組織 | ⚠️ インシデント対応用のセッションベースの権限セットが存在しないか、サポートスタッフによる使用が許可されていない | | プラットフォーム \| 組織 | ⚠️ \[設定] \[監査履歴] には、指定されたリカバリテスト担当者がテスト環境にログインしていないか、リカバリテストスクリプトに従っていないことが示されます。 | | プラットフォーム \| テスト計画 | ⚠️ インシデントシミュレーションの環境が確立されていない | | プラットフォーム \| テスト計画 | ⚠️ リカバリテスト用のテストスクリプトが存在しない | --- # 耐障害性 - 継続性計画 ### バックアップおよび復元機能パターンの作成 適切に設計された[適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [継続性計画](/docs/architect/ja-jp/well-architected/guide/resilient#継続性計画) → [バックアップおよびリストア機能](/docs/architect/ja-jp/well-architected/guide/resilient#バックアップおよび復元機能の構築)の構築についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 会社 | ✅ テスト計画とテストログでは、データのリストアが Full Copy Sandbox または Partial Copy Sandbox で年に 2 回以上テストされていることが示されています。 | | プラットフォーム \| 会社 | ✅ 承認されたユーザーのみがアクセスできる安全な場所にバックアップが保存される | | プラットフォーム \| ドキュメント | ✅ データとメタデータの両方のバックアップおよびリストア戦略が存在する | ### ビジネス継続性パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [継続性計画](/docs/architect/ja-jp/well-architected/guide/resilient#継続性計画) → [ビジネス継続性](/docs/architect/ja-jp/well-architected/guide/resilient#ビジネス継続性)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | プラットフォーム \| ビジネス | ✅ 「リカバリーファースト」のマインドセットを採用し、最優先の業務機能をできるだけ早く稼働停止 | | プラットフォーム \| ビジネス | ✅ BCP テスト計画見直しのためのメンテナンススケジュールあり | | プラットフォーム \| ドキュメント | ✅ BCP が存在します。これには、Salesforce が使用できなくなった場合にデータの処理を続行またはトリアージする手順、BCP の使用をトリガーできるイベントのリスト、BCP テストの手順と間隔が含まれます。 | | プラットフォーム \| ドキュメント | ✅ BCP には上流と下流のシステムおよび連動関係が含まれます。 | ### テクノロジー継続性パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [継続性計画](/docs/architect/ja-jp/well-architected/guide/resilient#継続性計画) → [テクノロジー継続性](/docs/architect/ja-jp/well-architected/guide/resilient#テクノロジーの継続性)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ✅ 意図的な冗長性やフェイルオーバシステムを構築する必要があるかどうかを評価済み | | プラットフォーム \| ビジネス | ✅ インシデントリカバリー戦略は可能な限り自動化されています | | プラットフォーム \| ドキュメント | ✅ BCP で追加のリソースやガラス破損時の処置を担当するチームは、インシデントに効果的に対応する必要がある場合があります。 | | プラットフォーム \| テスト計画 | ✅ BCP のプロセスと人に関連する領域が考慮される | --- ### バックアップおよび復元機能アンチパターンの作成 適切に設計された[適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [継続性計画](/docs/architect/ja-jp/well-architected/guide/resilient#継続性計画) → [バックアップおよびリストア機能](/docs/architect/ja-jp/well-architected/guide/resilient#バックアップおよび復元機能の構築)の構築についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| 会社 | ⚠️ データ復元プロセスがないか、データ復元プロセスがテストされていない | | プラットフォーム \| 会社 | ⚠️ バックアップは人間が判読できない | | プラットフォーム \| 会社 | ⚠️ バックアップは、未承認のビジネスユーザーがアクセスできる場所に保存される | | プラットフォーム \| ドキュメント | ⚠️ バックアップおよび復元戦略が存在しないか、戦略が不完全である (データまたはメタデータのみに適用され、両方には適用されない) | ### ビジネス継続性対策パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [継続性計画](/docs/architect/ja-jp/well-architected/guide/resilient#継続性計画) → [ビジネス継続性](/docs/architect/ja-jp/well-architected/guide/resilient#ビジネス継続性)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ インシデント管理への唯一のアプローチは「問題解決」の精神 | | プラットフォーム \| ビジネス | ⚠️ BCP テストプランが定期的に更新されない | | プラットフォーム \| ドキュメント | ⚠️ BCP には Salesforce のみが含まれます。 | | プラットフォーム \| ドキュメント | ⚠️ BCP が存在しないか不完全である | ### テクノロジー継続性対策パターン 適切に設計され[た適応](/docs/architect/ja-jp/well-architected/guide/adaptable-overview)性 → [耐障害性](/docs/architect/ja-jp/well-architected/guide/resilient) → [継続性計画](/docs/architect/ja-jp/well-architected/guide/resilient#継続性計画) → [テクノロジー継続性](/docs/architect/ja-jp/well-architected/guide/resilient#テクノロジーの継続性)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------- | | プラットフォーム \| ビジネス | ⚠️ 意図的な冗長性またはフェールオーバシステムの必要性を評価していない | | プラットフォーム \| ビジネス | ⚠️ インシデントリカバリー戦略はすべて手動です | | プラットフォーム \| ドキュメント | ⚠️ BCP に運用サポートのニーズが含まれていない | | プラットフォーム \| テスト計画 | ⚠️ BCP のプロセスと人に関連する領域が考慮されない | --- # 自動化 - データ整合性 ### データ処理パターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)性 → [自動化](/docs/architect/ja-jp/well-architected/guide/automated) → [データ整合性](/docs/architect/ja-jp/well-architected/guide/automated#データ整合性) → [データ処理](/docs/architect/ja-jp/well-architected/guide/automated#データ処理)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| データ辞書 | ✅ すべてのデータソースとデータレークオブジェクトの項目レベルのデータと優先度設定ロジックが存在する | | Data 360 \| 組織 | ✅ 複合キーは、一意の主キーが存在しない場合に作成するために使用されます。データセットに一意の項目が 1 つもない場合に、数式項目を使用してデータセットの複数の項目を結合する | | Data 360 \| 組織 | ✅ CRM コネクタを使用するデータストリームで隔週のフル更新を活用 増分読み込みに CRM コネクタを使用する場合、フル更新は 2 週間ごとに開始されます。これにより、データの取り込みが増加する可能性がありますが、DML トランザクションをトリガーせず、増分読み込みに含まれないメタデータ (数式項目など) のデータの整合性が保護されます。 | | Data 360 \| 組織 | ✅ 個人 ID は、Data 360 のデータを他のシステムに対応付けるために使用されます。たとえば、Marketing Cloud Engagement 登録者キーを Data 360 の個人 ID に対応付ける必要があります。 | | Data 360 \| 組織 | ✅ 完全修飾キーを使用してデータを正確に解釈します。 複数のデータストリームが 1 つのデータモデルオブジェクト (DMO) にハーモナイズされるときに発生する可能性がある競合を回避するために、キー値が含まれるすべての DLO にキー修飾子項目があり、完全修飾キー (FQK) が組織で有効になっています。 | | Data 360 \| 組織 | ✅ 正規化された照合方法は、使用可能な場合に一致ルールで使用されます。完全正規化された照合では、ソースデータが変換され、末尾のスペース、一貫性のない書式、特殊文字などの一般的な一致の問題が解決されます。テスト用に複数のルールセットを設定し、統合率がビジネスニーズを満たしていないことを確認した場合を除き、あいまい一致を使用する代わりに、この方法を使用可能な項目で活用します。 | | Einstein \| ドキュメント | ✅ AI プロジェクト設計の一環としてデータの有用性が文書化されている AI 応答を改善するために、会社のデータの有用性の定義が文書化および運用されている | | プラットフォーム \| Apex | ✅ 今後の Apex は、コールアウトまたはシステム オブジェクト DML に慎重に使用される | | プラットフォーム \| Apex | ✅ 非同期 Apex 呼び出しでは、キュー可能を使用してトランザクション間で複雑な DML を「チェーニング」 | | プラットフォーム \| Apex | ✅ バッチ Apex は大量のデータ専用です。バッチ Apex は大量のデータの処理に最適です。非同期 Apex は、より多くの作業を実行できるように、同期 Apex よりも制限が高くなっています。フロー制御 (キューのフラッディング)、オーバーヘッド、および 1 日あたりの非同期 Apex 制限の枯渇による影響を回避するために、バッチサイズをできる限り小さくしない | | プラットフォーム \| Apex | ✅ 同期 DML ステートメントまたは Database クラスメソッドはすべて before トリガー実行コンテキストで実行されます。 | | プラットフォーム \| Apex | ✅ Bulk API は、大量のデータを処理する必要がある場合にのみ使用します。少量のデータ処理にネイティブ SOAP および REST API を活用 | | プラットフォーム \| データ辞書 | ✅ データレイクオブジェクトからデータモデルオブジェクトへの項目の対応付けが存在する | | プラットフォーム \| フロー | ✅ ユーザーコンテキストで起動されるすべてのフローは、すべてのシステムコンテキストトランザクションを \[一時停止] 要素の後に一貫して配置されるサブフローに抽象化して、新しいトランザクションを作成します。 | | プラットフォーム \| フロー | ✅ すべてのレコードトリガーフローにトリガー順序値が入力されている | | プラットフォーム \| フロー | ✅ 外部システムコールアウトや実行時間の長いプロセスが含まれるフローでは、非同期パスが使用されます。 | | プラットフォーム \| フロー | ✅ Orchestrator で関連データ操作の複雑なシーケンスを作成 (モノリシックフロー内で複数のサブフローを呼び出すのではなく) | | プラットフォーム \| 組織 | ✅ ID 解決調整ルールは、データ辞書の優先度ロジックに従います。 | ### エラー処理パターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)性 → [自動化](/docs/architect/ja-jp/well-architected/guide/automated) → [データ整合性](/docs/architect/ja-jp/well-architected/guide/automated#データ整合性) → [エラー処理](/docs/architect/ja-jp/well-architected/guide/automated#エラーハンドリング)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| 組織 | ✅ プロンプトでは、期待される出力を指定します。LLM で期待される種類のコンテンツのみを生成するための直接命令が含まれます。 | | プラットフォーム \| Apex | ✅ カスタム例外を使用して高度なエラーメッセージとロジックを作成 | | プラットフォーム \| Apex | ✅ コードは、すべての DML、SOQL、コールアウト、その他の重要なプロセスステップを`try-catch`ブロックでラップします。 | | プラットフォーム \| Apex | ✅ データベースクラスのメソッドは、すべてのデータ操作に排他的に使用できます (DML の代わりに)。 | | プラットフォーム \| Apex | ✅ 非同期および一括コンテキストでは、DML の代わりに Database クラスのメソッドが使用される | | プラットフォーム \| Aura | ✅ JavaScript ですべてのデータ操作と重要なプロセスステップを`try-catch`ブロックでラップ | | プラットフォーム \| Aura | ✅ `try-catch` ブロック内では、ネイティブの JavaScript `Error`が throw ステートメントで使用されます (`$A.error()` は使用されません)。 | | プラットフォーム \| Aura | ✅ リカバリ可能なすべてのエラーロジックが`catch`ステートメント内に表示され、明確なユーザーメッセージが提供されます。 | | プラットフォーム \| フロー | ✅ データ操作、コールアウト、その他の重要な処理ロジックを含むフローには、すべての主要なアクションの障害パスがあります。 | | プラットフォーム \| フロー | ✅ 画面フローでは一貫して障害コネクタを使用してユーザーにエラーを表示 | | プラットフォーム \| フロー | ✅ 画面に表示されるエラーに対してカスタムエラーメッセージを設定 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ JavaScript ですべてのデータ操作と重要なプロセス ステップを`if ()`/`else if ()`ブロックでラップ | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ すべての`@wire`関数は、API で提供される`data`および`error`プロパティを使用します。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ✅ すべての`if (error)`/`else if (error)`ステートメントには、エラーを処理して情報メッセージを提供するロジックが含まれています。 | --- ### データ処理のアンチパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)性 → [自動化](/docs/architect/ja-jp/well-architected/guide/automated) → [データ整合性](/docs/architect/ja-jp/well-architected/guide/automated#データ整合性) → [データ処理](/docs/architect/ja-jp/well-architected/guide/automated#データ処理)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ⚠️ サポートされる正規化された照合方法を使用する項目ではあいまい一致を使用 完全正規化された照合方法を使用する項目にはあいまい一致が適用されます。 | | Data 360 \| 組織 | ⚠️ 統合個人 ID は不変であることを前提としています。 統合個人 ID は、残りの組織で使用するマスター ID またはグローバル ID として使用されます。 | | Data 360 \| 組織 | ⚠️ \[行動日] が可変の日時値に対応付けられている \[行動日] が LastUpdated や LastExtracted などの可変の日時項目に対応付けられている | | Data 360 \| 組織 | ⚠️ \[プライマリキー] が一意でない項目に対応付けられている 選択した項目が一意であることを最初に検証せずに、データセットにデータストリームのプライマリキーが存在しない場合は、その項目を選択 | | Data 360 \| 組織 | ⚠️ データを一括で読み込み、リアルタイムで有効化しようとする。たとえば、一般的で欠陥のあるアプローチでは、Amazon S3 バケットから 1 時間ごとにデータを読み込み、データアクションで有効化する | | プラットフォーム \| Apex | ⚠️ DML ステートメントは、トリガー後コンテキストで呼び出されるコードに定期的に表示されます。 | | プラットフォーム \| Apex | ⚠️ Apex 一括処理ジョブの範囲サイズが非常に小さい バッチサイズが非常に小さい (範囲サイズ = 1 など) が使用されている | | プラットフォーム \| Apex | ⚠️ バッチ Apex は外部コールアウトに使用 大量の Salesforce データがバッチ Apex を使用して Salesforce から外部システムに転送される | | プラットフォーム \| Apex | ⚠️ \[Publish Immediately (すぐに公開)] プラットフォームイベントは、公開順序の要件やレコードロックリスクに関係なく、\[Publish After Commit (Non-realtime) (コミット後に公開 (非リアルタイム)] の代わりにアドホック \[Publish Immediately (Real-time) (すぐに公開 (リアルタイム))] イベントが使用されます。 | | プラットフォーム \| Apex | ⚠️ 非同期 Apex 機能が任意に使用されている Future Methods および Queueable Apex が一貫性がないか、交換可能である | | プラットフォーム \| Apex | ⚠️ 非同期 Apex 機能が任意に使用される。開発者は、Future Apex とキュー可能 Apex のどちらを使用するか、DML を一括処理ジョブに渡すタイミングが明確ではない | | プラットフォーム \| Apex | ⚠️ 非同期 Apex はほとんど使用されていない | | プラットフォーム \| Apex | ⚠️ 非同期 Apex 機能が任意に使用されている。データベース操作には、必要に応じて実行を一括処理 Apex に渡すための明確で一貫したロジックがない | | プラットフォーム \| データ辞書 | ⚠️ データレークオブジェクトからデータモデルオブジェクトへの項目の対応付けは含まれません | | プラットフォーム \| データ辞書 | ⚠️ データソースおよびデータレークオブジェクトの項目レベルデータと優先度ロジックは含まれません | | プラットフォーム \| フロー | ⚠️ 画面コンポーネントからの出力であるコレクションを使用して DML を実行する 作成、更新、削除要素で \[レコードまたはレコードコレクションの ID とすべての項目値を使用] 設定を活用する (そのコレクションが画面コンポーネントからの出力の場合) | | プラットフォーム \| フロー | ⚠️ レコードトリガーフローでトリガー順序属性がまったく使用されていない、またはトリガー順序値が一貫して使用されていない | | プラットフォーム \| フロー | ⚠️ 非同期パスが一貫して使用されていない、またはまったく使用されていない | | プラットフォーム \| フロー | ⚠️ 大規模なモノリシックフローでは、関連するデータ操作の複雑なシーケンスを調整します (サブフローの有無は問いません)。 | | プラットフォーム \| 組織 | ⚠️ ID 解決調整ルールがデータ辞書の優先度ロジックに従っていない | ### エラー処理のアンチパターン 適切に設計された[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)性 → [自動化](/docs/architect/ja-jp/well-architected/guide/automated) → [データ整合性](/docs/architect/ja-jp/well-architected/guide/automated#データ整合性) → [エラー処理](/docs/architect/ja-jp/well-architected/guide/automated#エラーハンドリング)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ DML、SOQL、コールアウト、その他の重要なプロセスステップが一貫して try-catch ブロックでラップされていない | | プラットフォーム \| Apex | ⚠️ Database クラスのメソッドが使用されていない | | プラットフォーム \| Apex | ⚠️ データ操作は DML でのみ行われます。 | | プラットフォーム \| Apex | ⚠️ `System.debug`ステートメントは本番コードに表示されます (コメントアウトされません)。 | | プラットフォーム \| Aura | ⚠️ JavaScript では、データ操作と重要なプロセスステップが一貫して`try-catch`ブロックでラップされない | | プラットフォーム \| Aura | ⚠️ コンポーネントは`$A.error()`を使用 | | プラットフォーム \| Aura | ⚠️ リカバリ可能なエラーロジックが `catch` ステートメント内に一貫して表示されず、ユーザーへのエラーメッセージが明確でない | | プラットフォーム \| フロー | ⚠️ フローで障害パスが一貫して使用されていない、またはまったく使用されていない | | プラットフォーム \| フロー | ⚠️ カスタムエラーメッセージが使用されないため、ユーザーにはデフォルトの「このフローで未対応の障害が発生しました」メッセージが表示されます。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ `@wire` 関数は、API で提供される`data`および`error`プロパティを使用しない (または一貫して使用しない) | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ まったく使用しない場合、`if (error)`/`else if (error)` ステートメントにはエラーを処理して有益なエラーメッセージを提供するロジックは実際には含まれていません。 | | プラットフォーム \| LWC(Lightning Web コンポーネント) | ⚠️ JavaScript は、データ操作や重要なプロセスステップで一貫して `if ()`/`else if ()` ブロックを使用しない | --- # 自動化 - 効率化 ### KPI パターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「自動化](/docs/architect/ja-jp/well-architected/guide/automated)」 → [「効率](/docs/architect/ja-jp/well-architected/guide/automated#効率)」 → [「KPI](/docs/architect/ja-jp/well-architected/guide/automated#kpi)」の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- | | Einstein \| ビジネス | ✅ 特定の使用事例の KPI は、Gen AI 機能を有効にする前に識別されます。 特定の使用事例の KPI は、Gen AI 機能を有効にする前に識別されます。 | | プラットフォーム \| ダッシュボード | ✅ KPI に関連するすべての総計値が 1 つ以上のダッシュボードに含まれている | | プラットフォーム \| ドキュメント | ✅ すべてのオートメーションの出力は測定可能で期限付き | | プラットフォーム \| ドキュメント | ✅ KPI ごとに説明責任のある関係者がリストされている | ### 操作ロジックパターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「自動化](/docs/architect/ja-jp/well-architected/guide/automated)」 → [「効率](/docs/architect/ja-jp/well-architected/guide/automated#効率)」 → 「[運用ロジック」](/docs/architect/ja-jp/well-architected/guide/automated#操作ロジック)についての詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ----------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| ビジネス | ✅ セグメンテーション更新のニーズは、データ統合を実装する前に評価されます。外部ソースからデータを統合する前に、Data 360 から Marketing Cloud Engagement へのセグメントの更新と有効化の標準の 12 時間または 24 時間スケジュールがビジネスニーズを満たしていることを確認します。Bring Your Own Lake (BYOL) データ統合を使用する場合、高速セグメンテーションと有効化は現在サポートされていません。 | | Data 360 \| ドキュメント | ✅ Marketing Cloud と Data 360 間の 1 対 1 または 1 対多接続の設計 多くの CRM インスタンスを多数の Data 360 インスタンスに接続できますが、複数の Marketing Cloud インスタンスを同じ Data 360 インスタンスに接続することはできません。ただし、1 つの Marketing Cloud インスタンスを異なる Data 360 インスタンスに接続できます。 | | Data 360 \| 組織 | ✅ セグメンテーションスケジュールの最適化 セグメントが必要な期間のみ公開スケジュールを設定します。一時的または 1 回限りのキャンペーンでは、\[更新しない] 公開スケジュールを使用する必要があります。エバーグリーン(別名「常時オン」)キャンペーンでは、12 時間ごとの公開スケジュールを使用する必要があります。エバーグリーン キャンペーンの場合、\[終了日] は、キャンペーンが有効になる将来の日付のみに設定します。 | | Data 360 \| 組織 | ✅ 計算済みインサイトスケジュールの最適化 計算済みインサイトを 1 回のみ実行する必要がある場合は、\[スケジュールなし] オプションを使用して手動で 1 回のみ公開します。必要な頻度が 24 時間未満の場合は、フローなどの他の自動化オプションを検討します。 | | Data 360 \| 組織 | ✅ データ アクションを使用した運用ロジックの改善のためのプラットフォーム イベントの作成データ アクションを使用したプラットフォーム イベントのパブリッシュでは、Data 360 からのデータ アクション(イベントのパブリッシュ)を、組織で実行する必要のあるアクション(フローと Apex トリガーの呼び出し)から分離できます。これにより、組織が Data 360 から反応できるアクションの拡張性が向上し、運用ロジックをより詳細に制御できます。 | | Einstein \| エージェント | ✅ 反復的なビルド/テストプロセスの一環としてエージェントの指示を定義し、必要なエージェントトピック項目 (名前、説明、範囲) を作成して関連するアクションを追加し、トピックのテストを開始します。トピックを実行し、反復的なビルド/テストループで目的の方法でアクションを選択するようにエージェントを誘導する命令を段階的に追加します。 | | Einstein \| 組織 | ✅ プロンプトテンプレートでは人格と人格の目標を指定します。プロンプトテンプレートには、LLM が想定する必要がある人格や、その人物の目標などのコンテキスト情報が含まれます。たとえば、「あなたは大手顧客をライブイベントに招待したいマーケティングエグゼクティブです」などの表現を含めます。 | | Einstein \| Search Indexes (インデックスの検索) | ✅ 構造化 DMO の検索インデックスを作成するときは、エントロピーの低い項目を除外します。関連性を向上させるには、カーディナリティ (リスト内の個別の要素の数) が非常に低いデータポイントやエントロピーが低いデータポイント (リストエントリが少数の値に集中しているデータポイント) を除外することを検討します。一般に、これらの項目はベクトル検索で関連データを見つけるのに役立つ情報はほとんど、またはまったく提供しません。 | | プラットフォーム \| Apex | ✅ SOQL ステートメントは選択的な比較演算子であり、SOQL ステートメントの主ロジックまたは唯一のロジックとして肯定的なロジック(`INCLUDES`、`IN`)を使用します。 | | プラットフォーム \| Apex | ✅ SOQL ステートメントは選択的な`= NULL`の使用、`!= NULL`はまれ、または SOQL ステートメントで常に肯定的な比較演算子に従う、またはその両方 | | プラットフォーム \| Apex | ✅ SOQL ステートメントは選択的です。SOQL に `LIMIT 1` ステートメントは表示されません。 | | プラットフォーム \| Apex | ✅ SOQL ステートメントは選択的です。SOQL ステートメントに `ALL ROWS` キーワードは使用されません。 | | プラットフォーム \| Apex | ✅ ループ内に SOQL が表示されない | | プラットフォーム \| Apex | ✅ SOSL にすべてのワイルドカード条件が表示される | | プラットフォーム \| Apex | ✅ SOQL ステートメントは選択的です。SOQL ステートメントでは、`LIKE`の比較や部分的なテキストの比較は使用されません。 | | プラットフォーム \| Apex | ✅ SOQL が`try-catch`でラップされている | | プラットフォーム \| Apex | ✅ ハードコードされた値を参照する変数はありません (レコードタイプやユーザーなど)。 | | プラットフォーム \| 設計標準 | ✅ 自動化内の同期操作と非同期操作の使用事例が設計標準の一部として明確に示されている | | プラットフォーム \| ドキュメント | ✅ 自動化の計画済み実行パスと潜在的な実行パスが明確になっている | | プラットフォーム \| フロー | ✅ ハードコードされた値を参照する変数はありません (レコードタイプ、ユーザーなど)。 | | プラットフォーム \| フロー | ✅ 大量のデータ コンテキストでのフロー(プロセスを含む)のロジックの Apex への引き渡し | | プラットフォーム \| フロー | ✅ サブフローは、ビジネス全体で再利用する必要があるプロセスのセクションで使用されます。 | | プラットフォーム \| フロー | ✅ すべての自動起動フローおよびプロセスでは、決定要素や一時停止要素を使用してエントリ条件を評価し、大量のデータに対する無限ループや実行を防止します。 | ### プロセス設計パターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「自動化](/docs/architect/ja-jp/well-architected/guide/automated)」 → 「[効率](/docs/architect/ja-jp/well-architected/guide/automated#効率)」 → 「[プロセス設計」](/docs/architect/ja-jp/well-architected/guide/automated#プロセス設計)の詳細 | Where to look?
商品領域 \| ロケーション | What does good look like? (良いものは?)
パターン | | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| 組織 | ✅ \[Optimize Total Rows Processed in Batch Transforms Within Data Transforms (データ変換内の一括変換で処理された合計行数の最適化)]。キャンバスの検索条件アクティビティを使用して、正常に変換するために処理する必要がある行のみを分離します。 | | Data 360 \| 組織 | ✅ 計算済みインサイト全体のディメンションの統合 複数の計算済みインサイトをそれぞれ 1 つのディメンションで記述する代わりに、可能な場合は両方のディメンションを 1 つの計算済みインサイトに統合します。 | | プラットフォーム \| Apex | ✅ 各クラスは 1 つの特定の目的を果たす | | プラットフォーム \| Apex | ✅ 各方法で特定の詳細なタスクを実行 | | プラットフォーム \| Apex | ✅ すべての入力変数にクラス内で明確な目的がある | | プラットフォーム \| Apex | ✅ 最小限のリソースでコードを実行 | | プラットフォーム \| フロー | ✅ 既存のシステムデータが使用できない場合にのみデータの提供が求められます | | プラットフォーム \| フロー | ✅ フローは、メインフローとサポートサブフローで構成される階層構造で整理されます。 | | プラットフォーム \| フロー | ✅ すべてのユーザー入力にフロー内の明確な目的がある | | プラットフォーム \| フロー | ✅ 各フローは 1 つの特定の目的を果たす | | プラットフォーム \| フロー | ✅ 各ステップで特定の詳細なタスクを実行 | --- ### KPI アンチパターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「自動化](/docs/architect/ja-jp/well-architected/guide/automated)」 → [「効率](/docs/architect/ja-jp/well-architected/guide/automated#効率)」 → [「KPI](/docs/architect/ja-jp/well-architected/guide/automated#kpi)」の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ---------------------------------------------------------------------------------- | | プラットフォーム \| ダッシュボード | ⚠️ KPI レポートが存在しないか、一部の KPI に関連する評価指標がダッシュボードにない | | プラットフォーム \| ドキュメント | ⚠️ KPI は説明責任のある関係者がいなくても存在する | | プラットフォーム \| ドキュメント | ⚠️ 自動化の KPI が存在しないか、測定の期間が明確でない | ### 操作ロジックのアンチパターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「自動化](/docs/architect/ja-jp/well-architected/guide/automated)」 → [「効率](/docs/architect/ja-jp/well-architected/guide/automated#効率)」 → 「[運用ロジック」](/docs/architect/ja-jp/well-architected/guide/automated#操作ロジック)についての詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Data 360 \| ドキュメント | ⚠️ Marketing Cloud と Data 360 間の多対 1 接続の設計図またはソリューション設計ドキュメントで、Marketing Cloud コネクタを介して 1 つの Data 360 インスタンスに接続する複数の Marketing Cloud インスタンスが指定されています。 | | Data 360 \| 組織 | ⚠️ セグメンテーションの更新ニーズを評価しないでデータフェデレーションが実装されている場合、標準の 12 時間または 24 時間スケジュールではなく、迅速なセグメンテーションと有効化 (有効化データの送信に 1 時間または 4 時間のスケジュール) が必要なデータセットでデータフェデレーションを活用 | | Data 360 \| 組織 | ⚠️ データ変換のニーズを評価せずにデータ統合を実装外部 DLO にストリーミングデータ変換に必要なデータが含まれている | | Einstein \| エージェント | ⚠️ 設計プロセスの開始時にエージェントの指示を定義する 指示は、エージェントがトピックを実行して適切なアクションを選択する能力をテストする前に追加されます。 | | プラットフォーム \| Apex | ⚠️ SOQL ステートメントは、`NOT` を使用した非選択的な比較です。`NOT IN`条件は、SOQL ステートメントの主または唯一の比較演算子として使用されます。 | | プラットフォーム \| Apex | ⚠️ SOQL ステートメントは SOQL ステートメントで非選択的 `ALL ROWS` キーワードが使用されている | | プラットフォーム \| Apex | ⚠️ SOQL ステートメントは非選択`= NULL`であり、`!= NULL`条件は SOQL ステートメントの主演算子または唯一の比較演算子として使用されます。 | | プラットフォーム \| Apex | ⚠️ 変数の値はハードコードされています | | プラットフォーム \| Apex | ⚠️ ループ内に SOQL が表示される | | プラットフォーム \| Apex | ⚠️ SOQL ステートメントは非選択`LIKE`であり、ワイルドカード検索条件は SOQL ステートメントの SOQL ステートメントに頻繁に出現します。 | | プラットフォーム \| Apex | ⚠️ SOQL が `try-catch` でラップされていない | | プラットフォーム \| Apex | ⚠️ SOQL ステートメントは、SOQL に表示される非選択的な `LIMIT 1` ステートメントです。 | | プラットフォーム \| Apex | ⚠️ SOSL がワイルドカード選択条件で使用されることはほとんどありません。 | | プラットフォーム \| 設計標準 | ⚠️ 同期操作と非同期操作の使用事例には対応していません | | プラットフォーム \| ドキュメント | ⚠️ オートメーションの呼び出しが文書化されていない | | プラットフォーム \| フロー | ⚠️ 変数の値はハードコードされています | | プラットフォーム \| フロー | ⚠️ フロー (プロセスを含む) は、一括データ読み込みの前に手動で無効化する必要があります。 | | プラットフォーム \| フロー | ⚠️ サブフローを使用するのではなく、フローの一部がフロー全体で繰り返される | | プラットフォーム \| フロー | ⚠️ フロー (プロセスを含む) で「未対応の例外」通知がトリガーされる | | プラットフォーム \| フロー | ⚠️ 単純なフローでもガバナ制限に関連するエラーが頻繁に発生する | ### プロセス設計のアンチパターン 適切に設計された「[容易](/docs/architect/ja-jp/well-architected/guide/easy-overview)」 → [「自動化](/docs/architect/ja-jp/well-architected/guide/automated)」 → 「[効率](/docs/architect/ja-jp/well-architected/guide/automated#効率)」 → 「[プロセス設計」](/docs/architect/ja-jp/well-architected/guide/automated#プロセス設計)の詳細 | Where to look?
商品領域 \| ロケーション | What to avoid?
アンチパターン | | ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- | | プラットフォーム \| Apex | ⚠️ クラスは複数の目的を果たす | | プラットフォーム \| Apex | ⚠️ メソッドが複数の ToDo を実行する、またはメソッドが、そのメソッドが属するクラスの明確な目的と一致しない ToDo を実行する | | プラットフォーム \| Apex | ⚠️ 入力変数がメソッドで実際に使用されていない | | プラットフォーム \| Apex | ⚠️ 不必要にデータベースや外部システムからデータを取得するメソッド | | プラットフォーム \| フロー | ⚠️ フローでは、コンテキストを提供するために追加の入力が必要です。 | | プラットフォーム \| フロー | ⚠️ フローは複数の目的を果たす | | プラットフォーム \| フロー | ⚠️ 関連ステップのグループには、他のフローのステップのグループと重複する機能が含まれています。 | | プラットフォーム \| フロー | ⚠️ フローは、保存されているデータを代わりに使用できる場合にユーザーの入力を求める | | プラットフォーム \| フロー | ⚠️ フローには、データが使用されていない入力が必要です | --- # 適応可能なパターンとアンチパターンエクスプローラー レジリエントな運用と構成可能なアーキテクチャで変化に対応。
✅ 適応可能 - パターン
耐障害性 コンポーザブル
レジリエンスを低下させたり、構成可能性を制限したり、変更を難しくしたりするプラクティス。
⚠️ 適応可能 - アンチパターン
耐障害性 コンポーザブル