Visio for BPMN

Another article by Bruce Silver on the value of using Visio for process modelling. His argument is that it’s already a de facto standard, with two-thirds of the world’s existing process models done in Visio, so why not find ways to just make it ready to play in the big leagues?

One way is to allow import of Visio models into enterprise architecture modelling tools such as Popkin, where they would then be “finished” by developers, but I don’t like that method because it takes control of the modelling — includuing ongoing maintenance for the models — out of the hands of non-technical process designers.

The other is to use add-ons to Visio that allow a process designer to create BPMN-compliant process models in place, then generate BPEL or XPDL. ITP-commerce, for one, has a tool to do this, and I think it could be a better solution in many cases, since it allows the process designers to use a familiar tool and easily work from their existing library of models.

BPM standards, architecture and modeling

Thanks to David Ogren’s BPM Blog for a pointer to “What is Business Process Modeling?” Like one of the commenters on the article, I also disagree with Mike Havey’s use of the term “business process modeling” as being interchangeable with “business process management”, since modeling is typically seen as being the business-focused activity at the front end of BPM, not the entire range of activities. I also don’t make such a sharp distinction between BPM and EAI: they’re part of the same continuum of technologies, and it is common to include EAI as part of BPM functionality (or vice versa): certainly the former EAI vendors who have hopped on the BPM bandwagon would agree with me on this point. His vision of a BPM architecture is not well-grounded in the current reality of BPMS, starting with “the heart of the architecture is a runtime engine that executes processes whose source code is written in the XML-based BPEL language” (I wish) and continuing with “human participants view and execute pending manual work activities using a graphical worklist application” (not necessarily).

Other than those minor points, it’s a good look at how the current morass of overlapping and competing BPM standards fit together, and has a very clear view of how BPM components are used during the design, development, deployment and monitoring cycle. I’ve been blogging about BPM standards from the beginning, and am completely on side with anyone supporting standards over the continuation of proprietary fiefdoms of process modeling and execution.

Last, but not least, he shows some examples of and provides a reference to itp-commerce‘s Process Modeler for Microsoft Visio, which allows you to create BPMN process models and (in the professional edition) transfer them to BPEL for execution. itp-commerce’s site links to an article by Bruce Silver that reviews the product, but more importantly, talks about the use of BPMN in general, and the use of Visio as a business process modeling tool.

By the way, if you’re interested in some of the theory behind BPM, Mike Havey’s written an article on Pi Calculus and Petri nets.

Swimming with Fuego

A few more random thoughts in my journey through trying out Fuego.

My first thought on playing with the process designer was that I really liked it because it shows the process activities in swimlanes. The activities are colour-coded (red for human interaction, blue for system-executed), and the shape of the activity icon tells you something about what it is, or you can define your own activity icons on a per-activity basis, which is kind of cool.

But wait… swimlanes are supposed to run parallel to the flow, not perpendicular to it: if the flow runs horizontally (as it does in Fuego and most other process modelling/design tools), the lanes should be horizontal (which they’re not in Fuego). This has the effect of projecting (in a mathematical sense) the two-dimensional orthogonal nature of a swimlane diagram (activities in time sequence versus role) into one dimension: time, with roles dependent on the time axis. This makes for some weird anomalies such as roles repeating along the time axis, and showing automated steps as part of a human role assignment.

Whether you use UML activity diagrams or BPMN or venerable old LOVEM diagrams, swimlanes are supposed to be, by their very nature, orthogonal to (and therefore independent of) the time-based flow of the process, so that you can see all the activities for a single role in a single band regardless of their position in the flow.

BPMI and OMG merge BPM interests

A press release from BPMI and OMG announced recently that they’re merging their BPM standards activities:

The combined activities will continue BPMI’s and OMG’s ground-breaking work and focus on all aspects of Business Process Management, including:

  • Refinement and promotion of BPMI’s Business Process Modeling Notation (BPMN) as the basis for business modeling,
  • Delivery of BPMI’s Business Process Definition Metamodel (BPDM), Business language, vocabulary, and rules,
  • BIM (Business Information Management),
  • EAI (Enterprise Application Integration),
  • B2B (Business to Business collaboration),
  • Web Services Information and Processes,
  • Security Policy and Management, and
  • Refinement, promotion and education of the principles, approaches and tenets of Business Process Management within the broader business community.

OMG will continue its tradition of innovation by integrating and reusing complementary business integration and web services standards such as WS-BPEL from OASIS, WSDL and XML Schema from W3C.

BPM standards just became one degree less confusing.

You want me to pay for what?!

I’ve been putting together some ideas for a presentation at FileNet‘s annual user conference, UserNet, on how to make the link between business process models (such as those that form part of an enterprise architecture set, modelled with a notation such as BPMN) and the implementation of those models in a specific product (in this case, FileNet BPM). I’m interested in exploring the BPMN/BPEL link between modelling and implementation using various products, since it represents the transformation from Zachman’s Row 2 to Row 3; however, for UserNet, where BPEL is not yet in play, I’d choose to focus on the conceptual (business) view of how this works specifically with FileNet BPM.

