Skip to Content
co-production and copyright by Ginger Gatling and Swen Conrad

Business Activity Monitoring – Introduction

Business Activity Monitoring (BAM) provides the user with real time visibility into business critical process events. Such events may be blocked orders for major customers, overdue critical vendor shipments or deviation of plan versus actual sales figures. Managing business performance via SAP NetWeaver Business Intelligence (BI) helps you identify bottlenecks in your process or business performance and can drive improvements from a tactical to strategic point of view. However, BAM gives you real time access to the operational business processes. Process exceptions, like the examples above, are routed to the appropriate user who can deal with them real time. This pro-activity will help you to improve the efficiency of the process, but more importantly improve customer satisfaction and therefore bottom line. It helps you build what Gartner calls the “zero latency” enterprise. This blog describes the high level building blocks of SAP’s BAM offering without going into any configuration details at this time. Details may come later but are also covered by the related BAM blog series by Michal Krawczyk starting with blog #1 at this The specified item was not found..

SAP NetWeaver and other components enabling the Real Time Enterprise

The picture below provides a good overview of SAP’s integrated BAM solution, which uses various components of the NetWeaver stack like Process Integration (XI), Business Intelligence (BI), and Guided Procedures (GP). By means of the local event infrastructure, backend connectivity to the mySAP Business Suite as well as legacy and 3rd party products exists. All the mentioned components are tightly integrated out of the box and the implementation within a customer’s environment is done via system configuration rather than programming. To make this configuration even easier, it is SAP’s goal to provide templates of ready to run BAM scenarios to our customer base over time. The next chapters will provide a high level overview of the key BAM components and are structured like the graphic below. image Picture 1: BAM building blocks

Event Infrastructure

SAP’s Event Infrastructure is included in every SAP application system. All SAP applications understand eventing and automatically generate hundreds of events. For example, when a sales order is created in an ERP system, an event occurs. When an employee is hired in HCM, an event occurs. When a shopping cart is created in SRM, an event occurs. Many events happen natively within the SAP application systems. If you need additional or custom events, SAP provides tools for you to create new events. I had one customer that needed an event to occur if the text on an order line item was changed to a specific value. Of course there was not a native event for this, but the customer was able to add a custom event when the text changed. The events in the SAP application systems are then sent to SAP NetWeaver Exchange Infrastructure. The events can be filtered on the application side via transaction code SWF_BAM, or they can be filtered in SAP NetWeaver XI. Because the events are delivered in XML format to SAP NetWeaver XI, non-SAP events are handled in a consistent manner. Events occurring in non-SAP systems can be delivered to SAP NetWeaver XI. Alternatively, there is an API if you wish to publish the non-SAP event in the SAP application system.

ccBPM component of Exchange Infrastructure

SAP NetWeaver Exchange Infrastructure with ccBPM is at the center of the BAM solution and has several roles:

  1. Correlate business documents and assign them to the correct process instance,
  2. model and monitor process conditions or business rules, and
  3. define process deadlines triggering subsequent steps that are to be executed when the deadline is not met. Let’s have a brief look at each of these roles.

ad 1 – Message correlation You use a correlation to assign messages that belong together to the same process instance. A correlation joins messages that have the same value for one or more XML element. A correlation is therefore a loose coupling of messages. These messages may be received from multiple systems. For example, if you want to monitor the time it takes from placing a purchase order with one of your suppliers to when you are receiving the physical shipment at your loading dock, however, the two process steps are being processed in two different systems, you may correlate related business documents from the backend systems via key identifiers, in this example the purchase order number. ad 2 – Process conditions/ business rules Business rules can be specified within the ccBPM process in the form of conditions and act as a kind of secondary filter (as opposed to the first filter in the event infrastructure – see chapter above). Looking back at the purchase order example above, you may only want to monitor certain purchase order types, for example a rush order type. Your process condition is implemented by limiting your monitoring criteria to only specific order types. Another example for a business rule is checking of a customer credit rating during order processing: Consider you are collecting sales orders from different order entry systems and you want to make sure that orders from all sources are consistently checked for satisfactory customer credit rating. There are two options to implement this:

  • Best case: The customer’s credit rating is provided to XI via the sales order document from the backend system. With a ‘switch’ step in ccBPM you compare the value of the customer’s credit rating against the desired value(s). If a customer does not meet the requirements, you can throw and alert to your BAM dashboard for human resolution by a customer order admin.
  • Other option: The customer’s credit rating is not provided to XI via the sales order document from the backend system. While this requires a little extra work, it is easily doable in ccBPM. Within your ccBPM process instance you would read the customer number from the sales order document and then do a call from the same ccBPM integration process to a backend or third party credit system to find the relevant rating. The response message from the backend system would then be compared to your business rule as defined in the ‘switch’ step.

