In-Depth

Putting the business in Business Process Modeling

The concepts of business process reengineering (BPR) and integration are more than 10 years old, but few corporations have implemented them. That is because business process modeling -- the foundation of BPR and integration -- has been poorly applied. Often, IT departments take a techno-centric view of the modeling process rather than a business-centric view, or they do not capture the business process adequately.

When modeling a business process, you should take a business-centric approach, not a techno-centric approach. "You walk into a $20 billion company like QWest and try to model their problems using a techno-centric approach and within 15 milliseconds they'll kick you out the door," said Cedric Tyler, president of consultants Business Genetics Inc., Englewood, Colo.

Tyler advocates breaking down a process into the major grouping of its parts so that it can be understood better. That approach forms the basis of Business Genetics' approach, the Extended Business Modeling Language (xBML).

xBML consists of asking the five "W" series of questions: why, what, who, where and when.

"Why" deals with the reason a business unit or process exists. For example, a process could exist to improve business communications with a corporation's trading partner. It is important to ask why a business process exists because "having the latest and greatest technology available is not sufficient to launch a business process modeling effort," said Ken Vollmer, an analyst at the Giga Information Group, Cambridge, Mass. "You have to start with the business requirement."

"What" considers the detailed business activities that have to be accomplished to achieve the goal of the process.

"Who" is answered in a two-step process. First, the "what" activities are dissected and a hierarchy of actions that make up those activities is created. Then, xBML looks at who is responsible for each of those actions.

"Where" comes next. It looks at where actions or activities are performed. "Your corporation could procure items in, say, either Seattle or Denver, and so you create a locality model," Business Genetics' Tyler said.

"When" then kicks in. "You look at the temporal dimension of the business or process and identify all the timeframes actors have to be compliant with in the process," Tyler said. "You can then create a model that says what information you need to accomplish this activity at this place [and] at this point in time."

Once these questions are answered, modelers will have a "very rigorous set of specifications" and can take the output from xBML and translate it into the Unified Modeling Language (UML), Tyler said. xBML provides a superset of data about the business process and UML "draws on a couple of the dimensions of xBML," so the translation is simple, Tyler said. The result is a model of the business in its current state. Corporations can use this to produce a future state model "pretty easily" and work out how to move the model from the current to the future state, added Tyler.

Why not use UML with an object-oriented front end directly for creating a business process model instead of using xBML? Because "it's just too techno-centric and business folks don't have the time, inclination or patience to learn UML," Tyler said.

Enterprise FrameWork, from Quincy, Mass.-based Ptech Inc., is an enterprise-modeling tool that includes several types of views for modeling business processes. At the top level, the focus is on exchange of value between high-level business processes -- "not on how processes are done, but why they are done, the value coming out of them, and what other organizational processes or departments are using that value" said James Cerrato, Ptech's chief product officer.

The next step is process step modeling, where you work out how processes outlined in the top-level view are performed -- the sequence of steps, what actions are performed, what information is created, what relationships are created between information, where the decision points are in the process and exceptions. Modeling exceptions is crucial, Cerrato said, because "the essential flow of a process is generally pretty well understood; but it's the exceptions that tend to cause the problem and consume extra time and resources."

Another view enables modelers to create application diagrams that can be copied and pasted into a process model to show where an application appears in the process and how it works. This links the process model inherently into the application definition. The next view below allows modelers to link to a specific component within the application to provide a detailed view of the workflow between the human part of the process and the specific components of the model being built.

Enterprise FrameWork ships with several pre-defined queries that help users to discover information flow between the different parts of apps and areas of overlap or gaps. Users can also create their own queries graphically by building the path of the questions they want to ask into a diagram. Enterprise FrameWork has a proprietary knowledge-based engine that uses object-oriented semantic network technologies instead of a commercial database.

Capturing the business process
Business analysts, rather than IT staff, should model business processes; otherwise, "there will be a lot of to-ing and fro-ing before IT produces the results business wants -- if it ever does," said Ashish Deshpande, chief technology officer at Metaserver Inc., New Haven, Conn. "Model first; have a business analyst figure it out and realize that, at the modeling and execution levels, you should be able to perform mappings and translations between data across different systems," he said.

Metaserver offers an integrated development environment that can take a picture created by a business analyst and generate an XML document representing the semantics of the process pictured. The IT department can read and understand that XML document and connect each of the business processes drawn by the analysts to an IT system.

