2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)最新文献

筛选
英文 中文
Modular Specification of Architectural Constraints 架构约束的模块化规范
Sândalo Bessa, M. T. Valente, Ricardo Terra
{"title":"Modular Specification of Architectural Constraints","authors":"Sândalo Bessa, M. T. Valente, Ricardo Terra","doi":"10.1109/SBCARS.2016.23","DOIUrl":"https://doi.org/10.1109/SBCARS.2016.23","url":null,"abstract":"Due to the abstract nature of software architecture concepts, ensuring the correct implementation of architectural decisions is not a trivial task. Divergences between the planned architecture and source code may occur in the early stages of the software development, which denotes a phenomenon known as software architectural erosion. Architectural Conformance Checking techniques have been proposed to tackle the problem of divergences between the planned architecture and source code. Among such techniques, we can note the DCL language (Dependency Constraint Language), which is a domain-specific language that has interesting results in architectural conformance contexts. However, the current version of DCL has some limitations, such as lack of modularity and low degree of reuse, which may prevent its adoption in real software development scenarios. In this master dissertation, we extend DCL with a reusable, modular, and hierarchical specification. We evaluate the extended DCL-named DCL 2.0 by us-in a real-world system used by public State Government of Minas Gerais, Brazil. As main result, we were able to detect 771 architectural violations where 74% of them could only be detected due to the new violations types proposed in DCL 2.0.","PeriodicalId":122920,"journal":{"name":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127503123","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
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":"https://doi.org/10.1109/SBCARS.2016.19","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.0,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122961379","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}
引用次数: 8
Identifying Code Smells with Collaborative Practices: A Controlled Experiment 用协作实践识别代码气味:一个受控实验
R. Oliveira, Bernardo Estácio, Alessandro F. Garcia, S. Marczak, R. Prikladnicki, Marcos Kalinowski, C. Lucena
{"title":"Identifying Code Smells with Collaborative Practices: A Controlled Experiment","authors":"R. Oliveira, Bernardo Estácio, Alessandro F. Garcia, S. Marczak, R. Prikladnicki, Marcos Kalinowski, C. Lucena","doi":"10.1109/SBCARS.2016.18","DOIUrl":"https://doi.org/10.1109/SBCARS.2016.18","url":null,"abstract":"Code smells are often considered as key indicators of software quality degradation. If code smells are not systematically removed from a program, its continuous degradation may lead to either major maintenance effort or the complete redesign of the system. For several reasons, software developers introduce smells in their code as soon as they start to learn programming. If novice developers are ought to become either proficient programmers or skilled code reviewers, they should be early prepared to effectively identify code smells in existing programs. However, effective identification of code smells is often not a non-trivial task in particular to a novice developer working in isolation. Thus, the use of collaborative practices may have the potential to support developers in improving their effectiveness on this task at their early stages of their careers. These practices offer the opportunity for two or more developers analyzing the source code together and collaboratively reason about potential smells prevailing on it. Pair Programming (PP) and Coding Dojo Randori (CDR) are two increasingly adopted practices for improving the effectiveness of developers with limited or no knowledge in software engineering tasks, including code review tasks. However, there is no broad understanding about the impact of these collaborative practices on the effectiveness of code smell identification. This paper presents a controlled experiment involving 28 novice developers, aimed at assessing the effectiveness of collaborative practices in the identification of code smells. We compared PP and CDR with solo programming in order to better distinguish their impact on the effective identification of code smells. Our study is also the first in the literature to observe how novice developers work individually and together to identify smells. Our results suggest that collaborative practices contribute to the effectiveness on the identification of a wide range of code smells. Our findings can also be used in practice to guide educators, researchers or teams on improving detection and training on code smell identification.","PeriodicalId":122920,"journal":{"name":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131761197","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}
引用次数: 15
On the Implementation of Dynamic Software Product Lines: A Preliminary Study 动态软件产品线实现的初步研究
Michelle Larissa Luciano Carvalho, G. Gomes, M. G. Silva, I. Machado, E. Almeida
{"title":"On the Implementation of Dynamic Software Product Lines: A Preliminary Study","authors":"Michelle Larissa Luciano Carvalho, G. Gomes, M. G. Silva, I. Machado, E. Almeida","doi":"10.1109/SBCARS.2016.13","DOIUrl":"https://doi.org/10.1109/SBCARS.2016.13","url":null,"abstract":"Dynamic Software Product Lines (DSPL) engineering has emerged as a promising strategy to develop Software Product Lines (SPL) that incorporate reusable and dynamically reconfigurable artifacts. The central purpose of DSPL is to handle adaptability at runtime through variability management, as well as to maximize the reuse of components. Emerging domains such as the mobile applications and software-intensive embedded systems require changes and extensions to the design in terms of both functionality and adaptation capabilities. DSPL should also deal with the unavoidable changes, which reflect both user needs and execution environments. However, the evolution capability in DSPL so far has not been investigated in depth. In this paper, were port on an exploratory study aimed at evaluating the object oriented and aspect-oriented solutions on DSPL evolutionary scenarios. In this empirical evaluation, the aspect-oriented solution yielded better results in terms of measurements such as Weighted Operations per Component (WOC), Lines Of Code (LOC), Lack of Cohesion Over Operations (LCOO), Coupling between components (CBC), and Response For a Class (RFC). The use of aspects indicates that it provides assets with lower complexity, lower coupling, and higher cohesion.","PeriodicalId":122920,"journal":{"name":"2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS)","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121873080","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
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学术文献互助群
群 号:604180095
Book学术官方微信