同事推动一个可怕的,有臭味的软件解决方案,需要帮助!

时间:2009-10-20 17:56:25

标签: .net workflow-foundation

我的办公室里有很多影响力的编码员希望走上一条我觉得本能地错误的道路。我们需要一套业务规则框架,用于在基于WCF的POX服务中接受某些类型的xml信息集的一组Web服务。

在之前的版本中,我们使用了自制规则框架来触发某些数据点,如果满足这些触发器,则会针对特定规则与xml信息集相关联(修改,追加等)。< / p>

现在这是一个相对较大的项目,带有很多移动部件,我们在整个解决方案的各个地方都使用了以前的框架。我想推动我们使用商业和稳定的规则框架,如世界自然基金会或类似的东西,但这个人有另一个想法,虽然我没有一个很好的论据反对它,它似乎真的很臭。

基本上,他希望有一个使用CodeGen生成脚本的管理员。此代码将存储在DB中并根据需要进行检索。代码将被编译到内存中的程序集中并执行。当我指出你无法在内存中卸载一个程序集时,他说他并不关心这一点。当对现有脚本进行更改时,他将创建一个新哈希作为新命名空间并将该脚本作为程序集加载。每个脚本(可能平均有一百个活动)将是它自己的程序集,他将动态加载到内存中。每天他都会让IIS回收这个过程以摆脱过时的程序集。

这是一个非常糟糕的想法,因为我认为它会是什么?为什么?

3 个答案:

答案 0 :(得分:4)

概念证明!!我不能说得足够响亮,但这是一个很好的例子,证明概念可以帮助证明哪种方法对你的组织更有意义。

事实证明,他可以建立你所描述的系统,并在几天内让它嗡嗡作响,你需要几周的时间才能加快世界自然基金会的速度。或者相反(我认为这就是你所假设的)他的POC将是错误的,缺乏你的WWF POC将更快地完成并且更加强大的功能。

但除非你试一试,否则你永远不会知道 ......直到那时,如果他有影响力,我猜他赢了:-P

答案 1 :(得分:2)

这听起来像个坏主意吗?也许

如果您正在创建规则可以每天更改的内容,那么他​​“可能”会走上正确的道路,您可以通过创建单独的应用程序域来解决无法卸载程序集的问题。 / p>

但是,如果不了解实施目标的更详细信息,就很难说。

答案 2 :(得分:0)

这是一个糟糕的主意,因为他们没有使用现有工具来解决问题,他们正在利用专有技术重新发明轮子,这种技术可以完成世界自然基金会所做的工作,但不那么干净。它闻起来是因为它的代码处于错误的普遍性水平。

除了指出有更多优雅的解决方案之外,我可以就如何使他们说服这一点提供一些建议。管理层可能因为你可以从机架上雇用完美的WWF编码器而受到影响,而在第一天就没有人能够知道如何使用这个有臭味的解决方案。

祝你好运。