In either case, you can easily implement your specific business rules to trigger alerts for immediate resolution. ad 3 – Process deadlines Let’s go back to the previous example of the rush purchase order. Let’s assume that you expect to receive such an order within 24 hours of creating the PO and submitting it to your vendor. As before, this event was communicated to XI via the event infrastructure in the mySAP business suite. There, within a process instance of ccBPM, we checked for specific order types, and ‘rush order’ was one of them. Now we want to throw an exception if we do not receive a goods receipt for this order within 24 hours. To do this in XI, you would simply create a ‘block’ what is nothing else than a grouping of several process steps. Within this block you now define a deadline branch and give it a value of the 24hours. Once you hit the deadline condition, your process instance will complete along the deadline branch and you can freely design remaining steps at this time. Of course, in our example, one of these steps will be to throw an alert. Let’s have a look at how you can control and steer your business based on alerts as well as overall process efficiency information within the BAM solution.

Event Resolution Dashboard

Once an alert or a specific event occurs that requires human interaction, the Event Resolution Dashboard enables the user to respond to events. In the Event Resolution Dashboard we provide the ability to both research and resolve the problem. For example, in a purchasing scenario an alert occurs when the goods receipt quantity does not match the purchase order quantity. In the Event Resolution Dashboard we would look at our history with the vendor, the percentage of time we get a short shipment, and how much business we do with this vendor. The resolution is provided via Guided Procedures.

Process Efficiency using SAP NetWeaver Business Intelligence

As you are monitoring events in SAP NetWeaver XI, you need to analyze the efficiency of the process: how often does it execute, what percentage of the time do alerts occur, what is the average process time, etc. This can all be accomplished using SAP NetWeaver Business Intelligence. The Integration Process logs from SAP NetWeaver XI are pushed to SAP NetWeaver BI where you can execute queries on the performance of the processes. Process efficiency capabilities exist today and can be used with Integration Process logs and SAP Business Workflow logs. You must have SAP NetWeaver 2004s for the BI content. With SAP NetWeaver 2004s, your business intelligence capabilities come delivered with all the content (info packages, info cubes, queries, etc) to do reporting on workflow and Integration Process logs. The Analysis requires that the entire correct context surrounding the event is available to the user. They may need to execute specific BI queries, lookup Knowledge Management attachments, access various SAP and non-SAP application systems.


Now you know how to transform your company into a real-time enterprise as well as the relevant SAP NetWeaver components and their functionalities utilized. In brief they are:

  • Event Infrastructure in all SAP application systems (release-independent) to expose relevant business activities.
  • Exchange Infrastructure to correlate system messages into one process instance as well as enforcing business rules and monitoring deadlines.
  • Alert Framework, used to alert user of important alerts and events.
  • Guided Procedures, for guiding users in pre-defined resolution path for alerts and events (available in SAP NetWeaver 2004s). This Innovative ways to use alerts will provide more information on triggering alerts.
  • Process efficiency reporting in BI for statistical and after the fact process analysis (the BI system must be SAP NetWeaver 2004s).

In the future we will have a new Event Resolution Dashboard and increased event management capabilities in SAP NetWeaver Exchange Infrastructure.

To report this post you need to login first.


