Navigation
  • The Microguide to Process Modeling in BPMN 2.0: How to Build Great Process, Rule, and Event Models
    The Microguide to Process Modeling in BPMN 2.0: How to Build Great Process, Rule, and Event Models
  • Business Process Management with a Business Rules Approach: Implementing The Service Oriented Architecture
    Business Process Management with a Business Rules Approach: Implementing The Service Oriented Architecture
Bosch Software Downloads

Entries in business process management (9)

Tuesday
Sep182012

Advanced Business Rules Capabilities Address Complex Challenges

At Software Innovations, we have added some interesting new customers including Green Charge Networks and Prosper Software. In addition to other projects that we cannot mention, these development shows how Visual Rules, modeling approach can solve complex challenges in our Big Data, highly dimensional, customer-focused social ecosystem.

 

The Juila set is a highly recognizable symbol for complexity as develops in the study of fractals and chaos.

From our discussions on the internet of things ( and here) and other developments, we know that today’s world of mobile-networked-social media presents new opportunities for business models and customer engagement. Example models include freemium where a service is provided free of charge, but a premium is charged for advanced features. Another style is gamificationwhere game thinking is applied to non-game applications to encourage people to adopt them. These seemingly simple, yet powerful concepts often require deep layers of implementation business logic.

This ecosystem is also being extended by sensors and edge devices in the IOT. For instance; heart monitors provide data to doctors, or fitness appliances through ordinary smart phones. Sensors on bicycles provide detailed data. These products are a visible outgrowth of the internet of things and services (IoTS); yet, to create applications one must leverage the extreme granularity of this.

In addition to the exotic, new world of the IoTS, traditional data sources have exploded in granularity and accuracy. Most of the decisions of the inputs into the operational decision include time based vectors of:

  • Location, derived GIS stored locations, and proximities
  • Awareness of proximal individuals and groups of individuals,
  • Edge device feeds, heart rate, temperatures, video, weather

Emerging business models use applications: mobile, cloud and on-prem, to operationalize decisions. The decisions will tell customers what to do or make decisions- this is critical.  This means that companies must make effective use of this highly dimensional and time dependent data, often in nearly real-time. To achieve their objectives in this new world, these business require perception of environmental elements with respect to time and/or space or situational awareness.

The complexity arises in problems areas when ordinary, yet challenging business rules areas such as consumer retail and end-use applications, security command and control, complex financial transactions, and products with highly hierarchical catalogs, are combined with real time motions of people, vehicles or traceable financial instruments. The characteristics of this might include large, time dependent vectors of business objects. In this highly dimensional area, each data point exists in the time-location space defined by its attributes and by its relative relationship to all other time-location data points. That relationship is the domain of business rules and the pivot points for the decisions that we are describing.  In this realm, the goal of the decisioning and operational decision algorithms is to assign the data point to membership in the most appropriate cluster—even as the subject is in flight. Business Object Data Collections can be linearly separable or non-linearly separable. We have found, particularly these data are often arranged in a vector that must be efficiently traversed.

The company building applications in this complex, operational world faces the dilemma of hand codding solutions or using visual modeling paradigms. These problem often entail an huge number of logic steps with the need to make subtle changes at deep levers. At Bosch Software we believe that only the latter is sustainable.

In our experience, visual metaphors are mandatory for solutions in this ultra-complex, highly evolving world. The business analyst must be able to use their intense focus on business aspects while the technical teams provide a mastery of the technical aspects for a seamless transfer of logic changes. As a demonstration of this, visual rules, business modeling has recently solved problems in these domains:

  • An athletic consumer products company seeking to operationalize decisions about fitness equipment
  • A company with an innovative financial model built a multi-dimensional, dynamic pricing engine
  • A financial institution created dozens of credit score cards, each with over 90 equations and 190 dimensions.

In solving these problems for many customers we have learned the following:

  • Complex dimensional decisions can only be understood when they are ‘chunked’ into simple visual metaphors, otherwise business analysts get lost in code or simply give up.
  • Visual paradigms including decision graphs, decision tables, state-transition diagrams and composites of these are the only way to quickly solve these challenges.
  • Because they cannot traverse and filter vectors of business objects, Decision table-only approaches tightly constrain the type of problem that can be modeled and miss important dimensional aspects of these classes of problems.

