使用する
ビジネスプロセスは、一連の個別のビジネス機能で構成されます。ビジネスプロセスの内容は、技術的な詳細とは別に説明する必要があります。
ビジネスプロセスを定義するには、次のことを行う必要があります。
-
ビジネスプロセスの目的と範囲を定義する
-
ビジネスプロセスの個々のステップを特定します。これを行うには、プロセスモデルまたはユースケースを使用できます。
プロセス
シナリオ
シナリオは、ビジネスプロセスのコンピューター化された実装です。参加しているコンポーネント間のタスクの分散と相互作用について説明します。したがって、同じビジネスプロセスを実装するシナリオがいくつかある可能性があります。
シナリオを定義するプロセスには、次のものが含まれます。
-
関連するコンポーネントとそれらが実行するタスクを特定します。
-
アプリケーションシステムをシナリオに統合するか、他のフロントエンドを接続するかを決定します。これは、たとえば、ステップの粒度に影響を与える可能性があります。
-
情報とプロセスフローの決定。
-
ここでは、次のことを行う必要があります。システム全体で処理するステップと、単一のコンポーネント内で処理するステップを決定します。
-
どのコンポーネント間でどのデータを交換し、誰がこの交換を開始するかを定義します。
-
個々のステップが処理される順序を決定します。
-
単一トランザクション(LUW)に属するステップを識別します。BAPIを開発するためのトランザクションモデルも参照してください。
-
エラー処理は、ローカルアプリケーションよりもはるかに正確で包括的でなければなりません。
-
-
シナリオでは、システム結合を狭くするか緩くするかを決定する必要があります。システムの可用性やパフォーマンス、シナリオの使用頻度などの要素を考慮する必要があります。
-
パフォーマンスにとって重要なすべてのステップを特定する必要があります。
-
シナリオ内でサポートされるリリースも検討する必要があります。
-
シナリオごとに、シナリオが正しく最新であることを確認する責任者を特定する必要があります。
ビジネスオブジェクトタイプとBAPI
シナリオの各コンポーネントは、コンポーネント間の手順を実行できるようにサービスを提供する必要があります。ビジネスオブジェクトタイプとそのBAPIの間でサービスの責任を分散する方法を検討する必要があります。たとえば、ビジネスオブジェクトタイプFlightBookingのBAPI CreateFromDataは、外部アプリケーションからSAPシステムで受注を登録するために使用されます。
コンポーネントごとに、最初に必要なビジネスオブジェクトタイプを決定する必要があります。次の問題を考慮する必要があります。
-
必要な機能をビジネスオブジェクトタイプにカプセル化する。これには、システム全体を個別の責任に分割することが含まれます。関数の内訳とカプセル化は、明示的かつ選言的でなければなりません。
-
これらの責任のためのビジネスオブジェクトタイプはすでに存在しますか?これらは、シナリオの要件を効果的にカバーするために十分に区別されていますか?
-
デザインパターンはすでに存在しますか?
問題がすでに処理されているかどうかを調べます。
-
他のビジネスオブジェクトタイプの責任を区切る
-
定義された責任に基づいて提供されるサービスを決定する
識別したビジネスオブジェクトタイプごとに、それに割り当てられたサービスをBAPIを使用して実装する方法を決定する必要があります。次の問題を考慮する必要があります。
-
各サービスは、1つ以上のBAPI(=ビジネスオブジェクトタイプのメソッド)によって実装されます。
-
BAPIは、ビジネスオブジェクトタイプの機能を利用可能にします。個々のシナリオとは関係なく、またさまざまなシナリオでそれらを使用できる必要があります。
-
ただし、このタイプのシナリオは、BAPIの粒度に影響を与える可能性があります。アプリケーションシステムは、代替フロントエンドの統合とは異なる方法で統合されます。
-
アプリケーションシステムの統合
-
アプリケーションシステムの統合には、通常、プログラム間の通信、緩い非同期結合、および大量のデータの交換が含まれます。
-
これらのシナリオで使用されるビジネスオブジェクトタイプとBAPIの主な要件は、たとえば、呼び出しの数を最小限に抑えることによって達成できる高性能の保証です。
-
その結果、より広範なBAPIによって実装されるアプリケーションの大まかな粒度が得られます。
-
例:販売注文を自動的に作成するプログラム。プログラムは、ビジネスオブジェクトタイプSalesOrderとBAPICreateFromDataを使用します。完全な受注は送信システムで作成され、受信システムに送信されます。
-
-
代替フロントエンドの統合
-
代替フロントエンドを使用するシナリオは、人とマシンの通信を表しており、同期的にも非同期的にも実装できます。
-
ビジネスオブジェクトタイプとBAPIは、柔軟性、構成可能性、および最小限のエラー状況を保証するように構造化する必要があります。
-
その結果、SAPシステムでのダイアログ処理に対応するアプリケーションの粒度が細かくなります。
-
例:顧客の販売注文はインターネットでインタラクティブに作成されます。受注は、ビジネスオブジェクトタイプSalesOrderの2つのメソッドCreateFromDataとAddItemを使用して作成することができます。この場合、メソッドCreateFromDataは単に販売注文ヘッダーを作成しますが、メソッドPASSWORDは新しい販売注文アイテムを追加できます。
-
-
シナリオは、SAPシステムから他のBAPIからBAPIコールに必要なすべての情報を事前に取得できるように構成する必要があります。
-
カスタマイジングに依存するBAPIがある場合は、これらのカスタマイジング設定をエクスポートできるBAPIを提供する必要があります。
-