Methods for self-organizing distributed software

BADS '11 Pub Date : 2011-06-14 DOI:10.1145/1998570.1998577
E. D. Nitto, Daniel J. Dubois
{"title":"Methods for self-organizing distributed software","authors":"E. D. Nitto, Daniel J. Dubois","doi":"10.1145/1998570.1998577","DOIUrl":null,"url":null,"abstract":"A current research trend in Software Engineering concerns the development of new techniques to deal intelligently and efficiently with the design of complex and distributed systems that are able to evolve overtime and adapt to rapid changes of their requirements. Runtime evolution is mainly achieved by instrumenting the system with a conceptually centralized controller that is able to monitor the system execution, analyze the opportunities for evolution, plan the evolution, and, finally, executing it by transforming in some way the controlled system. While this approach makes sense in most cases, when system decentralization is significant, it could not be feasible for scalability issues.\n An interesting class of approaches that replaces the conceptually centralized intelligence with a completely decentralized solution is the one based on self-organization inspired by the natural world. In nature, it often happens that a global behavior emerges from simple and local decisions made autonomously by each element of the system (think, for example, of the ability of an ants colony to quickly find the shortest path to the food). Applying the same idea to software systems, we have that each system component becomes an autonomous entity able to perform local actions affecting its state, behavior, and the relationships it holds with its neighbors. While the proposals for decentralized self-organization available in the literature appear to be very interesting, in most cases, they are still only defined in terms of analytical or simulative models.\n We argue that applying self-organization approaches to real running systems is a non-trivial task as it has to account for problems such as synchronization issues, race conditions, loss of messages and the like.\n In this talk we introduce the concept of self-organization and present some examples of applications in various domains, ranging from energy saving to cloud computing optimization. Moreover, we try to offer a roadmap to the definition of some design guidelines that support the adoption of self-organization.","PeriodicalId":340028,"journal":{"name":"BADS '11","volume":"19 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2011-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"BADS '11","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/1998570.1998577","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

A current research trend in Software Engineering concerns the development of new techniques to deal intelligently and efficiently with the design of complex and distributed systems that are able to evolve overtime and adapt to rapid changes of their requirements. Runtime evolution is mainly achieved by instrumenting the system with a conceptually centralized controller that is able to monitor the system execution, analyze the opportunities for evolution, plan the evolution, and, finally, executing it by transforming in some way the controlled system. While this approach makes sense in most cases, when system decentralization is significant, it could not be feasible for scalability issues. An interesting class of approaches that replaces the conceptually centralized intelligence with a completely decentralized solution is the one based on self-organization inspired by the natural world. In nature, it often happens that a global behavior emerges from simple and local decisions made autonomously by each element of the system (think, for example, of the ability of an ants colony to quickly find the shortest path to the food). Applying the same idea to software systems, we have that each system component becomes an autonomous entity able to perform local actions affecting its state, behavior, and the relationships it holds with its neighbors. While the proposals for decentralized self-organization available in the literature appear to be very interesting, in most cases, they are still only defined in terms of analytical or simulative models. We argue that applying self-organization approaches to real running systems is a non-trivial task as it has to account for problems such as synchronization issues, race conditions, loss of messages and the like. In this talk we introduce the concept of self-organization and present some examples of applications in various domains, ranging from energy saving to cloud computing optimization. Moreover, we try to offer a roadmap to the definition of some design guidelines that support the adoption of self-organization.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
自组织分布式软件的方法
软件工程当前的一个研究趋势是开发新技术,以智能和有效地处理复杂和分布式系统的设计,这些系统能够随着时间的推移而进化,并适应其需求的快速变化。运行时进化主要是通过使用一个概念上集中的控制器来检测系统来实现的,这个控制器能够监视系统的执行,分析进化的机会,计划进化,最后,通过以某种方式转换被控制的系统来执行它。虽然这种方法在大多数情况下是有意义的,但当系统去中心化很重要时,它可能不适用于可伸缩性问题。用完全去中心化的解决方案取代概念上中心化的智能的一种有趣的方法是基于受自然世界启发的自组织。在自然界中,全局行为通常是由系统中每个元素自主做出的简单和局部决策产生的(例如,想想蚂蚁群快速找到通往食物的最短路径的能力)。将同样的思想应用到软件系统中,我们使每个系统组件成为一个自治的实体,能够执行影响其状态、行为和与其邻居保持的关系的本地操作。虽然文献中关于分散的自组织的建议看起来非常有趣,但在大多数情况下,它们仍然只是根据分析或模拟模型来定义的。我们认为,将自组织方法应用于实际运行的系统是一项重要的任务,因为它必须考虑同步问题、竞争条件、消息丢失等问题。在这次演讲中,我们将介绍自组织的概念,并展示一些应用于各个领域的例子,从节能到云计算优化。此外,我们试图为一些支持采用自组织的设计指导方针的定义提供一个路线图。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Methods for self-organizing distributed software Model-driven performance engineering for wireless sensor networks with feature modeling and event calculus Description and composition of bio-inspired design patterns: the gradient case Protein structure prediction using particle swarm optimization and a distributed parallel approach Self-organized invasive parallel optimization
×
引用
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