Your SlideShare is downloading. ×
0
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Keeping your department on budget using GreenHopper and Temp
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Keeping your department on budget using GreenHopper and Temp

2,854

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,854
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
47
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • 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.
  • Transcript

    • 1. #Summit11
      2011.06.10 v4
    • 2. Keeping your departmenton budget
      Using GreenHopper and Tempo
      Michael Rainwater
      Director Engineering
      Twitter: @mjrainwater
      2
      #Summit11
    • 3. Balfour
      3
    • 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
      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
    • 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
    • 90. Keeping your departmenton budget
      Using GreenHopper and Tempo
      Michael Rainwater
      Director Engineering
      Twitter: @mjrainwater
      61
      #Summit11

    ×