Towards the Characterization of Monitor Smells in Adaptive Systems

M. A. Serikawa, A. D. S. Landi, B. R. Siqueira, Renato S. Costa, F. Ferrari, Ricardo Menotti, V. V. D. Camargo
{"title":"Towards the Characterization of Monitor Smells in Adaptive Systems","authors":"M. A. Serikawa, A. D. S. Landi, B. R. Siqueira, Renato S. Costa, F. Ferrari, Ricardo Menotti, V. V. D. Camargo","doi":"10.1109/SBCARS.2016.19","DOIUrl":null,"url":null,"abstract":"Adaptive Systems (ASs) can adapt themselves to achanging environment or new user needs. Monitors are essential in AS, being responsible for collecting and processing data from environment. There exist different kinds of monitors with distinct characteristics. Based on a literature review, we have noticed that Monitors are usually designed and implemented in an inadequate way: i) making them obscure in the source-code, ii) compelling all of them to have the same polling rate and also iii) predetermining the execution order among them. This leads to maintenance, evolution and performance problems. Besides, based on our observations, this erroneous way monitors are implemented follows a pattern and it is a recurrent practice. Therefore, we believe it can be classified as Monitor Smells of Adaptive Systems. In this paper we present two architectural smells we have identified: the Obscure Monitor and the Oppressed Monitors. The first smell occurs when the monitors are not evident in the source-code. The second smell occurs when monitors are compelled to have the same poling rate and an immutable execution order at runtime. The presence of these smells compromises the reusability, evolvability and maintainability. We have also conducted an exploratory study by comparing the impact of maintenance tasks in the original version of an AS called PhoneAdapter with a refactored version, in which the smells were removed. The results indicate the maintenance is facilitated in the version without the smells.","PeriodicalId":122920,"journal":{"name":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","volume":"25 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBCARS.2016.19","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8

Abstract

Adaptive Systems (ASs) can adapt themselves to achanging environment or new user needs. Monitors are essential in AS, being responsible for collecting and processing data from environment. There exist different kinds of monitors with distinct characteristics. Based on a literature review, we have noticed that Monitors are usually designed and implemented in an inadequate way: i) making them obscure in the source-code, ii) compelling all of them to have the same polling rate and also iii) predetermining the execution order among them. This leads to maintenance, evolution and performance problems. Besides, based on our observations, this erroneous way monitors are implemented follows a pattern and it is a recurrent practice. Therefore, we believe it can be classified as Monitor Smells of Adaptive Systems. In this paper we present two architectural smells we have identified: the Obscure Monitor and the Oppressed Monitors. The first smell occurs when the monitors are not evident in the source-code. The second smell occurs when monitors are compelled to have the same poling rate and an immutable execution order at runtime. The presence of these smells compromises the reusability, evolvability and maintainability. We have also conducted an exploratory study by comparing the impact of maintenance tasks in the original version of an AS called PhoneAdapter with a refactored version, in which the smells were removed. The results indicate the maintenance is facilitated in the version without the smells.
自适应系统中监测气味的表征研究
自适应系统(as)可以自我调整以适应不断变化的环境或新的用户需求。监视器在AS中是必不可少的,它负责从环境中收集和处理数据。存在着不同类型的监视器,各具特点。根据文献回顾,我们注意到监视器通常以一种不适当的方式设计和实现:i)使它们在源代码中变得模糊,ii)迫使所有它们具有相同的轮询速率,以及iii)预先确定它们之间的执行顺序。这会导致维护、发展和性能问题。此外,根据我们的观察,这种错误的监视器实现方式遵循一种模式,并且是一种反复出现的做法。因此,我们认为它可以被归类为自适应系统的气味监测。在本文中,我们提出了我们已经确定的两种建筑气味:模糊的监视器和被压迫的监视器。当监视器在源代码中不明显时,就会出现第一种气味。当监视器在运行时被迫具有相同的轮询速率和不可变的执行顺序时,就会出现第二种情况。这些气味的存在损害了可重用性、可发展性和可维护性。我们还进行了一项探索性研究,比较了在名为PhoneAdapter的AS的原始版本中维护任务的影响,以及在删除了气味的重构版本中维护任务的影响。结果表明,在没有气味的版本中,维修方便。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信