4

我有一些可能模棱两可的问题,我不确定我是否会得到正确的答案,但我想我会把它放在那里,因为不知道在哪里可以得到答案。

作为一个部门,过去 2 年一直在实施各种现代开发实践,包括敏捷、Scrum、TDD、持续集成、MVC。

我的公司现在要迁移到 Microsoft Dynamics CRM(目前我们使用第三方产品)。他们希望将 Dynamics 用作 CRM,但也用于定制开发,通过阅读和背景学习,我可以理解 Microsoft Dynamics 是一款出色的产品,它有它的位置,并为许多企业解决了问题。我对 Microsoft Dynamics 的了解来自以下视频。http://channel9.msdn.com/Series/DynamicsCRM2011

我们的实施可能是针对业务高度定制的,我们还将在 Dynamics CRM 中构建大量自定义应用程序。我的公司是微软公司,所以我们已经在使用 .NET、SQL Server 等。

我的问题:

  • Microsoft Dynamics 是否允许现代开发实践,例如 TDD、持续集成、MVC?

  • 如果 CRM 部分是高度定制的,我们会失去使用 Dynamics CRM 的好处吗?

  • 它作为产品在市场上的声誉如何?

  • 与自定义 MVC 应用程序相比,在 Dynamics CRM 中开发具有大量业务规则的定制自定义应用程序是更快还是更慢?

  • 已知的限制或缺点是什么?

  • 如果有的话,还有什么其他好的选择?

我意识到没有答案,只有意见,如果有人使用过或有观点,或者可以向我指出一些平衡观点和事实的良好链接,将不胜感激。

谢谢。

4

1 回答 1

10

Microsoft CRM 是一个很棒的产品,它提供了一个非常好的应用程序框架。就像任何框架一样,它并不是最适合所有情况。一般来说,CRM 非常适合需要关系和/或工作流程的结构化数据的解决方案。

我们使用 CRM 后端构建 MVC 应用程序,将 CRM 更像 SQL 数据库;但是,这些通常适用于访问门户的非 CRM 用户。通常,对于您的 CRM 用户,您正在通过 JavaScript、插件(例如 C#)和 iFrame(指向您想要的任何东西)来定制事物。

当涉及到测试驱动开发 (TDD) 或持续集成 (CI) 时,没有标准的 CRM 工具可以帮助您。我们已经构建了一些工具来自动化/协助我们的开发,并且使用 SDK 很容易做到这一点。单元测试你的插件应该很好地适应你现在正在做的任何事情。但是,您目前从 UI 测试您的 MVC 应用程序也应该继续进行,因此您在开发/质量保证过程中投入了多少是任何新框架都需要考虑的事情。

如果 CRM 部分是高度定制的,我们会失去使用 Dynamics CRM 的好处吗?

这取决于你想要做什么。CRM 建立在关系之上。因此,如果您想用一堆不相关的实体定制解决方案而不使用工作流、安全性等,那么我会说 CRM 不适合您。

与自定义 MVC 应用程序相比,在 Dynamics CRM 中开发具有大量业务规则的定制自定义应用程序是更快还是更慢?

通常,在 CRM 界面中开发某些东西比开发非 CRM MVC 应用程序要快得多。部分问题将是增加您的开发人员。

如果情况发生在 MVC 方法更适用的情况下,那么您可以开发一个 MVC 应用程序,它与 CRM(或 SQL)对话,并通过左侧导航集成到 CRM 中。

已知的限制或缺点是什么?

Sharepoint 更适合非结构化数据。所以,我会说这是 CRM 的一个弱点。支持 CRM 的 SQL 数据库中有很多活动部件,所以如果您有一个 SQL 应用程序,您在其中集群多个数据库,那么我不会增加开销。唯一的另一个缺点是加速。

像任何工具一样,知道何时使用它与不使用它是关键。CRM 并不是万能的,但我已经看到它为各行各业的客户创造了奇迹。

完全披露,我是 Microsoft 合作伙伴的开发人员。我强烈建议您拥有一个合作伙伴,该合作伙伴可以为您提供培训、入门模板等,以加快您的开发时间。

于 2012-07-03T23:10:44.153 回答