In Summary, business operating in this new realm should expect change and build methods that create the proper agility.

Note: On September 27 at 2PM EST, Troy Foster, our CTO for the Americas will cover these topics in detail. You can register for this webinar here: http://www.bosch-si.com/webinar-on-advanced-business-rules.html

Sunday
Jul082012

Messages and Sequences in a ‘Requesting Feedback’ Process

In a linked-in question on the BPMN group, Lotfi Al-Hussami posed a basic modeling problem in BPMN. Quoting here:

“As an example, we have the following process that we will call "Get feedback":
- A company X "Send forms" to people by e-mails
- People fill forms, so every person receiving  the message "Fills form"
- Company X "Process forms"

At first glance this looks like a pretty simple problem to solve, as shown in the process below. If the process merely prepares the correspondence then our process, ‘get feedback’ will handle the messages as shown below: 

 

So the location of the intermediate event is dependent on what level the process is responsible for the messaging. Strictly reading the name of the first subprocess in our example the first example is probably most correct. Also, we are using the external black-box pool to denote the customer.

The Survey Pattern

In many cases, organizations want to aggregate feedback. Sometimes a process gathers data from an unknown number of participants. The process requirement wording might be:

  • Request feedback from at least %20 of the customers.
  • A minimum of 20 participants are required for the class to be scheduled.

The process does not know the number of instances of an activity at run-time. We can use a survey pattern when we don’t know how many responses or instances of an activity happen. Here the process must wait until all instances are completed. Then other activities start. Often, while some activities execute or are completed, new ones might be created- your process might ask for more responses. This

A Survey Process

The figure below presents a model of the survey, marketing or feedback scenario. In the example an email form invites a response from customers in the process. The loop awaits a satisfactory response, as determined by a decision. Here is a short description of the process:

  1. An incoming message starts a survey. The ‘email Recipients’ task send email to a mailing list.
  2. The survey process loops for incoming email. The results of the survey are tallied by the ‘survey decision’ activity, which calls business rules that decide the adequacy of the survey.
  3. A gateway decides if the survey results are satisfactory. Usually the gateway is optional. BPM tools specify the looping conditions.

 

The black box pool shows a notation, verticle bars, for multiple customer participants.

Other examples of the usages for this pattern include:

  • Getting bids for work from multiple trading partners,
  • Awaiting the delivery of multiple shipments from vendors to a facility before completing a process.

The multi-participant pools should be displayed in this case. You assign this pattern when the process must respond to multiple unknown quantities of events.

The elements of the pattern are:

  • A request from multiple sources by email, messaging, html or other sources
  • A loop that awaits the arrival of information from these sources
  • A decision to approve the survey and business rules for this decision: a call to the rules engine to decide when the survey response is satisfactory.

A process that receives the request and loops between the approver and requestor until the approver is happy with the request.

Cardinality is the Key

Returning to Mr. Al-Hussami example, process-oriented thinking should focus the requirements on a single instance of an interaction. So, a single survey form should be met by a single process response. We can compose a working, single-person survey into a more powerful pattern, such as the pattern that we have described here. When you are working with process requirements in BPMN, verify that you are thinking in terms of the singular entity, and then build your requirements from there.

 

Tuesday
Jun052012

Build Survivable, Hardened Cloud Processes with BPMN

Integrating the cloud into your error processing strategy can be challenging. Fortunately, BPMN provides a powerful approach to managing failures, in the form of exceptions and compensations. Adding resources and services into the ‘Cloud’ adds error points that must be managed. The designer of these processes should strive to make their processes ‘survivable’ and hardened. The exception shapes and compensations allow continuous operation throughout intermittent error conditions such as those encounter in integrating cloud services and resources. Without a hardened process your participants might need to use a manual process for the exception flow. This can be an outcome of overfocus on “happy day” paths. Manual processes promote staff improvisations and undocumented “work arounds” and obviously should be avoided.

Figure 1 presents an example of BPMN’s modeling of survivable processes in a survey pattern. If an error occurs in the email-reading process, it can be posted to a log and systems administrators can respond. The survey can continue. Finally, the process can loop back or complete.

