40
Golden Tips for Making JIRA Hum Peter White (Atlassian) & Joanna Thurmann (Polycom) JIRA Administrivia

Administrivia: Golden Tips for Making JIRA Hum

Embed Size (px)

DESCRIPTION

JIRA is a powerful tool that can be used for many different things. Often the critical path to a successful deployment is configuring and administering the system properly. This session explores best practices in JIRA administration, with practical experiences from JIRA customer experts.Customer Speaker: Joanna Thurmann of PolycomKey Takeaways: * General tips and tricks on administration * Security, workflow and performance configurations * Ideas for improving adoption and uptake

Citation preview

Page 1: Administrivia: Golden Tips for Making JIRA Hum

Golden Tips for Making JIRA Hum Peter White (Atlassian) & Joanna Thurmann (Polycom)‏

JIRA Administrivia

Page 2: Administrivia: Golden Tips for Making JIRA Hum

Agenda

  Atlassian Support Perspective (pw)‏ o Know your JIRA o Administration tips o Resources

  Tips from the trenches (jt)‏ o JIRA at Polycom o Real-world best practices

Page 3: Administrivia: Golden Tips for Making JIRA Hum

Peter White…

Atlassian Support Engineer

Page 4: Administrivia: Golden Tips for Making JIRA Hum

JIRA Works most problems with JIRA are configuration related

  Having problems? o Documentation – all in one place o Forums o Knowledge Base o Atlassian Support

  Avoid these problems! o Staging server o TEST TEST TEST!

Page 5: Administrivia: Golden Tips for Making JIRA Hum

But I just want to tell the time! then you need to understand how it works

Page 6: Administrivia: Golden Tips for Making JIRA Hum

JIRA is very flexible JIRA is very complicated

  Use simple configurations o Consistent naming

  Limited number of administrators o Outsource project administration with roles

  Document your changes   Don’t get frustrated

o Support Engineers learn new things about JIRA all the time and we use it every day!

Page 7: Administrivia: Golden Tips for Making JIRA Hum

JIRA is Well Documented there is waaaay too much to read about JIRA

  Where do you start? o JIRA Quickstart guide o JIRA 101

  What next? Topics to understand: o Backups o Workflows o Roles & Groups o Plugins

Page 8: Administrivia: Golden Tips for Making JIRA Hum

Tip#1: Turn off XML Backup

  Use native database tools   They are faster, and guaranteed

consistent   During XML backups, the database is

not locked

Page 9: Administrivia: Golden Tips for Making JIRA Hum

Tip#2: Use Roles

  Minimizes the number of schemes   Allows delegation of administration   Use Scheme Tools to migrate from

groups to roles

Page 10: Administrivia: Golden Tips for Making JIRA Hum

Tip#3: Workflow Drafts

  Pre-draft workflow change updates all issues

  With drafts usually only the workflow is changed (Faster!)‏

Page 11: Administrivia: Golden Tips for Making JIRA Hum

Tip#4: Useful Plugins

  Useful plugins you may not know about:   JIRA Suite Utilities   JIRA Groovy Plugin   Visualizing JIRA Workflows   SU Plugin

Page 12: Administrivia: Golden Tips for Making JIRA Hum

Tip#5: Customizing text in JIRA

  Use the JIRA translation file to change wording

  Modify the velocity templates for email notifications

Page 13: Administrivia: Golden Tips for Making JIRA Hum

Tip#6: Silent Killers

  Subscriptions (to groups eg JIRA-users)‏   Messages in POP accounts that don’t go away / Concurrent services   Forgotten XML backup service

Page 14: Administrivia: Golden Tips for Making JIRA Hum

Tip#7: Quick java performance boosts

  -XX:+UseParallelOldGC   -XX:+ConcMarkSweepGC

Page 15: Administrivia: Golden Tips for Making JIRA Hum

Resources

  Guides to read o Creating issues and comments from email o  Troubleshooting issues and comments from email o  JIRA Workflows

  Bug and feature database   Most popular feature requests

Page 16: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL

Joanna Thurmann JIRA Systems Administration June 1, 2009

Administrivia: Tips from the Trenches

Page 17: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 2

  Polycom is the global leader in telepresence, video, and voice solutions

  Polycom allows you to connect anytime, anyplace and with any device in a virtual experience as natural as being there

  www.polycom.com

[email protected] – JIRA Systems Administrator

Page 18: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 3

  3 ½ yrs old

  Single global instance   ~24x7

  Migrated from 7 other systems

  Internal & External

•  130,000+ issues •  120 projects •  340 custom fields •  80 workflows •  3900 users (~300 concurrent) •  340 groups

Page 19: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 4

  Buy Enterprise Edition

  Determine ‘must-have’ vs ‘nice-to-have’ features   Get familiar with the JIRA ‘wish-list’

  Know JIRA limitations

  Develop standards   Allow play in a sandbox

  Good Training   Do Barn raising* – worked for us

Page 20: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 5

  Search Limitations   Our Workaround: Custom dashboards, Custom field search

page, Export to Excel   Permission Limitations

  Our Workaround: workflow transition screens & action conditions   No subcomponents or subversions

  Our Workaround: cascaded select fields   Cannot edit or effective-date custom field options:

  Our workaround: ‘archived’ field equivalents, bulk edits   Cannot rename users or groups after creation

