From Imola Informatica
IT Consultant and Enterprise SOA Architect, graduated in Computer Engineering in 2009 at the University of Bologna (Italy) with more than 8 years of experience in architectural integration projects in finance and insurance companies. He participated in the design and definition of the SOA roadmap of three leading Italian banking groups, playing a coordinator role during the implementation phases. He has a particular interest in Service Oriented Architecture, Microservices Architecture, Application Containers and DevOps practices.
When we deal with continuous delivery, we often forget to take data migrations into account: this presentation describes a success case of a continuous release automation process that integrates database changes. We discuss the initial technical and organizational context, and we highlight the key principles that drove this initiative, as well as the most stringent (organizational and technical) constraints we had to face. We also discuss how we devised a suitable software development and release process to encompass database change automation, and the impacts on software versioning/branching models already in place. Our project deeply impacted all the steps and tools of a traditional software development and delivery toolchain, hence we provide some key technical details related to the tools involved in the main areas of such toolchain, namely DB automation, Continuous Integration, Source Code Management, Build and Artifact management, Chat management, Security and configuration management. We conclude with key lessons learned in the process, and depict some of the most relevant (business and technical) initiatives this novel approach is unlocking for our customer right now.