+ All Categories
Transcript

How to Scale Continuous Delivery in the cloud

Instructions

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Thanks for your participation and enjoy the session

Request all to take part in the survey that pops up

If you have any questions, please type them in the question tab located at the top

We will provide answers during the Q&A session towards the end of the webinar

In case if you do not receive answers to your question today, you will certainly receive answers via email shortly

Prakash NagaswamyDirector - Digital Technology,

Aspire Systems

Speakers

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Elango KanakarajiHead - Product Engineering Services,

Aspire Systems

About Aspire

Global technology services firm with core DNA of software

engineering Specific areas of expertise around Software Engineering,

EnterpriseSolutions, Testing and Infrastructure & Application Support

Vertical focus among Independent Software Vendors and Retail, Distribution& Consumer Products

1400+ employees; 100+ active customers

ISO 9001:2008 and ISO 27001 : 2005 certified

Presence across US, UK, Benelux, Middle East and India

Recognized five consecutive times as “Best Place to Work for” byGPW Institute

Agenda

Development in the Cloud

Developer Productivity

Ticket-based Code and Release Management

Agile in the Cloud

A Case Scenario

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Why Transform Development to the Cloud

Infrastructure forDevelopment

Hardware resources scaling

Anywhere, anytime access to hardware resources

Readily available environment

Development ProcessChallenges

Development process collaboration with distributed teams and Integrated code and release management for project teams

Effective implementation of key Agile principle – working software frequently

High turnaround time forcustomer requests

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

How the Cloud Helps

Build andRelease

Workspace 2

Workspace 1 Ticket 1 Env

Stage Env

Developers: Distributed Sprint team

TestersProject Team

CodeRepository

Agile Management

Workspace 2 Test Env

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Developer Productivity

Environment 1

Environment 2

Environment 1

Web Server

IDE

Local DB

Other Tools

Additional hardware is needed as requirements

grow

Customer specific environment configuration becomes time consuming

Testing on customer specificenvironment is time consuming

Increase in troubleshooting time for production bugs

Debugging process in target environment is challenging

DeveloperWork Station

Targeted Environment

Non-Cloud Environment

Develop, Check-in code, Build, Deploy

and test

Agile Development

Agile development is restricted to local environment scope

Scaling of Agile development is difficult

More time spent in configuring the virtual instances

Lack of global visibility and collaboration

Obstacles in releasing working software frequently

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Developer Productivity

Web/appserver

Test Environment

DB

Continuous Integration server

Cloud-based Source Code Repository

Development Environment with Shared Resources

Check- in/out

Auto Deployment

Cloud Environment

Manual Testing and IDE Driven Debugging

Developers

Secured login using IDE

Customer Environment

Ticket Environment

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Triggers to start the build

Releasing high quality working software more frequently

Less turnaround time for customer requests

Better collaboration and improved decision-making

Benefits

Ticket-based Code and Release Management

Release branches

Hot fix Branch

Feature branch 1

Feature branch 1

Dev MasterQA

Feature for future release

Start release branch for 1.0

Tag 0.1

Tag 0.2

Only bugfixes

Tag 1.0

Major feature for next release

Daily Updates

Serve bug fixed for production hotflix 0.2

Bug fixes from release branch may continuously merged back to develop

TIME

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Technologies for the Cloud-based Development

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Cloud-based Development in Action

OpenShift Gear 1 - Inventory Application OpenShift Gear 2 - Mortgage Application

Distributed Development Team working on a Shared instance of the Application Deployment

Distributed Development Team working on a Shared instance of the Application Deployment

Web Interface

Web InterfaceSource Code

Repo

Application Data

Jboss Config Application Jboss Config Data

Mysql Config

Source Code Repo

Web Interface

Application Data

Mysql Config Tomcat Config

Jboss Cartridge

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Shared MySQL Cartridge Tomcat Cartridge

Cloud-based Continuous Delivery

Development Environment Sharable Resources

QA Environment UAT / Staging Environment

Common Source Repository

SharableMySQL

Cartridge

Cartridge

OpenShift Cloud Setup

Developer working on open shift environment

Testers working on open shift environment

Customer validating the release

Aspire Cloud Provisioning Setup

Vagrant

Chef

OpenShift Gear 1/Ticket branch development environment 1

Jboss Cartridge

Mysql Cartridge

OpenShift Gear n/Ticket branch development environment nTomcat

CartridgeMysql

Cartridge

OpenShift Gear 1/Ticket branch QA environment 1

OpenShift Gear n / Ticket branch QA environment n

Jboss Cartridge

Mysql Cartridge

Tomcat Cartridge

Mysql Cartridge

OpenShift Gear n / Ticket branch UAT environment n

OpenShift Gear 1/ Ticket branch UAT environment 1

Jboss Cartridge

Mysql Cartridge

TomcatCartridge

Mysql Cartridge

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Beyond Cloud-based Development

OpenShift Gear 1 - Inventory Application OpenShift Gear 2 - Mortgage Application

Developer working on a instance of the Application

development / debugging with JPDA

Shared / isolated code branch for specific release / tickets

Developer working on a instance of the Application

development / debugging with JPDA

Web Interface

Web Interface Source Code

Repo

Mysql ConfigTomcat ConfigApplication Data

Source Code Repo

Source Code Repo Web Interface

Application Data

Application Data

Mysql Config Tomcat Config

Tomcat Config

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Shared MySQL Cartridge Tomcat Cartridge

Build your Environment Dynamically

Local Copy in Openshift VM

Test Scripts Gear

update config(if applicable)

Application

Chef provisionedcomponent

s

On success of test scripts

Application Gear Data / Config VM

Application

Chef provisioned components

Cloud Infrastructure

App Data Config

Master branch in source repository

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Master branch insource repository

Check-outmergechanges

OpenShift QA – Flow Diagram

A Case Scenario – A Social Media Monitoring Solution

A leading a leading venture capitalist.

To decide on which company to invest, they relied on the data collected via social media

As a part of their due diligence process they were in need of a digital intelligence solution

Scenario Need

A Digital Intelligence Solution

Quick Delivery of the Product

Product life-cycle to be minimized

Scope Involved

UI design and development

Technology recommendation

Architecture, design and

implementation

Social Media integration & automated

authentication

Automated data collection

Deployment architecture and

deployment

Cloud deployment and support

Lifecycle Agile

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

A Case Scenario – A Social Media Monitoring Solution

Process Involved

Cloud-based Development

©1996-2015 Aspire Systems, Inc. US | UK | BENELUX | ME | IND

Ticket-based Code and Release Management

Redhat's Open Shift (PAAS) cloud environment integrated with local IDE

Features and releases through ticket based code and release management

Continuous Integration and Continuous Deployment of builds using Jenkins

Automated Unit test cases to ensure stability of the builds

SONAR to ensure code compliance and minimize errors

Chef integrated with Jenkins to configure all application updates for production

ServiceNow integrated with Chef to track and optimizedevelopment and deployment automation

On-time release of the product with quality

Automated quality review tools

Support customer tickets right

away

Better progress monitoring on Individualdevelopers

Customer specific testing made much easier

Zero downtime with Immutable deployment

Better progress monitoring on individual developers

Features Benefits

Thank you!


Top Related