{"title":"实现云架构自适应的模式语言","authors":"Aakash Ahmad, M. Babar","doi":"10.1145/2578128.2578227","DOIUrl":null,"url":null,"abstract":"Cloud computing enables organisations to deploy their software systems over a pool of available services -- exploiting pay-per-use models -- rather than upfront purchase of an overprovisioned infrastructure. In an architectural context for cloud systems that demand elasticity in terms of service availability, reliability, and efficiency, there is a need to capitalise on the 'build-once, use-often' solutions that support reuse-driven self-adaptations of cloud-based architectures. We support the composition and application of a pattern language that exploits adaptation patterns and their relations to support 'adaptation-off-the-shelf' for cloud-based software architectures. We unify the concepts of software repository mining and software evolution to support the composition and application of an adaptation pattern language. First, we exploit the software repository mining concepts by investigating adaptation logs to empirically discover architecture adaptation patterns and their relations. Second, we utilise the software evolution techniques for self-adaptation of cloud architectures guided by a systematic selection and application of adaptation patterns. In the context of the IBM'S MAPE-K model for self-adaptation, we propose reusable policies for self-adaptive cloud architectures. Architectural adaptation knowledge in the proposed pattern language is expressed as a formalised collection of interconnected-patterns. Individual patterns in the language build on each other to provide a generic and reusable solution to address the recurring adaptation problems. In future, we focus on an incremental evolution of pattern language by discovering new patterns from adaptation logs over time.","PeriodicalId":405927,"journal":{"name":"WICSA '14 Companion","volume":"27 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-04-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"7","resultStr":"{\"title\":\"Towards a pattern language for self-adaptation of cloud-based architectures\",\"authors\":\"Aakash Ahmad, M. Babar\",\"doi\":\"10.1145/2578128.2578227\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Cloud computing enables organisations to deploy their software systems over a pool of available services -- exploiting pay-per-use models -- rather than upfront purchase of an overprovisioned infrastructure. In an architectural context for cloud systems that demand elasticity in terms of service availability, reliability, and efficiency, there is a need to capitalise on the 'build-once, use-often' solutions that support reuse-driven self-adaptations of cloud-based architectures. We support the composition and application of a pattern language that exploits adaptation patterns and their relations to support 'adaptation-off-the-shelf' for cloud-based software architectures. We unify the concepts of software repository mining and software evolution to support the composition and application of an adaptation pattern language. First, we exploit the software repository mining concepts by investigating adaptation logs to empirically discover architecture adaptation patterns and their relations. Second, we utilise the software evolution techniques for self-adaptation of cloud architectures guided by a systematic selection and application of adaptation patterns. In the context of the IBM'S MAPE-K model for self-adaptation, we propose reusable policies for self-adaptive cloud architectures. Architectural adaptation knowledge in the proposed pattern language is expressed as a formalised collection of interconnected-patterns. Individual patterns in the language build on each other to provide a generic and reusable solution to address the recurring adaptation problems. In future, we focus on an incremental evolution of pattern language by discovering new patterns from adaptation logs over time.\",\"PeriodicalId\":405927,\"journal\":{\"name\":\"WICSA '14 Companion\",\"volume\":\"27 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-04-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"7\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"WICSA '14 Companion\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2578128.2578227\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"WICSA '14 Companion","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2578128.2578227","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 7
摘要
云计算使企业能够在可用服务池上部署软件系统--利用按使用付费的模式--而不是预先购买过度配置的基础设施。云系统的架构要求在服务可用性、可靠性和效率方面具有弹性,因此需要利用 "一次构建,多次使用 "的解决方案,支持基于云架构的重用驱动自适应。我们支持模式语言的组成和应用,该语言利用适应模式及其关系来支持基于云的软件架构的 "现成适应"。我们统一了软件库挖掘和软件进化的概念,以支持适应模式语言的组成和应用。首先,我们利用软件库挖掘概念,通过调查适应性日志,以经验为基础发现架构适应性模式及其关系。其次,我们利用软件进化技术,在系统化选择和应用适应模式的指导下实现云架构的自适应。在 IBM MAPE-K 自适应模型的背景下,我们提出了可重复使用的自适应云架构策略。在所提出的模式语言中,架构适应知识被表述为相互关联模式的形式化集合。语言中的各个模式相互依存,为解决反复出现的适应性问题提供了通用和可重复使用的解决方案。今后,我们将重点关注模式语言的增量演进,即随着时间的推移从适应日志中发现新模式。
Towards a pattern language for self-adaptation of cloud-based architectures
Cloud computing enables organisations to deploy their software systems over a pool of available services -- exploiting pay-per-use models -- rather than upfront purchase of an overprovisioned infrastructure. In an architectural context for cloud systems that demand elasticity in terms of service availability, reliability, and efficiency, there is a need to capitalise on the 'build-once, use-often' solutions that support reuse-driven self-adaptations of cloud-based architectures. We support the composition and application of a pattern language that exploits adaptation patterns and their relations to support 'adaptation-off-the-shelf' for cloud-based software architectures. We unify the concepts of software repository mining and software evolution to support the composition and application of an adaptation pattern language. First, we exploit the software repository mining concepts by investigating adaptation logs to empirically discover architecture adaptation patterns and their relations. Second, we utilise the software evolution techniques for self-adaptation of cloud architectures guided by a systematic selection and application of adaptation patterns. In the context of the IBM'S MAPE-K model for self-adaptation, we propose reusable policies for self-adaptive cloud architectures. Architectural adaptation knowledge in the proposed pattern language is expressed as a formalised collection of interconnected-patterns. Individual patterns in the language build on each other to provide a generic and reusable solution to address the recurring adaptation problems. In future, we focus on an incremental evolution of pattern language by discovering new patterns from adaptation logs over time.