首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 187 毫秒
1.
杨曦  李彤 《计算机工程》2012,38(19):52-55
传统面向对象(OOP)框架对软件的变化性和复杂性支持有限.为此,基于C++语言,提出一种支持动态演化的面向方面编程框架——AODF.给出Bigraph理论的静态和动态建模过程,通过Bigraph反应系统实现AODF的动态演化,使用图形及形式化的项语言表述其演化过程.实验结果表明,与传统OOP框架相比,AODF的代码模块化程度更高,软件系统扩展性更好.  相似文献   

2.
软件体系结构层切点指示器是在软件体系结构层次上实现量化机制和描述方面编织的基础。一些面向方面软件体系结构的描述语言虽然引入了切点指示器(Pointcut Designator)的语法成分,但仍未给出其语义的形式化描述,因而难以精确刻画软件体系结构层方面的注入位置。针对这一问题,基于面向方面软件体系结构描述语言AC2-ADL的抽象语法树形式,设计了一种一阶逻辑语言LL4PCD(Logic Language for PCD)。在此基础上,提出AC2-ADL语言PCD的形式化描述方法。该方法能精确定义软件体系结构层PCD的语义,可为形式化分析软件体系结构层方面编织提供支持。  相似文献   

3.
面向方面编程与构件技术的结合是开发更加可复用、可扩展的软件的新方法,不同于传统的通过修改系统架构以及引入新的编程语言实现二者的结合。提出一种将文件划分为构件与方面,利用XML语言描述构件与方面的编织关系,结合构件客器技术与面向方面编程的方法实现构件与方面的运行时编织的方法。新的方法既可以简单方便地描述方面,又有效地扩展了现有系统,原有构件不需要任何改动,就可以直接实现同方面的编织,井确保比较高的运行效率。同时该方法在CAR上的软件工程实践也作了描述。  相似文献   

4.
随着用户需求和开放的网络计算环境的不断变化,软件复杂性与演化要求也随之不断增强。为适应基于关注点分离的方面化构件软件的动态演化需求,提出一种动态方面编织框架DWAC(Dynamic Weaving Framework for Aspectual Component-based Software)。该框架以方面化构件为基本单位,基于软件体系结构规约和系统实现,给出方面化构件增加、删除和修改的具体执行过程,并举例验证了其对面向方面的构件化软件动态演化的支持能力。  相似文献   

5.
针对应用面向方面技术提出了一个非精确实时计算的框架。该框架允许开发人员将可选任务定义和设计为方面,基于运行时可用资源动态编织可选的方面。通过一系列编织与解编织的时间测试,找到影响编织与解编织时间的两个主要因素——通知和目标方法的数目。测试结果表明,在实时系统中动态编织技术可实现非精确计算的可行性,且无需引入不可预测性。  相似文献   

6.
模型驱动架构的软件开发方法能够直接生成可用的软件产品,但在开发过程中的建模与模型转换难以实现核心关注点与横切关注点的分离,从而导致模型的纠结和重复。基于模型层的面向方面思想(AOP)可以先将核心功能与横切功能分开独立建模,然后再通过编织技术将它们集成起来,从而有效地解决了这个问题。探讨了通过扩展UML语言使之能表现方面的特性的方法,以及如何针对MDA的不同层次来使用相对应的方面来表达。为模型转换的具体实现提供了可行的方法。  相似文献   

7.
面向方面软件体系结构描述语言AspectualACME虽引入了切点指示器PCD(Pointcut Designator)的语法成分,但仍未给出其语义的形式化描述。针对这一问题,基于AspectualACME语言抽象语法树,设计了一阶逻辑语言LIAPCD(Logic Language forPCD)。在此基础上提出了AspectualACME语言PCD的形式化描述方法。该方法能精确定义软件体系结构层PCD的语义,可为形式化分析软件体系结构层方面编织提供支持。  相似文献   

8.
方面单元测试框架的设计与实现   总被引:1,自引:0,他引:1       下载免费PDF全文
缺乏成熟的方面测试和方面冲突检测技术是阻碍面向方面软件编程大规模应用的瓶颈性问题。针对方面单元测试,提出了无需与基模块编织的方面单元的独立测试框架AJUnit。该框架运用Java注释和源码与字节码映射等技术实现编译细节的透明化。基于控制流和数据流分析,AJUnit综合运用随机测试数据生成、相对测试充分性准则的优化和指定路径的测试数据生成等技术实现测试过程的自动化。文中也介绍了以AJUnit为基础的方面单元测试工具的设计和实现。  相似文献   

9.
基于领域特征的AOP编织实现方法   总被引:1,自引:0,他引:1  
李淼  白勇  张波 《计算机科学》2009,36(2):299-302
面向方面编程(AOP)通过横切关注点和编织技术来实现软件.基于领域特征的领域分析、设计过程获得领域的特征和特征关系,并在领域实现的前期实现特征的代码编制.采用面向方面编程技术,对领域特征中任务(Role)的关系分析、归类后,按面向方面编程技术提供的关注点(Concerns)、通知(Advice)、横切(Crosscutting)、编织(Wea-ving)等方法,针对领域特征中的Role进行编织,组成完整的可变化特征,以适应不同软件产品的需要.采用面向方面编程技术不会对已封装的Role产生耦合,增强了代码的易用性和可维护性.  相似文献   

