2020 IEEE International Conference on Software Architecture (ICSA)最新文献

筛选
英文 中文
Model-Based Analysis of Microservice Resiliency Patterns 基于模型的微服务弹性模式分析
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00019
N. Mendonça, C. Aderaldo, J. Cámara, D. Garlan
{"title":"Model-Based Analysis of Microservice Resiliency Patterns","authors":"N. Mendonça, C. Aderaldo, J. Cámara, D. Garlan","doi":"10.1109/ICSA47634.2020.00019","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00019","url":null,"abstract":"Microservice application developers try to mitigate the impact of partial outages typically by implementing service-to-service interactions that use well-known resiliency patterns, such as Retry, Fail Fast, and Circuit Breaker. However, those resiliency patterns—as well as their available open-source implementations—are often documented informally, leaving it up to application developers to figure out when and how to use those patterns in the context of a particular microservice application. In this paper, we take a first step towards improving on this situation by introducing a model checking-based approach in which we use the PRISM probabilistic model checker to analyze the behavior of the Retry and Circuit Breaker resiliency patterns as continuous-time Markov chains (CTMC). This approach has enabled us to quantify the impact of applying each resiliency pattern on multiple quality attributes, as well as to determine how to best tune their parameters to deal with varying service availability conditions, in the context of a simple client-service interaction scenario.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127323261","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}
引用次数: 18
Strategies for Pattern-Based Detection of Architecturally-Relevant Software Vulnerabilities 基于模式的体系结构相关软件漏洞检测策略
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00017
Adriana Sejfia, N. Medvidović
{"title":"Strategies for Pattern-Based Detection of Architecturally-Relevant Software Vulnerabilities","authors":"Adriana Sejfia, N. Medvidović","doi":"10.1109/ICSA47634.2020.00017","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00017","url":null,"abstract":"Software vulnerabilities expose a system to security breaches. In this paper, we focus on vulnerabilities rooted in a system's architecture. Specifically, we describe our attempt at developing ways of depicting and detecting architectural vulnerabilities. Our guiding observation was that vulnerabilities that belong to the same category result in commonalities in the source code. This observation led us to hypothesize that it is possible to define patterns that can be used to detect similar vulnerabilities. To test this hypothesis, we collected a dataset of vulnerabilities reported for the Tomcat web server that spanned 20 different categories and 90 unique vulnerabilities. We represented each individual vulnerability with a Program Dependence Graph (PDG) and employed two approaches we believed to be especially promising based on the results they yielded when applied to similar problems. The first approach relied on graph-theory research to identify shared subgraphs in vulnerability PDGs. The second approach performed a multi-level hierarchical clustering on the PDGs to account for cases in which vulnerabilities of the same category exhibit more than one pattern. In the end, neither approach yielded successful results: the former was too computationally expensive to be practically applicable and had limited applicability, while the latter generated patterns that performed poorly when applied on real examples of vulnerabilities. Even though the two approaches were ultimately unsuccessful, we report on several important lessons that emerged from this endeavor.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129448382","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
Butterfly Space: An Architectural Approach for Investigating Performance Issues 蝴蝶空间:研究性能问题的架构方法
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00027
Yutong Zhao, Lu Xiao, Xiao Wang, Zhifei Chen, Bihuan Chen, Yang Liu
{"title":"Butterfly Space: An Architectural Approach for Investigating Performance Issues","authors":"Yutong Zhao, Lu Xiao, Xiao Wang, Zhifei Chen, Bihuan Chen, Yang Liu","doi":"10.1109/ICSA47634.2020.00027","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00027","url":null,"abstract":"Performance issues widely exist in modern software systems. Existing performance optimization approaches, such as dynamic profiling, usually fail to consider the impacts of architectural connections among methods on performance issues. This paper contributes an architectural approach, Butterfly Space modeling, to investigate performance issues. Each Butterfly Space is composed of 1) a seed method; 2) methods in the \"upper wing\" that call the seed directly or transitively; and 3) methods in the \"lower wing\" that are called by the seed, directly or transitively. The rationale is that the performance of the seed method impacts and is impacted by all the other methods in the space because of the call relationship. As such, developers can more efficiently investigate groups of connected performance improvement opportunities in Butterfly Spaces. We studied three real-world open source Java projects to evaluate such potential. Our findings are three-fold: 1) If the seed method of a Butterfly Space contains performance problems, up to 60% of the methods in the space also contain performance problems; 2) Butterfly Spaces can potentially help to non-trivially increase the precision/recall and reduce the costs in identifying performance improvement opportunities, compared to dynamic profiling; and 3) Visualizing dynamic profiling metrics with Butterfly Spaces simultaneously help to reveal two typical patterns, namely Expensive Callee and Inefficient Caller, that are responsible for performance problems and provide insights on where to improve next. We believe that Butterfly Space modeling has great potential for investigating performance issues.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"06 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129931853","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
Technical Architectures for Automotive Systems 汽车系统的技术架构
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00013
Alessio Bucaioni, Patrizio Pelliccione
{"title":"Technical Architectures for Automotive Systems","authors":"Alessio Bucaioni, Patrizio Pelliccione","doi":"10.1109/ICSA47634.2020.00013","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00013","url":null,"abstract":"Driven by software, the automotive domain is living an unprecedented revolution with original equipment manufacturers increasingly becoming software companies. Vehicle electrical and electronic software architectures are considered means for addressing several concerns, which span from safety to security, through electrification and autonomy. Such architectures serve also as pivotal means for enabling communication between an original equipment manufacturer and suppliers (tier 1 and 2 companies) within the automotive ecosystem. In the automotive domain, software architectures include (at least) three different views of descending abstraction: functional, logical, and technical. In this work, we focus on the technical view with a two-folded contribution. On the one hand, we propose a feature model of technical architectures for automotive systems. On the other hand, starting from the elicited feature model, we present three technical reference architectures able to guide three generations of automotive systems. We evaluate the contribution of this work by means of a focus group validation session and short semi-structured interviews with automotive experts and practitioners.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132000857","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}
引用次数: 16
Automated Microservice Identification in Legacy Systems with Functional and Non-Functional Metrics 使用功能和非功能度量的遗留系统中的自动微服务识别
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00021
Yukun Zhang, Bo Liu, Liyun Dai, Kang Chen, Xuelian Cao
{"title":"Automated Microservice Identification in Legacy Systems with Functional and Non-Functional Metrics","authors":"Yukun Zhang, Bo Liu, Liyun Dai, Kang Chen, Xuelian Cao","doi":"10.1109/ICSA47634.2020.00021","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00021","url":null,"abstract":"Since microservice has merged as a promising architectural style with advantages in maintainability, scalability, evolvability, etc., increasing companies choose to restructure their legacy monolithic software systems as the microservice architecture. However, it is quite a challenge to properly partitioning the systems into suitable parts as microservices. Most approaches perform microservices identification from a function-splitting perspective and with sufficient legacy software artifacts. That may be not realistic in industrial practices and possibly results in generating unexpected microservices. To address this, we proposed an automated microservice identification (AMI) approach that extracts microservices from the execution and performance logs without providing documentation, models or source codes, while taking both functional and non-functional metrics into considerations. Our work firstly collects logs from the executable legacy system. Then, controller objects (COs) are identified as the key objects to converge strongly related subordinate objects (SOs). Subsequently, the relation between each pair of CO and SO is evaluated by a relation matrix from both the functional and non-functional perspective. We ultimately cluster classes(objects) into the microservices by optimizing the multi-objective of high-cohesion-low-coupling and load balance. The usefulness of the proposed approach is illustrated by applying to a case study.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133734019","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
Message from the General Chair and PC Chairs of ICSA 2020 ICSA 2020总主席和PC主席的致辞
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/icsa47634.2020.00005
{"title":"Message from the General Chair and PC Chairs of ICSA 2020","authors":"","doi":"10.1109/icsa47634.2020.00005","DOIUrl":"https://doi.org/10.1109/icsa47634.2020.00005","url":null,"abstract":"","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125552248","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
Enforcing Architectural Security Decisions 执行架构安全决策
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00012
Stefanie Jasser
{"title":"Enforcing Architectural Security Decisions","authors":"Stefanie Jasser","doi":"10.1109/ICSA47634.2020.00012","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00012","url":null,"abstract":"Software architects should specify security measures for a software system on an architectural level. However, the implementation often diverges from this intended architecture including its security measures. This may lead to severe vulnerabilities that have a wide impact on the system and are hard to fix afterwards. In this paper, we propose an approach for checking the implementation’s conformance with the defined security measures using architectural security rules: We extend a controlled natural language approach to formalize these rules and use dynamic analysis techniques to extract information on the actual system behavior for the conformance check. We evaluate our approach by an industrial case study to show the applicability and flexibility of our conformance checking approach.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133932492","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}
引用次数: 7
Anatomy, Concept, and Design Space of Blockchain Networks 区块链网络的解剖、概念和设计空间
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00020
N. Tran, M. Babar
{"title":"Anatomy, Concept, and Design Space of Blockchain Networks","authors":"N. Tran, M. Babar","doi":"10.1109/ICSA47634.2020.00020","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00020","url":null,"abstract":"Blockchain technologies have been increasingly adopted by enterprises to increase operational efficiency and enable new business models. These enterprise blockchain applications generally run on dedicated blockchain networks due to regulations and security requirements. The design process of these networks involves many decisions and trade-offs that impact security, governance, and performance of applications that run on them. The challenge is further exacerbated by the lack of a common architecture and concept map to communicate about blockchain networks, as blockchain technologies tend to use different concepts and architecture. This paper presents a concept map, an anatomy and the principal dimensions of the design space of blockchain networks. We applied the proposed design space in a case study about designing and deploying a blockchain network for an ad-hoc IoT infrastructure. We found that the design space brought structure to the design process and the analysis of design alternatives. The presented concept map, anatomy and design space are intended to help improve the blockchain network design practice and lay a foundation for future research on the design process and deployment automation of blockchain networks.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125173504","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}
引用次数: 5
From Monolithic Architecture Style to Microservice one Based on a Semi-Automatic Approach 从单片架构风格到基于半自动方法的微服务风格
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00023
Anfel Selmadji, A. Seriai, Hinde-Lilia Bouziane, Rahina Oumarou Mahamane, Pascal Zaragoza, C. Dony
{"title":"From Monolithic Architecture Style to Microservice one Based on a Semi-Automatic Approach","authors":"Anfel Selmadji, A. Seriai, Hinde-Lilia Bouziane, Rahina Oumarou Mahamane, Pascal Zaragoza, C. Dony","doi":"10.1109/ICSA47634.2020.00023","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00023","url":null,"abstract":"Due to its tremendous advantages, microservice architectural style has become an essential element for the development of applications deployed on the cloud and for those adopting the DevOps practices. Nevertheless, while microservices can be used to develop new applications, there are monolithic ones, that are not well adapted neither to the cloud nor to DevOps. Migrating these applications towards microservices appears as a solution to adapt them to both. In this context, we propose an approach aiming to achieve this objective by focusing on the step of microservices identification. The proposed identification, in this paper, is based on an analysis of the relationships between source code elements, their relationships with the persistent data manipulated in this code and finally the knowledge, often partial, of the architect concerning the system to migrate. A function that measures the quality of a microservice based on its ability to provide consistent service and its interdependence with others microservice in the resulting architecture was defined. Moreover, the architect recommendations are used, when available, to guide the identification process. The conducted experiment shows the relevance of the obtained microservices by our approach.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114534238","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}
引用次数: 20
DesignDiff: Continuously Modeling Software Design Difference from Code Revisions DesignDiff:从代码修订中持续建模软件设计差异
2020 IEEE International Conference on Software Architecture (ICSA) Pub Date : 2020-03-01 DOI: 10.1109/ICSA47634.2020.00025
Xiao Wang, Lu Xiao, Kaifeng Huang, Bihuan Chen, Yutong Zhao, Y. Liu
{"title":"DesignDiff: Continuously Modeling Software Design Difference from Code Revisions","authors":"Xiao Wang, Lu Xiao, Kaifeng Huang, Bihuan Chen, Yutong Zhao, Y. Liu","doi":"10.1109/ICSA47634.2020.00025","DOIUrl":"https://doi.org/10.1109/ICSA47634.2020.00025","url":null,"abstract":"The design structure of a system continuously evolves as the consequence of fast-paced code revisions. Agile techniques, such as continuous testing, ensures the function goals of a system with every code revision. However, there lacks an efficient approach that can continuously model the design difference resulting from every single code revision to facilitate comprehension and ensure the design quality. This paper contributes a novel design modeling approach, called Design Differencing (DESIGNDIFF), that models and visualizes the highlevel design differences resulting from every code revision. This paper defines a complete and general set of 17 design change operators to capture the design difference from any code revision. We evaluated the potential of DESIGNDIFF in three aspects. First, a user study of 10 developers indicated that DESIGNDIFF can help practitioners to faster and better understand high-level design differences from real-life software commits. Second, DESIGNDIFF analyzed 14,832 real-life commits in five real-life projects: finding 4,189 commits altered the software design, 855 commits introduced and 337 commits eliminated design flaws. The latency between the flaw introduction and elimination is on average 2 months to 2 years! With an affordable performance overhead, DESIGNDIFF has great potential to benefit practitioners in more applications.","PeriodicalId":136997,"journal":{"name":"2020 IEEE International Conference on Software Architecture (ICSA)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134629260","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学术文献互助群
群 号:604180095
Book学术官方微信