AceInfo Centers of Excellence

Collaborate. Innovate. Integrate.

 

DevOps

DevOps

DevOps is a practice emphasizing clear and consistent communication and collaboration between the development and operations teams during build, test, and deploy processes, among others. DevOps is about automation, about how you can transition your product from a starting point. Critical features include a continuous process, frequent inspections, and frequent feedback. The Development (Dev) and Operations (Ops) team begin coordinating right from the concept phase, working as an integrated team. DevOps focuses on creating visibility between teams and transparency across SDLC. Continuous Integration and Continuous Delivery (CI/CD) is utilized in Agile software engineering. CI/CD emphasizes smaller changes, continuous integration of code through frequent check-ins, thorough configuration management and automated testing, consistent user feedback, quick rollback of builds, and continuous build and deployments.

AceInfo employed DevOps for multiple programs via re-engineering applications and migrating them to AWS cloud, and utilizing toolsets such as Redmine, Git, Gerrit, Jenkins, Docker, Foreman and Puppet. The recent Agile Digital Services prototypes for GSA and EPA were developed by using open source technologies, DevOps and AWS Cloud platforms, rapidly within 2 week sprints, utilizing Selenium, GitHub, Docker, and other DevOps Services.

A DevOps maturity model can be utilized to plan and evolve the DevOps transformation for customers.

We have utilized software containerization using Docker, for customer projects. Docker is an open source project, used to create containers for software applications. “Package Once Deploy Anywhere (PODA) with all dependencies” is achieved through Lightweight containers that use infrastructure resources efficiently and are easy to share and collaborate, increasing portability. Application services can be quickly scaled (spin up and down in seconds) during peak customer demand and eliminating environment inconsistencies. When issues are identified, problem containers can be isolated and quickly roll-backed to make changes.