1,992 research outputs found

    Microservices Architecture Enables DevOps: an Experience Report on Migration to a Cloud-Native Architecture

    Get PDF
    This article reports on experiences and lessons learned during incremental migration and architectural refactoring of a commercial mobile back end as a service to microservices architecture. It explains how the researchers adopted DevOps and how this facilitated a smooth migration

    Continuous integration and application deployment with the Kubernetes technology

    Get PDF
    Poslední dobou by téměř každý chtěl své aplikace nasadit do Kubernetes. Jenže pro plné využití Kubernetes je třeba přijmout s otevřenou náručí postupy průběžné integrace (CI) a nasazení (CD). Je třeba CI/CD pipeline. Ale k dispozici je až zdrcující množství open-source nástrojů, kde každý pokrývá různé části celého procesu. Následující text vysvětlí základy technologií, kterých bude pro pipeline třeba. A následně shrne některé z populárních open-source nástrojů využívaných pro CI/CD. Z open-source nástrojů navrhneme pipeline. Závěrečné porovnání možných řešení (včetně proprietárních) poskytne čtenáři konkrétní tipy a rady ohledně vytváření vlastní pipeline.It seems nearly everyone would like to deploy to Kubernetes nowadays. To efficiently leverage the power of Kubernetes one must first fully embrace continuous integration (CI) and deployment (CD) practices. A CI/CD pipeline is needed. But there is an overwhelming amount of open-source tools that cover various parts of the whole process.The following text explains the basics of the underlying technologies needed for a pipeline deploying to Kubernetes. And subsequently summarizes some of the popular open-source tools used for CI/CD. Then it designs a working pipeline from the researched tools. Finally, it summarizes some of the possible pipelines (including proprietary) and provides the reader with specific bits of advice on how to implement a pipeline

    Issues on applying continuous integration in mobile application development : a case study

    Get PDF
    In recent years, the mobile application market has challenged developers to develop and release quality applications rapidly. This fierce competition requires application development to be conducted in an efficient way. Continuous integration (CI) is a software development practice which focuses on automation. Applying CI practice into the mobile application development properly helps developers have an effective application development. By conducting case study on the project Seutuhaku at Observis Oy, the author shows how CI is applied to mobile application development. The case study design and the steps of applying are discussed in this thesis. The results of the case study highlight the advantages of the new development practice when compared with the previous development practice. Moreover, issues of applying the new development practice such as the vision of project leaders and the commitments of developers are listed and discussed. It is to be hoped that the results of the case study are able to help other mobile application developers pay attention to CI and apply it appropriately

    Melhoria das práticas de construção de software: um caso de estudo

    Get PDF
    Mestrado em Engenharia de Computadores e TelemáticaEm muitos projetos de desenvolvimento de software não são utilizados processos e práticas explícitos com o intuito de garantir a qualidade do produto final. Nesses casos, a organização do ambiente de construção nasce das acções imediatas do dia-a-dia da equipa de desenvolvimento de forma não estruturada e não escalável. No contexto dos projetos de investigação com desenvolvimento de software, em que as equipas são marcadamente mutáveis, a definição de estratégias para o processo de construção de software é essencial para agilizar o desenvolvimento, aumentar a produtividade e controlar a evolução do produto. Este trabalho visa a análise e definição de estratégias para a construção de software usando como caso de estudo o projeto Rede Telemática Saúde (RTS) do Instituto de Engenharia Eletrónica e Telemática de Aveiro, e a sua implementação, através da introdução de boas práticas e ferramentas que permitem melhorar a evolução do sistema. A implementação dessas estratégias inclui disciplinas de gestão de configurações, que asseguram a consistência das versões do projeto e respetivas dependências, e um ambiente de integração contínua que controla todo o código-fonte produzido pela equipa de programadores usando testes automatizados. Cada versão é composta por um conjunto de tarefas ou tópicos atribuídos a cada colaborador que são geridos por critérios de prioridade, alavancando a agilidade do processo de desenvolvimento. Todo o ciclo é representável numa plataforma de gestão dessas tarefas, essencial à gestão de alto nível. Complementarmente, realizou-se um estudo para caracterizar as práticas correntes no processo de construção de software, através de um inquérito à indústria de software portuguesa. As estratégias propostas e implementadas permitiram redefinir o processo de construção no projeto RTS, introduzindo um maior controlo sobre a linha de produção, especialmente na identificação antecipada de defeitos e controlo de versões. Estes resultados estão alinhados com as necessidades prioritárias identificadas no inquérito à indústria.Software projects often neglect the use explicit processes and practices to ensure final product quality are. On those cases, the arrangement of the construction environment arises from pressing needs of the development team daily routine in a non-structured and non-scalable way. In the context of research projects that need software development, in which teams are strongly mutable, the definition of strategies for software construction practices is essential to streamline development, increase productivity and to control the product evolution. This study aims at analyzing and define software construction strategies using as a case study the Rede Telemática Saúde project (RTS) of the Institute of Electronics and Telematics Engineering of Aveiro (IEETA), and their implementation, by introducing best practices and tools that help improving the system evolution. Such strategies include particular topics of configuration management, which ensure consistency of versions and their dependencies, and a continuous integration environment by validating the source-code produced by developers using automated testing. Every version is composed of a set of tasks or topics particularly assigned to each team member and managed by priority criteria to leverage the agility of the development process. Such tasks and the whole development cycle are mapped on a management platform, which is essential to high-level management. Additionally, an industry study was carried out to characterize current practices on software construction process, through a survey to the Portuguese software industry. The proposed and implemented strategies allowed redefining the construction process on the RTS project, introducing more control over the production line, especially on version control and early identification of defects. Those results are aligned with identified priority needs in the industry survey

    Report from GI-Dagstuhl Seminar 16394: Software Performance Engineering in the DevOps World

    Get PDF
    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

    Advances in Telecare over The Past Ten Years

    Get PDF
    This article reviews advances during the past decade or so in telecare (ie, computer-supported social care at home). The need for telecare is discussed along with how it relates to social and health care. The expected benefits of telecare are also discussed. The evolution of telecare technology is reviewed, covering various system generations. The capabilities of present day telecare are covered, along with its advantages, limitations, and barriers to uptake. Recent evaluations and exemplars of telecare are discussed. The user requirements for telecare are presented, complemented by a discussion of the issues in user and professional acceptance. The article concludes with a summary of past developments in telecare and the prospects for the future

    Challenges for the adoption of model-driven web engineering approaches in industry

    Get PDF
    Model-Driven Web Engineering approaches have become an attractive research and technology solution for Web application development. However, for more than 20 years of development, the industry has not adopted them due to the mismatch between technical versus research requirements. In the context of this joint work between academia and industry, the authors conduct a survey among hundreds of engineers from different companies around the world and, by statistical analysis, they present the current problems of these approaches in scale. Then, a set of guidelines is provided to improve Model-Driven Web Engineering approaches in order to make them viable industry solutions.Facultad de InformáticaLaboratorio de Investigación y Formación en Informática Avanzad

    Agents for educational games and simulations

    Get PDF
    This book consists mainly of revised papers that were presented at the Agents for Educational Games and Simulation (AEGS) workshop held on May 2, 2011, as part of the Autonomous Agents and MultiAgent Systems (AAMAS) conference in Taipei, Taiwan. The 12 full papers presented were carefully reviewed and selected from various submissions. The papers are organized topical sections on middleware applications, dialogues and learning, adaption and convergence, and agent applications
    corecore