2

考虑以下场景:CRM 被用作应用程序开发平台,其中跨多个开发组织构建多个应用程序(CRM 解决方案),这些解决方案最终将托管在 PROD 组织中的一个组织下。开发环境如下所示:

1) 一个不受管理的“通用”解决方案,在一个名为 COMMON 的组织中包含通用实体、角色和其他工件

2) 团队 A 在 ORG 1 中处理非托管解决方案 1,其中 COMMON 已作为托管解决方案导入

3) B 团队在 ORG 2 中处理非托管解决方案 2,其中 COMMON 已作为托管
解决方案导入

4) 团队 C 在 ORG 3 中处理非托管解决方案 3,其中 COMMON 已作为托管解决方案导入

还有另一个称为集成,旨在将所有应用程序(解决方案)作为托管解决方案组合在一起

问题:

1) 在同一个开发组织中并行开发多个应用程序是个好主意吗?例如,让团队 A 和团队 B 在分别开发解决方案 A 和解决方案 B 时共享 Org 1 是否有意义?

2) 如果上述任何应用程序需要站点地图自定义,则应在将它们导入集成之前进行这些自定义并将其包含在各自的托管解决方案中,或者是否应在集成中进行所有站点地图自定义,然后将这些自定义导出为用于最终导入 PRODUCTION 组织的托管解决方案(仅包含站点地图)。


3) 解决方案 1-3 在其各自的组织中具有自定义实体,并且需要为这些实体(读取、写入等)添加权限,以获取来自安装在各自组织中的托管通用解决方案的角色“角色 X”组织。是否应该授予实体角色的权限并将其包含在相应的托管解决方案中,或者是否也应该在集成组织中完成此配置?

任何指导将不胜感激。

4

1 回答 1

1

1)您可以同时在同一个组织中开发多个解决方案。我们经常这样做,当我们与同一个实体打交道时,确实会出现唯一的问题。在一个完美的世界中,您的 COMMON(这是您的核心库)将是该解决方案开发组织中的托管解决方案。事实上,我强烈建议将 COMMON 尽可能地隔离,高度记录,并自动保存在 SVN 中。

2)站点地图通常很容易按照您想要的方式进行。丝带是杀手。无论如何,我喜欢在 UAT 中手动进行更改,然后将其导入 PROD。这不是理想的方式,只是似乎导致错误最少的方式。从 DEV 导入似乎会覆盖现有项目,因为这完全是关于“最后获胜”。

3)我会将这些保留在解决方案中,因为它们取决于应用程序。现在,如果由于繁文缛节或用户断开连接而无法管理 DEV,我将在 UAT 内部构建一个与每个解决方案相关联的非托管集成解决方案。所以解决方案-A-集成、解决方案-B-集成等由其他人处理。然后将这些从 UAT 中导出,作为托管解决方案导入 PROD。

于 2012-06-22T04:03:32.630 回答