10.
基于OCL的面向方面监控框架   总被引:1,自引:0,他引:1       下载免费PDF全文
彭中  毛晓光 《计算机工程》2009,35(13):17-19,6
基于面向方面编程技术提出一种软件性质监控框架。该框架根据对象约束语言的约束条件生成监控方面,对监控方面与被监控软件进行编织,使软件在运行时具备发现约束违背的能力。使用模型约束检查工具USE可以进一步分析违约信息,实现其在模型上的可视化呈现。  相似文献   

11.
编织效率会严重影响面向方面编程的性能。针对上述情况,将按需编织和编织历史机制相结合,提出一种基于日志的增量式编织机制。使用索引日志、编织历史日志和系统日志3种日志文件,通过改变方面存储结构,定量描述方面状态,计算方面状态改变量,由此实现效率更高的增量式编织。  相似文献   

12.
Aspect Oriented Programming can arbitrarily distort the semantics of programs. In particular, weaving can invalidate crucial safety and liveness properties of the base program. In this article, we identify categories of aspects that preserve some classes of properties. Specialized aspect languages are then designed to ensure that aspects belong to a specific category and, therefore, that woven programs will preserve the corresponding properties.Our categories of aspects, inspired by Katz’s, comprise observers, aborters, confiners and weak intruders. Observers introduce new instructions and a new local state but they do not modify the base program’s state and control-flow. Aborters are observers which may also abort executions. Confiners only ensure that executions remain in the reachable states of the base program. Weak intruders are confiners between two advice executions. These categories (along with two others) are defined formally based on a language independent abstract semantics framework. The classes of preserved properties are defined as subsets of LTL for deterministic programs and CTL* for non-deterministic ones. We can formally prove that, for any program, the weaving of any aspect in a category preserves any property in the related class.We present, for most aspect categories, a specialized aspect language which ensures that any aspect written in that language belongs to the corresponding category. It can be proved that these languages preserve the corresponding classes of properties by construction. The aspect languages share the same expressive pointcut language and are designed w.r.t. a common imperative base language.Each category and language is illustrated by simple examples. The appendix provides semantics and two instances of proofs: the proof of preservation of properties by a category and the proof that all aspects written in a language belong to the corresponding category.  相似文献   

13.
在研究面向方面编程思想的基础上,提出了一种Web应用框架。论述了采用J2EE过滤器实现关注点引擎,通过配置文件实现初始化并在运行时动态组装系统关注点和核心关注点的原理与方法。基于框架设计并实现了毕业论文管理系统,实践表明了框架的正确性与有效性。  相似文献   

14.
利用基于UML的面向方面编程(AOP)技术来建模实时系统,结合传统的网格QoS结构模型,把QoS关注从系统中抽象为一个独立于系统的QoS方面,从结构建模、行为建模、方面织入以及代码产生几个方面实现面向方面的建模方法,更好地提供网格环境下QoS保证,分离了QoS关注,提高软件的重用性.  相似文献   

15.
目前AOP作为OOP的扩展和补充,成为软件工程领域中的研究热点,其核心思想是分离关注点,实现横切关注点的模块化。实现关注点分离的关键技术之一是方面的编织。重点阐述了AOP系统中方面的具体编织策略,包括方面编织实现策略和织入时间策略。详细介绍了目前四种主流AOP系统:AspectJ、AspectWerkz、Spring AOP以及JBoss AOP的编织机制和技术,通过分析和总结目前AOP系统方面编织策略的优缺点,提出了一种基于XML的图形化方面编织框架——XbGAWF,以及XbGAWF与不同AOP平台的集成模式。  相似文献   

16.
算法演示属于软件可视化研究的一个分支,是对整个面向方面算法演示工具的框架进行系统的分析,理解各个部分的功能;从用户的角度去考虑具体的交互性控制应该实现哪些功能;采用面向方面技术实现算法演示交互性框架。由于采用面向方面技术,所实现的算法演示工具交互性控制框架与算法演示本身无关.因而具有很广的可扩充性与很强的重用性,可以应用到其他的算法演示中去。  相似文献   

17.
Extensible programming languages and their compilers use highly modular specifications of languages and language extensions that allow a variety of different language feature sets to be easily imported into the programming environment by the programmer. Our model of extensible languages is based on higher-order attribute grammars and an extension called “forwarding” that mimics a simple rewriting process. It is designed so that no additional attribute definitions need to be written when combining a language with language extensions. Thus, programmers can remain unaware of the underlying attribute grammars when building customized languages by importing various extensions. In this paper we show how aspects and the aspect weaving process from Aspect-Oriented Programming can be specified as a modular language extension and imported into a base language specified in an extensible programming language framework.  相似文献   

18.
应用形式化与实时语言的面向方面方法   总被引:2,自引:2,他引:0  
面向方面的软件开发方法是在面向对象开发方法的基础上,在AOP的支持下将贯穿系统的横切关注点提取出来,通过联结方式织入系统功能代码中的软件开发方法,该方法降低了软件开发的复杂性,提高了系统的灵活性和可维护性。形式化和实时语言为面向方面方法贯穿于实时软件开发提供了必要的支持,以形式化方法AO-RT-Z和实时语言PEARL为基础,给出了一种面向方面的实时软件开发框架,实现了软件生命周期各个阶段对面向方面的无缝支持,降低了实时软件开发的复杂性,提升了系统的可信度。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号