#atlassian
BARTEK GATZ 
PRODUCT MANAGER 
FILIP ROGACZEWSKI 
DEVELOPER 
ATLASSIAN 
IAN GRUNERT 
SENIOR DEVELOPER 
JIRA 7 for Developers 
building cool stuff with JIRA platforms
What we will talk about
What we will talk about 
history of 
two add-on 
platforms in 
JIRA 
Atlassian 
Connect in 
JIRA 
what’s coming 
in JIRA 7.0
What we will talk about 
JIRA 
Data Center web resources keeping in the 
loop
Where are we? 
JIRA 7.0 
JIRA 6.3 JIRA 6.4 
we are here
History 
JIRA 3.0 - first plugin system 
2004 2014
there are over 
P2 add-ons for JIRA on Marketplace
there are over 660 
P2 add-ons for JIRA on Marketplace
History 
JIRA 3.0 - first plugin system 
JIRA 4.2 - first public REST API 
2004 2010 2014
History 
JIRA 3.0 - first plugin system 
JIRA 4.2 - first public REST API 
JIRA 5.0 - stable Java and REST API 
2004 2010 2012 
2014
History 
JIRA 4.2 - first public REST API 
JIRA 5.0 - stable Java and REST API 
JIRA 5.2 - webhooks 
JIRA 3.0 - first plugin system 
2004 2010 2012 2014
JIRA in the Cloud
History 
JIRA Studio 
2004 2008 2010 2012 2014
History 
JIRA Cloud 
JIRA Studio 
2004 2008 2010 2011 2012 2014
Then we added Cloud 
JIRA - New Sales by Platform 
8,000 
6,000 
4,000 
2,000 
-00 
JIRA new customers by platform 
FY2002 FY2003 FY2004 FY2005 FY2006 FY2007 FY2008 FY2009 FY2010 FY2011 FY2012 FY2013 FY2014 
Server Cloud 
BTF OnDemand
today 
of new customers 
are choosing Cloud
today 66% 
of new customers 
are choosing Cloud
Then we added Cloud 
JIRA available for Cloud 
• continuously growing popularity 
! 
!
Then we added Cloud 
JIRA available for Cloud 
• continuously growing popularity 
! 
! 
Initially only few add-ons made available for Cloud 
• while customers asking for more all the time 
! 
!
Why don’t we have more P2 add-ons for Cloud 
P2 add-on code works in the same JVM as JIRA 
• race for resources 
• potential deadlocks 
! 
! 
Mu!ltiple JIRA instances running on the same physical box 
• risk of bringing down multiple JIRA servers 
! 
!
Why don’t we have more P2 add-ons for Cloud 
P2 add-on code works in the same JVM as JIRA 
• race for resources 
• potential deadlocks 
! 
! 
Mu!ltiple JIRA instances running on the same physical box 
• risk of bringing down multiple JIRA servers 
! 
! 
RISK
so what did we do?
What is missing here? 
JIRA 
REST API 
GUI-less 
interaction 
! 
3rd 
party 
integration 
background 
tasks running 
webhooks
There you go 
JIRA 
REST API 
GUI-less 
interaction 
! 
3rd 
party 
integration 
webhooks GUI 
background 
tasks running 
GUI 
integrations
There you go 
JIRA 
REST API 
GUI-less 
interaction 
! 
3rd 
party 
integration 
webhooks GUI 
background 
tasks running 
GUI 
integrations
There you go 
JIRA 
REST API 
GUI-less 
interaction 
! 
3rd 
party 
integration 
webhooks GUI 
background 
tasks running 
OPPORTUNITY 
GUI 
integrations
There you go OPPORTUNITY 
Opportunities 
• resource independence 
• free choice of development stack 
• ability to integrate multiple services 
! 
! 
!
and this is how…
History 
JIRA Cloud 
JIRA Studio 
Atlassian Connect in JIRA 
2004 2008 2010 2011 2012 2014
Atlassian Connect add-ons in JIRA
Atlassian Connect add-ons in JIRA 
20 8 commercial 
at AtlasCamp 35 9 free 
16 commercial 
3 from Atlassian 
today 
16 free 
3 from Atlassian
Plugin point coverage 
P2 
Atlassian 
Connect 
2013
Plugin point coverage 
P2 
Atlassian 
Connect 
2014
P2 
Atlassian 
Connect 
2015 
Plugin point coverage
Atlassian Connect is the 
biggest strategic opportunity 
for JIRA Ecosystem
History 
2014
History 
P2 DOMINATION ERA START OF AC ERA 
2014
what do we have in 
JIRA Atlassian Connect 
today?
Atlassian Connect in JIRA 
JIRA AC Add-on 
Web Browser
Atlassian Connect in JIRA 
JIRA AC Add-on 
Web Browser
Atlassian Connect in JIRA 
JIRA AC Add-on 
Web Browser
Atlassian Connect in JIRA 
! 
1• REST API 
1 
JIRA AC Add-on 
Web Browser 
1
Atlassian Connect in JIRA 
1 
2 
JIRA AC Add-on 
2•webhooks 
Web Browser 
1 
! 
1• REST API
Atlassian Connect in JIRA 
JIRA AC Add-on 
Web Browser 
! 
3• GUI integration 
1 
2 
3 
3 
3 
1 
! 
1• REST API 
2•webhooks
Atlassian Connect in JIRA 
JIRA AC Add-on 
• entity properties 
4 
Web Browser 
4 
1 
2 
4 
3 
3 
1 3 
! 
1• REST API 
2•webhooks 
! 
3• GUI integration
Atlassian Connect in JIRA 
REST API in JIRA 
• over 120 REST API points (and growing) 
• most methods accepting multiple commands
Atlassian Connect in JIRA 
REST API in JIRA 
• over 120 REST API points (and growing) 
• most methods accepting multiple commands
Atlassian Connect in JIRA 
SOAP RESTification in JIRA 
• 84% of SOAP methods already covered in REST 
• took longer than expected 
• we plan to remove SOAP in JIRA 8.0 
• do not wait until the last moment 
! 
! 
! 
SOAP 
84%
Atlassian Connect in JIRA 
webhooks in JIRA 
• callback message in JSON format 
• register via GUI, REST or descriptor 
• coverage: 
• issues, 
• workflow post functions, 
• comments (*) 
• attachments (*) 
• projects (*) 
• versions (*) 
• worklogs (*) 
! 
! 
(*) work in progress
Atlassian Connect in JIRA 
! 
User interface integration 
• seamlessly blended into JIRA GUI 
• context aware 
(*) work in progress
Atlassian Connect in JIRA 
! 
User interface integration 
• seamlessly blended into JIRA GUI 
• context aware 
A Web Panel 
B Issue Tab Panel 
C Project Tab Panel 
D Report 
E Gadget (*) 
F Web Item 
G General page 
H Search Request View 
I Admin page 
J Config page 
K Dialog 
L Profile page 
(*) work in progress
Atlassian Connect in JIRA 
! 
Entity Properties 
• store and retrieve JSON data in JIRA server 
• search for it using JQL 
• coverage: 
• issues 
• projects 
• comments 
• add-on (*) 
• dashboard (*) 
(*) work in progress 
(*) work in progress
Atlassian Connect in JIRA 
! 
Entity Properties 
• store and retrieve JSON data in JIRA server 
• search for it using JQL 
• coverage: 
• issues 
• projects 
• comments 
• add-on (*) 
• dashboard (*) 
(*) work in progress 
STORE, 
INDEX 
& 
RETRIEVE 
(*) work in progress
what are we 
working on in 
JIRA?
LEGAL MUMBO JUMBO 
The following is intended to outline our general 
product direction for informational purposes 
only. It is not a commitment to deliver any 
material, code, or functionality, and should not 
be relied upon in making purchasing decisions. 
The development, release, and timing of any 
features or functionality described herein 
remains at the sole discretion of Atlassian.
Atlassian Connect in JIRA - work in progress 
! 
Support complex add-ons to be migrated to Atlassian Connect 
• close cooperation with 10 leading developers 
• requirements for real cases gathered and processed 
• common patterns found for other developers to benefit from
Atlassian Connect in JIRA - work in progress 
! 
Support complex add-ons to be migrated to Atlassian Connect 
• close cooperation with 10 leading developers 
• requirements for real cases gathered and processed 
• common patterns found for other developers to benefit from 
learn 
from few 
develop 
with scale 
in mind 
satisfy 
many
Project navigation 
Plug-able sidebar (*) 
• each entry is a web panel 
• you can add your own 
• Project Tab Panel will appear here as well 
• icon support added 
! 
! 
! 
! (*) work in progress
Project navigation 
Plug-able sidebar (*) 
• each entry is a web panel 
• you can add your own 
• Project Tab Panel will appear here as well 
• icon support added 
! 
! 
! 
! 
NEW 
(*) work in progress
Project navigation 
Plug-able project summary page (*) 
• web panel in the right section 
• remote activity streams 
• more enhancements planned 
! 
! 
! 
! 
(*) work in progress
Project navigation 
Plug-able project summary page (*) 
• web panel in the right section 
• remote activity streams 
• more enhancements planned 
! 
! 
! 
! 
NEW 
(*) work in progress
Project navigation 
Components list (*) 
• simplified list 
• Component Tab Panel removed 
! 
! 
! 
! 
(*) work in progress
Project navigation 
Components list (*) 
• simplified list 
• Component Tab Panel removed 
! 
! 
! 
! 
CHANGED 
(*) work in progress
Project navigation 
Versions list (*) 
• simplified list 
• access to new Version screen 
• Version Tab Panel removed 
! 
! 
! 
! 
(*) work in progress
Project navigation 
Versions list (*) 
• simplified list 
• access to new Version screen 
• Version Tab Panel removed 
! 
! 
! 
! 
CHANGED 
(*) work in progress
Project navigation 
Report list (*) 
• list with tiles and in categories 
• Report plugin point extended 
! 
! 
! 
! 
(*) work in progress
Project navigation 
Report list (*) 
• list with tiles and in categories 
• Report plugin point extended 
! 
! 
! 
! 
CHANGED 
(*) work in progress
Project navigation 
New Version Screen (*) 
• single source of truth for 
version 
• details of plugabily 
for P2 and AC 
being discussed 
! 
! 
! 
! (*) work in progress
Project navigation 
New Version Screen (*) 
• single source of truth for 
version 
• details of plugabily 
for P2 and AC 
being discussed 
! 
! 
! 
! 
NEW 
(*) work in progress
talk to us! 
Bartek Gatz Filip Rogaczewski
please welcome 
Ian Grunert
JIRA 7 For Developers 
Things to know and how to know them 
IAN GRUNERT • SENIOR DEVELOPER • ATLASSIAN • @iangrunert
JIRA 7 For Developers 
Data Center 
Web Resources 
Keeping in the loop
Data Center
Cache sparingly 
and cache smarter
Cluster locks are a 
code smell
Background tasks? 
Atlassian 
Scheduler
JIRA 7 For Developers 
Data Center 
Web Resources 
Keeping in the loop
Web Resources
CDN is coming
Watch your batch 
size
Make static 
resources more 
static!
JIRA 7 For Developers 
Data Center 
Web Resources 
Keeping in the loop
Plugin Framework 
Upgrade
Deprecated 
method removal
Keeping in the loop
Want less 
maintenance?
Thank you! 
IAN GRUNERT • SENIOR DEVELOPER • ATLASSIAN • @iangrunert

