首页 > 最新文献

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

英文 中文
Towards Micro Service Architecture Recovery: An Empirical Study 面向微服务架构恢复:一个实证研究
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00014
Nuha Alshuqayran, Nour Ali, R. Evans
Micro service architectures are rapidly establishing themselves in the software industry as a more efficient and effective substitute for monolithic applications. In a micro service architecture, the application is broken down into many small elements called micro services. These are managed in a distributed way and typically involve several development teams. In such an environment, an architectural model can get lost along the way, making it difficult to perform many downstream software engineering tasks, such as migration, audit, integration or impact analysis. To address this problem, we are developing support for Micro Service Architecture Recovery (MiSAR) using a Model Driven Engineering approach. In this paper, we describe an empirical study which aims to identify the core elements of our approach, by undertaking manual analysis on 8 micro service-based open source projects. From this analysis, we define a metamodel for micro service-based architectures and a set of mapping rules which map between the software and the metamodel. The resulting metamodel and mapping rules provide a solid foundation for any micro service architecture recovery approach and hence are a key first step towards managing the architectural integrity of micro service-based applications.
微服务架构正在软件行业中迅速确立自己的地位,成为整体应用程序的更高效、更有效的替代品。在微服务体系结构中,应用程序被分解为许多称为微服务的小元素。它们以分布式的方式进行管理,通常涉及多个开发团队。在这样的环境中,体系结构模型可能会丢失,从而使执行许多下游软件工程任务变得困难,例如迁移、审计、集成或影响分析。为了解决这个问题,我们正在使用模型驱动工程方法开发对微服务架构恢复(MiSAR)的支持。在本文中,我们描述了一项实证研究,通过对8个基于微服务的开源项目进行手工分析,旨在确定我们方法的核心要素。根据这一分析,我们为基于微服务的体系结构定义了一个元模型,并为软件和元模型之间的映射定义了一组映射规则。由此产生的元模型和映射规则为任何微服务体系结构恢复方法提供了坚实的基础,因此是管理基于微服务的应用程序的体系结构完整性的关键的第一步。
{"title":"Towards Micro Service Architecture Recovery: An Empirical Study","authors":"Nuha Alshuqayran, Nour Ali, R. Evans","doi":"10.1109/ICSA.2018.00014","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00014","url":null,"abstract":"Micro service architectures are rapidly establishing themselves in the software industry as a more efficient and effective substitute for monolithic applications. In a micro service architecture, the application is broken down into many small elements called micro services. These are managed in a distributed way and typically involve several development teams. In such an environment, an architectural model can get lost along the way, making it difficult to perform many downstream software engineering tasks, such as migration, audit, integration or impact analysis. To address this problem, we are developing support for Micro Service Architecture Recovery (MiSAR) using a Model Driven Engineering approach. In this paper, we describe an empirical study which aims to identify the core elements of our approach, by undertaking manual analysis on 8 micro service-based open source projects. From this analysis, we define a metamodel for micro service-based architectures and a set of mapping rules which map between the software and the metamodel. The resulting metamodel and mapping rules provide a solid foundation for any micro service architecture recovery approach and hence are a key first step towards managing the architectural integrity of micro service-based applications.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122264270","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}
引用次数: 37
An Empirical Study of Architectural Decay in Open-Source Software 开源软件架构衰减的实证研究
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00027
D. Le, Daniel Link, Arman Shahbazian, N. Medvidović
Architecture is the set of principal design decisions about a software system. In practice, new architectural decisions are added and existing ones reversed or modified throughout a system’s lifetime. Frequently, these decisions deviate from the architect's well-considered intent, and software systems regularly exhibit increased architectural decay as they evolve. The manifestations of such ill-considered design decisions are seen as “architectural smells”. To date, there has been no in-depth study of the characteristics or trends involving this phenomenon. Instead, when referring to architectural smells and their negative effects, both researchers and practitioners had to rely on folklore and their personal, inherently limited experience. In this paper, we report on the systematic step we have taken in investigating the nature and impact of architectural smells. We have selected a set of representative architectural smells from literature and analyzed their instances in 421 versions from 8 open-source software systems. We have (1) developed algorithms to automatically detect instances of multiple architectural smell types, and (2) analyzed relationships between the detected smells and the lists of issues reported in the systems’ respective issue trackers. Our study shows that architectural smells have tangible negative consequences in the form of implementation issues as well as code commits requiring increased maintenance effort throughout a system’s lifetime.
体系结构是关于软件系统的主要设计决策的集合。在实践中,在整个系统的生命周期中,会添加新的体系结构决策,而撤消或修改现有的决策。通常,这些决策偏离了架构师深思熟虑的意图,并且软件系统在发展过程中经常表现出越来越多的架构衰退。这种考虑不周的设计决策的表现形式被视为“建筑气味”。迄今为止,还没有对这一现象的特点或趋势进行深入的研究。相反,当提到建筑气味及其负面影响时,研究人员和实践者都不得不依赖民间传说和他们个人的、固有的有限经验。在本文中,我们报告了我们在调查建筑气味的性质和影响方面所采取的系统步骤。我们从文献中选择了一组具有代表性的架构气味,并在8个开源软件系统的421个版本中分析了它们的实例。我们已经(1)开发了自动检测多种架构气味类型实例的算法,(2)分析了检测到的气味与系统各自的问题跟踪器中报告的问题列表之间的关系。我们的研究表明,体系结构气味以实现问题的形式以及在整个系统生命周期中需要增加维护工作的代码提交的形式具有明显的负面影响。
{"title":"An Empirical Study of Architectural Decay in Open-Source Software","authors":"D. Le, Daniel Link, Arman Shahbazian, N. Medvidović","doi":"10.1109/ICSA.2018.00027","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00027","url":null,"abstract":"Architecture is the set of principal design decisions about a software system. In practice, new architectural decisions are added and existing ones reversed or modified throughout a system’s lifetime. Frequently, these decisions deviate from the architect's well-considered intent, and software systems regularly exhibit increased architectural decay as they evolve. The manifestations of such ill-considered design decisions are seen as “architectural smells”. To date, there has been no in-depth study of the characteristics or trends involving this phenomenon. Instead, when referring to architectural smells and their negative effects, both researchers and practitioners had to rely on folklore and their personal, inherently limited experience. In this paper, we report on the systematic step we have taken in investigating the nature and impact of architectural smells. We have selected a set of representative architectural smells from literature and analyzed their instances in 421 versions from 8 open-source software systems. We have (1) developed algorithms to automatically detect instances of multiple architectural smell types, and (2) analyzed relationships between the detected smells and the lists of issues reported in the systems’ respective issue trackers. Our study shows that architectural smells have tangible negative consequences in the form of implementation issues as well as code commits requiring increased maintenance effort throughout a system’s lifetime.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124363745","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}
引用次数: 73
Modeling of Parametric Dependencies for Performance Prediction of Component-Based Software Systems at Run-Time 基于组件的软件系统运行时性能预测的参数依赖性建模
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00023
Simon Eismann, J. Walter, J. V. Kistowski, Samuel Kounev
Model-based performance analysis can be leveraged to explore performance properties of software systems. To capture the behavior of varying workload mixes, configurations, and deployments of a software system requires formal modeling of the impact of configuration parameters and user input on the system behavior. Such influences are represented as parametric dependencies in software performance models. Existing modeling approaches focus on modeling parametric dependencies at design-time. This paper identifies runtime specific parametric dependency features, which are not supported by existing work. Therefore, this paper proposes a novel modeling methodology for parametric dependencies and a corresponding graph-based resolution algorithm. This algorithm enables the solution of models containing component instance-level dependencies, variables with multiple descriptions in parallel, and correlations modeled as parametric dependencies. We integrate our work into the Descartes Modeling Language (DML), allowing for accurate and efficient modeling and analysis of parametric dependencies. These performance predictions are valuable for various purposes such as capacity planning, bottleneck analysis, configuration optimization and proactive auto-scaling. Our evaluation analyzes a video store application. The prediction for varying language mixes and video sizes shows a mean error below 5% for utilization and below 10% for response time.
可以利用基于模型的性能分析来探索软件系统的性能属性。为了捕获软件系统的不同工作负载混合、配置和部署的行为,需要对配置参数和用户输入对系统行为的影响进行正式建模。这些影响在软件性能模型中表示为参数依赖性。现有的建模方法侧重于在设计时对参数依赖性进行建模。本文确定了运行时特定的参数依赖特性,现有的工作不支持这些特性。因此,本文提出了一种新的参数依赖性建模方法和相应的基于图的解析算法。该算法支持求解包含组件实例级依赖关系、具有多个并行描述的变量以及作为参数依赖关系建模的相关性的模型。我们将我们的工作集成到笛卡尔建模语言(DML)中,允许对参数依赖性进行准确和有效的建模和分析。这些性能预测对于容量规划、瓶颈分析、配置优化和主动自动扩展等各种用途都很有价值。我们的评估分析了一个视频商店的应用。对不同语言组合和视频大小的预测显示,利用率的平均误差低于5%,响应时间的平均误差低于10%。
{"title":"Modeling of Parametric Dependencies for Performance Prediction of Component-Based Software Systems at Run-Time","authors":"Simon Eismann, J. Walter, J. V. Kistowski, Samuel Kounev","doi":"10.1109/ICSA.2018.00023","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00023","url":null,"abstract":"Model-based performance analysis can be leveraged to explore performance properties of software systems. To capture the behavior of varying workload mixes, configurations, and deployments of a software system requires formal modeling of the impact of configuration parameters and user input on the system behavior. Such influences are represented as parametric dependencies in software performance models. Existing modeling approaches focus on modeling parametric dependencies at design-time. This paper identifies runtime specific parametric dependency features, which are not supported by existing work. Therefore, this paper proposes a novel modeling methodology for parametric dependencies and a corresponding graph-based resolution algorithm. This algorithm enables the solution of models containing component instance-level dependencies, variables with multiple descriptions in parallel, and correlations modeled as parametric dependencies. We integrate our work into the Descartes Modeling Language (DML), allowing for accurate and efficient modeling and analysis of parametric dependencies. These performance predictions are valuable for various purposes such as capacity planning, bottleneck analysis, configuration optimization and proactive auto-scaling. Our evaluation analyzes a video store application. The prediction for varying language mixes and video sizes shows a mean error below 5% for utilization and below 10% for response time.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127240332","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}
引用次数: 9
Reducing Development Overheads with a Generic and Model-Centric Architecture for Online Games 使用通用和以模型为中心的在线游戏架构减少开发开销
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00011
Sebastian Apel
The development of an online game requires not only the content, visual and auditory design but also a considerable amount of effort for planning, creating and operating the infrastructure for exchanging information between players and backend. Within the context of building an own browser-based massively multiplayer online game, questions like how information of this kind can be exchanged arise. Within this paper, various strategies were planned, developed and evaluated to provide the helpful basis for a platform decision. These strategies do not feel very “game-like”. As a result of this, we created an alternative approach as a runtime environment for games of this kind, which has to simplify the conventional strategies for making games: our GameEngine. This environment combines code generation for clients, automated data transformation, platform independent remote procedure calls and lifecycle management for entities. This paper targets to outline the different strategies for game realisation, and analyses the efforts in comparison to our approach in various applications. Proprietary TCP-based approaches are taken into account, as well as standardised web technologies and currently available runtime environments for game development. All approaches indicated a significant increase in effort for the implementation of various examples. An additional effort that can be nearly avoided, and is achieved with our approach.
在线游戏的开发不仅需要内容、视觉和听觉设计,还需要大量的精力来规划、创建和操作用于在玩家和后端之间交换信息的基础设施。在构建自己的基于浏览器的大型多人在线游戏的背景下,诸如如何交换此类信息之类的问题就出现了。在本文中,我们计划、开发和评估了各种策略,为平台决策提供了有用的基础。这些策略感觉不太像“游戏”。因此,我们创造了另一种方法作为这类游戏的运行环境,它能够简化传统的游戏制作策略:我们的GameEngine。该环境结合了客户端的代码生成、自动数据转换、独立于平台的远程过程调用和实体的生命周期管理。本文旨在概述游戏实现的不同策略,并与我们在各种应用中的方法进行比较分析。考虑到基于专有tcp的方法,以及标准化的web技术和当前可用的游戏开发运行时环境。所有的方法都表明,在执行各种实例方面的努力大大增加。这一额外的努力几乎可以避免,并通过我们的方法实现。
{"title":"Reducing Development Overheads with a Generic and Model-Centric Architecture for Online Games","authors":"Sebastian Apel","doi":"10.1109/ICSA.2018.00011","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00011","url":null,"abstract":"The development of an online game requires not only the content, visual and auditory design but also a considerable amount of effort for planning, creating and operating the infrastructure for exchanging information between players and backend. Within the context of building an own browser-based massively multiplayer online game, questions like how information of this kind can be exchanged arise. Within this paper, various strategies were planned, developed and evaluated to provide the helpful basis for a platform decision. These strategies do not feel very “game-like”. As a result of this, we created an alternative approach as a runtime environment for games of this kind, which has to simplify the conventional strategies for making games: our GameEngine. This environment combines code generation for clients, automated data transformation, platform independent remote procedure calls and lifecycle management for entities. This paper targets to outline the different strategies for game realisation, and analyses the efforts in comparison to our approach in various applications. Proprietary TCP-based approaches are taken into account, as well as standardised web technologies and currently available runtime environments for game development. All approaches indicated a significant increase in effort for the implementation of various examples. An additional effort that can be nearly avoided, and is achieved with our approach.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132534021","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
Architectural Design Decisions for Systems Supporting Model-Based Analysis of Runtime Events: A Qualitative Multi-method Study 支持基于模型的运行时事件分析系统的体系结构设计决策:一种定性的多方法研究
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00021
Michael Szvetits, Uwe Zdun
Models are popular artefacts in the software development process which promise to improve stakeholder communication and the overall quality of a software system under construction. Recent research proposes that the usefulness of models is not limited only to the software design phase: Empirical evidence indicates that manual analysis of a running system is improved when models are linked to recorded runtime events. However, software architects are confronted with various design decisions when designing a system that yields the required runtime events and correlates them to the model elements they originate from. The contribution of this paper is a taxonomy of architectural design decisions distilled from a series of qualitative studies following a multi-method research study design: We utilized coding techniques from Grounded Theory to build an initial taxonomy from architectural concepts found in the literature, and verified and extended the taxonomy independently by five novice software architects in a practical scenario. The resulting taxonomy captures essential architectural decisions when implementing a system that supports the analysis of its runtime behaviour using models. We then performed initial steps towards a architectural guidance model by applying the taxonomy to another realistic scenario, following the Design Science Research method, in order to analyze the properties and deepen our own technical understanding of the captured concepts in the taxonomy.
模型是软件开发过程中流行的工件,它承诺改善涉众的沟通和正在构建的软件系统的整体质量。最近的研究表明,模型的有用性不仅限于软件设计阶段:经验证据表明,当模型与记录的运行时事件相关联时,运行系统的手动分析得到了改进。然而,软件架构师在设计产生所需运行时事件并将它们与它们所源自的模型元素关联起来的系统时,面临着各种设计决策。本文的贡献是从一系列多方法研究设计的定性研究中提炼出来的架构设计决策的分类法:我们利用扎根理论中的编码技术,从文献中发现的架构概念构建了一个初始分类法,并由五位软件架构新手在实际场景中独立验证和扩展了分类法。当实现一个支持使用模型分析其运行时行为的系统时,生成的分类法捕获了基本的体系结构决策。然后,我们按照Design Science Research方法,通过将分类法应用于另一个实际场景,执行了构建体系结构指导模型的初始步骤,以便分析属性并加深我们自己对分类法中捕获的概念的技术理解。
{"title":"Architectural Design Decisions for Systems Supporting Model-Based Analysis of Runtime Events: A Qualitative Multi-method Study","authors":"Michael Szvetits, Uwe Zdun","doi":"10.1109/ICSA.2018.00021","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00021","url":null,"abstract":"Models are popular artefacts in the software development process which promise to improve stakeholder communication and the overall quality of a software system under construction. Recent research proposes that the usefulness of models is not limited only to the software design phase: Empirical evidence indicates that manual analysis of a running system is improved when models are linked to recorded runtime events. However, software architects are confronted with various design decisions when designing a system that yields the required runtime events and correlates them to the model elements they originate from. The contribution of this paper is a taxonomy of architectural design decisions distilled from a series of qualitative studies following a multi-method research study design: We utilized coding techniques from Grounded Theory to build an initial taxonomy from architectural concepts found in the literature, and verified and extended the taxonomy independently by five novice software architects in a practical scenario. The resulting taxonomy captures essential architectural decisions when implementing a system that supports the analysis of its runtime behaviour using models. We then performed initial steps towards a architectural guidance model by applying the taxonomy to another realistic scenario, following the Design Science Research method, in order to analyze the properties and deepen our own technical understanding of the captured concepts in the taxonomy.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130000777","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 Blockchain-Based Micro Economy Platform for Distributed Infrastructure Initiatives 基于区块链的分布式基础设施微经济平台
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00010
Jan-Philipp Kramer, J. V. D. Werf, J. Stokking, M. Ruiz
Distributed Infrastructure Initiatives (DIIs) are communities that collaboratively produce and consume infrastructure. To develop a healthy ecosystem, DIIs require an economic model that balances supply and demand, but there is currently a lack of tooling to support implementing these. In this research, we propose an architecture for a platform that enables DIIs to implement such models, focused around a digital currency based on blockchain technology. The currency is issued according to the amount participants contribute to the initiative, which is quantified based on operational metrics gathered from the infrastructure. Furthermore, the platform enables participants to deploy smart contracts which encode self-enforcing agreements about the infrastructure services they exchange. The architecture has been evaluated through a case study at The Things Network (TTN) a global distributed crowdsourced Internet of Things initiative. The case study revealed that the architecture is effective for the selected case at TTN. In addition, the results motivate future research lines to support scalability (i.e., to deploy the architecture on a larger scale) and security.
分布式基础设施计划(DIIs)是协作生产和使用基础设施的社区。为了发展一个健康的生态系统,dii需要一个平衡供需的经济模型,但目前缺乏支持实施这些模型的工具。在这项研究中,我们提出了一个平台架构,使dii能够实现这些模型,重点是基于区块链技术的数字货币。货币根据参与者对计划的贡献金额发行,这是根据从基础设施收集的操作度量来量化的。此外,该平台使参与者能够部署智能合约,这些合约对他们交换的基础设施服务的自我执行协议进行编码。该架构通过物联网(TTN)的案例研究进行了评估,TTN是一个全球分布式众包物联网倡议。案例研究表明,该体系结构对TTN选定的案例是有效的。此外,这些结果激发了未来的研究方向,以支持可伸缩性(即,在更大的规模上部署架构)和安全性。
{"title":"A Blockchain-Based Micro Economy Platform for Distributed Infrastructure Initiatives","authors":"Jan-Philipp Kramer, J. V. D. Werf, J. Stokking, M. Ruiz","doi":"10.1109/ICSA.2018.00010","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00010","url":null,"abstract":"Distributed Infrastructure Initiatives (DIIs) are communities that collaboratively produce and consume infrastructure. To develop a healthy ecosystem, DIIs require an economic model that balances supply and demand, but there is currently a lack of tooling to support implementing these. In this research, we propose an architecture for a platform that enables DIIs to implement such models, focused around a digital currency based on blockchain technology. The currency is issued according to the amount participants contribute to the initiative, which is quantified based on operational metrics gathered from the infrastructure. Furthermore, the platform enables participants to deploy smart contracts which encode self-enforcing agreements about the infrastructure services they exchange. The architecture has been evaluated through a case study at The Things Network (TTN) a global distributed crowdsourced Internet of Things initiative. The case study revealed that the architecture is effective for the selected case at TTN. In addition, the results motivate future research lines to support scalability (i.e., to deploy the architecture on a larger scale) and security.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123075542","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
An Architecture for Decentralized, Collaborative, and Autonomous Robots 分散、协作和自主机器人的体系结构
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00017
Sergio García, C. Menghi, Patrizio Pelliccione, T. Berger, Rebekka Wohlrab
Robotic applications are typically realized using ad hoc and domain-specific solutions, which challenges the engineering and cross-project reuse of such applications. Especially in complex scenarios, where self-adaptive robots collaborate among themselves or with humans, the effective and systematic engineering of such applications is becoming increasingly important. Such scenarios require decentralized software architectures that foster fault-tolerant ways of managing large teams of (possibly) heterogeneous robots. To the best of our knowledge, no existing architecture for robot applications supports decentralized and self-adaptive collaboration. To address this gap, we conducted a design science study with 21 practitioners and experts in the field of robotics to develop an architecture fulfilling these requirements through several iterations. We present SERA, an architecture for robot applications that supports human-robot collaboration, as well as adaptation and coordination of single- and multi-robot systems in a decentralized fashion. SERA is based on layers that contain components that manage the adaptation at different levels of abstraction and communicate through well-defined interfaces. We successfully validated SERA by considering a set of real scenarios, by both using simulators and real robots, by involving robotic experts, and by benchmarking it with state-of-the-art solutions.
机器人应用程序通常使用特别的和特定于领域的解决方案来实现,这对此类应用程序的工程和跨项目重用提出了挑战。特别是在复杂的场景中,自适应机器人之间或与人类合作,这种应用的有效和系统工程变得越来越重要。这样的场景需要分散的软件架构,以培养管理大型(可能)异构机器人团队的容错方式。据我们所知,没有现有的机器人应用架构支持分散和自适应协作。为了解决这一差距,我们与机器人领域的21名从业者和专家进行了一项设计科学研究,通过几次迭代开发一个满足这些需求的架构。我们提出了SERA,这是一种机器人应用架构,支持人机协作,以及以分散的方式适应和协调单机器人和多机器人系统。SERA基于包含组件的层,这些组件在不同的抽象级别上管理适应性,并通过定义良好的接口进行通信。我们通过考虑一组真实的场景,通过使用模拟器和真实的机器人,通过涉及机器人专家,以及通过使用最先进的解决方案对其进行基准测试,成功地验证了SERA。
{"title":"An Architecture for Decentralized, Collaborative, and Autonomous Robots","authors":"Sergio García, C. Menghi, Patrizio Pelliccione, T. Berger, Rebekka Wohlrab","doi":"10.1109/ICSA.2018.00017","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00017","url":null,"abstract":"Robotic applications are typically realized using ad hoc and domain-specific solutions, which challenges the engineering and cross-project reuse of such applications. Especially in complex scenarios, where self-adaptive robots collaborate among themselves or with humans, the effective and systematic engineering of such applications is becoming increasingly important. Such scenarios require decentralized software architectures that foster fault-tolerant ways of managing large teams of (possibly) heterogeneous robots. To the best of our knowledge, no existing architecture for robot applications supports decentralized and self-adaptive collaboration. To address this gap, we conducted a design science study with 21 practitioners and experts in the field of robotics to develop an architecture fulfilling these requirements through several iterations. We present SERA, an architecture for robot applications that supports human-robot collaboration, as well as adaptation and coordination of single- and multi-robot systems in a decentralized fashion. SERA is based on layers that contain components that manage the adaptation at different levels of abstraction and communicate through well-defined interfaces. We successfully validated SERA by considering a set of real scenarios, by both using simulators and real robots, by involving robotic experts, and by benchmarking it with state-of-the-art solutions.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126032609","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}
引用次数: 30
Self-Commissioning Industrial IoT-Systems in Process Automation: A Reference Architecture 过程自动化中的自调试工业物联网系统:参考架构
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00029
H. Koziolek, Andreas Burger, Jens Doppelhamer
Distributed control systems are currently evolving towards Industrial Internet-of-Things (IIoT) systems. However, they still suffer from complex commissioning processes that incur high costs. Researchers have proposed several so-called "Plug and Produce" (PnP) approaches, where commissioning shall be largely automated, but they have suffered from semantic ambiguities and usually rely on proprietary information models. We propose a novel reference architecture for PnP in IIoT systems, which is based on OPC UA and PLCopen standards and can reduce industrial device commissioning times across vendor products to a few seconds. Our proof-of-concept implementation can handle more than 500 signals per millisecond during runtime, sufficient for most application scenarios.
分布式控制系统目前正在向工业物联网(IIoT)系统发展。然而,它们仍然受到复杂的调试过程的影响,这些过程会产生高昂的成本。研究人员提出了几种所谓的“即插即用”(PnP)方法,其中调试将在很大程度上实现自动化,但它们存在语义模糊的问题,并且通常依赖于专有信息模型。我们为IIoT系统中的PnP提出了一种新的参考架构,该架构基于OPC UA和PLCopen标准,可以将供应商产品的工业设备调试时间缩短到几秒钟。我们的概念验证实现可以在运行时每毫秒处理500多个信号,足以满足大多数应用场景。
{"title":"Self-Commissioning Industrial IoT-Systems in Process Automation: A Reference Architecture","authors":"H. Koziolek, Andreas Burger, Jens Doppelhamer","doi":"10.1109/ICSA.2018.00029","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00029","url":null,"abstract":"Distributed control systems are currently evolving towards Industrial Internet-of-Things (IIoT) systems. However, they still suffer from complex commissioning processes that incur high costs. Researchers have proposed several so-called \"Plug and Produce\" (PnP) approaches, where commissioning shall be largely automated, but they have suffered from semantic ambiguities and usually rely on proprietary information models. We propose a novel reference architecture for PnP in IIoT systems, which is based on OPC UA and PLCopen standards and can reduce industrial device commissioning times across vendor products to a few seconds. Our proof-of-concept implementation can handle more than 500 signals per millisecond during runtime, sufficient for most application scenarios.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"46 9","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120916932","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}
引用次数: 24
Availability-Driven Architectural Change Propagation Through Bidirectional Model Transformations Between UML and Petri Net Models 通过UML和Petri网模型之间的双向模型转换,可用性驱动的架构变更传播
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00022
V. Cortellessa, Romina Eramo, Michele Tucci
Software architecture is nowadays subject to frequent changes due to multiple reasons, such as evolution induced by new requirements. Architectural changes driven by non-functional requirements are particularly difficult to identify, because they attain quantitative analyses that are usually carried out with specific languages and tools. A considerable number of approaches, based on model transformations, have been proposed in the last decades to derive non-functional models from software architectural descriptions. However, there is a clear lack of automation in the backward path that brings the analysis results back to the software architecture. In this paper we address this problem in the context of software availability. We introduce a bidirectional model transformation between UML State Machines (SM), annotated with availability properties, and Generalized Stochastic Petri Nets (GSPN). Such transformation, implemented in the JTL language, is used both to derive a GSPN-based availability model from a SM-based software architecture and, after the analysis, to propagate back on the SM the changes carried out on the GSPN. We demonstrate the effectiveness of our approach on an Environmental Control System to which we apply well-known fault tolerance patterns aimed at improving its software availability.
由于多种原因,例如由新需求引起的演变,软件体系结构现在受到频繁变化的影响。由非功能需求驱动的架构变更特别难以识别,因为它们通常需要使用特定的语言和工具进行定量分析。在过去的几十年里,已经提出了相当多的基于模型转换的方法,从软件体系结构描述中派生出非功能模型。然而,在将分析结果带回到软件体系结构的逆向路径中明显缺乏自动化。在本文中,我们在软件可用性的背景下解决这个问题。我们引入了UML状态机(SM)和广义随机Petri网(GSPN)之间的双向模型转换。这种用JTL语言实现的转换既用于从基于SM的软件体系结构派生基于GSPN的可用性模型,也用于在分析之后在SM上传播在GSPN上执行的更改。我们在环境控制系统上展示了我们的方法的有效性,我们应用了众所周知的容错模式,旨在提高其软件可用性。
{"title":"Availability-Driven Architectural Change Propagation Through Bidirectional Model Transformations Between UML and Petri Net Models","authors":"V. Cortellessa, Romina Eramo, Michele Tucci","doi":"10.1109/ICSA.2018.00022","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00022","url":null,"abstract":"Software architecture is nowadays subject to frequent changes due to multiple reasons, such as evolution induced by new requirements. Architectural changes driven by non-functional requirements are particularly difficult to identify, because they attain quantitative analyses that are usually carried out with specific languages and tools. A considerable number of approaches, based on model transformations, have been proposed in the last decades to derive non-functional models from software architectural descriptions. However, there is a clear lack of automation in the backward path that brings the analysis results back to the software architecture. In this paper we address this problem in the context of software availability. We introduce a bidirectional model transformation between UML State Machines (SM), annotated with availability properties, and Generalized Stochastic Petri Nets (GSPN). Such transformation, implemented in the JTL language, is used both to derive a GSPN-based availability model from a SM-based software architecture and, after the analysis, to propagate back on the SM the changes carried out on the GSPN. We demonstrate the effectiveness of our approach on an Environmental Control System to which we apply well-known fault tolerance patterns aimed at improving its software availability.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120981580","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
The Anatomy of a Large-Scale Experimentation Platform 大型实验平台的解剖
Pub Date : 2018-04-01 DOI: 10.1109/ICSA.2018.00009
Somit Gupta, Lucy Ulanova, Sumit Bhardwaj, Pavel A. Dmitriev, Paul Raff, Aleksander Fabijan
Online controlled experiments (e.g., A/B tests) are an integral part of successful data-driven companies. At Microsoft, supporting experimentation poses a unique challenge due to the wide variety of products being developed, along with the fact that experimentation capabilities had to be added to existing, mature products with codebases that go back decades. This paper describes the Microsoft ExP Platform (ExP for short) which enables trustworthy A/B experimentation at scale for products across Microsoft, from web properties (such as bing.com) to mobile apps to device drivers within the Windows operating system. The two core tenets of the platform are trustworthiness (an experiment is meaningful only if its results can be trusted) and scalability (we aspire to expose every single change in any product through an A/B experiment). Currently, over ten thousand experiments are run annually. In this paper, we describe the four core components of an A/B experimentation system: experimentation portal, experiment execution service, log processing service and analysis service, and explain the reasoning behind the design choices made. These four components work together to provide a system where ideas can turn into experiments within minutes and those experiments can provide initial trustworthy results within hours.
在线控制实验(例如,A/B测试)是成功的数据驱动型公司不可或缺的一部分。在微软,支持实验是一个独特的挑战,因为正在开发的产品种类繁多,而且实验功能必须添加到现有的成熟产品中,这些产品的代码库可以追溯到几十年前。本文描述了Microsoft ExP平台(简称ExP),该平台为微软的产品(从web属性(如bing.com)到移动应用程序到Windows操作系统中的设备驱动程序)提供了可信赖的大规模A/B实验。该平台的两个核心原则是可信赖性(实验只有在结果可信的情况下才有意义)和可扩展性(我们渴望通过A/B实验暴露任何产品的每一个变化)。目前,每年进行的实验超过一万次。本文描述了A/B实验系统的四个核心组件:实验门户、实验执行服务、日志处理服务和分析服务,并解释了设计选择背后的原因。这四个组成部分共同提供了一个系统,在这个系统中,想法可以在几分钟内转化为实验,而这些实验可以在几小时内提供初步的可靠结果。
{"title":"The Anatomy of a Large-Scale Experimentation Platform","authors":"Somit Gupta, Lucy Ulanova, Sumit Bhardwaj, Pavel A. Dmitriev, Paul Raff, Aleksander Fabijan","doi":"10.1109/ICSA.2018.00009","DOIUrl":"https://doi.org/10.1109/ICSA.2018.00009","url":null,"abstract":"Online controlled experiments (e.g., A/B tests) are an integral part of successful data-driven companies. At Microsoft, supporting experimentation poses a unique challenge due to the wide variety of products being developed, along with the fact that experimentation capabilities had to be added to existing, mature products with codebases that go back decades. This paper describes the Microsoft ExP Platform (ExP for short) which enables trustworthy A/B experimentation at scale for products across Microsoft, from web properties (such as bing.com) to mobile apps to device drivers within the Windows operating system. The two core tenets of the platform are trustworthiness (an experiment is meaningful only if its results can be trusted) and scalability (we aspire to expose every single change in any product through an A/B experiment). Currently, over ten thousand experiments are run annually. In this paper, we describe the four core components of an A/B experimentation system: experimentation portal, experiment execution service, log processing service and analysis service, and explain the reasoning behind the design choices made. These four components work together to provide a system where ideas can turn into experiments within minutes and those experiments can provide initial trustworthy results within hours.","PeriodicalId":142325,"journal":{"name":"2018 IEEE International Conference on Software Architecture (ICSA)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122286478","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}
引用次数: 51
期刊
2018 IEEE International Conference on Software Architecture (ICSA)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1