Slashdot Mirror


Do You Like Your Workflow or BPM Software?

Dukhat asks: "I am really interested in firsthand experiences with these kinds of products and in unbiased reviews, since Google primarily gives me marketing information and vague overviews of how BPM is good for business. I have already looked at an earlier article on work-flow patterns, which gave me a few products to look at. I am trying to compile a short list of work-flow and BPM software to evaluate, but I am having a hard time determining which products are even worth evaluating. The situation is worsened by the fact that work-flow tools are often bundled with CRM or Business Intelligence packages. I am not dead set on using a big package, but I need to know more about their real world pros and cons before I can decide whether to build it myself instead. I am looking at both BPM and work-flow software, since some BPM software can also do work-flow, but it may be more worthwhile to just use a rules engine for automated processes and use a specialized work-flow tool." Dukhat has a fairly long list of software choices that he needs to whittle down. What packages would you recommend and why? "Here are some of the goals we have that we are trying to solve with work-flow/ BPM software:
  • To be able to understand the path of a process without perusing in and out of a lot of functions.
  • To be able to report on how long each step in each process takes.
  • To be able to see exactly where in the process software errors occur and be able to skip over failed steps so that we can come back and fix them later.
  • To be able to integrate with our issue tracking system, billing system, and CRM software. We definitely will have to write some webservices here.
  • To be able to give process managers in different departments the ability to tweak certain processes without giving them full access to all processes.
We started off looking at rules engines, but it looks like a rules engine would only be useful for choosing actions at each step in the process, but we would have to glue together each step in the process ourselves. A lot of BPM software includes business rules software or is designed to integrate easily with specific packages.

Here is a list of packages that I have assembled so far:
Please help me narrow these down. Thanks!"

