release management with jira at blackrock
TRANSCRIPT
Release Management with JIRA at BlackRock
GABRIEL TIU • DIRECTOR • BLACKROCK JP PARAMOR • DIRECTOR • BLACKROCK
Agenda B l a c k R o c k a n d o u r C h a l l e n g e s
P r o c e s s S o l u t i o n
T e c h n o l o g y S o l u t i o n
R e l e a s e P a t h - J I R A
BlackRock & our Challenges B l a c k R o c k & o u r C h a l l e n g e s
P r o c e s s S o l u t i o n
T e c h n o l o g y S o l u t i o n
R e l e a s e P a t h - J I R A
Family of exchange-traded funds (ETFs)
We’re the world’s largest Asset Management firm with over 4.77 trillion dollars under management
End-to-end investment platform
Investment and Risk Management: Delivering unbiased advice and customized solutions
Technology Alignment to Business
Product Group A Product Group B … X.Y.Z Development Services
Product Group Owner
Team Owners
Teams & Developers
Business Group A Business Group B … X.Y.Z
Finance Gurus
Low Risk
High Risk
Medium Risk
Aladdin at BlackRock
Client A Client B Client C Client D … Client Z
Development &
Testing
Environments
500 Wkly Deployments
81 M Lines of Code
4k Technical Staff
By the numbers
65 Distinct Clients
DOG FOOD, eat it Leverage and integrate existing BlackRock technologies
Holistic SDLC
WAgilefall
Idea inception to production deployment
Support any development methodology
Bespoke Needs
Key Process Requirements
Multi-level reviews & approvals
Dynamic risk-based impact of change
One Release through multiple deployments, tracing the origins of
rollbacks
Transparency of changes across
BlackRock and Clients
Volume & Change Types
Interface with existing process
Useable by all Development Methods
Control Relationships & Dependencies
Visibility Scalability Extensibility
Technology Solution
T e c h n o l o g y S o l u t i o n
P r o c e s s S o l u t i o n
B l a c k R o c k & o u r C h a l l e n g e s
R e l e a s e P a t h - J I R A
Key Technology Solution
Workflow, Issuetypes, Screens
Subtasks, Links Dashboard, Filters, Subscriptions, Notifications
Flexible & Scales in volume of issues and
users
SDK, Plugin library, APIs
Control Relationships & Dependencies
Visibility Scalability Extensibility
ReleasePath Plugin Developed our own functionality via Atlassian’s JIRA SDK. E.g. Voting field
Integrations
Alter JIRA Terminology
Aladdin Dashboard, Software Release Tool validation via REST API, ReleasePad (iOS)
With language packs, Issues became Packets, Injected a Help Menu
Extensibility
JIRA … ReleasePath
Software Development Life Cycle
Intelligent Voting
Talking our language
ReleasePath Technology Solution
Control Relationships & Dependencies
Visibility Scalability Extensibility
Release Packet Parent Issue Types represents the release concept
Deployment Packets
Subtask automation
Subtasks represent individual deployments to given clients on specific dates
Bob Swift’s, Clone Plus and Create on Transition streamlines issue creation
Relationships and
Dependencies
JIRA … ReleasePath
Type your annotation here, the dotted line can be moved and/or re-sized.
Type your annotation here
Release Packet Vs Deployment Packet
Controlled Cloning
ReleasePath Technology Solution
Control Visibility Relationships & Dependencies
Scalability Extensibility
Email Templates Customisable emails via velocity templates
Dashboard Publishing
PDF View
Dashboard Distribution plugin (catWorkX) allows instant setup for new starters
PDFView (Midori) plugin provided scriptable templates for custom PDF generation
Visibility
JIRA … ReleasePath
Embedded Attachments
Concise PDF Digest
ReleasePath Technology Solution
Control Scalability Relationships & Dependencies
Visibility Extensibility
Actionable Notifications EBF Approvals via email and Jelly scripts
Packet Templating
Speed of Delivery
A Dashboard of existing templates for regular release, using the Clone Plus plugin
From prototype to polished solution in hours not days or weeks allows us to be agile to ever evolving requirements
Scale
ReleasePath
ReleasePath Technology Solution
Scalability Control Relationships & Dependencies
Visibility Extensibility
Workflow Controls Branch workflow based on risk and need for co-ordination or SME review
Issues Types
Appropriate Controls
Different types of releases requiring different workflow approvals
Fast track Workflow Options for low risk changes
Control
Plugins
Clone Plus !Bob Swift!
Toolkit Plugin!Atlassian!
Create on Transition! Bob Swift!
Misc Custom Fields!Innovalog!
Dynamic Forms!Intenso!
nFeed !Valiantys!
JIRA SU! Plugin People!
Dashboard Distribution!catWorkX!
Misc Workflow Extensions!Innovalog!
Suite Utilities!Beecom!
Script Runner!Jamie Echlin!
PDF View!Midori!
Calendar Plugin!Atlassian!
Lots of Interfaces
Although making changes in JIRA is quick and easy, having lots of external dependencies increases the Risks involved with change.
Upgrades
Version Control
API dependencies and customizations makes JIRA upgrades are non trivial.
Metadata changes are manual and remain comingled with JIRA issue data.
Challenges building on top of JIRA
ReleasePath - JIRA
R e l e a s e P a t h - J I R A
P r o c e s s S o l u t i o n
T e c h n o l o g y S o l u t i o n
B l a c k R o c k & o u r C h a l l e n g e s
! !
Packet Approval
Packet Review
Voting Approval Tracking
ReleasePad – JIRA integration with iPad
Critical Mass Identify enough need for the change
Support
Timing
Listen to your business and users, they will tell you what is needed
Process is ever changing. Do what you can when you can
Final Thoughts
Thank you!
GABRIEL TIU • DIRECTOR • BLACKROCK JP PARAMOR• DIRECTOR • BLACKROCK