BPMS还是简单的编程? [英] BPMS or just plain programming?

查看:175
本文介绍了BPMS还是简单的编程?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在实施业务流程时,您更喜欢(从开发人员的角度来看)?

What do you prefer (from your developer's point of view) when it comes to implement a business process?

业务流程管理系统(BPMS)或只是您最喜欢的IDE,带有所需的工具和框架(例如报告工具)?

A Business Process Management System (BPMS) or just your favorite IDE with the needed tools and frameworks (a reporting tool for example)?

与您的个人工具和框架相比,BPMS的最大好处是什么?

What is from your point of view the greatest Benefit of a BPMS compared to an IDE with your personal tools and frameworks?

好的。也许我应该更具体一点......我了解了一个特定的BPMS,它可以通过配置规则轻松实现业务流程。但对于我作为开发人员来说,很难使用该系统。我想使用我可以重构的文本文件,我希望能够为我必须做的工作选择合适的技术或框架。而是系统强迫我配置。

OK. Maybe I should be more specific... I got to know one specific BPMS which should make it easy to implement a business process by configuring rules. But for me as a developer it is hard to work with the system. I would like to work with text files which I can refactor and I would like to be able to choose the right technology or framework for the job I have to do. Instead the system forces me to configure.

我有规则可以使用java,但即使这样我也必须坚持系统编辑器而没有intellisense等。

There are rules where I can use java, but even then I have to stick to the systems editor without intellisense etc.

所以这引出了我自己问题的答案 - 我想使用我习惯的工具,而不是必须学习如何使用BPMS(至少我知道的那个)因为它限制了我比它更有帮助。我所知道的BPMS是一个很难逃脱的框架!在这个时候,我更喜欢像Grail这样的框架而不是我所知道的任何BPMS。

So this leads me to the answer of my own question - I would like to use the tools I am used to instead of having to learn how to work with a BPMS (at least the one I know) because it limits me more than it helps. The BPMS I know is a framework from which it is hard to escape! At this time, I would prefer a framework like Grail over any BPMS I know.

所以也许更具体的问题是:你觉得相同还是有BPMS支持你成为一名开发人员并像开发人员一样思考,或者他们中的大部分都会强迫你以不同的方式完成工作?

So maybe the more specific question is: do you feel the same or are there BPMSes which support you in beeing a developer and think like a developer or do most of them force you to do your job a different way?

推荐答案

不确定究竟是什么问题,但选择BPM与普通编程将取决于要求。 业务流程在软件工程中是一个相对含糊的术语。

Not sure what exactly you ask, but the choice BPM vs. plain programming will depend on the requirements. A "business process" is a relatively vague term in software engineering.

以下是评估您需求的一些标准:

Here are a few criterion to evaluate your needs:


  • 规则的复杂性 - 流程中包含的决策/规则是否简单,复杂,可配置,硬编码?

  • 流程的易变性 - 您的流程多久更改一次?谁应该能够进行更改?

  • 集成需求 - 您的流程是使用多个异构服务实现的,还是全部使用相同的语言实现?

  • synchronous / asynchrounous - 您的流程是否长时间运行需要处理异步操作?

  • 人工任务 - 您的流程是否涉及人工交互,任务是根据他们的角色/职责分配/路由给人员的?

  • 监控流程 - 您正在执行的现有流程实例需要什么级别的控制?您是否需要审核操作等?

  • 错误处理 - 根据以前的观点,您打算如何处理错误或重试错误的流程执行?

  • complexity of the rules - Are the decisions/rules embodied in your process simple, complicated, configurable, hard-coded?
  • volatility of the process - How frequently does your process change? Who should be able to make the change?
  • integration need - Is your process realized using multiple heterogenous services, or is all implemented in the same language?
  • synchronous/asynchrounous - Is your process "long-running" with the need to handle asynchronous actions?
  • human tasks - Does your process involves human interaction, with task being assigned/routed to people according to their roles/responsibilities?
  • monitoring of the process - What is the level of control you want on the existing process instances being executed? Do you need to audit the actions, etc. ?
  • error handling - Depending on the previous points, how do you plan to deal with errors, or retry of faulty process execution?

根据这些问题的答案,您可能会发现您的流程更接近简单状态图表,其中包含一些可以按顺序执行的操作和决策,或者您可能意识到需要更多内容详细阐述,并且你不想重新实现所有这些。

Depending on the answer to these questions, you may realize that your process is closer to a simple state chart with a few actions and decisions that can be executed in a sequence, or you may realize that you need something more elaborated, and that you don't want to re-implement all that yourself.

普通编程完整的BPM解决方案之间(例如 Oracle BPM套件,其中包含 BPEL 规则引擎等),有中间解决方案,例如 jBPM Windows Workflow Foundation 以及其他许多人。这些中间解决方案通常是很好的权衡。

Between plain programming and a full-fledge BPM solution (e.g. Oracle BPM suite which contains BPEL, rule engine, etc.), there are intermediate solutions such as jBPM or Windows Workflow Foundation and probably a lot of others. These intermediate solution are frequently good trade-off.

这篇关于BPMS还是简单的编程?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