Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse最新文献

筛选
英文 中文
Connecting Non-Functional Requirements to Open Source Ecosystems Health 将非功能需求与开源生态系统的健康联系起来
Simone da Silva Amorim, J. McGregor, E. Almeida, C. Chavez
{"title":"Connecting Non-Functional Requirements to Open Source Ecosystems Health","authors":"Simone da Silva Amorim, J. McGregor, E. Almeida, C. Chavez","doi":"10.1145/3559712.3559719","DOIUrl":"https://doi.org/10.1145/3559712.3559719","url":null,"abstract":"One efficient way to perceive the effects of design decisions is by analyzing and evaluating Non-Functional Requirements (NFRs). A design decison can contribute positively or negatively toward specific NFRs. In their turn, NFRs describe how the software operates, representing essential quality characteristics of the software systems. In addition, the typical way of perceiving the “quality” of a software ecosystem is through the concept of ecosystem health and its health indicators. Considering the descriptive nature of NFRs representing a quality characteristic of the system, they could be a feasible way to know ecosystem health. Through their connection with the health indicators, it is possible to sketch paths to understand the influence of the NFRs on the health indicators and realize how the ecosystem health perceives the design decisions. This study aims to understand and map influences from NFRs to health indicators based on evidence found in KDE, a real-world ecosystem. We conducted mixed-methods research, including a survey with ecosystem experts and an adapted practitioner-evidence framework. Findings present a high-level descriptive mapping with connections between NFRs and health indicators, besides explaining evidence found in the KDE ecosystem.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"89 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127377802","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
OfflineManager: A Lightweight Approach for Managing Offline Status in Mobile Applications OfflineManager:一种在移动应用中管理脱机状态的轻量级方法
Sidarta Fernandes, Matheus G. Lucena, Luis P. Pegurin, Juliano Z. Blanco, D. Lucrédio
{"title":"OfflineManager: A Lightweight Approach for Managing Offline Status in Mobile Applications","authors":"Sidarta Fernandes, Matheus G. Lucena, Luis P. Pegurin, Juliano Z. Blanco, D. Lucrédio","doi":"10.1145/3559712.3559717","DOIUrl":"https://doi.org/10.1145/3559712.3559717","url":null,"abstract":"Most current mobile applications work with a back-end server over the Internet. But in many occasions network connectivity is not available and a proper offline treatment must be provided. This question can be solved in many ways, such as storing requests for later attempts, caching data and full client-server synchronization, among others. There are solutions both in the industry and academia, however two challenges remain: to solve the problem in a way that covers many software layers, including interface and usability issues; and to support different kinds of treatment to the absence of connection. This paper presents a mobile library built to help developers provide offline functionality on their apps, while trying to solving these two challenges. To do that, the library, called OfflineManager, offers different ways to treat each call to the back-end, both in the case of missing Internet connection and unavailable server. It also offers feedback messages, and a point of interaction via pop-up messages. To evaluate the library, four evaluation methods were used, including experts, developers, users and well-known heuristics. The collected evidence indicates that the library achieves its goal to overcome the two presented challenges, and also uncovers some problems and points for improvement.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"44 7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125686923","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
On the Nature of Duplicate Pull Requests: An Empirical Study Using Association Rules 重复拉请求的本质:基于关联规则的实证研究
Cleyciane Lima, D. Soares
{"title":"On the Nature of Duplicate Pull Requests: An Empirical Study Using Association Rules","authors":"Cleyciane Lima, D. Soares","doi":"10.1145/3559712.3559722","DOIUrl":"https://doi.org/10.1145/3559712.3559722","url":null,"abstract":"In open source communities, developers submit pull requests, either to add features, fix bugs or make any modifications to software artifacts, which can be accepted or rejected after review by a core team member of the project. Considering the large-scale growth of collaborative software development in recent years, several challenges have arisen that have become barriers for developers, such as the occurrence of duplicate pull requests. Some works applied techniques to detect duplicate pull requests and performed a study with mixed approach to analyze the extent to which duplicate pull requests affect development in open source communities. However, these studies do not address descriptively, the relationships that exist between the occurrence of duplicate pull requests and other characteristics, such as lifetime and number of commits performed, that are present in these contributions. In this paper, the data mining technique called association rules is used to perform a set of studies, from 49.762 pull requests over 6 OSS projects hosted on GitHub, revealing new knowledge about the nature of duplicate pull requests. The results indicate that some structural characteristics, the developer inexperience and the requester profile individually or jointly, are present in different intensities in duplicate pull requests. Identifying these aspects can support software communities in understanding the nature of duplicate pull requests.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115433654","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
The Mysterio framework for developing cooperative Multi-UAV Systems 用于开发协作式多无人机系统的神秘框架
Antônio Sávio Nascimento Cavalcante, B. D. França
{"title":"The Mysterio framework for developing cooperative Multi-UAV Systems","authors":"Antônio Sávio Nascimento Cavalcante, B. D. França","doi":"10.1145/3559712.3559718","DOIUrl":"https://doi.org/10.1145/3559712.3559718","url":null,"abstract":"Over the years, UAVs (also known as drones) have been growing in studies and applications to solve diverse problems. Due to the complexity of these problems, dealing with just one UAV may not be enough, but using several UAVs together to work cooperatively increases its capacities, thus boosting solutions. However, developing cooperative Multi-UAV systems is not trivial, and reuse support is usually limited to low-level implementation. This work presents a framework for Multi-UAVs, called Mysterio, which provides an underlying software architecture with essential Multi-UAV components, enabling the reuse of design and code so that engineers can instantiate it to carry out specific missions by making UAVs work in cooperation. We also present four instances of the framework to evaluate Mysterio’s effectiveness in the face of the developed scenarios. Finally, we discuss the framework’s potential to provide and support reuse code to develop Cooperative Multi-UAVs systems for different application scenarios.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"103 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133525323","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
Using MDA to Transform Business Processes from Analysis Classes 使用MDA从分析类转换业务流程
Habner Fabrício Boesing, S. N. Matos, Vinícius Camargo Andrade, Ezequiel Gueiber
{"title":"Using MDA to Transform Business Processes from Analysis Classes","authors":"Habner Fabrício Boesing, S. N. Matos, Vinícius Camargo Andrade, Ezequiel Gueiber","doi":"10.1145/3559712.3559714","DOIUrl":"https://doi.org/10.1145/3559712.3559714","url":null,"abstract":"This paper proposes a automated transformation method based on the MDA that performs the transformation from the business process diagram (BPMN) to UML classes diagram. This transformation is accomplished through the relationship between the elements of the business process diagram and the class diagram, which generates the transformation rules which are implemented in the Atlas Transformation Language (ATL). This method is intended to standardize the transformation process and decrease the loss of information between the models during the transformation process. Applying the method in three proofs of concept demonstrated that performing a transformation of BPMN to a class diagram is possible.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"81 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128142429","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
A Field Study on Reference Architectural Decisions for Developing a UML-based Software Product Line Tool 开发基于uml的软件产品线工具的参考体系结构决策的实地研究
L. F. Silva, E. Oliveirajr, R. Santos
{"title":"A Field Study on Reference Architectural Decisions for Developing a UML-based Software Product Line Tool","authors":"L. F. Silva, E. Oliveirajr, R. Santos","doi":"10.1145/3559712.3559713","DOIUrl":"https://doi.org/10.1145/3559712.3559713","url":null,"abstract":"Variability modeling in Software Product Lines (SPL) encompasses a set of activities, such as domain analysis, identification of requirements, implementation of variability, variant management, and generation of products. In this context, the existing literature does not present any tools with native support for UML-based SPLs. To deal with the lack of practical solutions, an alternative to variability modeling is to handle XMI files for general-purpose UML tools. However, it requires significant effort, is time-consuming and error-prone, and does not provide users control over data for the SPL life cycle activities. To cope with this scenario, we developed SMartyModeling, an environment to allow SPL-related variability modeling on requirements, features, and UML models, thus providing visualization techniques to SPL/variability information, traceability, and configuration of products. To evolve SMartyModeling, we previously evaluated it throughout two studies: a comparative experiment between SMartyModeling and a general-purpose UML modeling tool, and a survey-based qualitative study on its usability. Results made it possible to identify benefits, limitations, and corrections on the main problems reported by the participants. More specifically in this paper, we present results of a field study focused on analyzing architectural decisions taken during the SMartyModeling instantiation process from a variability tools reference architecture (RA). We took into consideration the opinion of 13 experts in SPL and RA. Experts considered the architectural decisions and the solutions proposed adequate, and the architecture clear and objective. In addition, the analysis of the experts quotes allowed us to identify improvements in the instantiation process, as well as in the instantiated architecture. For example, inclusion of notations to ease the understanding of the instantiation process and the underlying decisions, clear representation of the MVC Design Pattern, and inclusion of other elements to the source RA.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"120 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116049224","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
DocStone: A Blockchain-based Architecture for a Customizable Document Registration Service DocStone:基于区块链的可定制文件注册服务架构
Pamella Soares, Raphael Saraiva, Iago Fernandes, J. Souza, Ricardo Loiola
{"title":"DocStone: A Blockchain-based Architecture for a Customizable Document Registration Service","authors":"Pamella Soares, Raphael Saraiva, Iago Fernandes, J. Souza, Ricardo Loiola","doi":"10.1145/3559712.3559721","DOIUrl":"https://doi.org/10.1145/3559712.3559721","url":null,"abstract":"Document management ensures the proper production, storage, and use of documents in many organizations. In this sense, digitization has become a relevant factor for the improvement of processes in several aspects of document management. In this context, blockchain is relevant due to its ability to meet the requirements of any document management solutions. However, there are still difficulties in the efficiency of blockchain infrastructure implementation. On the other hand, existing solutions present proposals for specific contexts and strict business rules. Therefore, this study proposes an architecture designed to provide and facilitate the integration of blockchain-based document registration and verification for use by third-party applications from different domains. Furthermore, this solution allows the configuration of parameters in creating customizable document templates and selecting blockchains. To evaluate the proposed solution, we performed performance tests for different scenarios and blockchains, demonstrating differences between public and private blockchains when performing read and write operations.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128426432","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
TechSpaces: Identifying and Clustering Popular Programming Technologies 技术空间:识别和聚集流行的编程技术
G. Miranda, João Eduardo Montandon, M. T. Valente
{"title":"TechSpaces: Identifying and Clustering Popular Programming Technologies","authors":"G. Miranda, João Eduardo Montandon, M. T. Valente","doi":"10.1145/3559712.3559715","DOIUrl":"https://doi.org/10.1145/3559712.3559715","url":null,"abstract":"Background: Software ecosystems are becoming increasingly complex and large. Therefore, discovering and selecting the right libraries and frameworks for use in a project is becoming a challenging task. Existing commercial services that support this task rely on annual surveys with developers to provide a landscape of the most popular technologies in a given ecosystem. Aims: In this paper, we outline a semi-automated technique for this purpose, which we call TechSpaces. Method: Our proposal relies on community detection and well-known NLP algorithms to automatically extract groups of related technologies, using as primary data source tags associated with Stack Overflow questions. Results: We describe the first results of using our technique to identify popular and inter-related technologies in five programming language ecosystems. Evaluation: We compare our technique against two other tools in the literature. Conclusions: The proposed technique shows potential to assist IT professionals in taking technical decisions supported by crowd knowledge. However, further improvements are needed to make it a viable choice. For instance, we envision the usage of other data sources (e.g., GitHub and Wikipedia) can contribute to improve the accuracy and expressiveness of our graph representations.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123410573","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
Analysis of Microservice Evolution using Cohesion Metrics 使用内聚度量分析微服务演化
Mateus Gabi Moreira, B. B. N. França
{"title":"Analysis of Microservice Evolution using Cohesion Metrics","authors":"Mateus Gabi Moreira, B. B. N. França","doi":"10.1145/3559712.3559716","DOIUrl":"https://doi.org/10.1145/3559712.3559716","url":null,"abstract":"The adoption of Microservices Architecture (MSA) has increased in recent years due to several claimed benefits, such as reducing deployment complexity, supporting technology diversity, and better scalability. However, MSA is not free from maintainability issues, especially the lack of cohesion, in which microservices possibly concentrate or miss responsibilities. Also, the lack of empirically-validated cohesion metrics for MSA makes the quantitative assessment even more challenging. In this paper, we empirically explore the practical applicability of service-level cohesion metrics in an open-source MSA application context. The qualitative results show the possibility of assessing MSA cohesion using these service-level metrics, the feasibility of tracking software evolution, and an indication of possible technical debts along the way.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115016859","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
How do Trivial Refactorings Affect Classification Prediction Models? 琐碎的重构如何影响分类预测模型?
Darwin Pinheiro, C. Bezerra, Anderson G. Uchôa
{"title":"How do Trivial Refactorings Affect Classification Prediction Models?","authors":"Darwin Pinheiro, C. Bezerra, Anderson G. Uchôa","doi":"10.1145/3559712.3559720","DOIUrl":"https://doi.org/10.1145/3559712.3559720","url":null,"abstract":"Refactoring is defined as a transformation that changes the internal structure of the source code without changing the external behavior. Keeping the external behavior means that after applying the refactoring activity, the software must produce the same output as before the activity. The refactoring activity can bring several benefits, such as: removing code with low structural quality, avoiding or reducing technical debt, improving code maintainability, reuse or readability. In this way, the benefits extend to internal and external quality attributes. The literature on software refactoring suggests carrying out studies that invest in improving automated solutions for detecting and correcting refactoring. Furthermore, few studies investigate the influence that a less complex type of refactoring can have on predicting more complex refactorings. This paper investigates how less complex (trivial) refactorings affect the prediction of more complex (non-trivial) refactorings. To do this, we classify refactorings based on their triviality, extract metrics from the code, contextualize the data and train machine learning algorithms to investigate the effect caused. Our results suggest that: (i) machine learning with tree-based models (Random Forest and Decision Tree) performed very well when trained with code metrics to detect refactorings; (ii) separating trivial from non-trivial refactorings into different classes resulted in a more efficient model, indicative of improving the accuracy of automated solutions based on machine learning; and, (iii) using balancing techniques that increase or decrease samples randomly is not the best strategy to improve datasets composed of code metrics.","PeriodicalId":119656,"journal":{"name":"Proceedings of the 16th Brazilian Symposium on Software Components, Architectures, and Reuse","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127409898","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
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学术官方微信