与违反了最佳操作的任何其他情况一样,此反模式的根本原因在于缺乏良好的设计。
如果有实现大量过分细粒度服务的需求,则表明应用了此反模式。
没有标识公共服务,或未实现服务共享,同样也清楚地表明应用了此反模式。
这种跨参考架构的职责分配是导致反模式的根本原因。
而且,由于使用此反模式,会使不同应用程序的受益人间的重用减少或完全消失。
出现该反模式的环境是,SOA模式对于客户组织相对较新。
性能下降和开发成本增加是此反模式的主要结果。
反模式是描述对产生绝对负面结果的问题的一种常用解决方案的字面形式。
缺乏体系结构规则使得环境极易出现此类反模式的应用。
在大多数情况下,组织的边界和约束是此反模式的根本原因。
此反模式的常见症状表现为发起人不能清楚地阐释采用SOA的价值主张。
此类反模式的另一个结果就是由于重复而会产生计划外成本。
Web服务的增殖是应用此反模式的直接结果。
此反模式的一个症状是不同的小组使用不同的名称对相同的服务进行标识。
不过,避免此反模式的最有效办法是定义映射回业务目标的服务。
为了消除此反模式,一种解决方案是指定一个业务支持路线图,以采用增量的方式逐步采用SOA。
与愉快路径反模式一样,简单测试反模式讲的不是关于“是什么”而是“不是什么”。
缺乏设计时一致性(SOA控制模型)是导致此反模式的主要原因。
反模式使用非常频繁,但主要是问题的无效解决方案。
这个非常基础的反模式(在旁注魔法Servlet反模式中有详细描述)困扰了很多相对高级的客户。
Antipattern:在团队成员的机器上管理文件,或者将文件存储在可由已授权团队成员访问的共享驱动器上。
此反模式带来的问题是标识服务的方式。
对语言的核心类进行根本改变(可能是破坏)是一个常见的DSL反模式。
反模式:一些团队为每个目标环境手工硬编码这些值,或者使用GUI工具执行同样的工作。
因此,应用此反模式时应当小心地进行监视,并应当配备相应的控制,以防止长期采用此反模式。
它们通常捕获重构解决方案描述,说明如何更改反模式,以得到更为稳定的解决方案。