5 of 58 comments (clear)

  1. Depends on what you are willing to spend... by FortKnox · · Score: 4, Informative

    I used to deal with BPM's a lot. The more you spend, the more flexible and more stuff you get out of the box. Personally, FileNET is probably the tops of the list, but is extrodinarily expensive. JBoss is the cheapest (free), but requires extreme customization.

    The best answer depends on what you will be using it for. If you don't have a reason to use a BPM, then you probably should take the cost (or development effort) to throw one in.

    And, of course, 90% of the replies here will be "do your own homework" which is semi-legit. As while I've seen a company work well with the adobe workflow, and one work great with the fileNET and jboss ones, it really depends on the client and their specific needs (which you really didn't define except in a very global sense).

    The best answer would be to hire an expensive consultant that has lots of experience with BPMs. Let them look at your situation and make suggestions for you. You won't get anything worthwhile, here...

    --
    Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
  2. Opaquely transparent agenda by strangedays · · Score: 4, Interesting
    These questions appear to be mal-formed and the sub-text obvious. The interesting thing is why do this on Slashdot? I'm guessing the preparation of a future appeal to perceived authority, potentially coupled with a rush to judgement?

    There may be no such thing as a dumb question, but be real careful... there is such a thing as an inquisitive idiot, so lets be sure that doesn't apply here...

    * To be able to understand the path of a process without perusing in and out of a lot of functions. Huh? Whatever do you mean? Its a process. A process is not necessarily instantiated in software. Or to put it another way, if your a real business guy, you do what it takes, not what you prefer to peruse.

    * To be able to report on how long each step in each process takes. This is trivially simple, whats the issue? Do you really need a consultant to hold your watch and tell you the time?

    * To be able to see exactly where in the process software errors occur and be able to skip over failed steps so that we can come back and fix them later.

    Why do you expect software errors, before you have even selected a package? If a business process has a genuine fault, and is broken, continuing the process and hoping to fix it somehow later sounds like a dumb business move to me. "yeah Boss we sent out the wrong orders, to the wrong addresses, I figured we'd fix the software issue later... ok?"

    * To be able to integrate with our issue tracking system, billing system, and CRM software. We definitely will have to write some webservices here.

    Aha! Isn't this what you really want to do? Come on, admit it... Your itching to find a reason to develop cool web-services and some fancy infrastructure. Ok, who cares!, but it is a side issue to the described problem. Webservices, are just protocols, methods, used to access a real service, that someone may "write". They are not important, nor do they inherently solve anything.

    * To be able to give process managers in different departments the ability to tweak certain processes without giving them full access to all processes. Well Duh. This must be obvious and trivial, RTFM.

    Picking a package selection list, then trying to boiled it down using some simplistic check-box style assessment, coupled with an appeal to Slashdots perceived authority... That not a good idea.

    Don't go there. Use some real business and systems expertise and analysis of the processes, with each item mapped onto a compelling business case and ROI. Yep, that's real work, it costs money and takes time, is it worth it... you bet. It's much better than screwing around with your business processes, using some checkbox selected packages, which will surely cost a lot more.

    As another poster has already said, hire some business and systems analysis expertise.

    --
    There is no god; get over it already! Never exchange a walk on part in the war, for a lead role in a cage.
  3. Do Your Research by DaRat · · Score: 4, Informative

    Do your proper due diligence and examine each package very carefully. You'll start off with a very large list (far beyond what you currently have) because everyone and their brother is claiming to have a BPM package these days. Some are way better than others and some are just cobbled together bits of something else.

    You need to know what you want and what you need.

    Then, you really should do a proper test by implementing a good prototype in each system with minimal help from each vendor. That's the only way to get some decent idea of how well each might really work. Don't let the vendor implement the prototype since each vendor will have some consultant how can throw up enough smoke and mirrors to do anything.

    We started with a list of about 20 different vendors, narrowed it down to 5, and then did prototypes with 3. And, we discovered things which we wouldn't have known if we had just read some magazine or white paper and listened to a vendor's song and dance.

  4. Mostly flawed by RubberBaron · · Score: 4, Interesting

    I did my Masters on workflows and workflow verification. In defining a workflow you are essentially designing a system that, in the 'old' days, was programmed. The program could be tested, for example, for both syntactic and semantic correctness with compilers, unit and functional testing.

    On the other hand, every (commercial and other) w/flow system that I looked at, except for one or two academic systems, had (usually) the same set of major flaws, mostly in terms of verifying the workflow. There could often be logical inconsistencies, they would, for example, easily allow deadlocks and livelocks and, as for defining business rules, there are holes everywhere. Holes which (through robust procedures, training etc.) are minimised in the programming world but which are put into (business) critical systems by people who can barely spell 'progremn'.

    Would you, for example, alter the flow based on data output by an activity/action/state (or whatever your BPM system calls the 'blobs' that do most of the work)? If so, what happens when you have a SPLIT object somewhere (the flows split into more than one flow)? Is the data copied across the SPLIT to the multiple output flows? Is it a deep or a shallow copy? Deep or shallow copies can have ramifications to actions/activities/states downstream of the flow.

    I came to the conclusion that good, verifiable workflows had to be as simple as possible. No business rules, for example, only simple 'decision points', quite strict restrictions on data and control flows especially through control nodes. No commercial system seemed to follow my conclusions, they seemed more intent on producing pretty graphics and I would be wary of using any of them, especially given the prices they charge...

  5. Fortune 500 experience by anomaly · · Score: 4, Informative

    I've been doing this at a Fortune 500 company for a couple of years now. We have worked with two different packages, and have had some successes.

    1. We worked with a major CRM package using it's internal workflow capability. This required a dedicated programmer, and ended up costing about $100,000 per business process to implement, and took a few months per process to get in production. WAAAAAY too expensive and didn't scale. On top of that, the software was VERY hard to get working properly. (We already had the CRM package in place, the workflow was supposed to be a cherry on top, but it clearly was not.)

    2. We went with a "workflow lite" vendor. The tool is organized to process orders, and has workflow capability. This is not enterprise workflow like FileNet, but theoretically means that business analysts could do the workflow design.

    We've had some success with this. The absolute biggest pain point has not been technical - the problem has been defining the process to be automated. Business process analysis is an entirely different skillset than automation.

    Once the process is defined clearly, automation is not terribly painful. Unfortunately it hasn't been the case that analysts could do the automation, but it also doesn't require programmer-level skills, either. We've been able to implement a large number of services.

    The tool we picked has been completely immature, and our back end processing costs have been HUGE compared to what the vendor estimated initially.

    Overall it's been a good ride, and the tool we used provides the types of metrics you're looking for. It's important to know that whatever path you go will be EXPENSIVE. On top of that, another key lesson learned was that we don't need to model EVERY possible path through the business process. We model the "happy path" and an "exception path" and that provides the Pareto model (80/20)

    I'd be happy to converse off line about this if you want to know more about our experience.

    Regards,
    Anomaly

    --
    But Herr Heisenberg, how does the electron know when I'm looking?