基于概念分析的软件横切关注点提取方法

基于概念分析的软件横切关注点提取方法

ID:43768309

大小:220.67 KB

页数:8页

时间:2019-10-14

基于概念分析的软件横切关注点提取方法_第1页
基于概念分析的软件横切关注点提取方法_第2页
基于概念分析的软件横切关注点提取方法_第3页
基于概念分析的软件横切关注点提取方法_第4页
基于概念分析的软件横切关注点提取方法_第5页
资源描述:

《基于概念分析的软件横切关注点提取方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第34卷第9期2006年9丿]Vol.34No.9September2(X)6华南理工大学学报(自然科学版)JournalofSouthChinaUniversityofTechnology(NaturalScienceEdition)文広编号:10(X)565X(2(X)6)09-(X)45-05基于概念分析的软件横切关注点提取方法*苏吻'康力2胡圣明'陈平'(I.西安电子科技大学软件工程研究所.陕西西安71(X)71;2.飞行口动控制研究所电子部,陕西西安710065)摘要:为解决软件遗产系统中横切特性的理解和进化问题,提出了面向侧而的逆向工程框架模型

2、,并以此为基础给出了一种用例驱动的形式化概念分析方法,对需求分析模型层面上的系统横切特性进行逆向恢复.通过对目标系统执行信息进行概念格分析•文中方法能够识别和提取横切用例模型的系统方法调用集合,并将它们抽象为系统的早期侧面.和仅为了代码重构而进行的侧面挖掘技术相比,该方法更适合在校高的系统抽象层面上进行程序理解.作为一种采用增量式结果产生策略的半自动化方法,它的实施流程也具有更好的可控性和对逆向工程需求变化的适应性.关键词:逆向工程;横切关注点;提取;形式化概念分析;统一建模语言中图分类号:TP311文献标识码:A当前的软件逆向工程通常以恢复遗产系统的主流

3、体系架构及业务规则为目标,很少考虑系统的横切关注点,尤具是软件牛命周期早期阶段的设计约束、体系架构质垦或系统级的属性和行为等,由于这些早期开发模型中的横切特性往往包含了大量的系统设汁理念和开发策略信息,因此对遗产系统的理解受到很大限制•在软件正向工程领域中,面向侧面技术是近年来新出现的-•种程序设计范型和软件开发方法,它圧于系统横切关注点分离的思想•提高了应用软件的町理解性,可维护性和可进化性”•因此,将面向侧面的思想应用到逆向工程中可进一步辅助稈•序理解和系统进化.鉴于此方向的相关研究尚处于初始阶段®,文中提出了面向侧面软件逆向工程的概念和框架模型,并以

4、逆向恢复系统需求分析模型层面上的横切关注点为例,给出了一种用例酬动的形式化概念分析方法,并通过统一建模语言(UML)中用例图的扩展机制对所恢复的系统横切收稿II期:2()05-12-26平庶金项II:国家自然科学基金资助项目(60473063);教育部博士学科科研基金资助项目(K40103230087)作者简介:苏场(】975・),男,博士生,主要从事程序理解与软件逆向工程方面的研究.E-mail:suvang369@tom.com特性进行模型重构和呈现.和仅为了代码重构而进行的侧血挖掘技术⑶相比,文中方法更适合在较高的系统抽象层面上进行程序理解•作为一

5、•种采用增量式结果产生策略的半自动化方法,其实施流程也具有更好的可控性和对逆向工程'需求变化的适应性.1面向侧面的软件逆向工程框架模型作为面向侧面程序设计(AOP)重构面向对象系统的前期步骤,II前的侧而挖掘技术是一种代码级的横切关注点逆向恢复方法,如文献[3]中介绍Hannemann和Kiczales的侧面挖掘工具“AMT",Griswold的"AspectBrowser*'以及SilviaBreu和JensKrinke提出的动态分析技术等.这种只在单一层面上进行的逆向恢复活动限制了程序理解的深度,同时可能会导致遗产软件进化后早期模型和系统实现之间的不一

6、致⑷•面向侧面的软件逆向工程具有更泛化的涵义,它以遗产系统现存的文档及源代码为基础・识别、抽取和再建模软件牛.命周期不同阶段(需求分析、体系结构设计和代码实现)模型或实体中的横切关注点,以此作为针对系统横切特性的程序理解和肩续系统进化的依据•整个框架模型如图1所示.冉匸程(系统进化)体系结构设计橫旳正向匸程系统代码实体横切关注点横切关些声建模」代码抽象代码抽*横切代码;■tZ_I侧面挖掘-AOPlft构代码图1面向侧面的软件逆向工程框架模型Fig.IFrameworkmodelofaspect-orientedsoftwarereverseengineer

7、ing用例模型是表现系统功能需求最常用的方法,它从宏观的角度描述了软件系统的外部行为特征,因此遗产系统的用例模因恢复已经成为在较高的抽象层次上进行逆向工程和程序理解的一个关键技术.用例技术的创始人Jacobson指出,用例是系统需求分析阶段的主流关注点⑸,并且,在面向侧面软件开发(AOSD)的相关研究中,影响多个用例的系统属性或行为已经彼定义为需求分析阶段的系统横切关注点"•结合软件逆向工程工具XDRE的已有研究成果"9),本文在面向侧面的软件逆向工程范畴中,将影响多个用例的系统屈性或行为看作是需求分析模住中的横切关注点,称为“早期侧面”•其源代码实体是一

8、组有序的系统方法调用集合,并且实现了一个或多个明确的系统横切特性•

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。