JIRA 7 for Developers - Bartek Gatz Filip Rogaczewski Ian Grunert

  • 1.
  • 2.
    BARTEK GATZ PRODUCTMANAGER FILIP ROGACZEWSKI DEVELOPER ATLASSIAN IAN GRUNERT SENIOR DEVELOPER JIRA 7 for Developers building cool stuff with JIRA platforms
  • 3.
    What we willtalk about
  • 4.
    What we willtalk about history of two add-on platforms in JIRA Atlassian Connect in JIRA what’s coming in JIRA 7.0
  • 5.
    What we willtalk about JIRA Data Center web resources keeping in the loop
  • 6.
    Where are we? JIRA 7.0 JIRA 6.3 JIRA 6.4 we are here
  • 7.
    History JIRA 3.0- first plugin system 2004 2014
  • 8.
    there are over P2 add-ons for JIRA on Marketplace
  • 9.
    there are over660 P2 add-ons for JIRA on Marketplace
  • 10.
    History JIRA 3.0- first plugin system JIRA 4.2 - first public REST API 2004 2010 2014
  • 11.
    History JIRA 3.0- first plugin system JIRA 4.2 - first public REST API JIRA 5.0 - stable Java and REST API 2004 2010 2012 2014
  • 12.
    History JIRA 4.2- first public REST API JIRA 5.0 - stable Java and REST API JIRA 5.2 - webhooks JIRA 3.0 - first plugin system 2004 2010 2012 2014
  • 13.
  • 14.
    History JIRA Studio 2004 2008 2010 2012 2014
  • 15.
    History JIRA Cloud JIRA Studio 2004 2008 2010 2011 2012 2014
  • 16.
    Then we addedCloud JIRA - New Sales by Platform 8,000 6,000 4,000 2,000 -00 JIRA new customers by platform FY2002 FY2003 FY2004 FY2005 FY2006 FY2007 FY2008 FY2009 FY2010 FY2011 FY2012 FY2013 FY2014 Server Cloud BTF OnDemand
  • 17.
    today of newcustomers are choosing Cloud
  • 18.
    today 66% ofnew customers are choosing Cloud
  • 19.
    Then we addedCloud JIRA available for Cloud • continuously growing popularity ! !
  • 20.
    Then we addedCloud JIRA available for Cloud • continuously growing popularity ! ! Initially only few add-ons made available for Cloud • while customers asking for more all the time ! !
  • 21.
    Why don’t wehave more P2 add-ons for Cloud P2 add-on code works in the same JVM as JIRA • race for resources • potential deadlocks ! ! Mu!ltiple JIRA instances running on the same physical box • risk of bringing down multiple JIRA servers ! !
  • 22.
    Why don’t wehave more P2 add-ons for Cloud P2 add-on code works in the same JVM as JIRA • race for resources • potential deadlocks ! ! Mu!ltiple JIRA instances running on the same physical box • risk of bringing down multiple JIRA servers ! ! RISK
  • 23.
  • 24.
    What is missinghere? JIRA REST API GUI-less interaction ! 3rd party integration background tasks running webhooks
  • 25.
    There you go JIRA REST API GUI-less interaction ! 3rd party integration webhooks GUI background tasks running GUI integrations
  • 26.
    There you go JIRA REST API GUI-less interaction ! 3rd party integration webhooks GUI background tasks running GUI integrations
  • 27.
    There you go JIRA REST API GUI-less interaction ! 3rd party integration webhooks GUI background tasks running OPPORTUNITY GUI integrations
  • 28.
    There you goOPPORTUNITY Opportunities • resource independence • free choice of development stack • ability to integrate multiple services ! ! !
  • 29.
  • 31.
    History JIRA Cloud JIRA Studio Atlassian Connect in JIRA 2004 2008 2010 2011 2012 2014
  • 32.
  • 33.
    Atlassian Connect add-onsin JIRA 20 8 commercial at AtlasCamp 35 9 free 16 commercial 3 from Atlassian today 16 free 3 from Atlassian
  • 34.
    Plugin point coverage P2 Atlassian Connect 2013
  • 35.
    Plugin point coverage P2 Atlassian Connect 2014
  • 36.
    P2 Atlassian Connect 2015 Plugin point coverage
  • 37.
    Atlassian Connect isthe biggest strategic opportunity for JIRA Ecosystem
  • 38.
  • 39.
    History P2 DOMINATIONERA START OF AC ERA 2014
  • 40.
    what do wehave in JIRA Atlassian Connect today?
  • 41.
    Atlassian Connect inJIRA JIRA AC Add-on Web Browser
  • 42.
    Atlassian Connect inJIRA JIRA AC Add-on Web Browser
  • 43.
    Atlassian Connect inJIRA JIRA AC Add-on Web Browser
  • 44.
    Atlassian Connect inJIRA ! 1• REST API 1 JIRA AC Add-on Web Browser 1
  • 45.
    Atlassian Connect inJIRA 1 2 JIRA AC Add-on 2•webhooks Web Browser 1 ! 1• REST API
  • 46.
    Atlassian Connect inJIRA JIRA AC Add-on Web Browser ! 3• GUI integration 1 2 3 3 3 1 ! 1• REST API 2•webhooks
  • 47.
    Atlassian Connect inJIRA JIRA AC Add-on • entity properties 4 Web Browser 4 1 2 4 3 3 1 3 ! 1• REST API 2•webhooks ! 3• GUI integration
  • 48.
    Atlassian Connect inJIRA REST API in JIRA • over 120 REST API points (and growing) • most methods accepting multiple commands
  • 49.
    Atlassian Connect inJIRA REST API in JIRA • over 120 REST API points (and growing) • most methods accepting multiple commands
  • 50.
    Atlassian Connect inJIRA SOAP RESTification in JIRA • 84% of SOAP methods already covered in REST • took longer than expected • we plan to remove SOAP in JIRA 8.0 • do not wait until the last moment ! ! ! SOAP 84%
  • 51.
    Atlassian Connect inJIRA webhooks in JIRA • callback message in JSON format • register via GUI, REST or descriptor • coverage: • issues, • workflow post functions, • comments (*) • attachments (*) • projects (*) • versions (*) • worklogs (*) ! ! (*) work in progress
  • 52.
    Atlassian Connect inJIRA ! User interface integration • seamlessly blended into JIRA GUI • context aware (*) work in progress
  • 53.
    Atlassian Connect inJIRA ! User interface integration • seamlessly blended into JIRA GUI • context aware A Web Panel B Issue Tab Panel C Project Tab Panel D Report E Gadget (*) F Web Item G General page H Search Request View I Admin page J Config page K Dialog L Profile page (*) work in progress
  • 54.
    Atlassian Connect inJIRA ! Entity Properties • store and retrieve JSON data in JIRA server • search for it using JQL • coverage: • issues • projects • comments • add-on (*) • dashboard (*) (*) work in progress (*) work in progress
  • 55.
    Atlassian Connect inJIRA ! Entity Properties • store and retrieve JSON data in JIRA server • search for it using JQL • coverage: • issues • projects • comments • add-on (*) • dashboard (*) (*) work in progress STORE, INDEX & RETRIEVE (*) work in progress
  • 56.
    what are we working on in JIRA?
  • 57.
    LEGAL MUMBO JUMBO The following is intended to outline our general product direction for informational purposes only. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described herein remains at the sole discretion of Atlassian.
  • 58.
    Atlassian Connect inJIRA - work in progress ! Support complex add-ons to be migrated to Atlassian Connect • close cooperation with 10 leading developers • requirements for real cases gathered and processed • common patterns found for other developers to benefit from
  • 59.
    Atlassian Connect inJIRA - work in progress ! Support complex add-ons to be migrated to Atlassian Connect • close cooperation with 10 leading developers • requirements for real cases gathered and processed • common patterns found for other developers to benefit from learn from few develop with scale in mind satisfy many
  • 60.
    Project navigation Plug-ablesidebar (*) • each entry is a web panel • you can add your own • Project Tab Panel will appear here as well • icon support added ! ! ! ! (*) work in progress
  • 61.
    Project navigation Plug-ablesidebar (*) • each entry is a web panel • you can add your own • Project Tab Panel will appear here as well • icon support added ! ! ! ! NEW (*) work in progress
  • 62.
    Project navigation Plug-ableproject summary page (*) • web panel in the right section • remote activity streams • more enhancements planned ! ! ! ! (*) work in progress
  • 63.
    Project navigation Plug-ableproject summary page (*) • web panel in the right section • remote activity streams • more enhancements planned ! ! ! ! NEW (*) work in progress
  • 64.
    Project navigation Componentslist (*) • simplified list • Component Tab Panel removed ! ! ! ! (*) work in progress
  • 65.
    Project navigation Componentslist (*) • simplified list • Component Tab Panel removed ! ! ! ! CHANGED (*) work in progress
  • 66.
    Project navigation Versionslist (*) • simplified list • access to new Version screen • Version Tab Panel removed ! ! ! ! (*) work in progress
  • 67.
    Project navigation Versionslist (*) • simplified list • access to new Version screen • Version Tab Panel removed ! ! ! ! CHANGED (*) work in progress
  • 68.
    Project navigation Reportlist (*) • list with tiles and in categories • Report plugin point extended ! ! ! ! (*) work in progress
  • 69.
    Project navigation Reportlist (*) • list with tiles and in categories • Report plugin point extended ! ! ! ! CHANGED (*) work in progress
  • 70.
    Project navigation NewVersion Screen (*) • single source of truth for version • details of plugabily for P2 and AC being discussed ! ! ! ! (*) work in progress
  • 71.
    Project navigation NewVersion Screen (*) • single source of truth for version • details of plugabily for P2 and AC being discussed ! ! ! ! NEW (*) work in progress
  • 72.
    talk to us! Bartek Gatz Filip Rogaczewski
  • 73.
  • 74.
    JIRA 7 ForDevelopers Things to know and how to know them IAN GRUNERT • SENIOR DEVELOPER • ATLASSIAN • @iangrunert
  • 75.
    JIRA 7 ForDevelopers Data Center Web Resources Keeping in the loop
  • 76.
  • 79.
    Cache sparingly andcache smarter
  • 80.
    Cluster locks area code smell
  • 81.
  • 83.
    JIRA 7 ForDevelopers Data Center Web Resources Keeping in the loop
  • 84.
  • 85.
  • 86.
  • 87.
  • 89.
    JIRA 7 ForDevelopers Data Center Web Resources Keeping in the loop
  • 90.
  • 91.
  • 92.
  • 98.
  • 99.
    Thank you! IANGRUNERT • SENIOR DEVELOPER • ATLASSIAN • @iangrunert