1,992 research outputs found
Microservices Architecture Enables DevOps: an Experience Report on Migration to a Cloud-Native Architecture
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
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
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
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
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
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
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
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
- …