{"id":1401,"date":"2021-05-19T06:58:43","date_gmt":"2021-05-19T04:58:43","guid":{"rendered":"https:\/\/blog.zhaw.ch\/splab\/?p=1401"},"modified":"2021-05-19T07:34:33","modified_gmt":"2021-05-19T05:34:33","slug":"explainable-deployment-of-software-to-computing-continuums","status":"publish","type":"post","link":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/","title":{"rendered":"Explainable Deployment of Software to Computing Continuums"},"content":{"rendered":"\n<p>Modern software applications need to accomodate many technical and business demands. Over the past decade, the dominant industry trend has been to decompose applications into smaller microservices and to deploy them as composition atop various cloud platforms and devices. More recently, more suitable abstractions were proposed to build and describe such software. Software becomes adaptive, liquid and <a href=\"https:\/\/osmotic.org\/\" data-type=\"URL\" data-id=\"https:\/\/osmotic.org\/\">osmotic<\/a> within a continuum of computing resources, ranging from high-end data centres (e.g. HPC) and multiple clouds over fog\/edge\/middlebox systems to sensors and end user devices including machines and mobile phones.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"556\" height=\"284\" src=\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png\" alt=\"\" class=\"wp-image-1407\" srcset=\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png 556w, https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm-300x153.png 300w\" sizes=\"auto, (max-width: 556px) 100vw, 556px\" \/><\/figure><\/div>\n\n\n\n<!--more-->\n\n\n\n<p>The crucial step between authoring software applications and serving their functionality to the world is the deployment. Various approaches to deploy to continuums have been proposed, but most of them automagically arrive at a (presumably) suitable solution in terms of placing software components such as microservices across the infrastructure and platforms. We analysed the problems associated with such approaches and postulate that while fully automated approaches have their place, we need to complement them with interactive, guided and explainable deployment decisions. As application packaging improves (SAM, Helm, OAM, TOSCA, CAMEL), this new approach becomes increasingly relevant.<\/p>\n\n\n\n<p>At the 35th International Conference on Advanced Information Networking and Applications (<a href=\"http:\/\/voyager.ce.fit.ac.jp\/conf\/aina\/2021\/\" data-type=\"URL\" data-id=\"http:\/\/voyager.ce.fit.ac.jp\/conf\/aina\/2021\/\">AINA 2021<\/a>), a workshop dedicated to Multi-Clouds and Mobile Edge Computing (<a href=\"https:\/\/melodic.cloud\/m2ec-2021\/\" data-type=\"URL\" data-id=\"https:\/\/melodic.cloud\/m2ec-2021\/\">M\u00b2EC<\/a>) took place, supported by the European H2020 project <a href=\"https:\/\/melodic.cloud\/\" data-type=\"URL\" data-id=\"https:\/\/melodic.cloud\/\">MELODIC<\/a>, where we presented our approach <strong>Continuum Deployer<\/strong> along with an <a href=\"https:\/\/github.com\/serviceprototypinglab\/continuum-deployer\" data-type=\"URL\" data-id=\"https:\/\/github.com\/serviceprototypinglab\/continuum-deployer\">open source tool implementation<\/a>. The main work on the implementation was conducted by Daniel Hass. Have a look at the presentation slides below and at the tool, and let us know of any feedback!<\/p>\n\n\n\n<div class=\"wp-block-file\"><a href=\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/aina-m2ec-continuumdeployer.pdf\">aina-m2ec-continuumdeployer<\/a><a href=\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/aina-m2ec-continuumdeployer.pdf\" class=\"wp-block-file__button\" download>Download<\/a><\/div>\n<div class=\"pt-sm\">Schlagw\u00f6rter: <a href=\"http:\/\/blog.zhaw.ch\/splab\/tag\/cloud-application\/\">cloud application<\/a>, <a href=\"http:\/\/blog.zhaw.ch\/splab\/tag\/continuum\/\">continuum<\/a>, <a href=\"http:\/\/blog.zhaw.ch\/splab\/tag\/deployment\/\">deployment<\/a>, <a href=\"http:\/\/blog.zhaw.ch\/splab\/tag\/fog\/\">fog<\/a>, <a href=\"http:\/\/blog.zhaw.ch\/splab\/tag\/microservices\/\">microservices<\/a>, <a href=\"http:\/\/blog.zhaw.ch\/splab\/tag\/multi-cloud\/\">multi-cloud<\/a><br><\/div>","protected":false},"excerpt":{"rendered":"<p>Modern software applications need to accomodate many technical and business demands. Over the past decade, the dominant industry trend has been to decompose applications into smaller microservices and to deploy them as composition atop various cloud platforms and devices. More recently, more suitable abstractions were proposed to build and describe such software. Software becomes adaptive, [&hellip;]<\/p>\n","protected":false},"author":203,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[4],"tags":[112,131,193,82,39,28],"features":[],"class_list":["post-1401","post","type-post","status-publish","format-standard","hentry","category-research","tag-cloud-application","tag-continuum","tag-deployment","tag-fog","tag-microservices","tag-multi-cloud"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Explainable Deployment of Software to Computing Continuums - Service Prototyping Lab<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Explainable Deployment of Software to Computing Continuums\" \/>\n<meta property=\"og:description\" content=\"Modern software applications need to accomodate many technical and business demands. Over the past decade, the dominant industry trend has been to decompose applications into smaller microservices and to deploy them as composition atop various cloud platforms and devices. More recently, more suitable abstractions were proposed to build and describe such software. Software becomes adaptive, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\" \/>\n<meta property=\"og:site_name\" content=\"Service Prototyping Lab\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-19T04:58:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-19T05:34:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png\" \/>\n<meta name=\"author\" content=\"Josef Spillner\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Josef Spillner\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\"},\"author\":{\"name\":\"Josef Spillner\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/#\/schema\/person\/33a5227c6cc1fa3329279d33c3cc440e\"},\"headline\":\"Explainable Deployment of Software to Computing Continuums\",\"datePublished\":\"2021-05-19T04:58:43+00:00\",\"dateModified\":\"2021-05-19T05:34:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\"},\"wordCount\":273,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png\",\"keywords\":[\"cloud application\",\"continuum\",\"deployment\",\"fog\",\"microservices\",\"multi-cloud\"],\"articleSection\":[\"Research\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\",\"url\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\",\"name\":\"Explainable Deployment of Software to Computing Continuums - Service Prototyping Lab\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png\",\"datePublished\":\"2021-05-19T04:58:43+00:00\",\"dateModified\":\"2021-05-19T05:34:33+00:00\",\"author\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/#\/schema\/person\/33a5227c6cc1fa3329279d33c3cc440e\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage\",\"url\":\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png\",\"contentUrl\":\"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/blog.zhaw.ch\/splab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Explainable Deployment of Software to Computing Continuums\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/#website\",\"url\":\"https:\/\/blog.zhaw.ch\/splab\/\",\"name\":\"Service Prototyping Lab\",\"description\":\"A Blog of the ZHAW Zurich University of Applied Sciences\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.zhaw.ch\/splab\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.zhaw.ch\/splab\/#\/schema\/person\/33a5227c6cc1fa3329279d33c3cc440e\",\"name\":\"Josef Spillner\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/c57d7019e91373902c08eac230e003cb4f8498ecf68c9d119e9ecb82fdf6c400?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c57d7019e91373902c08eac230e003cb4f8498ecf68c9d119e9ecb82fdf6c400?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c57d7019e91373902c08eac230e003cb4f8498ecf68c9d119e9ecb82fdf6c400?s=96&d=mm&r=g\",\"caption\":\"Josef Spillner\"},\"description\":\"Head of the Service Prototyping Lab. Research on distributed systems and application computing paradigms. Senior lecturer at Zurich University of Applied Sciences.\",\"url\":\"https:\/\/blog.zhaw.ch\/splab\/author\/spio\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Explainable Deployment of Software to Computing Continuums - Service Prototyping Lab","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/","og_locale":"en_GB","og_type":"article","og_title":"Explainable Deployment of Software to Computing Continuums","og_description":"Modern software applications need to accomodate many technical and business demands. Over the past decade, the dominant industry trend has been to decompose applications into smaller microservices and to deploy them as composition atop various cloud platforms and devices. More recently, more suitable abstractions were proposed to build and describe such software. Software becomes adaptive, [&hellip;]","og_url":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/","og_site_name":"Service Prototyping Lab","article_published_time":"2021-05-19T04:58:43+00:00","article_modified_time":"2021-05-19T05:34:33+00:00","og_image":[{"url":"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png","type":"","width":"","height":""}],"author":"Josef Spillner","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Josef Spillner","Estimated reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#article","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/"},"author":{"name":"Josef Spillner","@id":"https:\/\/blog.zhaw.ch\/splab\/#\/schema\/person\/33a5227c6cc1fa3329279d33c3cc440e"},"headline":"Explainable Deployment of Software to Computing Continuums","datePublished":"2021-05-19T04:58:43+00:00","dateModified":"2021-05-19T05:34:33+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/"},"wordCount":273,"commentCount":0,"image":{"@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png","keywords":["cloud application","continuum","deployment","fog","microservices","multi-cloud"],"articleSection":["Research"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/","url":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/","name":"Explainable Deployment of Software to Computing Continuums - Service Prototyping Lab","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/splab\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage"},"image":{"@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png","datePublished":"2021-05-19T04:58:43+00:00","dateModified":"2021-05-19T05:34:33+00:00","author":{"@id":"https:\/\/blog.zhaw.ch\/splab\/#\/schema\/person\/33a5227c6cc1fa3329279d33c3cc440e"},"breadcrumb":{"@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#primaryimage","url":"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png","contentUrl":"https:\/\/blog.zhaw.ch\/splab\/files\/2021\/05\/rbmm.png"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.zhaw.ch\/splab\/2021\/05\/19\/explainable-deployment-of-software-to-computing-continuums\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/blog.zhaw.ch\/splab\/"},{"@type":"ListItem","position":2,"name":"Explainable Deployment of Software to Computing Continuums"}]},{"@type":"WebSite","@id":"https:\/\/blog.zhaw.ch\/splab\/#website","url":"https:\/\/blog.zhaw.ch\/splab\/","name":"Service Prototyping Lab","description":"A Blog of the ZHAW Zurich University of Applied Sciences","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.zhaw.ch\/splab\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/blog.zhaw.ch\/splab\/#\/schema\/person\/33a5227c6cc1fa3329279d33c3cc440e","name":"Josef Spillner","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/c57d7019e91373902c08eac230e003cb4f8498ecf68c9d119e9ecb82fdf6c400?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c57d7019e91373902c08eac230e003cb4f8498ecf68c9d119e9ecb82fdf6c400?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c57d7019e91373902c08eac230e003cb4f8498ecf68c9d119e9ecb82fdf6c400?s=96&d=mm&r=g","caption":"Josef Spillner"},"description":"Head of the Service Prototyping Lab. Research on distributed systems and application computing paradigms. Senior lecturer at Zurich University of Applied Sciences.","url":"https:\/\/blog.zhaw.ch\/splab\/author\/spio\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/posts\/1401","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/users\/203"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/comments?post=1401"}],"version-history":[{"count":3,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/posts\/1401\/revisions"}],"predecessor-version":[{"id":1408,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/posts\/1401\/revisions\/1408"}],"wp:attachment":[{"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/media?parent=1401"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/categories?post=1401"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/tags?post=1401"},{"taxonomy":"features","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/splab\/wp-json\/wp\/v2\/features?post=1401"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}