The invention discloses a software adaptive transformation method based on object-oriented programming, which adaptively modifies the software by utilizing design patterns such as strategy pattern, agent pattern, etc. in object-oriented programming and the idea of extracting business logic from AOP in aspect-oriented programming. The self-adapting software obtained by the invention can respond to the changes of its own attributes and complex environment, and it brings great convenience for software maintenance due to the transformation of the object-oriented design concept. At the same time, the invention has little damage to the original software system code structure, clear logic of the modified software system code and good expansibility.
【技术实现步骤摘要】
一种基于面向对象编程的软件自适应改造方法
本专利技术属于软件工程的软件设计方法领域,具体涉及一种基于面向对象编程的软件自适应改造技术。
技术介绍
软件自适应技术是为了降低软件维护压力、增强软件自身容错和应对变化的能力而提出的一种软件设计技术,运用软件自适应技术构造的软件拥有对环境和需求变化的自适应能力,这样的软件叫做自适应软件。自适应软件在运行过程中遵循“监测”-“分析”-“计划”-“执行”的自适应环路,具体表现为:自适应软件在运行过程中实时收集并分析上下文信息,参照知识库中相应的策略,执行自适应行为。上下文表示一种在对象激活时被创建的属性的有序序列,上下文信息包含上下文事件、上下文状态,上下文约束。知识库是多组策略的集合,为自适应软件进行决策提供依据,策略是一种基于ECA规则,用以表明自适应软件调整自身行为时机以及方式的语言,ECA规则是一种由事件触发、判断条件满足、执行动作的动作触发规则。自适应行为是指自适应软件通过动态重配置实现对自身参数、结构或行为的自发调整的过程,动态重配置即自适应软件在运行过程中更改自身代码结构或者属性的过程。运用软件自适应技术,针对现存软件进行自适应化改造时,主要的技术难题在于实现非自适应软件的动态重配置。传统的自适应技术在实现软件动态重配置时,主要有两种方式:第一种方式倾向于直接修改现存软件的源代码,使现存软件匹配中间件系统,这种方式需要开发人员对非自适应软件源代码有透彻的理解,完全把握代码的功能作用,并且需要花费较长时间。第二种方式倾向于修改中间件系统,让中间件系统匹配非自适应软件,这种思路依赖于开源的中间件系统,因此限制 ...
【技术保护点】
1.一种基于面向对象编程的软件自适应改造方法,其特征在于,包括以下步骤:步骤一:构建知识库,提供多组策略的存储结构;多组策略的存储结构包括对应上下文事件的类,对应上下文状态的类,对应上下文约束的类,对应约束元素或逻辑关系的类,对应策略条件的类,对应自适应行为的类,对应策略的类,对应策略组的类;步骤二:梳理原软件系统的业务逻辑,根据需要组织相应的策略;梳理出待修改软件原有业务逻辑,明确自适应软件需求,将这些需求抽象表示为事件Ce,状态Cs,约束Cr,调整Ac,按照ECA规则形式描述的策略;步骤三:给出策略细节,并进行规范化,以xml文件形式进行存储;按照事件Ce对应上下文事件,状态Cs对应上下文状态,约束Cr对应上下文约束,调整Ac对应自适应行为的方式按照知识库存储所提供的属性,对策略进行细化和规范化,并将这些策略存储在xml文件中;步骤四:根据需要对原软件系统的业务逻辑进行分离提取,封装到目标对象中;运用面向对象编程中的代理模式将原软件系统的业务逻辑进行再封装,得到目标对象;步骤五:统一目标对象的接口,形成自适应构件;步骤六:设计连接子,初始化连接子属性指向,形成自适应模块;自适应模块 ...
【技术特征摘要】
1.一种基于面向对象编程的软件自适应改造方法,其特征在于,包括以下步骤:步骤一:构建知识库,提供多组策略的存储结构;多组策略的存储结构包括对应上下文事件的类,对应上下文状态的类,对应上下文约束的类,对应约束元素或逻辑关系的类,对应策略条件的类,对应自适应行为的类,对应策略的类,对应策略组的类;步骤二:梳理原软件系统的业务逻辑,根据需要组织相应的策略;梳理出待修改软件原有业务逻辑,明确自适应软件需求,将这些需求抽象表示为事件Ce,状态Cs,约束Cr,调整Ac,按照ECA规则形式描述的策略;步骤三:给出策略细节,并进行规范化,以xml文件形式进行存储;按照事件Ce对应上下文事件,状态Cs对应上下文状态,约束Cr对应上下文约束,调整Ac对应自适应行为的方式按照知识库存储所提供的属性,对策略进行细化和规范...
【专利技术属性】
技术研发人员:杜厚旺,王兴起,陈滨,魏丹,方景龙,
申请(专利权)人:杭州电子科技大学,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。