Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Keeping Your Projects on Budget using GreenHopper and Tempo

3,293 views

Published on

Case study: This presentation shares the journey of Balfour's development team using JIRA Studio, including GreenHopper and Tempo. Michael shares how they use JIRA, the best practices they have learned, and the results they have achieved.

Published in: Business, Technology
  • Be the first to comment

Keeping Your Projects on Budget using GreenHopper and Tempo

  1. 1. #Summit11<br />2011.06.10 v6<br />
  2. 2. Keeping your departmenton budget<br />Using GreenHopper and Tempo<br />Michael Rainwater<br />Director Engineering<br />Twitter: @mjrainwater<br />2<br />#Summit11<br />
  3. 3. Balfour<br />3<br /><ul><li>Yearbooks
  4. 4. Letter Jackets
  5. 5. Graduation Products
  6. 6. Class Rings
  7. 7. Retail Jewlery
  8. 8. JC Penney
  9. 9. Walmart
  10. 10. Professional Sports
  11. 11. Team
  12. 12. Fans</li></li></ul><li>Balfour Organization<br />4<br />Marketing<br />Information Technology<br />Operations<br />
  13. 13. Balfour Organization<br />5<br />Information Technology<br />Development<br /><ul><li>Java, PHP, MySQL
  14. 14. Project Management</li></ul>Quality Assurance<br /><ul><li>Testing + Tech Support
  15. 15. Defect Management</li></ul>Manufacturing Support<br /><ul><li>Publishing Support
  16. 16. Mfg Quality Control</li></li></ul><li>Balfour Roles<br />Manufacturing<br />Operations<br />6<br />ITManagement<br />Marketing<br />Quality<br />Developer<br />
  17. 17. Staying On Budget<br />Operating Expenses (OPEX) vs Capital Expenses (CAPEX)<br />Tracking capitalized expenses supports increased EBITDA<br />Project expense tracking<br />Labor is generally the largest project expense<br />Client Billing<br />Detailed records supports improved client billing<br />7<br />
  18. 18. Why JIRA?<br />Balfour has been agile development for over 2 years.<br />We were using Rally Enterprise Edition to support the engineering team, but did not have enough licenses for all of our other stakeholders.<br />Last year, we decided to look more broadly for a new agile tool for the department.<br />8<br />
  19. 19. First Problem To Solve<br />Selecting a new agile tool<br />Objectives<br />Increase the number of users / licenses<br />Reduce annual total cost<br />Option to bring in-house at a later date<br />9<br />
  20. 20. Change is harder than improvement<br />We knew we needed to change<br />Not just the tool  The process<br />But change isn’t easy<br />Battling Pre-conceived ideas<br />Previous tool strongly dictated the process (Right vs. Wrong)<br />Developers satisfied with current system<br />Management not satisfied with the results<br />Major Issues<br />Each iteration “Accepted” less than “Committed”<br />Completing work from previous iterations<br />Management reports were meaningless<br />10<br />
  21. 21. “JIRA is a defect management system. I can see how it is useful for issue tracking. But we need an agile development tool.”<br />Development Manager<br />11<br />JIRA Skepticism<br />
  22. 22. “Our accounting processes rely on the current system (Rally). We can’t adopt a new product.”<br />Accounting Analyst<br />12<br />Change Skepticism<br />
  23. 23. How Does JIRA Studio Compare?<br />13<br />
  24. 24. What makes the difference?<br />GreenHopper<br />Tempo<br /><ul><li>Iteration Planning
  25. 25. Release Planning
  26. 26. Dashboards
  27. 27. Custom Reports</li></ul>Timesheet Entry<br />Accounting Integration<br />GreenHopper Integration<br />Custom Reports (with an API)<br />14<br />
  28. 28. GreenHopperTips & Tricks<br />15<br />
  29. 29. Needs<br />16<br />GreenHopper<br />Clear<br />Communication<br />I need to organize by program and sub-project<br />Hierarchies<br />I need to see all changes across projects for the release<br />Workflows<br />I need the tool to get out of the way!<br />ITManagement<br />Developer<br />Marketing<br />
  30. 30. JIRA + GreenHopper Delivers:<br />Custom Workflows<br />Problem #1<br />17<br />
  31. 31. Balfour Engineering Process<br />Defined<br />18<br />Map Your Own Process<br />Scoped<br />Dev<br />QA Ready<br />Done<br />Defined<br />Scoped<br />Dev<br />QA Ready<br />Done<br />QA Rejected<br />QA Rejected<br />Quality<br />Developer<br />
  32. 32. Task Board Mapping = Workflows<br />19<br />
  33. 33. 20<br />Agile Task Board<br />5 issues – 24h<br />5 issues – 24h<br />
  34. 34. 21<br />Agile Task Board<br />I simply drag-and-drop to accept an issue!<br />5 issues – 24h<br />5 issues – 24h<br />Quality<br />
  35. 35. 22<br />Agile Task Board<br />JIRA + GreenHopper<br />Let us work our way.<br />Tools should not dictate the process<br />I simply drag-and-drop to accept an issue!<br />5 issues – 24h<br />5 issues – 24h<br />Quality<br />Developer<br />
  36. 36. JIRA + GreenHopper Delivers:<br />Hierarchical Projects<br />Problem #2<br />23<br />
  37. 37. Hierarchical Projects<br />Studio Balfour is a Program with many projects.<br />JIRA does not have project hierarchies<br />You can achieve the same results by using both components in JIRA combined with GreenHopper context<br />24<br />Studio Balfour<br />Manufacturing<br />Operations<br />AdBuilder<br />Ad Builder<br />Manager<br />Baan<br />Integration<br />ITManagement<br />
  38. 38. 25<br />Components + Context = Hierarchy<br />
  39. 39. 26<br />Components + Context = Hierarchy<br />I can see work for the entire project, or drill into sub-projects using GreenHopper context<br />ITManagement<br />
  40. 40. JIRA + GreenHopper Delivers:<br />Clear Communication<br />Problem #3<br />27<br />
  41. 41. Reporting Iteration Changes<br />Need to report across all programs and projects<br />Customers do not know or care about projects.<br />By simply naming JIRA project revisions the same for each iteration, the built-in reports operate across projects.<br />28<br />Marketing<br />ITManagement<br />
  42. 42. Use Revision Naming Scheme<br />SY12 IT05<br />29<br />Iteration<br />School Year<br />
  43. 43. Use Revision Naming Scheme<br />SY12 IT05<br />30<br />Cross Project Reporting is easy with common names<br />Iteration<br />School Year<br />Marketing<br />
  44. 44. Developers & QA Love JIRA + GreenHopper because:<br /><ul><li>Custom workflows are simple using drag-n-drop
  45. 45. System gets out of the way and lets me work
  46. 46. Combined power of JIRA defect management with backlog management in GreenHopper</li></ul>Quality<br />Developer<br />
  47. 47. Operations and Management Love JIRA + GreenHopper because:<br /><ul><li>Hierarchical views support roll-up for programs
  48. 48. Custom “Context” provides quick filtering
  49. 49. Dashboards provide quick project status</li></ul>Manufacturing<br />Operations<br />ITManagement<br />
  50. 50. Marketing Loves JIRA + GreenHopper because:<br /><ul><li>Custom Reports from JIRA show all changes in all projects for a given release (aka iteration)
  51. 51. Export to Excel for archiving
  52. 52. Personal Dashboards are relevant to each person</li></ul>Marketing<br />
  53. 53. TempoTips & Tricks<br />34<br />
  54. 54. 35<br />Accounting<br />Integration<br />Tempo Needs<br />CustomReports<br />I need charges accounted correctly for projects and customers<br />Easy<br />Timecards<br />I need custom reports by user and by project<br />I need time reporting to be quick and painless<br />Manufacturing<br />Operations<br />ITManagement<br />Developer<br />
  55. 55. JIRA + Tempo Delivers:<br />Easy Timecards<br />Problem #1<br />36<br />
  56. 56. Simple Time Entry<br />37<br />Be Very Careful !!<br /><ul><li>These options operate on the JIRA Issue.
  57. 57. If you choose “Delete” it doesn’t just delete from your timesheet.
  58. 58. The Delete Option here is VERY dangerous</li></li></ul><li>Simple Time Entry<br />38<br />Why Developers Love It<br /><ul><li>Enter time by week or month
  59. 59. Enter time on the JIRA issue directly</li></ul>Why Managers Love It<br /><ul><li>Approval Workflow
  60. 60. Time corrections
  61. 61. Manager access for terminated employees</li></ul>Quality<br />Developer<br />ITManagement<br />
  62. 62. Time Entry From Jira Issue<br />39<br />
  63. 63. Time Entry From Jira Issue<br />Helpful Tip:Worklogs always add time, they don’t edit it.<br />40<br />Developer<br />
  64. 64. JIRA + Tempo Delivers:<br />Custom Reports<br />Problem #2<br />41<br />Download this example: <br /><ul><li>Bitbucket</li></ul>https://bitbucket.org/mjrainwater/<br /><ul><li>SourceForge.net</li></ul>http://tempoplugin-xsl.sourceforge.net/<br />
  65. 65. Custom Report Options<br />Jasper Reports (http://jasperforge.org/)<br />This report tool is mentioned on the Tempo site, but there are no directions. The XML from “tempo-getWorklog” did not work for me when I tried this.<br />Build your own XSL<br />This works well if you are familiar with XSL. Even if you’re not, you can use the samples I provide with simple modifications.<br />42<br />
  66. 66. Example Custom Reports<br />43<br />1<br />2<br />3<br />4<br />
  67. 67. Report 1: By User, Billing Key<br />44<br />Billing<br />Key<br />User<br />Jenny.Price<br /> Total Jenny.Price<br />Brian.May<br /> Total Brian.May<br />Ray.Chu<br />Total Ray.Chu<br />
  68. 68. Report 1: By User, Billing Key<br />45<br />Billing<br />Key<br />User<br />Jenny.Price<br /> Total Jenny.Price<br />Totals by employee let me manage my team<br />Brian.May<br /> Total Brian.May<br />ITManagement<br />Ray.Chu<br />Total Ray.Chu<br />
  69. 69. Report 2: By Billing Key, User<br />46<br />Billing<br />Key<br />User<br />Laura Coats<br />Total Laura Coats<br />Tony Greene<br />Total Tony Greene<br />Leon Chan<br />Total Leon Chan<br />Jay Keys<br />Total Jay Keys<br />
  70. 70. Report 2: By Billing Key, User<br />47<br />I can easilysee billing information for non-billable time as well as totalsfor each project / customer<br />Billing<br />Key<br />User<br />Laura Coats<br />Total Laura Coats<br />Manufacturing<br />Operations<br />Tony Greene<br />Total Tony Greene<br />Leon Chan<br />Total Leon Chan<br />Jay Keys<br />Total Jay Keys<br />
  71. 71. Tempo Setup: Billing Keys<br />48<br />1<br />2<br />3<br />
  72. 72. Tempo Setup: Billing Keys<br />49<br />
  73. 73. Tempo Setup: Billing Keys<br />Download Account Information<br />Edit in Excel<br />Import from CSV<br />Project Mapping Editing Allowed<br />Must have at least 2 Billing Keys in Project (even if only one is needed)<br />This screen needs the most work! But is modified infrequently so I can live with it.<br />50<br />
  74. 74. Project Accounting Reports<br />51<br />Reports by:<br />User<br />Project<br />Team<br />Customer<br />Customization<br />Custom Date Ranges<br />Include/Exclude Internal Issues<br />Print or Excel Export<br />Manufacturing<br />Operations<br />
  75. 75. JIRA + Tempo Delivers:<br />Accounting Integration<br />Problem #3<br />52<br />
  76. 76. This is just another report and varies by your own system requirements<br />For Balfour, we created a CSV export. See the sample reports I provide for a simple CSV file. The columns can be easily adjusted.<br />53<br />Integration with Accounting<br />
  77. 77. This is just another report and varies by your own system requirements<br />For Balfour, we created a CSV export. See the sample reports I provide for a simple CSV file. The columns can be easily adjusted.<br />54<br />Accounting integration with CSV eliminates data-entry errors and is more reliable.<br />Manufacturing<br />Operations<br />Integration with Accounting<br />
  78. 78. Developers & QA Love JIRA + Tempo because:<br /><ul><li>Timecard entry is quick and painless
  79. 79. Multiple options for entering time (by day, week, or while editing a single issue)</li></ul>Quality<br />Developer<br />
  80. 80. Management Loves JIRA + Tempo because:<br /><ul><li>Managers can enter time corrections when needed
  81. 81. Simple approval process and team setup give managers tools they need
  82. 82. Custom reports and export to accounting systems provide business intelligence for running the business</li></ul>ITManagement<br />
  83. 83. Operations Loves JIRA + Tempo because:<br /><ul><li>Cost accounting supports billing customers
  84. 84. Supports capitalized projects to minimize operating expenses</li></ul>Manufacturing<br />Operations<br />
  85. 85. 58<br />Balfour keeps our engineering team:<br /><ul><li>On Budget
  86. 86. On Time
  87. 87. Delivering the right scope</li></ul>Using GreenHopper & Tempo<br />
  88. 88. Summary<br />Tempo<br />GreenHopper<br />Custom Workflows<br />Hierarchical Projects<br />Clear Communications<br />Easy Timecards<br />Custom Reports<br />Accounting Integration<br />
  89. 89. Questions<br />Download this example: <br /><ul><li>Bitbucket</li></ul>https://bitbucket.org/mjrainwater/<br /><ul><li>SourceForge.net</li></ul>http://tempoplugin-xsl.sourceforge.net/<br />
  90. 90. Keeping your departmenton budget<br />Using GreenHopper and Tempo<br />Michael Rainwater<br />Director Engineering<br />Twitter: @mjrainwater<br />61<br />#Summit11<br />

×