自适应互联网软件架构建模与反射中间件应用
1. 自适应互联网软件架构建模概述
早期自适应研究侧重于让软件系统在“物理”层面具备自适应能力,多借助代理、设计模式和中间件等技术。如今,研究重点转向让软件系统在“逻辑”层面实现自适应,即明确自适应部分、确定自适应策略以及评估自适应效果。软件质量在分析、设计和评估自适应能力方面起着核心作用,软件架构(SA)不仅是软件系统的蓝图,也是系统质量的载体,多数质量评估依据SA进行,SA的设计决策受质量约束,可看作不同质量间的权衡。动态SA(DSA)能记录系统允许的变更,指导软件系统在运行时的自适应。
然而,现有研究存在不足。多数SA设计和评估方法停留在高层,未考虑其他开发阶段,质量只能静态模拟或分析,对于运行时相关质量(如性能、可用性),难以保证评估结果的正确性和精确性,部分自适应策略可能并非最优甚至错误。DSA研究多关注系统演化,对系统质量关注不足,维护人员需手动调整质量,系统缺乏自适应性。一些支持自适应的技术(如反射中间件)虽可实现自适应策略,但不清楚实现期望质量的原因、时间和具体操作。
为使互联网软件具备自适应能力,ABC采用系统化方法利用现有自适应研究成果。首先,使用SA模型分析预期质量并定位需自适应的部分;其次,DSA记录运行时为实现期望质量应采取的操作;最后,合适的自适应机制(如反射中间件)在运行时执行设计好的自适应策略。ABC对根据需求规格设计SA模型无特殊限制,设计SA模型的方法如下:
- 基于特征模型的架构推导:将特征模型中的特征组织成职责,将语义相关的职责聚合为组件,生成SA模型草案。
- 面向对象分析与设计:先设计目标系统的类图,再依据原则将类封装为更粗粒度的组件,最终从面向对象设计工件中导出初始SA。
超级会员免费看
订阅专栏 解锁全文
55

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