Metaserver's product has four parts. First is the Metaserver Modeling Environment. This is a Java Swing-based GUI that generates XML representations of business processes that are "close to" various business XML standards, Deshpande said. It can be used by business analysts and IT, and incorporates a process metamodel.

Next is the connectivity framework. This comes with wizards and XML databases that describe how to connect a process to existing databases and perform marshalling steps like representing a business entity, such as a customer, in a canonical form. XML is the canonical form used.

Third is an engine that executes the process. This is based on LINDA, a parallel processing language that implements the concept of a virtual shared memory between a network of computers "so you don't have to have one physical shared memory multiprocessor," Deshpande said. Fourth is a Web browser-based management console.

Sebastian Graf, executive vice president at Promatis Corp., San Ramon, Calif., said modeling a business process involves capturing all aspects of it -- activities, objects or documents managed by the process and the organizational units involved in the business process.

"A lot of people take a tool, draw some boxes, put some names in them, link the names with arrows and call this the business process. But they do not talk about the structure of the business process; [for example,] are things done in parallel simultaneously, [and] is this a logical activity," Graf said.

Also, the arrows and other graphics may mean different things to different people, so you have to keep semantics consistent throughout the model. "You don't want people to each have a different interpretation of the model you created," Graf said. And make sure everyone understands exactly what you mean when you set out goals and aims. "If you want to reengineer the process, what does reengineering mean? If you want to implement a new business process, does it mean just telling people you will do things differently the next day, or do you ensure IT tools and systems can support the implementation?" he said.

Promatis offers the Process Designer tool to document business processes. It captures the behavior, organization model data and object model data, and links them all. Process Designer allows users to create hierarchical models.

"Many tools give you everything on one level so you end up with a 10-by-20 foot map on your wall that is unreadable; with a hierarchical model, you can refine different objects and list subprocesses as being detailed in a separate model," Graf said. Process Designer has report and simulation capabilities, as well as generators that let users upload results to the Oracle workflow engine.

To properly document a business process, you need to know why you are creating a business process model so you can limit the information you need to gather, said Anthony Ferrara, director of professional services at component solutions developer Infragistics Inc., Cranbury, N.J. Then organize carefully.

"A lot of people fail because they just jump in, conduct interviews and scribble some notes. Then, when they want to capture this formally later, they find they weren't rigorous enough in [their] approach," Ferrara said. He suggests listing all the information you need before going out on interviews.

Bill Green, vice president at systems integrator Power3 LLC, Philadelphia, conducts interviews with as many people as possible, then shows them the developed model. "The first thing they tend to realize is that there are people doing redundant jobs, and they immediately notice where they can improve efficiencies in the actual process before we write a single line of code," he said. Green tape-records the interview and takes notes on a laptop on forms designed in Microsoft Word.

Green said Power3 uses Sybase's Object Architect because "it lets me do business process modeling, data modeling and object modeling in the same environment so I don't have to learn new tools." That is a big benefit because "you know where everything is because you're using the same development environment," even though these three models have different semantics, he noted. Object Architect comes with a repository so all models can be stored in one place. It also allows users to create multi-model reports so they can include business process, and object and data models all in one report and produce a comprehensive set of documentation.

Microsoft offers a combination of Visio and BizTalk Server to provide what it says is end-to-end data modeling capability. "Visio provides great infrastructure for not only doing visual modeling, but keeping track of the meta data behind the model," said Dave Wascha, product manager, Microsoft BizTalk Server. "We can take that meta data and turn it into a description for a business process."

Visio is the front end for the Orchestration Designer, one of the tools in BizTalk Server; others include the BizTalk Editor for describing data formats to hand over to other systems, such as SAP; BizTalk Mapper, which lets users move from one format to another, "mapping anything to anything"; and BizTalk Messaging Manager, a wizard-based tool for creating connections between applications or trading partners and the user's business process.

"Once you build all the pieces of your business process model, you design your abstract business process in the BizTalk Orchestration Designer and that's when you drag those connections, applications and Web services onto the physical layer diagram to show the relationship between them," Wascha said. "Push 'compile' and BizTalk Server will implement and run that process."

BizTalk Server has two more tools: BizTalk Administration Tool for system administrators; and the BizTalk Document Tracking Tool, which lets users analyze information moving to their business processes.

Vendors are beginning to offer tools that will make modeling business processes easier. But unless firms take a business-centric approach, their efforts will get bogged down in technology and fail.

See the related articles "Go for the exceptions" and "10 rules for modeling business processes."