服务需求可变性建模:DiVA方法
1. 引言
服务工程改变了软件系统的开发和交付方式,它为组织和个人提供了一种开发模式,允许他们使用第三方服务来实现目标。目前已经提出了多种服务工程技术,如BPEL、WSDL等,这些技术提供了一种开放式的开发模式,使用户和开发者能够将异构服务组合在一起,以创造出具有所需涌现特性的不同结果。
然而,这些技术并未解决现代系统必须应对的极端多样性和可变性问题。而且,服务消费者越来越期望服务能够持续可用且可定制,这就要求在服务执行期间支持动态可变性。虽然服务工程的开放性和松耦合特性允许替换服务实现以定制服务,但这往往效率低下,原因如下:
- 设计时为支持适应性所做的妥协以及运行时服务替换的开销。
- 管理可变性的复杂性,当尝试为每个可能的服务变体组合维护完整的服务实现时,会产生大量的代码冗余和重复,给维护工作带来困难。
为了解决这些问题,DiVA方法应运而生。它提供了一种工具支持的方法,用于管理自适应系统中的动态可变性并控制系统复杂性。DiVA将自适应系统视为动态软件产品线(DSPL),专注于系统的可变性,而非其所有可能配置的集合。这包括识别和建模系统中的变化点,并将系统细化为可变性和共性元素。DiVA将每个变化整合到一个单独的模块中,以便于管理和应用变体。此外,该方法还考虑了每个变化适用的特定上下文,以及每个服务变体对系统其余部分及其属性的影响。下面将通过移动电话服务可移植性(MPSP)案例研究来展示DiVA方法的应用。
2. DiVA概述
DiVA方法结合了模型驱动工程(MDE)技术和面向方面的软件开发(AOSD)技术。MDE技术用于建模可变性的各个元素,而AOSD技术则有助于封装所识别的
超级会员免费看
订阅专栏 解锁全文
42

被折叠的 条评论
为什么被折叠?



