Aspect-Oriented Software Development最新文献

筛选
英文 中文
Method differentiator using slice-based cohesion metrics 使用基于切片的内聚度量的方法微分器
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457399
Akira Goto, Norihiro Yoshida, Masakazu Ioka, Eunjong Choi, Katsuro Inoue
{"title":"Method differentiator using slice-based cohesion metrics","authors":"Akira Goto, Norihiro Yoshida, Masakazu Ioka, Eunjong Choi, Katsuro Inoue","doi":"10.1145/2457392.2457399","DOIUrl":"https://doi.org/10.1145/2457392.2457399","url":null,"abstract":"It is important to understand semantic differences between a pair of Java methods during maintenance. However, textual or syntactic difference is insufficient to give clear idea which code fragment realizes a single functionality in Java methods. In this paper, we present an Eclipse plugin for semantic differentiation of a given pair of Java methods.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130177970","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
KFusion: optimizing data flow without compromising modularity KFusion:优化数据流而不影响模块化
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451440
L. Kiemele, Celina Berg, A. Gulliver, Y. Coady
{"title":"KFusion: optimizing data flow without compromising modularity","authors":"L. Kiemele, Celina Berg, A. Gulliver, Y. Coady","doi":"10.1145/2451436.2451440","DOIUrl":"https://doi.org/10.1145/2451436.2451440","url":null,"abstract":"Programming language support for multi-core architectures introduces a fundamentally new mechanism for modularity---a kernel. Though it can be used as a means to separate concerns, a kernel is given a clean slate of memory at execution time. As a consequence, application developers attempting to leverage libraries of kernels often incur substantial unanticipated performance penalties. Currently, the only recourse is to compromise modularity for the sake of optimizing data flow on an application-specific basis. KFusion is our prototype tool for optimizing libraries of kernels according to application-specific needs. Our goal is to shield application developers from loop fusion and deforestation in compositions of low level kernels that share data. Libraries, augmented by domain experts with annotations to ensure correct compositions of kernels, provide application developers with the opportunity to supply hints according to customized data flow needs---keeping modularity intact. In the worst case, an inaccurate hint incurs no penalty. Case studies of applications using general-purpose libraries for linear algebra, image manipulation and physics engines show that KFusion can substantially improve performance associated memory bandwidth bottlenecks.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125543673","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Towards control of aspect interference using membranes and monads 利用膜和单体控制相位干扰的研究
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457404
Ismael Figueroa
{"title":"Towards control of aspect interference using membranes and monads","authors":"Ismael Figueroa","doi":"10.1145/2457392.2457404","DOIUrl":"https://doi.org/10.1145/2457392.2457404","url":null,"abstract":"","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"335 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133760063","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Aggregation for implicit invocations 隐式调用的聚合
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451450
S Frischbier, Alessandro Margara, T. Freudenreich, P. Eugster, D. Eyers, P. Pietzuch
{"title":"Aggregation for implicit invocations","authors":"S Frischbier, Alessandro Margara, T. Freudenreich, P. Eugster, D. Eyers, P. Pietzuch","doi":"10.1145/2451436.2451450","DOIUrl":"https://doi.org/10.1145/2451436.2451450","url":null,"abstract":"Implicit invocations are a popular mechanism for exchanging information between software components without binding these strongly. This decoupling is particularly important in distributed systems when interacting components are not known until runtime. In most realistic distributed systems though, components require some information about each other, be it only about their presence or their number. Runtime systems for implicit invocations--so-called publish/subscribe systems--are thus often combined with other systems providing such information. Given the variety of requirements for information about interacting components across applications, this paper proposes a generic augmentation of implicit invocations: rather than extending a given publish/subscribe API and system in order to convey a particular type of information across interacting components, we describe domain-specific joinpoints that can be used to advise application-level invocation routers-so-called brokers--used by publish/subscribe systems. This enables aggregation of application-specific information to and from components in a scalable manner.\u0000 After presenting our domain-specific joinpoint model, we describe its implementation inside the REDS publish/subscribe middleware. The empirical evaluation of our approach shows that: (a) it outperforms external aggregation systems, by collecting and distributing information with a limited overhead; (b) the deployment of new functionalities has virtually no overhead, even if it occurs while the publish/subscribe system is running.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"429 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131581807","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
Powerful and seamless syntax extensions on a statically typed language 基于静态类型语言的强大而无缝的语法扩展
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457411
Kazuhiro Ichikawa
{"title":"Powerful and seamless syntax extensions on a statically typed language","authors":"Kazuhiro Ichikawa","doi":"10.1145/2457392.2457411","DOIUrl":"https://doi.org/10.1145/2457392.2457411","url":null,"abstract":"In this paper, we propose a mechanism of user-defined operators with better expressiveness while keeping composability. Our user-defined operators, named protean operators, can express arbitrary Parsing Expression Grammar (PEG) syntax, and they can also express complex user-defined literals. A library of user-defined operators is composable - the library can use with any other libraries. We have developed ProteaJ, which is an extension of Java 1.4 supporting protean operators.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127011537","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
A brief tour of join point interfaces 简单介绍一下连接点接口
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457401
E. Bodden, É. Tanter, Milton Inostroza
{"title":"A brief tour of join point interfaces","authors":"E. Bodden, É. Tanter, Milton Inostroza","doi":"10.1145/2457392.2457401","DOIUrl":"https://doi.org/10.1145/2457392.2457401","url":null,"abstract":"In standard AspectJ, aspects and base code are often insufficiently decoupled, as aspects hold pointcuts, which can contain explicit textual references to base code. This hinders aspect evolution and reuse, and may hinder reasoning about aspects on the base-code side. In this demo we present join point interfaces as an extension to the aspect-oriented programming language AspectJ. Opposed to AspectJ, with join point interfaces aspects and base code communicate only through a shared interface abstraction. Aspects themselves go without pointcuts and only reference the interface. Pointcuts are typically defined on the base-code side, or not at all, as join point interfaces also support pure explicit invocation as known from publish-subscribe systems. As a result, users obtain a language which decouples aspects from base code using a modular type-checking algorithm, and which they can use to adopt aspects gradually as they desire.\u0000 One major undertaking in the design of join point interfaces was to make the language as flexible to use as standard AspectJ, while nevertheless providing interfaces supported by strong type checks that can completely avoid type errors at composition time. In this demo we will discuss this inherent trade-off, we will present JPIs as an extension to the AspectBench Compiler, and will show how the language eases the maintenance of existing AspectJ applications.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128038685","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Secure and modular access control with aspects 安全和模块化的访问控制与方面
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451456
Rodolfo Toledo, É. Tanter
{"title":"Secure and modular access control with aspects","authors":"Rodolfo Toledo, É. Tanter","doi":"10.1145/2451436.2451456","DOIUrl":"https://doi.org/10.1145/2451436.2451456","url":null,"abstract":"Can access control be fully modularized as an aspect? Most proposals for aspect-oriented access control are limited to factoring out access control checks, still relying on a non-modular and ad hoc infrastructure for permission checking. Recently, we proposed an approach for modular access control, called ModAC. ModAC successfully modularizes both the use of and the support for access control by means of restriction aspects and scoping strategies. However, ModAC is only informally described and therefore does not provide any formal guarantee with respect to its effectiveness. In addition, like in many other proposals for aspect-oriented access control, the presence of untrusted aspects is not at all considered, thereby jeopardizing the practical applicability of such approaches. This paper demonstrates that it is possible to fully modularize aspect control, even in the presence of untrusted aspects. It does so by describing a self-protecting aspect that secures ModAC. We validate this result by describing a core calculus for AspectScript, an aspect-oriented extension of JavaScript, and using this calculus to prove effectiveness and non-interference properties of ModAC. Beyond being an important validation for AOP itself, fully modularizing access control with aspects allows access control to be added to other aspect languages, without requiring ad hoc support.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131355103","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
Reusing software design models with TouchRAM 使用TouchRAM重用软件设计模型
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457402
J. Kienzle
{"title":"Reusing software design models with TouchRAM","authors":"J. Kienzle","doi":"10.1145/2457392.2457402","DOIUrl":"https://doi.org/10.1145/2457392.2457402","url":null,"abstract":"TouchRAM is a multitouch-enabled tool for agile software design modelling aimed at developing scalable and reusable software design models. This paper briefly summarizes the main features of the Reusable Aspect Models modelling approach that TouchRAM is based on, and then describes how the tool is used during the design process to incrementally elaborate a complex software design model.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"315 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124293639","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Method shells: controlling a scope of destructive class extensions by context switches 方法外壳:通过上下文切换控制破坏性类扩展的作用域
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457410
Wakana Takeshita
{"title":"Method shells: controlling a scope of destructive class extensions by context switches","authors":"Wakana Takeshita","doi":"10.1145/2457392.2457410","DOIUrl":"https://doi.org/10.1145/2457392.2457410","url":null,"abstract":"We propose Method Shells, which is a module system for switching a set of destructive class extensions at runtime. Destructive class extensions are getting popular and supported by a number of languages. By using destructive class extensions, you can add new methods to existing classes and redefine existing methods without rewriting the original source code by only writing differences in a separate file. For this reason, destructive class extensons are suitable for reusing an entire program, such as libraries. However, difference destructive class extensions redefining the same method in the same class may conflict. Our module system can switch sets of destructive class extensions activated and deactivated at runtime. Futhermore, we defined the formal semantics of our module system and proposed a way to impliment methodshells without runtime overheads.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"56 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132582758","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Modular construction of an analysis tool for mining software repositories 用于挖掘软件存储库的分析工具的模块化构造
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457409
Kazuhiro Yamashita
{"title":"Modular construction of an analysis tool for mining software repositories","authors":"Kazuhiro Yamashita","doi":"10.1145/2457392.2457409","DOIUrl":"https://doi.org/10.1145/2457392.2457409","url":null,"abstract":"In this paper, we propose an analysis tool for mining software repository (MSR) called E-CUBE, which corresponds to three types of evolution in MSR (i.e., Platform Evolution, Target Evolution and Scale Evolution). To encapsulate the essence of these types of evolution, we introduce modular construction for MSR studies to E-CUBE. We make a choice of features (i.e., modules) in the field of MSR using Feature Oriented Domain Analysis (FODA) and implement those modules using an internal Domain specific language (DSL).","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133195677","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信