Page 21: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 6

Page 22: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 7

Page 23: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 8

  Embrace ‘brute-force’

  Use available methods   Avoid SQL inserts

  Migrate open-issues only

  Create links to old system   Do user mapping before you migrate

  Get a good Atlassian development partner (CustomWare)

Page 24: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 9

Page 25: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 10

  Setup 1-2 staging instances

  Inspect the JIRA logs for errors or warnings   Add log4j.properties entries to audit execution of plugins

  On-demand Training - write a guide, record a session

  User Communication   SQL warnings* – don’t do what we did

Page 26: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 11

  What to document?   Everything

  Why document?*   The last JIRA upgrade at Polycom would have sunk without it

Page 27: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 12

Page 28: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 13

  Standardize

  Less is more   Custom Fields - Limit Context & Reuse

  Determine Product Structure

  Use Project Roles – e.g. Polycom Partner access   Understand the RESOLUTION field* – we didn’t and it cost us

Page 29: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 14

Page 30: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 15

Who system admin (2) divisional jira-administrators (12)

Why Knows the system better Knows the business better

What   Manage system fields (priorities, issue types, resolutions, statuses)

  Create Projects

  Manage users/groups

  Define standards

  Approve plugins

  Manage security

  Manage workflows

  Manage components/versions

  Manage custom field values

  Bulk operations

  Create shared filters, dashboards & group filter subscriptions

  Maintain permissions   Maintain notifications

How Communicate well Train them well

Page 31: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 16

  Use Plugins conservatively

  Wait for compatible versions   Beware of leaks

  Consider performance

  Review JIRA logs for warnings & errors   Beware of potential end-of-life

Beware:

Once you’ve deployed a plugin, it’s hard to pull it out

Page 32: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 17 Back to Contents

  Allocate sufficient memory

  Buy adequate hardware   Consider JIRA Clustering & MultiSite solutions from WANdisco

  Archiving

JIRA Environment at Polycom:   HP ProLiant DL580 G4, 4 x 3.4 GHz Dual Core processors   8 GB of RAM (3.5 for Java, 2 for SQL Server)   Windows Server 2003 Standard Edition 64-bit   SQL Server 2005 Standard Edition   JIRA 3.13.3, JDK 1.6

Page 33: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 18

Page 34: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 19

  http://www.customware.net/

  CustomWare is an Atlassian Partner providing rapid implementation, training and support to Atlassian customers worldwide

  CustomWare worked on and offsite

  Strong Enterprise Integration background, understanding of Web Services, Siebel etc.

  Fast, reliable & thorough – they *really* know the Atlassian products

  Have a large team and 7 x 24 support   Helped us with some complex custom Bugzilla migrations

  Have lots of plugins for JIRA and Confluence, including Salesforce.com integration for both products.

Page 35: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 20

  Clustering balances workload across servers at a single site over a LAN

  MultiSite balances workload across multiple sites over a WAN and resolve WAN latency issues

  Both solutions can be implemented in combination

  Provides self-healing & eliminates risk in disaster recovery

Back to Contents

Page 36: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 21

  Schedule regular Java restarts - to clear memory

  Schedule reindexes – since index exceptions can occur

  Run integrity checker regularly and fix errors

  Schedule multiple backup services to different locations

  Do secondary database-based backup

  Backup attachments

Page 37: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 22

  Search Limitations:   Limited Boolean search (4.0)   cannot search for empty /null fields (4.0)   cannot search for multiple values in a cascaded select field   cannot combine search results   cannot search for components & versions across projects even if the values

are the same   can only search on custom fields across projects if the prj context is the same   dashboards and canned reports only get you so far

  Permission Limitations   No field-level permissions   No permissions per state   No permissions per issue type   Can’t hide time-tracking, work log or change history (e.g. for external JIRAs)   Polycom Workaround: workflow transition screens, workflow action conditions

Page 38: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 23

  Custom Fields   Limit Context by Project/Issue Type   Reuse fields (use project contexts)   Don’t put every custom field in a Global context: it clutters the Issue

Navigator   Understand the RESOLUTION field !!!!

  When an issue has a Resolution field set, JIRA considers it Closed. This affects preset filters and canned reports/queries

  set Resolution field ONLY when issue is considered closed (e.g. on Workflow Transition Screen)

  Consider a custom plugin to transfer ‘intermediate’ resolution field to system Resolution field (we run a custom plugin from CustomWare)

Page 39: Administrivia: Golden Tips for Making JIRA Hum

POLYCOM CONFIDENTIAL 24

  Determine Product Structure.   many small projects (i.e. one per product) VS.   fewer bigger projects with more components, versions, & cascading

select custom fields to group issues by ProductLine~Product and Release~Build

  You can denote the product information on an issue in these various ways   Project name itself   Components field   Version field   Custom fields: single and multiple select   Cascading select field   The first 3 can be managed by project admin. The last 2 can only be

managed by sysadmin   Limitations on cascading selects: not displayed on charts/graphs, cannot

search on multiple values in cascading select field

Page 40: Administrivia: Golden Tips for Making JIRA Hum

haveasec.com/summit

SURVEY!!