Aspect-Oriented Software Development最新文献

筛选
英文 中文
Enhancing design models with composition properties: a software maintenance study 用组合属性增强设计模型:一个软件维护研究
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451444
F. Dantas, Alessandro F. Garcia, J. Whittle, João Araújo
{"title":"Enhancing design models with composition properties: a software maintenance study","authors":"F. Dantas, Alessandro F. Garcia, J. Whittle, João Araújo","doi":"10.1145/2451436.2451444","DOIUrl":"https://doi.org/10.1145/2451436.2451444","url":null,"abstract":"A considerable part of software design is dedicated for the composition of two or more modules. The implication is that changes made later in the implementation often require some reasoning about module composition properties. However, these properties are often not explicitly specified in design artefacts. Moreover, they cannot be easily inferred from the source code either. As a result, implicit composition properties may represent a major source of software maintenance complexity. This fact is particularly true with the advent of post object-oriented techniques, which are increasingly providing advanced mechanisms to enable flexible module composition. However, there is little empirical knowledge on how design models with explicitly-specified composition properties can improve software maintenance tasks. This paper reports an experiment that analyses the impact of design models enriched with composition properties on system maintenance. Explicit composition modelling was achieved in the experiment through a conservative approach, i.e., a specific set of additional UML stereotypes dedicated to model composition properties. The experiment involved 28 participants, who were asked to realize four maintenance tasks using UML design models with different levels of module composition details. Our findings suggested that explicit composition modelling contributed to better results in the realization of program change tasks, regardless of the developers' expertise. Users of composition-enhanced models consistently yielded better results when compared to users of plain UML models. The use of explicit composition specification also led to an average increase of 44.7% in the quality of changes produced by the participants","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":"121374610","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}
引用次数: 2
Supporting data aspects in pig latin 支持数据方面的猪拉丁文
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451439
C. Dyreson, Omar U. Florez, A. Thakre, V. Sharma
{"title":"Supporting data aspects in pig latin","authors":"C. Dyreson, Omar U. Florez, A. Thakre, V. Sharma","doi":"10.1145/2451436.2451439","DOIUrl":"https://doi.org/10.1145/2451436.2451439","url":null,"abstract":"In this paper we apply the aspect-oriented programming (AOP) paradigm to Pig Latin, a dataflow language for cloud computing, used primarily for the analysis of massive data sets. Missing from Pig Latin is support for cross-cutting data concerns. Data, like code, has cross-cutting concerns such as versioning, privacy, and reliability. AOP techniques can be used to weave metadata around Pig data. The metadata imbues the data with additional semantics that must be observed in the evaluation of Pig Latin programs. In this paper we show how to modify Pig Latin to process data woven together with metadata. The data weaver is a layer that maps a Pig Latin program to an augmented Pig Latin program using Pig Latin templates or patterns. We also show how to model additional levels of advice, i.e., meta-metadata.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"301 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":"134139617","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
A typed monadic embedding of aspects 方面的类型化一元嵌入
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451457
Nicolas Tabareau, Ismael Figueroa, É. Tanter
{"title":"A typed monadic embedding of aspects","authors":"Nicolas Tabareau, Ismael Figueroa, É. Tanter","doi":"10.1145/2451436.2451457","DOIUrl":"https://doi.org/10.1145/2451436.2451457","url":null,"abstract":"We describe a novel approach to embed pointcut/advice aspects in a typed functional programming language like Haskell. Aspects are first-class, can be deployed dynamically, and the pointcut language is extensible. Type soundness is guaranteed by exploiting the underlying type system, in particular phantom types and a new anti-unification type class. The use of monads brings type-based reasoning about effects for the first time in the pointcut/advice setting, thereby practically combining Open Modules and EffectiveAdvice, and enables modular extensions of the aspect language.","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":"131627232","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}
引用次数: 13
A graphical tool for observing state and behavioral changes at join points 用于观察连接点的状态和行为变化的图形化工具
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457405
Haihan Yin
{"title":"A graphical tool for observing state and behavioral changes at join points","authors":"Haihan Yin","doi":"10.1145/2457392.2457405","DOIUrl":"https://doi.org/10.1145/2457392.2457405","url":null,"abstract":"To comprehend programs or to fix a bug, programmers always mentally simulate the program execution by reading the source code. Aspect-oriented programming (AOP) increases this mental effort, because it can alter the state and the behavior of the base program at a join point to any extent by executing advices. Advices are implicitly invoked in the source code and their compositions at a join point may vary according to the runtime context. They can access and even change the context values of join points. Without appropriate tools, it is difficult to notice the effects of the implicitly executed advices. The goal of my work is to increase the comprehensibility of AO programs by using a graphical tool, that can succinctly visualize the state and behavioral changes at join points.","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":"130683602","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
Comparison of instrumentation techniques for dynamic program analysis on the Java virtual machine Java虚拟机上动态程序分析的检测技术比较
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457406
Aibek Sarimbekov
{"title":"Comparison of instrumentation techniques for dynamic program analysis on the Java virtual machine","authors":"Aibek Sarimbekov","doi":"10.1145/2457392.2457406","DOIUrl":"https://doi.org/10.1145/2457392.2457406","url":null,"abstract":"Dynamic Program Analysis (DPA) tools commonly rely on bytecode instrumentation which is done by means of low-level bytecode manipulation libraries. While providing a lot of flexibility and expressiveness to developers, using those libraries is usually time consuming, error-prone, and tedious. Approaches that leverage aspect-oriented programming (AOP) serve to reduce the development effort by providing higher abstraction layer for creating instrumentations. However, AOP-based tools have certain known limitations, high performance overhead being one of them. This work is intended to help DPA tool developers to choose the proper instrumentation framework that fully satisfies their needs.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"2 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":"129532239","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}
引用次数: 0
Modularity in the context of product line variability 在产品线可变性的背景下的模块化
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457394
K. Kang
{"title":"Modularity in the context of product line variability","authors":"K. Kang","doi":"10.1145/2457392.2457394","DOIUrl":"https://doi.org/10.1145/2457392.2457394","url":null,"abstract":"Product line software engineering (PLSE) has been recognized as a key software development paradigm for meeting diverse needs of the global market efficiently and effectively giving competitive advantages to IT industries and embedded systems developers. The PLSE paradigm has been changing the way software developers think about software development: from the single application view to the application family, i.e., product line, view. Several software engineering concepts and techniques have been developed to support the product line engineering, including commonality and variability analysis, product line architecture, variation points and variants, and variability management. However, modularity of software in the context of product line engineering has become even more important than it was in the context of single application development as we need to manage variability and also promote reuse across a family of related applications. We must take the variability into consideration when we design for modularity, bringing another dimension of complexity into software engineering.\u0000 In my talk, I will give an overview of the evolution of reuse concepts, introduce product line engineering, and then discuss various approaches to modularity in the context of product line variability. Pending research issues will also be discussed.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"76 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":"114726180","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
On exceptions, events and observer chains 异常、事件和观察者链
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451458
M. Bagherzadeh, Hridesh Rajan, Mohammad Ali Darvish Darab
{"title":"On exceptions, events and observer chains","authors":"M. Bagherzadeh, Hridesh Rajan, Mohammad Ali Darvish Darab","doi":"10.1145/2451436.2451458","DOIUrl":"https://doi.org/10.1145/2451436.2451458","url":null,"abstract":"Modular understanding of behaviors and flows of exceptions may help in their better use and handling. Such reasoning tasks about exceptions face unique challenges in event-based implicit invocation (II) languages that allow subjects to implicitly invoke observers, and run the observers in a chain. In this work, we illustrate these challenge in Ptolemy and propose Ptolemy-X that enables modular reasoning about behaviors and flows of exceptions for event announcement and handling. Ptolemy-X's exception-aware specification expressions and boundary exceptions limit the set of (un)checked exceptions of subjects and observers of an event. Exceptional postconditions specify the behaviors of these exceptions. Greybox specifications specify the flows of these exceptions among the observers in the chain. Ptolemy-X's type system and refinement rules enforce these specifications and thus enable its modular reasoning. We evaluate the utility of Ptolemy-X's exception flow reasoning by applying it to understand a set of aspect-oriented (AO) bug patterns. We also present Ptolemy-X's semantics including its sound static semantics.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"28 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":"121138714","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}
引用次数: 17
ENdoSnipe: an industrial application of AOP for diagnosing Java systems 一个用于诊断Java系统的AOP的工业应用
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457400
Yu Ochiai
{"title":"ENdoSnipe: an industrial application of AOP for diagnosing Java systems","authors":"Yu Ochiai","doi":"10.1145/2457392.2457400","DOIUrl":"https://doi.org/10.1145/2457392.2457400","url":null,"abstract":"In this session, we introduce an application of Javassist technology for commercial purposes. The Java troubleshooting tool \"ENdoSnipe\", developed by Acroquest Technology, realizes noninvasive diagnosis looking into the internal behavior of the applied Java system without any change of the source code. ENdoSnipe can obtain the detailed information of every targeted method such as the processing time, the method's starting time, arguments and so on.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"32 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":"131786582","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}
引用次数: 0
User-friendly event and aspect verification 用户友好的事件和方面验证
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2457392.2457407
Cynthia Disenfeld
{"title":"User-friendly event and aspect verification","authors":"Cynthia Disenfeld","doi":"10.1145/2457392.2457407","DOIUrl":"https://doi.org/10.1145/2457392.2457407","url":null,"abstract":"","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"78 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":"127112593","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}
引用次数: 0
Specification and verification of event detectors and responses 事件检测器和响应的规范和验证
Aspect-Oriented Software Development Pub Date : 2013-03-24 DOI: 10.1145/2451436.2451452
Cynthia Disenfeld, Shmuel Katz
{"title":"Specification and verification of event detectors and responses","authors":"Cynthia Disenfeld, Shmuel Katz","doi":"10.1145/2451436.2451452","DOIUrl":"https://doi.org/10.1145/2451436.2451452","url":null,"abstract":"Events and aspects that respond to them can and should be defined, specified, and verified in a modular way, as an aid in understanding and guaranteeing the correctness of each on its own. However, finding the appropriate interfaces and abstractions and expressing them precisely is not an easy task. Moreover, formally verifying large models is often unfeasible for existing model-checking tools.\u0000 We present an abstraction refinement scheme to verify aspects and to define and correct both aspect and event specifications. This allows considering smaller models and learning the needed event guarantees at each step. In addition, this technique can be used to find sound abstractions to check event reachability. Moreover, the technique is applied for detecting interference in systems where there are responses to complex events and aspects may be activated within the execution of other aspects.","PeriodicalId":353153,"journal":{"name":"Aspect-Oriented Software Development","volume":"6 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":"121901401","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}
引用次数: 13
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学术官方微信