Keeping Your Projects on Budget using GreenHopper and Tempo
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Keeping Your Projects on Budget using GreenHopper and Tempo

on

  • 2,980 views

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 ...

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.

Statistics

Views

Total Views
2,980
Views on SlideShare
2,971
Embed Views
9

Actions

Likes
1
Downloads
35
Comments
0

2 Embeds 9

http://www.linkedin.com 7
https://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Welcome to the Atlassian Summit 2011. ** Welcome Message **I have a Twitter hashtag for this session that you can use for posting any questions during the session. I will review all questions posted at the end. If for some reason I do not get to your question, or you want to share your experiences with me, I’ll be in the designated room after the session.
  • My name is Michael Rainwater and I am the Director Engineering at Balfour. This session is titled “Keeping your department on budget using GreenHopper and Tempo.
  • For those unfamiliar with Balfour, I have a short video that shows some of our products and our target market segments. We are a manufacturing company making personalized products in the scholastic and retail markets. We make yearbooks, letter jackets, graduation products, class rings, and other jewelry including retail and sports jewelry for professional teams and fans. ** Next **
  • The engineering department at Balfour is part of the IT organization. We have 20 employees in engineering, and approximately 80 in IT. We provide software development for the various divisions of our company, ** NEXT ** represented through our marketing department. ** NEXT ** Our operations department has plants in 4 major US locations as well as a plant in Mexico and Taiwan.** NEXT ** Within the engineering department, I have 3 managers and teams. My Dev team writes software using Java and standard LAMP components. Quality Assurance performs typical software testing and also provides second-level escalation support. The Mfg Support team provides IT capabilities to manufacturing in our yearbook operations. As you can see, we have multiple customer organizations representing both end customers as well as manufacturing to produce our products efficiently.
  • The engineering department at Balfour is part of the IT organization. We have 20 employees in engineering, and approximately 80 in IT. We provide software development for the various divisions of our company, ** NEXT ** represented through our marketing department. ** NEXT ** Our operations department has plants in 4 major US locations as well as a plant in Mexico and Taiwan.** NEXT ** Within the engineering department, I have 3 managers and teams. My Dev team writes software using Java and standard LAMP components. Quality Assurance performs typical software testing and also provides second-level escalation support. The Mfg Support team provides IT capabilities to manufacturing in our yearbook operations. As you can see, we have multiple customer organizations representing both end customers as well as manufacturing to produce our products efficiently.
  • I’d like to introduce you to the various roles at Balfour who are involved with JIRA, the problems we have, and how we use JIRA with GreenHopper and Tempo to meet our needs.** NEXT ** First, we have our developers. They prefer writing code and solving problems. They don’t like doing anything that seems like administration including project management, cost accounting and updating time sheets. While they understand this is part of their job, they need a tool that works like they do and gets out of the way.** NEXT ** Next, we have our QA Team. This team is responsible for standard testing, and approving builds for production release. At Balfour, they have an additional responsibility to provide 2nd level support. This means defects leaked to production, will ultimately come back to this team to resolve.** NEXT ** IT Management includes myself, the managers who report to me, my boss, and my peers. We’re managing multiple projects across the company, budgets, and (more importantly) expectations. ** NEXT ** Manufacturing Operations is responsible for making the products we sell. As with most companies, they are cost driven and concentrate on building quality products with the lowest possible cost. ** NEXT ** Our Marketing organization represents the customer’s needs. They communicate directly with customers, setting expectations, and introducing our products both to our customers and our independent sales force.
  • The title of this session is “Staying on Budget.” So, before we talk about how we do this it is important to understand what it means. There are three parts to staying on budget.** NEXT ** The first and most important area for Balfour is tracking cost by operating expenses vs capital expenses. The difference in these two types of expenses is critical because it decides if costs are posted to the income statement or the balance sheet. This affects profit, which is technically called EBITDA and our company valuation with our owners. If you aren’t aware of this difference, then your company probably doesn’t concentrate on EBITDA.** NEXT ** The second area is more common, and is simply tracking the costs for individual projects. The largest expense for software development projects is almost always labor. So, tracking time spent on each project is critical to being aware and making decisions to keep these projects on budget.** NEXT ** The third area may be important to others here today. We do not bill time directly to our customers like a consulting firm. But we do charge costs to other departments and accounts as part of our work.The common objective for each of these areas is to have information available to management frequently. This allows me to make adjustments, reset expectations, or control scope to make sure each area of the budget is satisfied.
  • So, why is Balfour using JIRA? What makes me think this tool would help us?** NEXT ** We have successfully used agile development, and understand the importance of using the right process and tool.** NEXT ** Our previous tool was Rally Enterprise Edition. We were spending about $500 per year for each user. But this was only for our engineers. Our process was missing direct involvement with our stakeholders in other teams.** NEXT ** This prompted a search for a new tool.
  • Our first step, was to determine our objectives.** NEXT ** First, we needed to increase the number of users.** NEXT ** Next, we needed to reduce our total cost** NEXT ** Finally, we wanted the option to host the system in-house. We’re still using JIRA Studio, and have been very pleased. But we do plan to bring the system in-house next fiscal year.
  • But changing our tool proved to be a difficult challenge.** NEXT ** It’s not enough to know you need to change. And, it’s not enough to change your tool. You have to consider your process as well.** NEXT ** Our previous tool was connected to a specific process. If you have problems using this tool, there is a large community ready to tell you that you aren’t working correctly. There is one right way, and any other way is wrong. There is no room for improvement. This doesn’treallywork for me.** NEXT ** We needed to improve our process, and I wanted a tool flexible enough to fit the needs of my company. We needed to complete work inside the committed iteration, not carry work over, and make sure our reports were actionable.
  • One big obstacle for adopting JIRA in our company was simply skepticism and pre-conceived ideas. JIRA was considered a defect management system… a bug tracker. People in the organization didn’t believe it would be useful managing the team end-to-end.
  • We were also accustomed to our current tool, and had an excellent integration with accounting we spent significant time building and fine-tuning. Any new tool we adopted had to offer similar integration for tracking labor costs.
  • So, we compared JIRA with our previous tool to decide if this was a move we should consider.** NEXT ** We examined our requirements (read these)** NEXT ** We compared the previous method at a costs of over $22K per year to a hosted JIRA Studio solution at 1/3 the cost.The choice was clear. And that’s why I’m here today sharing our story with you.
  • There were 2 key factors in our decision to adopt JIRA.** NEXT ** The first is GreenHopper. It is essential to our agile process and assuring we deliver the right products on time.** NEXT ** The second is Tempo. It is a key component to tracking labor costs, and assuring that we are working on the most important items, tracking labor costs, and staying on budget.
  • First, I’m going to walk you through some of the solutions that provided by GreenHopper. I hope the tips we have learned in our journey are beneficial to you.
  • We have three big needs satisfied by GreenHopper.** NEXT ** Our developers need the agile process to be easy, not interrupt their development, and allow them to work like they think.** NEXT ** Our management (including me) need to manage large programs with multiple sub-projects and drill into details.** NEXT ** Our marketing department prepares customer communications. They don’t care about our project structure, and just need to know what has changed in cross-project reports.** NEXT ** When our developers says this, they mean they need custom workflows.** NEXT ** Our IT Management means we need hierarchical project structures with 2 levels.** NEXT ** Our marketing department needs clear communication with customers.** NEXT ** JIRA with GreenHopper delivers in all of these areas.
  • The first problem we will address is custom workflows.
  • One of the advantages of using GreenHopper is you are not limited to a process defined by someone else. Start by mapping out your process before you setup GreenHopper. This is the Balfour engineering process.** NEXT ** Stories are defined when they are first created.** NEXT ** They are scoped as part of iteration planning to determine the complexity.** NEXT ** Once the developer starts working on the story, it is in development.** NEXT ** The developer moves the story to “QA Ready” once it passes unit testing.** NEXT ** The QA Team will test the issue. If it fails test, they move it QA Rejected.** NEXT ** The developer will put it back to Dev when they are working on it again.** NEXT ** Then, it goes back to QA.** NEXT ** When it passes test, the issue is Done (or accepted).
  • This custom workflow can then be setup using project templates.** NEXT ** Simply map each custom step into the appropriate JIRA status** NEXT ** These will appear on the task board in GreenHopper.
  • This is an example of the task board for the Studio Balfour project. In this example, QA has completed testing story SB-246** NEXT ** They will simply drag and drop the story to the next stage.** NEXT ** The process is simple for QA, and fits the way we work.** NEXT ** What’s most important is that the tool doesn’t dictate how we work.This means it doesn’t get in the way because it supports our process, and our work.You can customize GreenHopper to fit your process too.
  • This is an example of the task board for the Studio Balfour project. In this example, QA has completed testing story SB-246** NEXT ** They will simply drag and drop the story to the next stage.** NEXT ** The process is simple for QA, and fits the way we work.** NEXT ** What’s most important is that the tool doesn’t dictate how we work.This means it doesn’t get in the way because it supports our process, and our work.You can customize GreenHopper to fit your process too.
  • This is an example of the task board for the Studio Balfour project. In this example, QA has completed testing story SB-246** NEXT ** They will simply drag and drop the story to the next stage.** NEXT ** The process is simple for QA, and fits the way we work.** NEXT ** What’s most important is that the tool doesn’t dictate how we work.This means it doesn’t get in the way because it supports our process, and our work.You can customize GreenHopper to fit your process too.
  • The next problem we’ll address is hierarchical projects. This one is particularly interesting to me, because at first examination it was strong mark against JIRA in our evaluation.
  • As an example, we have a product we call Studio Balfour. In some ways this is more of a program, that contains several sub-projects. We have to coordinate across groups, and it’s important to track the progress of each sub-project separately. I even have various stakeholders and accounting cost centers to manage. So, it’s important that I be able to view information both across the entire Studio Balfour project as well as the sub-projects in it.On first examination, it seemed that JIRA would not do this simply because projects do not have direct hierarchies.
  • But GreenHopper offers a simple feature that makes this quite possible and even easy.** NEXT ** First, we setup the project “Studio Balfour” in JIRA.** NEXT ** Next, we use the project administration screen to create a component for each sub-project. This will act as our level-2 in the hierarchy.** NEXT ** Then, we create a context in GreenHopper from the planning board. A context is simply a short-cut that filters on the component.Now, the context drop-down (beside the project name) provides another level of drill-down.** NEXT ** The component + context now provides me the reporting needs of a hierarchy and lets me drill-down to the detail I need.
  • But GreenHopper offers a simple feature that makes this quite possible and even easy.** NEXT ** First, we setup the project “Studio Balfour” in JIRA.** NEXT ** Next, we use the project administration screen to create a component for each sub-project. This will act as our level-2 in the hierarchy.** NEXT ** Then, we create a context in GreenHopper from the planning board. A context is simply a short-cut that filters on the component.Now, the context drop-down (beside the project name) provides another level of drill-down.** NEXT ** The component + context now provides me the reporting needs of a hierarchy and lets me drill-down to the detail I need.
  • The third need I’d like to examine is for clear communication from customers.
  • Our customers and independent sales reps need to be notified when there is a new software release. But they don’t know or care about of internal project or accounting structures.We’re able to accomplish reporting across projects for a given release by using a simple naming scheme for project revisions.
  • You can use any naming scheme you want. At Balfour, we sell many of our products in schools. This means we do our planning around the school year, starting in August each year.** NEXT **The first four characters of our revision name specify the school year. This August is the beginning of School Year 2012.** NEXT ** The next characters specify the iteration number. We start at number 01, and increment the number every 2 weeks. It’s simple and effective.** NEXT ** JIRA’s built in reporting system allows for filters based on the “Fix Version” across all projects. This system works for reports and dashboards.
  • You can use any naming scheme you want. At Balfour, we sell many of our products in schools. This means we do our planning around the school year, starting in August each year.** NEXT **The first four characters of our revision name specify the school year. This August is the beginning of School Year 2012.** NEXT ** The next characters specify the iteration number. We start at number 01, and increment the number every 2 weeks. It’s simple and effective.** NEXT ** JIRA’s built in reporting system allows for filters based on the “Fix Version” across all projects. This system works for reports and dashboards.
  • GreenHopper meets the needs of our developers and QA because the tool gets out of the way, works like we do, and allows us to improve our process as we learn more.
  • GreenHopper meets the needs of manufacturing operations and management by supporting projects, and drill-down into sub-projects.We use various dashboards and reports to understand our projects, and make real-time decisions to keep us on track.
  • GreenHopper meets the needs of Marketing by providing reports across projects for a given release. Marketing needs different information, different dashboards, and the combination of JIRA and GreenHopper meets these needs.
  • But it isn’t justGreenHopper that makes it work. With GreenHopper we control WHAT we deliver and WHEN. We work on the right projects, and communicate effectively.But to keep our department on budget, we need to track labor costs and have the same level of real-time decision-making capability.This is where Tempo makes the difference.Next, we’ll review the critical needs that Tempo delivers at Balfour.
  • Tempo delivers on the needs of various stakeholders at Balfour.** NEXT ** Developers are required to report their time. But they need the process to be quick and painless.** NEXT ** IT Management is looking for time and billing reports to manage budgets and staff.** NEXT ** Manufacturing Operations needs accurate cost accounting.** NEXT ** When our developers say this, they mean timecards have to be easy.** NEXT ** IT Management needs custom reports and** NEXT ** Manufacturing Operations is looking for integration with accounting.Tempo delivers each of these needs. Let’s look at how…
  • The first need we’ll discuss is Easy Timecards.
  • The main time entry screen in Tempo allows for team members to see all assigned stories, tasks, and bugs. They can optionally show Internal Issues, which are ways to track time for meetings, vacation, and other non-billable time that does not need be be completed.** NEXT ** This screen also allows the user to perform a wide range of operations on the JIRA Issue. While this is quite convenient, there are dangers.** NEXT ** Since this is a time entry screen, it’s easy for someone to believe the Delete operation will delete the item from their timesheet. But this option will delete the issue from JIRA and can cause previous worklogs to be orphaned.** NEXT ** Developers and QA love this time entry form because it’s flexible and allows quick entry for multiple issues in one place. They can update all time for several days at a time,** NEXT ** Managers love this form because it supports an approval workflow, allows managers to make corrections, and even enter the final time card for terminated employees. This was a particular pain-point in or previous solution because the data is directly imported into the accounting system. But I’ll talk more about accounting integration later.
  • The main time entry screen in Tempo allows for team members to see all assigned stories, tasks, and bugs. They can optionally show Internal Issues, which are ways to track time for meetings, vacation, and other non-billable time that does not need be be completed.** NEXT ** This screen also allows the user to perform a wide range of operations on the JIRA Issue. While this is quite convenient, there are dangers.** NEXT ** Since this is a time entry screen, it’s easy for someone to believe the Delete operation will delete the item from their timesheet. But this option will delete the issue from JIRA and can cause previous worklogs to be orphaned.** NEXT ** Developers and QA love this time entry form because it’s flexible and allows quick entry for multiple issues in one place. They can update all time for several days at a time,** NEXT ** Managers love this form because it supports an approval workflow, allows managers to make corrections, and even enter the final time card for terminated employees. This was a particular pain-point in or previous solution because the data is directly imported into the accounting system. But I’ll talk more about accounting integration later.
  • Tempo also supports time entry directly from an issue in JIRA. This story is shown with the “Log Work” item included.** NEXT ** This button brings up a pop-up screen that allows you to add worklogs to the issue. It’s very easy to record time, and even update the estimated time remaining for the issue.** NEXT ** When you enter the hours work, you don’t enter the new total but the new time. If you previously recorded 46 hours, and enter 4 in this field the system will show 50 total hours spent on this issue.** NEXT ** Even the button at the bottom reminds the user they are adding time. This has still required training, and has been intuitive. Although I understand and prefer this model myself.** NEXT ** So, make sure your team understands how to use this. Once they get it, the history of changes and the worklog structure provides a very powerful reporting system.
  • Tempo also supports time entry directly from an issue in JIRA. This story is shown with the “Log Work” item included.** NEXT ** This button brings up a pop-up screen that allows you to add worklogs to the issue. It’s very easy to record time, and even update the estimated time remaining for the issue.** NEXT ** When you enter the hours work, you don’t enter the new total but the new time. If you previously recorded 46 hours, and enter 4 in this field the system will show 50 total hours spent on this issue.** NEXT ** Even the button at the bottom reminds the user they are adding time. This has still required training, and has been intuitive. Although I understand and prefer this model myself.** NEXT ** So, make sure your team understands how to use this. Once they get it, the history of changes and the worklog structure provides a very powerful reporting system.
  • The next need we’ll discuss is the management need for custom reports from Tempo. I also have a set of examples available to you that show how Balfour has customized our Tempo reports.
  • Tempo supports a powerful API for retrieving information and creating custom reports.** NEXT ** The tempo website mentions using Jasper Reports for turning this XML into readable reports. I haven’t done this myself, and would recommend you speak to someone from Tempo if you need more information on this method.** NEXT ** What I have done, is to create my own XSL to transform the XML output of the API. If you’re not familiar with XSL, you don’t need to be concerned. You can have my files and edit them easily. It’s much easier to modify someone else’s XSL than create your own. If you’re comfortable with HTML files and have a little patience, you can modify the files I have. Of course, you can also use this just as they are.
  • I’ve added a tab to my JIRA system that links directly to an separate site for hosting my report generator.** NEXT ** This site has a simple list of reports** NEXT ** as well as a list of billing periods I configure in a configuration file. Balfour uses a 4-4-5 accounting system that means our billing periods have custom dates. This same screen supports entering custom dates as well if you just want to see time for a week or other date range.** NEXT ** Then, you simply click the “Go” button and launch the report.
  • The first report I have to show is grouped by** NEXT ** user, and then the billing key. This report is important because it allows a manger to see projects and non-billable time worked by each team member.** NEXT ** Managers will love this report for managing their team.
  • The first report I have to show is grouped by** NEXT ** user, and then the billing key. This report is important because it allows a manger to see projects and non-billable time worked by each team member.** NEXT ** Managers will love this report for managing their team.
  • The second report is similar, but it reverses the grouping. ** NEXT ** First, you see the billing key, and then the user.** NEXT ** This report is most helpful if you are managing a project or a client and need to see all the users who have worked on a specific project.Both of these reports show the JIRA issue, and allow the user to click the issue name to open the issue directly in JIRA to edit or make adjustments to the work log as required.
  • The second report is similar, but it reverses the grouping. ** NEXT ** First, you see the billing key, and then the user.** NEXT ** This report is most helpful if you are managing a project or a client and need to see all the users who have worked on a specific project.Both of these reports show the JIRA issue, and allow the user to click the issue name to open the issue directly in JIRA to edit or make adjustments to the work log as required.
  • Setting up and using Tempo for your company is very simple. One of the most important areas to setup are the billing keys. The Account Manager screen is used to setup a billing key for each project and / or client. There are some many fields available for tracking. If you can export the data from your accounting system in a CSV, you can keep these in sync.
  • The Account Management screen doesn’t currently support adding keys in the user interface. You have to do this by exporting the data first, edit the CSV, and import it back in.
  • This download, edit and import cycle is certainly not the easiest method for editing. But if you can create the CSV with your accounting product you will have the best integration.I’ve also had problems selecting a billing key on an issue if there are not at least 2 billing keys available for every project. I’ve been able to do this by adding a “Non-Billable” billing key the system.
  • In addition to customizing reports from Tempo, I have to point out that there are quite a few built-in reports available in the system. These are very useful and have been better.** NEXT ** There are four main reports that support managing your team members, projects, entire teams, and customers (or clients). The team report is very useful for my managers so they can easily see their employees and know who has been keeping time updated each week.** NEXT ** The built-in reports allow for some customization in filtering information by date range and showing only issues assigned or also the internal issues I mentioned earlier such as vacation time. These reports will print and export to Excel, a common solution with JIRA.
  • The final need I’m going to cover delivered by Tempo is the tight integration with accounting. Tempo provides an API with XML output. This XML is easily parsed by Microsoft Excel.
  • Our accounting system works better with a CSV import than an XML file. To do this, we use the Tempo API and an XSL transformation to create a customized CSV. So, it really is just another custom report.** NEXT ** The manufacturing operations group is interested in cost controls. The CSV import of time logs from Tempo helps to eliminate data-entry errors and supports accurate cost measurement.
  • Our accounting system works better with a CSV import than an XML file. To do this, we use the Tempo API and an XSL transformation to create a customized CSV. So, it really is just another custom report.** NEXT ** The manufacturing operations group is interested in cost controls. The CSV import of time logs from Tempo helps to eliminate data-entry errors and supports accurate cost measurement.
  • Tempo meets the needs of our developers and QA team by providing quick and flexible time entry. Team members can enter time by day, week, or log work on a single issue.
  • Tempo meets the needs of management by proving different views of the information I need to make decisions so we can deliver on budget. Managers have the tools necessary for timecard approvals, custom reports and the data to support business intelligence.
  • Tempo meets the needs of our manufacturing operations team by provide accurate cost accounting, and increasing EBITDA or profit with accurate capitalization of labor.
  • GreenHopper and Tempo are a great combination for delivering our projects on budget, on time, and with the right scope.
  • In summary,** NEXT **GreenHopper delivers custom workflows, projects and sub-projects for drill-down reporting, and cross-project reports for clear communication with customers.Greenhopper is key to delivering our projects on time, and on scope.** NEXT ** Tempo delivers simple timecards that even a developer won’t mind using, multiple options for customizing reports, and tight integration with multiple accounting systems.Tempo provides the information needed to keep our projects on budget.
  • Check the Twitter feed !!!Questions from the floor.

Keeping Your Projects on Budget using GreenHopper and Tempo Presentation Transcript

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