23,400 research outputs found
Migrating to Cloud-Native Architectures Using Microservices: An Experience Report
Migration to the cloud has been a popular topic in industry and academia in
recent years. Despite many benefits that the cloud presents, such as high
availability and scalability, most of the on-premise application architectures
are not ready to fully exploit the benefits of this environment, and adapting
them to this environment is a non-trivial task. Microservices have appeared
recently as novel architectural styles that are native to the cloud. These
cloud-native architectures can facilitate migrating on-premise architectures to
fully benefit from the cloud environments because non-functional attributes,
like scalability, are inherent in this style. The existing approaches on cloud
migration does not mostly consider cloud-native architectures as their
first-class citizens. As a result, the final product may not meet its primary
drivers for migration. In this paper, we intend to report our experience and
lessons learned in an ongoing project on migrating a monolithic on-premise
software architecture to microservices. We concluded that microservices is not
a one-fit-all solution as it introduces new complexities to the system, and
many factors, such as distribution complexities, should be considered before
adopting this style. However, if adopted in a context that needs high
flexibility in terms of scalability and availability, it can deliver its
promised benefits
Cloud migration patterns: a multi-cloud service architecture perspective
Many organizations migrate their on-premise software systems to the cloud. However, current coarse-grained cloud migration solutions have made a transparent migration of on-premise applications to the cloud a difficult, sometimes trial-and-error based endeavor. This paper suggests a catalogue of fine-grained service-based cloud architecture migration patterns that target multi-cloud settings and are specified with architectural notations. The proposed migration patterns are based on empirical evi-dence from a number of migration projects, best practices for cloud architectures and a systematic literature review of existing research. The pattern catalogue allows an or-ganization to (1) select appropriate architecture migration patterns based on their ob-jectives, (2) compose them to define a migration plan, and (3) extend them based on the identification of new patterns in new contexts
Decision Support Tools for Cloud Migration in the Enterprise
This paper describes two tools that aim to support decision making during the
migration of IT systems to the cloud. The first is a modeling tool that
produces cost estimates of using public IaaS clouds. The tool enables IT
architects to model their applications, data and infrastructure requirements in
addition to their computational resource usage patterns. The tool can be used
to compare the cost of different cloud providers, deployment options and usage
scenarios. The second tool is a spreadsheet that outlines the benefits and
risks of using IaaS clouds from an enterprise perspective; this tool provides a
starting point for risk assessment. Two case studies were used to evaluate the
tools. The tools were useful as they informed decision makers about the costs,
benefits and risks of using the cloud.Comment: To appear in IEEE CLOUD 201
Pattern-based multi-cloud architecture migration
Many organizations migrate on-premise software applications to the cloud. However, current coarse-grained cloud migration solutions have made such migrations a non transparent task, an endeavor based on trial-anderror. This paper presents Variability-based, Pattern-driven Architecture Migration .V-PAM), a migration method based on (i) a catalogue of fine-grained service-based cloud architecture migration patterns that target multi-cloud, (ii) a situational migration process framework to guide pattern selection and composition, and (iii) a variability model to structure system migration into a coherent framework. The proposed migration patterns are based on empirical evidence from several migration projects, best practice for cloud architectures and a systematic literature review of existing research. Variability-based, Pattern-driven Architecture Migration allows an organization to (i) select appropriate migration patterns, (ii) compose them to define a migration plan, and (iii) extend them based on the identification of new patterns in new contexts. The patterns are at the core of our solution, embedded into a process model, with their selection governed by a variability model
Report from GI-Dagstuhl Seminar 16394: Software Performance Engineering in the DevOps World
This report documents the program and the outcomes of GI-Dagstuhl Seminar
16394 "Software Performance Engineering in the DevOps World".
The seminar addressed the problem of performance-aware DevOps. Both, DevOps
and performance engineering have been growing trends over the past one to two
years, in no small part due to the rise in importance of identifying
performance anomalies in the operations (Ops) of cloud and big data systems and
feeding these back to the development (Dev). However, so far, the research
community has treated software engineering, performance engineering, and cloud
computing mostly as individual research areas. We aimed to identify
cross-community collaboration, and to set the path for long-lasting
collaborations towards performance-aware DevOps.
The main goal of the seminar was to bring together young researchers (PhD
students in a later stage of their PhD, as well as PostDocs or Junior
Professors) in the areas of (i) software engineering, (ii) performance
engineering, and (iii) cloud computing and big data to present their current
research projects, to exchange experience and expertise, to discuss research
challenges, and to develop ideas for future collaborations
Cloud migration strategy factors and migration processes
Organisaatiot ottavat pilvitekniikoita ja -palveluita käyttöönsä yhä laajemmin. Merkittävä osa pilvipalveluiden kasvusta johtuu nykyisten sovellusten siirtämisestä pilvipalveluun. Olemassa olevien vanhojen sovellusten siirtäminen pilvipalvelualustaan ei ole triviaali tehtävä.
Migraatiomenetelmät tehostavat sovellusten siirtoa pilvialustoille ja vähentävät siirrosta aiheutuvia riskejä käyttäen vakioituja prosessimalleja. Keskeinen osa pilvimigraatioprosessia on valita sopivin strategia pilvimigraatiolle useiden vaihtoehtoisten tilanteesta riippuvien vaihtoehtojen joukosta. Migraatiostrategia määrittelee keskeiset migraatioprosessin vaiheet sekä käytettävän pilviarkkitehtuurin sekä palvelumallit.
Nykyiset pilven migraatiomenetelmät eivät erityisesti huomioi tai määrittele migraatiostrategian valintaa määrääviä tekijöitä. Migraatiostrategian valinta on kriittinen osa pilvimigraation suunnittelua, johon tyypillisesti osallistuu useita eri organisaatioita ja asiantuntijoita. Tässä opinnäytetyössä esitetään ryhmittely sekä tekijät, jotka ohjaavat pilvimigraatiostrategian valintaa. Tekijät on johdettu nykyisistä pilvimigraatiomenetelmistä ja -prosesseista. Tekijät on validoitu deduktiivisella temaattisella analyysillä käyttäen kvalitatiivisia tapaustutkimuksia ja niistä saatuja haastattelutietoja. Pilvimigraatiostrategioihin vaikuttavien tekijöiden tunnistamisella ja käsittelyllä voidaan parantaa pilvimigraatioiden onnistumista ja tehostaa pilvimigraatioiden suunnittelua.Organizations are adopting cloud technologies at an increasing rate. Significant share of growth of cloud deployments is coming from application migrations to cloud computing. Migrating existing legacy applications to cloud computing platform is not a trivial task.
A migration methodology will help migrating applications to cloud more effectively and with lower risk than doing it by trial and error. A part of the cloud migration process is the selection and execution of a migration strategy amongst the possible, situational and commonly used options. The migration strategy defines many of the migration process activities since they depend on cloud architecture and service and deployment models, which are implicitly set by the migration strategy.
Many of the existing cloud migration methods don’t specify the factors that lead to migration strategy selection. The migration strategy selection is a critical part of migration planning involving multiple organisations and several individuals. This thesis presents categories of migration strategy factors derived from a cloud migration methodology and process framework review and validates the factors by doing a deductive thematic analysis against qualitative case study interview data. By having a clarity and a way to address the migration strategy factors, will increase the migration success rate and reduce planning time
An empirical study of the systemic and technical migration towards microservices
Context: As many organizations modernize their software architecture and transition to the cloud, migrations towards microservices become more popular. Even though such migrations help to achieve organizational agility and effectiveness in software development, they are also highly complex, long-running, and multi-faceted. Objective: In this study we aim to comprehensively map the journey towards microservices and describe in detail what such a migration entails. In particular, we aim to discuss not only the technical migration, but also the long-term journey of change, on a systemic level. Method: Our research method is an inductive, qualitative study on two data sources. Two main methodological steps take place – interviews and analysis of discussions from StackOverflow. The analysis of both, the 19 interviews and 215 StackOverflow discussions, is based on techniques found in grounded theory. Results: Our results depict the migration journey, as it materializes within the migrating organization, from structural changes to specific technical changes that take place in the work of engineers. We provide an overview of how microservices migrations take place as well as a deconstruction of high level modes of change to specific solution outcomes. Our theory contains 2 modes of change taking place in migration iterations, 14 activities and 53 solution outcomes of engineers. One of our findings is on the architectural change that is iterative and needs both a long and short term perspective, including both business and technical understanding. In addition, we found that a big proportion of the technical migration has to do with setting up supporting artifacts and changing the paradigm that software is developed
- …