I’ve spoken at UserNet many times, first as the chief architect of a FileNet partner, then later as FileNet’s Director of eBusiness Evangelism, and I always enjoy it because of the focus on user/business issues instead of just technology, and the interaction with business users of BPM products. But today, as I was looking at the conference dates to make sure that my calendar is clear, I had a flashback to my earlier post on vendors charging exorbitant rates to their “partners” for training. Sure enough, according to the conference presentation guidelines:

One customer presenter per presentation will receive a free registration but they must be the primary speaker. Partner presenters will register for the regular conference fee.

Excuse me, I thought that I just read that FileNet wants me to spend my time creating an educational presentation that will be of benefit to their user community, but then wants me to pay to deliver it.

Just like with the training issue, this cuts out a lot of the highly-skilled smaller partners, because the conference fee on top of a week of lost revenue, travel expenses and the time invested in creating the presentation just isn’t worth it. Instead, count on seeing presentations submitted from partners based on their marketing budgets rather than their abilities.

The attendees should be hoping that the conference selection committee uses a more appropriate assessment tool than a partner’s amount of loose change.

Alphabet soup for lunch

Just watched a great lunchtime webinar, “The Business Value of Process Standards”, although I was dining al desko and managed to drop sunflower seeds into my keyboard that required some mid-webinar keyboard surgery. I mentioned this webinar in a previous post on BPM standards, and was glad to see that it lived up to my expectations. eBizq usually makes the webinars available for replay on the same link within a couple of days, so you can check it out if you missed it live.

Jeanne Baker, the primary speaker, is VP of Technology at Sterling Commerce, but she was speaking in her capacity as Chairman of BPMI and didn’t even mention Sterling’s products. In fact, the webinar was sponsored by Oracle, so the only product that was (briefly) discussed was Oracle’s BPEL Process Manager.

Since the discussion was on standards, the inevitable alphabet soup resulted, but two acronyms floated to the top of the broth: BPMN and BPEL. BPMN is a standard for modelling business process notation, and BPEL is a standard for executing business processes. Conveniently, BPMN maps directly to BPEL, so they work in concert for designing and implementing business processes. Both of the speakers stressed the importance of the BPMN and BPEL standards, a point with which I fully agree.

On the subject of modelling standards, I especially liked Ms. Baker’s comment on the use of UML for process design (which echoes my own sentiments from my previously-referenced posting): “UML is used by poor, hapless process modellers [who didn’t have anything better, such as BPMN].” I was laughing so hard when I heard that, I didn’t get the whole quote, but that’s the gist of it.

It’s also worth checking out the newly-designed BPMI site, it’s a lot nicer to look at and has a great deal more information than on my last visit there. It gives a much better definition of BPMI’s role in standards development, and features an interesting graphic that Ms. Baker also used in her presentation to illustrate BPMI’s involvement the lifecycle of business process management:

The diagram shows Process Designers as an essential link between business analysts and system architects, but that skill set is often absent on BPM projects. As she spoke about the importance of that role, it struck me that although I started my career as a developer and software architect, I now usually sit in the process designer role, while spreading in both directions into business analysis and system architecture. I describe myself as a “technology catalyst”, because I like to make to make stuff happen, especially that bridge between business and technology.

From the BPMI site:

BPMI focuses upon the Business Process as the inflexion point between the business environment and a technology implementation. Our work is relevant to a wide range of audiences as we innovate a seamless transition ‘path to execution’ for Business Processes. Our aim is to unify process thinking across Business and IT disciplines.

A lofty, but very worthwhile goal.

BPM standards

I feel pretty strongly about the benefits of standards in all areas of technology, and BPM is no exception. For years, we’ve been using different notations in different tools to create BPM systems that don’t communicate with each other because they speak a different language. There’s been a lot of headway in standardizing the communications part — the messaging protocols, for example — but there’s still work to be done in the design end. How can we hope to make BPM systems truly interoperable when they don’t use the same notation to model the flow within the system?

Every BPM system has its process designer tool, but when it comes right down to it, most people model their process in Microsoft Visio before implementing it in the BPM system. First of all, a lot of people already have Visio on their desktop and know how to use it, so there are less licensing and training issues. Secondly, a process model will usually include all sorts of non-automated steps that will never be represented in the BPM system (especially the “as-is” model), but need to be modelled for proper business analysis. I’m not interested in tools, however, but in the actual BPM notation, which can be drawn in Visio or any number of other process modelling tools.

There are standards emerging for BPM notation, with two strong contenders: UML activity diagrams, and BPMN business process diagrams. If you have a technical background and haven’t had your head in a paper sack for the past 10 years, you know about UML; however, you probably know it as a modelling tool for software design, with activity diagrams being used for computational processes, which is why the OMG originally developed it. UML activity diagrams have recently been repurposed for business process modelling: a type of object-oriented flowchart, if you please.

As much as I like UML for software design, I like the emerging BPMN standard (from BPMI, an industry standards body) better: it’s been designed as a business process modelling notation, not retrofit from some other standard; it’s more understandable to business analysts and other non-technical participants; and it has a direct mapping to WSBPEL for process orchestration. It was only introduced last year and may take a while to catch on, but it’s worth knowing about.

If you’re interested in learning more about BPM standards, there’s a non-vendor webinar (a rarity!) called The Business Value of Process Standards at ebizQ on April 6th.