Signposting

Barclays Corporate
Quantum DOTs
Agenda
Introduction
Background
Automating Release Management
Into DevOps

Future steps
Agenda
Introduction
Background
Automating Release Management
Into DevOps

Future steps
Agenda
Introduction
Background
Automating Release Management
Into DevOps

Future steps
Background

Retail &
Business
Banking

Other

Investmen
t

External…

Corporate

ABSA

Barclaycard
Background

Retail &
Business
Banking

Other

Investmen
t

External…

Corporate

ABSA

Barclaycard

GTIS
Agenda
Introduction
Background
Automating Release Management
Into DevOps

Future steps
Quantum – Automating Build and Release

Log It

Build It

Store It

Deploy It
Quantum – Automating Build and Release

Log It

Build It

Store It

Nexus

Deploy It
Quantum – Automating Build and Release

Log It

Build It

Store It

Nexus

Deploy It
Quantum – Automating Build and Release

Log It

Build It

Jenkins

Store It

Nexus

Deploy It
Quantum – Automating Build and Release

Log It

svn/Git

Build It

Jenkins

Store It

Nexus

Deploy It
Quantum – Automating Build and Release

Log It

svn/Git

Sonar

Build It

Jenkins

Fortify

Store It

Nexus

Doxygen

Deploy It
Quantum Build and Release
Agenda
Introduction
History
Automating Release Management
Into DevOps

Future steps
Environment Management

Testing

Build and Release

Release and Planning

Quantum DOTs
Quantum Requirements and Planning

Think It

Code It

RRC

RTC
Quantum – Build and Release

Think It

Code It

RRC

Log It

Sonar

Jenkins

Fortify

Store It

Deploy It

RTC

svn/Git

Build It

Nexus

Doxygen

Nolio
Quantum Testing
Test It
Think It

Code It

RRC

Log It

Sonar

Jenkins

Fortify

Store It

Deploy It

RTC

svn/Git

Build It

Nexus

Doxygen

Nolio

QC

HexaWise

RTVS/RIT
Quantum Environment Management
Test It
Think It

Code It

Log It

Build It

Store It

Deploy It
Operate It

RRC

RTC

svn/Git

Sonar

Jenkins

Fortify

Nexus

Doxygen

Nolio

QC

HexaWise

Evolven

RTVS/RIT
Quantum – Joining up the DOTs
Test It
Think It

Code It

Log It

Build It

Store It

Deploy It
Operate It

RRC

RTC

svn/Git

Sonar

Jenkins

Fortify

Nexus

Doxygen

Nolio

QC

HexaWise

Evolven

RTVS/RIT
Agenda
Introduction
History
Automating Release Management
Into DevOps

Future steps
Quantum – The Missing Link
Test It
Think It

RRC

Code It

Log It

Build It
Store
Understand it It

Deploy It
Operate It

RTC

svn/Git

Sonar

Jenkins

Fortify

Nexus

Doxygen

QC

HexaWise

Evolven

RTVS/RIT
Quantum – Automated Deployment
Test It
Think It

Code It

Log It

Build It

Store It

Deploy It
Operate It

RRC

RTC

svn/Git

Sonar

Jenkins

Fortify

Nexus

Doxygen

Nolio

QC

HexaWise

Evolven

RTVS/RIT
Quantum - Automated Deployment

35 | Barclays presentation title | 30 January 2012
Quantum - Automated Deployment

36 | Barclays presentation title | 30 January 2012
Quantum Automated No Touch Deployment

37 | Barclays presentation title | 30 January 2012
38 | Barclays presentation title | 30 January 2012

Journey into dev ops

Editor's Notes

  • #17 Integrated into the IDE of choice, eclipse (in this case), Visual Studio, Intellij
  • #18 Provides traceability from your change to your code. This can then be picked up as part of the build job, and be used to populate a release note. Being able to extract information from your change management system, and version control, to more easily provide feedback regarding the content of a build/release candidate
  • #19 A centralised master server provides a facility to manage multiple projects/programmes, using RBAC (role based access control), jobs for each application build monitor the version control service, and can be run on one of several slave machines that actually perform the build operations.This allows the application development to build on a suitable schedule, every minute, hourly, nightly, on as soon as your developer commits the change, you decide based on your project needs.In this case we have a developer making changes for the release 1.0.1 version of the app, the build job kicks off automatically, perofrming any/all actions performed as part of the build scriptUnit testingUploading of the release candidates into the DSLAutomatic deployment of the release candidates using the deployment tooling of choice (currently bladelogic, but moving to Nolio)Exteded Analysis Capabilty using Sonar
  • #20 Static Code analysis using SonarQubeProvides a measure of the quality of your code, against defined standards within the Bank. You can drill down to the code to understand what the issues are, and remediate as necessary.
  • #21 Reusing generic analysis scripts from GIS, we can perform security vulnerability static analysis of source code.Allowing development teams to remediate secuirity issues earlier in the lifecycle, reducing the impact of identifying issues later as a result of penetration testing, i.e. delaying the release of new features/applications into the estate, missing regulatory milestones, customer expections etc.
  • #22 Doxygen – automatically document your code, generate standard industry visual diagrams and nomclanture, making it easier for your teams to understand the application(s) and the impact of changes (particularly RtB who may have limited visibility of the development process).
  • #23 Provides a secure location in which to centrally manageRe-usable ComponentsRelease CandidatesThese release candidates are uploaded as part of the build process, making them available for re-use in other applications or for deployment into particular environments.RBAC provides limited access to artefacts based on
  • #25 In the first instance we deploy using bespoke mechanisms; in this case, we use ssh to connect to our target environment, and deploy a new version of the application to test.To make deployments consistent we need to adopt the same processes across all environments not just development, bringing the development of the deployment capability into the SDLC. By the same token we can resolve and remediate issues with the deployment mechanism earlier in the lifecycle
  • #36 Nolio provides the mechanism to develop a deployment capability across multiple environments.Automation Studio provide the facility to visual elaborate your deployment process, defining the sequence of actions that need to be performed, in what order and on what targets, across multiple architectures. Integrations to existing bank tooling such as service now, allows gateway processes to be defined and enforced.
  • #37 You can also invoke releases via nolio, using the same defined processes, allowing deployments to be managed as part of a project or programme, allowing multiple applications to be deployed automatically into testing and/or production as necessary.
  • #38 Automated Deployment can then be invoked from the continuous integration and build service, providing a no touch deployment capability.The integration of Nolio into Service Now, provides a capability to run a gateway process to ensure that deployments only happen when change is Approved (which automatically places the change in the correct state)The Defined Change window is open, i.e. date and time.