You must be Logged on to comment or reply to a post.

  1. Tony Van Der Linden
    Swen, I enjoyed this insight into where SAP are going with BAM and what you can do now, but I’m a little disappointed that there is so much BPM required (i.e. that it’s required at all). I’m not anti-BPM as such, but I don’t use it unless there’s a good reason to.There are plenty of scenarios which don’t require any BPM normally, which we might like to include in BAM. Not for resolution necessarily but for inclusion in business activity analysis, which currently is supported by pushing BPM logs to BI.

    I’m hoping that the “increased event management capabilities in Exchange Infrastructure” you mention in your summary possibly means inclusion of some or all of the functionality of SAP Event Mgmt (currently SCM-EM). Some of the great functionality there like capturing missing events (expected but not occurring) is cumbersome with BPM and deadlines. Late events, sure. Early events, no idea. It would be nice to be able to do things like this without BPM.

    Anyway, a topic I’m very interested in and looking forward to further developments. Thanks for keeping all of us up to date.


    1. Ginger Gatling
      Hello Tony,
      If you’re already using SAP Event Management – then that’s great…the event management provided in SAP NetWeaver is more generic and can be used by anyone with NetWeaver and requires no SCM-EM knowledge.  The XI inclusion is really for customers that must monitor events in desparate systems.  Since it serves as our integration layer, it makes sense to use this to collect events from varied systems and analyze them to see if the entire process as executed as expected.  However, we do have some customers that send everything to BI, and use Information Broadcasting to broadcast an alert from a missed KPI and begin resolution in for the problem.  In that case, they don’t need XI because because they already monitor via KPI reporting in BI.

      I think we’ll continue to see customers use a variety of NetWeaver and SAP application tools, such as EM to perform event resolution and monitoring.  Thanks so much for taking the time to reply to the blog – we appreciate your insight and opinions!


    1. Swen Conrad Post author
      Hi Bhavesh,

      Thanks for the positivie feedback, Ginger and I appreciate it! – Yes, we will continue blogging for this topic once new functionality is being rolled out. Also, please refer to Michal’s blog series per the link in the first paragraph.


    2. Swen Conrad Post author
      Hi Bhavesh,

      Thanks for the positivie feedback, Ginger and I appreciate it! – Yes, we will continue blogging for this topic once new functionality is being rolled out. Also, please refer to Michal’s blog series per the link in the first paragraph.


  2. Jeroen Jansen
    Hi Swen,

    First of all, i believe that BAM is definitely functionality that is more then welcome. However i am disappointed about the process efficiency functionality. It would be great if the actual data send to the BPM/BAM process would be available in the BI/WF cubes. We did not find any option to correlate the procesdata with the actual payload/context data of the interfaces or alerts. Do you have any suggestions about how you could combine the process data with the actual context data?

    1. Ginger Gatling
      Beginning with NW 7.0, you can push the workflow logs to BI.  This will include the ccBPM logs from PI – which has the process efficiency info.

      This was session EPI209 from TechEd last year.  You can get it here:

      If you don’t have the SDN subscription  – you can see the BI content here at online help:

      1. Jeroen Jansen
        Hi Ginger,

        Thanks for replying. I did read most of the documentation on BAM and BI, but as you know the actual correlation with the proces steps is gone in ccBPM. In the “old” SAP Business Workflow you actually have got taskid’s to correlate to certain process steps. In this way it is quite easy to extract wich proces steps a process has walked trough. In ccBPM however, there is no way to extract this data because you work with messages who do not have task id’s. But maybe we do not see clearly how SAP intended BAM process efficiency in the first place. Maybe SAP intended it only to be tactical/strategic information about processes and not for operational information with actual linkage to data used inside the BPM process. We for instance wanted to use BAM for a cross component process in wich we collected data about the progress of the process. We would then later use the actual data used in the BPM about the related object (in our case a ABAP class for a certificate of ownership of real estate) to give operational information about how many certificates of type X where processed in the last X hours. Is this not the way SAP intended it?

        Yours Sincerly,

        Jeroen Jansen


Leave a Reply