在本文中,您已经了解了怎样应用各种模式才能针对资源有限的语音设备实现面向服务的组件中间件。本项目中包括可重用的自包含软件模块的一些关键性的 SOA 特性、经过良好定义的接口,以及平台独立性。
与重用性、适应性和性能相关的各种决定因素,使众多可供选择的模块得以应用,包括组件配置器、拦截器、封装上下文对象和代理模式。在创建一个框架以实现项目的体系结构目标的过程中,模式居于中心地位。在多个模式的实现中要求使用的 C++ RTTI,被认为可能会在资源有限的环境中造成问题。对于非自动生成的调用程序和代理类来说,开发它们时的开销也是令人担心的。
整个服务框架(例如生命周期管理、通信、服务接口和横向关注点要素等等)是在内部开发的。开发内部解决方案有一些优势,但另一个可供采用的方法是使用第三方框架,如嵌入式 CORBA 或 IBM Rational Rose® RT。在本项目的早期,有几种第三方框架被列入考虑范围内,但由于它们都不太合适,所以没有采用它们。
项目中应用的模式并不是来自某个特殊的模式语言;它们是从几本最受欢迎的出版物中挑选出来的,得到了权威人士的推荐,或已经为团队的成员所熟知。过去的做法是精心挑选模式语言并应用其中的模式,而不是逐个选择更合适的模式,后者可以避免某些缺陷。模式语言的一个例子是 Remoting Patterns,它提供的模式用来解决在企业、Internet 和实时分布对象中间件领域中的问题。
在撰写本文时已经声明了若干个主要的项目交付里程碑,而且现在项目正在逼近它的最后一个交付里程碑。