软件架构选择专家系统:原理、开发与验证
1. 现有软件架构复用与相关技术
在软件架构复用方面,存在多种不同的技术和方法。
- 模型复用 :有研究提出了一种巨型模型,它能以统一的方式捕获架构知识,使其可共享和复用,还包含关键架构概念的形式化映射以进行工件建模。也有提出可复用的软件架构知识模型,帮助架构师在设计过程中理解不同架构解决方案之间的关系以及它们对架构设计推理的影响。
- 语义方法 :部分工作基于语义方法。例如,有原型工具使用SPARQL作为查询语言,查询存储在语义维基中的架构知识,为架构评审、设计和开发活动提供答案;还有框架允许在虚拟开发社区生成的工件中搜索软件架构信息,利用基于本体的语义搜索机制检索架构属性和软件构建过程中的决策逻辑。
- 聚类技术 :存在基于聚类技术恢复架构模型的方法。一种是通过基于结构、语义和目录三种类型的依赖关系对集合进行分组来恢复架构;另一种是对用于软件架构恢复的模块化聚类技术进行实证评估。
- 推荐系统 :有研究提出基于推荐系统和上下文因素,面向知名设计模式的框架/工具,以辅助软件架构设计。
然而,目前尚未有通过专家系统(ES)根据软件项目的非功能需求支持特定架构选择的类似工作,现有相关工作主要基于建模、聚类、语义技术、知识管理和推荐系统等其他技术。
2. 专家系统ES3A的开发过程
为了提供支持决策的工具,开发了专家系统ES3A(软件架构选择专家系统),其开发过程包括以下几个阶段:
1. 问题识别
软件架构选择专家系统解析
超级会员免费看
订阅专栏 解锁全文

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