Figure 1:  BPMN for an exception in the survey process.

The aim of BPMN is to support “long-running” transactions so it is especially suited to the cloud scenario. For instance, a process-oriented car rental agency might create one process for each vehicle, each using a cloud-based machine health service. In this case, the process could run for years, with thousands of calls to the cloud-based service.

Three Error Types

There are three types of exceptions that may affect process execution:

  • Technical exceptions—the process server has failed
  • Transient exceptions—a needed resource (for instance a cloud service) for the process is unavailable
  • Business exceptions—the condition of the process is in error. Data is incomplete or has errors.

Unfortunately, there is no cure or notation for the technical exception. When the server halts, recovering processes are dependent on the technical nature of the process server.

Decisions, supported by business rules, can create named business exceptions. If the process is transactional, it should compensate for transactions that fail to complete. In compensation, the process cleans up or backs out records from ERP’s, operational data stores, or data warehouses – perhaps these can be cloud based.

Processes often must be completed within a specific time period, so there could be time-out actions noted on the diagram. Business processes usually receive a message and translate that message into yet another message for consumption by the next part of the process. BPMN is powerful for developing time-outs, exceptions, and compensations. In building a basic process in BPMN, you can attach time-outs, exceptions, and compensations directly to a subprocess task list. When time-outs and exceptions occur within the process tasks, the process server traps these at the point of the subprocess.

Figure 2 presents a process server “architecture”, including a cloud services, for understanding the three types of errors. If the process server fails, then it obviously cannot run and a technical error occurs. If the ‘on-premise’ database service fails, then the process cannot get the data it needs to complete. This is a transient error. You should be able to restart the process instance and complete it once the database is restored. However cloud services are more complex, you might not have the same level of control that you would have for the database.

Users send data for the process in application servers. If users send incorrect data, then a business exception has occurred. Finally, you use process steps to resolve the error. If the users have used a cloud-bases SAS system to create a request or order, then more complexity is added.

 

Figure 2:  Architecture for a process environment in a cloud-based ecosystem.

You can model business processes with advanced abilities that suspend processing, or communicate with disconnected, cloud-based processes. They can add new services and capabilities such as payments processing. These powers yield opportunities and fulfill the need for the enterprise to reduce the cost of their most complicated practices. Yet, to develop these cloud-based capabilities, you should understand how BPM tools use the three types of exceptions and what you must plan for when developing the production version of the process diagram.

Cloud-based- Error Handling Example

A process diagram should use exception handlers to redirect the process flow when a cloud based exception happens. So, if the subprocess in the figure below raises an error, then steps can be taken to accommodate the error.

Figure 3: using subprocess for exceptional flow

In BMPN, handling errors arising from a subprocess is known as ‘Exceptional flow’ and, for errors, this is always interrupting: the subprocess that generated the error will terminate, and the alternate “exceptional flow” is followed instead. Later, the process can merge exceptional flow with the main flow. The exceptional flow merge does not need to immediately return to the subprocess that generated the error. If required, a process model can merge several steps downstream.

Finally, cloud process integration diagrams in BPMN should include error handling, compensation, and transactions. All services have the potential for error conditions, understanding how to use BPMN to automate error handling and recover, or be survivable, is critical. 

Friday
May182012

On Bosch’s Connected World and the Internet of Things and Services

On Tuesday, May 22, at 13:30(est) I gave an interview on the Peggy Smedley Show. Peggy’s show is the leading radio voice on the topic of the connected world and she has conducted interviews with many notable industry leaders.

The interview is available here.

By way of introduction, I want to describe Bosch’s relationship with the Connected World or what we call the Internet of Things and Services (IoTS).

Whatever label you choose to describe this, there are certainly many amazing new products and services arising from this architecture built on our pervasive wireless network - especially Verizon’s LTE. These IoTS ‘things’ include edge and hub products that are designed, built and offered by Bosch. The pervasive, sensor-driven, networked environment has arisen from the phenomena I call ‘Moore’s law everywhere’. This includes:

  • Ubiquitous, low cost (<$3) microprocessors and radios often found in innocuous products and devices, (some, such as light fixtures and ordinary appliances are unexpected)
  • Accelerating deployment of wireless bandwidth especially LTE
  • Big Data

