采用AOP构建高可扩展性持续集成系统的研究与实现

被引量 : 0次 | 上传用户:woaiyueyue1314
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
无论采用哪一种软件开发流程,集成都是必不可少的一个环节。随着敏捷开发思想逐渐取代传统开发流程,持续集成(Continuous Integration,CI)取代了传统的最终集成。敏捷开发思想提倡高频率地进行集成动作,在代码更新后第一时间发现潜在的BUG,并予以修复。由于敏捷开发思想逐步被大部分软件组织所采纳,持续集成系统已经成为大多数软件项目不可缺少的一部分。然而,虽然市场上有丰富的持续集成系统产品可供选择,但就软件组织而言,一个成熟的持续集成系统往往不适合直接使用于项目之中,这是因为特定的软件组织往往都对项目流程有着特定的功能需求,而持续集成系统正处于整个项目流程的核心位置,所以这些特定组织的功能需求需要依靠持续集成系统来实现。具统计,80%以上的中大型软件组织都需要在使用前对成熟的持续集成系统进行扩展。软件组织对持续集成系统的扩展需求有一定的特殊性,不同于持续集成系统本身所覆盖的核心业务功能,这些扩展所附加的功能一般都属于横切功能,常见的包括日志记录、动作计时、特殊异常捕获、数据缓存等。采用一般的面向对象思想对持续集成系统进行扩展的话,容易造成核心业务模块和横切功能模块过于耦合,横切功能模块共享性差的问题。本文的研究内容是采用面向方面编程(Aspect-Oriented Programning,AOP)的思想对持续集成系统进行扩展的研究与实现。AOP的基本思想是分离系统的核心功能和横切功能,这样可以有效地降低两者之间的耦合度,这一点对于CI系统的扩展来说特别适用。本文首先介绍了AOP思想的本质和其实现,重点介绍了AOP在.NET平台上的实现;然后研究了使用AOP来扩展持续集成系统的方法,包括如何定位横切功能、连接点和通知类型的设计、如何控制横切面的粒度以及扩展持续集成系统时需要遵守的原则,最后针对集成扩展中常用的集成计时、集成触发捕获和非预期异常捕获三个功能在经典的CI系统:CrujseControl.NET进行扩展,以验证方法的有效性。本文提出的扩展方法以及其实现已经在惠普公司的ISEE、UPS项目中得以应用,AOP的使用使得横切功能和核心功能彻底解耦,而方面模块在项目之间又能较好地共享。
其他文献
商业贿赂犯罪是一种新型的经济犯罪,从世界范围来看,商业贿赂破坏各国经济发展、廉政制度与社会风气,已经为害多年。我国作为一个新兴的社会主义市场经济国家,在改革开放,建
位于山东省招远市的玲珑金矿田是我国重要的黄金生产基地,矿田内玲珑型花岗岩大面积出露,仅局部被第四系沉积物覆盖。控矿构造可分为两种类型,既压扭性和张扭性,前者控制着蚀
<正> 目前,由于大量有效的合成抗真菌药对人类有严重的副作用,因而对天然药物的需求有所增加。鉴于此目的本文研究了10种植物挥发油对须发毛癣菌和奥杜盎氏小孢子菌生长的影
喷嘴喷流是内冷油腔冷却机理研究重要的初始条件之一。该文利用喷嘴喷流试验确定数值模拟的初始值,通过仿真分析对喷嘴喷流的速度和密度分布特性进行研究,建立了冷却液由喷嘴
未定权益定价是金融数学研究的核心问题之一,它的发展对数学的许多分支起到了推动作用。未定权益定价理论不仅对金融工具的不断创新和金融市场的有效运作产生直接影响,而且在
数据挖掘作为知识发现过程中的重要步骤,是从大型数据库及数据仓库中提取未知的、有价值的和可操作性的关系、模式和趋势用于决策支持的过程。随着船岸通信技术及计算机存储
教育学所关注的创新型人才的形成是以教育的真正发生为基础的,它所形成和建构在个体身上的自我生成素质,构成了个体创新的“积极”的内在原动力。与此同时,制度的变革作为创
重力坝深层抗滑稳定分析是重力坝设计中较为重要的内容。虽然国内外学者及工程技术人员在此领域开展了大量的试验与理论研究,取得了较为丰硕的成果,但仍有很多争议的问题尚未解
现有的Sn-Ag-Cu无铅焊料其关键问题是熔点比传统的Sn-37Pb高34℃~38℃,使得焊接设备和工艺都必须更换。我们在Sn-20Bi焊料的基础上通过添加微量元素并采用快速凝固的方法研制
20世纪60年代后,西方发达国家相继进入了后工业化时代,经济高度发达,社会物质财富积累巨大,犯罪分子特别是有组织的犯罪集团通过犯罪活动获得非法收益的数量之多几乎达到了富