Again, this environment is spawning new products and new business models, many led by Bosch business units in the areas of security technology, telemedicine, renewable energy, and consumer products. Some business sectors, such as manufacturing and security, are leveraging the situational awareness potential. Other business sectors, including telemedicine, are using the efficiency and asset savings characteristics.

Since 2008, when Bosch acquired Innovations Software, we have been methodically creating IoTS solutions through a framework called the Internet Application Platform (IAP). At the core of the IAP is the robust, industry leading BPM platform inubit and the Visual Rules BRMS.  Bosch has great depth and experience in developing solutions for the IoTS and our IAP has already solved complex IoTS challenges. Now with these developments, we are moving into the era of what Forrester calls the Big Process and activities, information and decisions will be pushed to the “edge” - as close as possible to the customer and trading partner.

Yet, the IoTS is more than an interesting technological development or architecture. At the core, it is a set of solutions that are driven by global political, economic and social forces. A core value for Bosch is supporting the long-term viability of the communities we serve and we see the IoTS as a critical, global development for creating a more sustainable world. In many ways, IoTS solutions, via the Bosch Connected World, support the sustainability movement within business and government. The Bosch Connected World solutions span the important vertical domains of security, energy, environment, risk and finance. Briefly, here are the critical market drivers for these solutions:

  • Financial Strains: business and government investments in new infrastructure is limited and often there is inadequate maintenance and poor operations
  • Eroding Infrastructure: especially in the US there is an over-stressed electrical grid
  • Increasing security needs: in the US there is zero tolerance for acts of terror, this yields more complexity, more need for autonomous intelligent decisions, more situational awareness
  • Risk Management: there is an accelerated need to measure and control financial risk
  • Consumer Expectations: there is an emphasis on comfort, safety and security
  • Aging Demographics: this is not only true in the US but also Europe,  increasing health care needs within declining budgets

The bottom-line: the mandate is not only ‘do more with less’ it is ‘do much more with even less’. Surprisingly, despite being internet-based, the autonomous local controls are critical.

The Bosch Connected World IoTS solutions support the sustainability objectives of business and government. Connected World solutions span these domains:

  • Security, physical and information
  • Energy Solutions, including new building energy systems, grid solutions and renewable energy
  • Environment, water and air
  • Risk Management
  • Finance Controls and Integration

Conclusion

We have learned many unexpected lessons in developing solutions for the IoTS and we are constantly adding new depth and experience. We will be providing details on this in the coming weeks.

Monday
Mar192012

Do you have a process for business process management?

During business process modeling, a BPM technical/management team creates or tunes a business process model that supports the project’s objectives.  What are the mental processes of the team members modeling and developing business processes and connecting business events and rules? They use workshops and communication. They interview the best-performing and the worst-performing actors in the processes. They review financial reports, documentation and the notes of the managers of the current process. They identify triggering events, business rules and the process needs for policies. They design the proper flow control. They create pictorial representations.

There are institutional or traditional ways of gathering information about a process. However, few organizations know when it is time to add process thinking and business process management to formalize activities—there is no process to create new topics.

Legacy efforts create reams of paper, cabinets full of files, and databases overflowing with useful information—from management directives to marketing papers to MIS memorandums. Much important information exists here. Yet, business process modeling is different from knowledge management, quality reviews or even data modeling. The purpose of data modeling is to develop a model of what is. The purpose of business process modeling is to develop a model of what should be. Yet, how does an organization decide it is time to gather ad-hoc and undocumented activities and add the structure of business process management?

It is self-apparent to look at a factory production line and know that there is a process present; how do we discover the need for a process? Symptoms of missing process needs include:

  • Poor business or financial performance in a rapid, surprised way
  • Low morale and high employee turnover
  • Management overwhelm, (many decisions, little data)
  • Poor communications

There are other symptoms; however, deciding and clarifying when to create a process can liberate these conditions and improve business results. A well designed process has these characteristics

  • Clear goals
  • Well defined roles
  • Improved clarity
  • Increased visibility

We have identified a series of steps to deciding and delineating a ‘green fields’ or occult process in the enterprise business process framework.