Chapter 10. Financial Prioritization

“As a general rule of thumb, when benefits are not quantified at all, assume there aren’t any.”

—Tom DeMarco and Timothy Lister

Some projects are undertaken to generate revenue and others to cut expenses, and some strive for both. If we can estimate the amount of money that will be made or saved by each theme, we can use that to help prioritize. Forecasting the financial value of a theme is the responsibility of the product owner, but it is a responsibility shared with all other team members—programmers, testers, analysts, project managers, and so on. In most cases, the product owner will also need to draw on business knowledge and forecasts from the sales and marketing groups.

The way I like to determine the financial value of a theme is to hold a meeting attended by as many of these individuals as practical. The goal of such a theme valuation meeting is to complete a form like the one shown in Table 10.1 for each theme. Depending on the number of themes and participants, this may take more than one meeting.

Table 10.1. An Empty Theme-Return Worksheet


Table 10.1 includes a row for each quarter in the next two years. The time horizon is up to the team. In some cases, teams may want to look at monthly returns for one or two years. In other cases, quarterly forecasts are adequate. I find that looking out two years works well on most projects. It strikes a good balance between guessing at the distant future and looking far enough ahead. Because of the high amount of uncertainty on software development projects, others concur (Bills 2004a).

Table 10.1 also includes columns for various types of returns a theme may have. If your project has different types of returns, use different column headings. Similarly, use different column headings if a theme will benefit from more specific column headings (perhaps Increased Revenue from U.S. Customers and Increased Revenue for European Customers). It is not necessary to estimate all themes with the same set of columns.

Meeting participants complete the worksheet by estimating the value in a cell that they believe will be affected by the development of the theme. A sample completed theme-return worksheet is shown in Table 10.2. In this case, the availability of this theme will attract new customers (New Revenue) and will also lead to increased revenue from existing customers (Incremental Revenue). The new theme will have no impact on either retained revenue or on operational efficiencies.

Table 10.2. A Sample Theme-Return Worksheet


Where do these numbers come from? Ideally from the market research that was used in the business case that initiated the project. At a minimum, whoever requested the theme should be able to quantify the reasons for developing it.

We cannot compare projects and make prioritization decisions simply by summing the total row of a worksheet like Table 10.2 for each theme. A revenue stream that delivers ¤100k in the first quarter, ¤200k the next, and ¤500k in the third quarter is far less valuable than a stream that delivers those same returns but in the opposite sequence. To compare multiple themes, we need to use one or more standard financial measures. In this chapter, we will look at

Net present value

Internal rate of return

Payback period

Discounted payback period

However, before looking at these financial measures, we must consider how projects make or save money.

Sources of Return

The return on a project can come from a variety of sources. For convenience, we can categorize these as new revenue, incremental revenue, retained revenue, and operational efficiencies. Although it is common for one category to dominate the return of a specific project, most projects will earn returns from more than one category.

New Revenue

Certainly, one of the most common contributors to the return on a project is the opportunity for new revenue. Very few companies are satisfied with their market share, and most companies would like new customers. Even if a software product is not sold directly, adding new features can lead to new revenue. For example, I worked at a company that developed software for our own use in serving our hospital customers. At one point, our CEO realized that with some enhancements, our software could be used to provide those same services to health insurers. We made the changes and were able to bring an entirely new source of revenue into the company because of what the new software enabled.

Incremental Revenue

It is often useful to distinguish revenue from new customers from additional, incremental revenue from existing customers. Incremental revenue can result because the new system or product:

• Encourages existing customers to purchase more licenses

• Includes optional, add-on modules that can be sold separately

• Includes features that allow charging a higher price

• Encourages the use of consulting services (for example, to integrate with a separate third-party application)

Retained Revenue

Separate from both new and incremental revenue is retained revenue. Retained revenue refers to the revenue an organization will lose if the project or theme is not developed. Suppose you’ve been successfully selling a patient scheduling product to solo-practitioner chiropractors. Some of your customers have been doing well and are expanding to have two or three chiropractors in the practice. Unless your software is enhanced to support scheduling patients among multiple chiropractors, you stand to lose the business of these growing practices. A project to add this capability would allow the company to retain this revenue. Interestingly, there could also be an opportunity for incremental revenue because you may be able to charge more for the version that supports more than one chiropractor.

Operational Efficiencies

No organization is ever as efficient as it could be. There’s always some task that could be streamlined or eliminated. If you’re developing software for use by internal customers, you are probably quite aware of the importance of operational efficiencies. However, even if you’re working on commercial software that is sold to others outside your company, some tasks within your project may still contribute to improving operational efficiencies. In your case, though, most often this will refer to your own inefficiency. For example, a number of projects I’ve been on have chosen to develop their own object-relational mapping tool to simplify the mapping of objects in the programming language to relational database tables. Similarly, almost every project I’ve been on has developed some form of tool to assist in the work of developing the software.

Often, the drive to improve operational efficiencies comes from anticipated growth. An inefficiency that may not be a problem today rapidly becomes a problem when the company becomes much larger. As an example, suppose your company has developed a website for selling picture frames. You sell a huge variety of standard frames but also sell frames in custom sizes. Business is doing well, and the company anticipates strong growth over the next two years. In fact, it expects sales to increase tenfold over that period. As in any business, a certain percentage of sold items end up being sent back to the company as returned merchandise. It’s never been a high priority to have a highly automated, efficient solution for processing returns, and right now it takes one person about two hours a day to process returns, including updating inventory and crediting the buyer’s credit card. The two hours spent on this may not be a critical issue today. But when sales have increased 1,000%, returned items will probably increase 1,000%, and processing returns will take twenty person-hours each day. By that point, it will certainly be worth considering whether this is an operational inefficiency that should be addressed.

In looking to improve operational efficiency, some likely places include

• Anything that takes a long time or that would take a long time if the company grew

• Better integration or communication between departments

• Reduced employee turnover

• Shorter training time for new employees

• Any time-sensitive process

• Combining multiple processes

• Anything that improves accuracy and reduces rework

An Example: WebPayroll

Using these techniques, let’s estimate the returns for a project. Suppose our company, WebPayroll, offers a web-based payroll system to companies too small to calculate their own payroll taxes, print checks, and so on. We’re fairly successful already but are enhancing the software to improve turnaround time.

Currently, we tell customers that they need to enter payroll information on our website three days before they need checks to distribute to their employees. Our goal with the new system is to offer next-day service. If payroll information is entered on the WebPayroll site by 5:00 p.m., we can generate checks, print them, and have them delivered overnight. Checks will be in our customers’ hands the next morning.

Before we can begin estimating the return on the overnight project, we need to decide when it will be available. Assume that the developers have already estimated the stories in this theme and that they came up with 150 story points. At the team’s historical velocity of 20 story points per two-week iteration, developing the theme will take 150/20 = 7.5 = 8 iterations. This means that increased revenue and operational efficiencies can begin after the eighth iteration (unless we can find a way to deliver a partial solution, which should always be a goal).

Calculating New Revenue

Offering next-day instead of three-day service will open new revenue opportunities. To quantify these opportunities, we first estimate the number of new cus-tomers we’ll acquire. We don’t have any solid data. But our main salesperson, Terry, says that around one-third of the customers she talks with reject WebPay-roll because of our three-day requirement. Based on current sales projections, Terry believes she can attract fifty new customers per quarter this year and then one hundred customers per quarter next year. These values are added to the New Customers column of Table 10.3. Even though the overnight feature won’t be available until the middle of the second quarter, Terry believes she can still sign up fifty new customers in that quarter.

Table 10.3. Projected New Revenue from the WebPayroll Project


Next, we estimate the revenue per customer. We can do this by thinking about likely new customers relative to our current customers. We know, for example, that the average WebPayroll customer pays us ¤400 per year in fees. However, we think that overnight delivery will be most appealing to smaller customers—those that pay us an average of ¤200 per year. We think we’ll make another ¤100 per year from each of these customers. The total value of each new customer is then ¤300 per year, or ¤75 per quarter. Because overnight service will be available only for two-thirds of the second quarter, the revenue per customer is lowered appropriately in that quarter. These values are added to the Revenue per Customer column of Table 10.3, which also allows us to calculate the New Revenue column.

Calculating Incremental Revenue

Incremental revenue refers to additional revenue we can get from existing customers. Based on what we know of our current customers, how often they are late submitting payroll information, and so on, we estimate that we’ll sign up about 100 customers per quarter until 400 of our current customers are using the overnight service. As for new customers, the service will generate about ¤100 per year or ¤25 per quarter after it’s available a third of the way into the second quarter. Table 10.4 is created to calculate the total incremental revenue per quarter from these estimates.

Table 10.4. Projected Incremental Revenue from the WebPayroll Project


Calculating Retained Revenue

Retained revenue is what we will no longer lose because customers are dissatisfied with our product, outgrow it, or otherwise decide to switch away from WebPayroll. The company currently doesn’t have any good metric for tracking this. We know it’s beginning to be an issue and will become much more significant over the next few years.

We estimate that by having an overnight service, we’ll prevent the loss of twenty customers per quarter in the first year and forty customers per quarter in the second year. Significantly, these customers will stick with WebPayroll now, even though the functionality won’t be available until the second quarter. That means that the benefits of the overnight project begin in the first quarter, even though overnight delivery won’t be available until the second quarter.

Because each current customer is worth ¤400 per year, that is ¤100 per quarter. With that, we can calculate retained revenue as shown in Table 10.5.

Table 10.5. Projected Retained Revenue from the WebPayroll Project


Calculating Operational Efficiencies

For the overnight project to be successful, we will need to eliminate almost all of the manual intervention our system relies on today. Currently, the system relies on a payroll clerk in the WebPayroll office to verify the correctness of the payroll information, and then submit it manually through a couple of workflow steps. We have two payroll clerks doing this today.

Without the overnight features, the staffing plan calls for adding two clerks in the middle of this year and two in the middle of next year. Because of the efficiencies planned as part of the overnight project, we expect to be able to eliminate one of these positions each year.

Payroll clerks make an average of ¤20,000 per year. Each one, however, also takes up space in the office, is assigned some equipment and software, and is given benefits. In total, these additional, hidden expenses account for around another 50% of an employee’s salary, meaning the true cost of a payroll clerk is closer to ¤30,000 annually. This is known as the fully burdened labor cost. The number of clerks not hired and the fully burdened labor cost for each can be multiplied each quarter to give the total operational efficiencies, as shown in Table 10.6.

Table 10.6. Projected Operational Efficiencies from the WebPayroll Project


Estimating Development Cost

To complete the investment profile of the WebPayroll overnight project, we need to estimate the expected development cost of the theme. To do this, let’s look at the salaries of everyone involved in the project, as shown in Table 10.7.

Table 10.7. The WebPayroll Project Team


The fully burdened labor cost in Table 10.7 is calculated as 50% more than each person’s salary alone. Because iterations are two weeks, the burdened cost per iteration is 1/26th of the fully burdened labor cost. The Time on Project column indicates the portion of time that each team member allocates to the project. Everyone is full time except one programmer. The Adjusted Cost per Iteration column shows the cost to the project of each individual based on burdened labor cost and the amount of time spent on the project. In total, the team shown in Table 10.7 costs ¤13,550 per iteration. We’ll round that to ¤13,500.

It is often useful to know the cost per story point (or ideal day). To calculate this, divide the adjusted cost per iteration by the team’s average or expected velocity. Because the WebPayroll team has an average velocity of 20 story points per iteration, their cost per story point is 13,500/20 = 675. This information is useful because if the team is asked how much it will cost to develop something estimated at 100 story points, they know the answer is ¤67,500 (100 × 675).

The cost of the WebPayroll team can be summarized as shown in Table 10.8.

Table 10.8. Summary of Costs for the WebPayroll Team


Putting It All Together

From this analysis of cost, new revenue, incremental revenue, and operational efficiencies, we can put together Table 10.9.

Table 10.9. Projected Returns from the WebPayroll Project


The overnight feature is expected to be finished in the eighth iteration, or after sixteen weeks. The first quarter will be thirteen of those weeks for a cost of ¤87,750 (13 ×6,750). The second quarter will be another three weeks for a cost of ¤20,250.

Financial Measures

Having come up with a way of estimating the cash flow stream that will be generated by each theme, we next turn our attention to various ways of analyzing and evaluating those cash flow streams. In this section, we will look at net present value, internal rate of return, payback period, and discounted payback period. Each of these measures can be used for comparing the returns on a theme. But first, it’s important to understand the time value of money.

The Time Value of Money

In the early Popeye comic strips, Wimpy would tell the other characters, “I’ll gladly pay you on Tuesday for a hamburger today.” Only a sucker would take Wimpy up on that deal, because money today is more valuable than money next Tuesday.

To determine the value today of a future amount of money, we think in terms of how much money would have to be put in the bank today for it to grow to the future amount. To buy a ¤5 hamburger next Tuesday, I might need to put ¤4.99 in the bank today. The amount I have to invest today to have a known amount in the future is called the present value. As a simple case, if I can earn 10% on my money and want to have ¤1.00 a year from now, I need to invest ¤0.91 today. In other words, with a 10% interest rate, ¤0.91 is the present value of ¤1.00 in a year. If I could earn 20% on my money, I would need to invest only ¤0.83 today.

The process of moving future amounts back into their present value is known as discounting. Clearly, the interest rate that is used for discounting future amounts is critical to determining the present value of a future amount. The rate at which organizations discount future money is known as their opportunity cost and reflects the percentage return that is passed up to make this investment. We all—individuals and organizations—have various opportunities for investing our money. I can put my money into a bank saving account, or I can invest in stocks. I can invest it in real estate, or I can put it under my mattress. Organizations can invest their money in these same ways, or they can invest money on various projects. If an organization has typically earned 20% on past projects, new projects should be assessed against this same 20%. The organization’s opportunity cost is 20% because an investment in a new project means that the organization gave up the opportunity to invest in some other project, which would have earned 20%.

Net Present Value

The first formula we’ll look at for evaluating a theme is the net present value (NPV). To determine NPV, sum the present values of each item in a stream of future values. The formula for doing so is


where i is the interest rate and Ft is the net cash flow in period t.

To see how this works, let’s continue with the WebPayroll example. As determined earlier, the overnight project is expected to cost ¤108,000 and to generate the revenue and savings summarized in Table 10.9, which are repeated in the Net Cash Flow column of Table 10.10. The Present Value Factor column of that table is the (1 + i)−t portion of the NPV calculation and represents the amount by which the future net cash flow will be discounted. The final column, Present Value, is the product of the Net Cash Flow and Present Value Factor columns. It indicates, for example, that the present value of ¤18,250 at the end of the third quarter year is ¤16,701. Summing the values in the Present Value column gives the total NPV, which is ¤46,341 in this case.

Table 10.10. Determining the NPV for WebPayroll


Using net present value to compare and prioritize themes has the advantages of being easy to calculate and easy to understand. The primary disadvantage to NPV is that comparing the values of two different cash flow streams can be misleading. Suppose we are trying to choose between two projects. The first project requires huge up-front investments but has an NPV of ¤100,000. The second project requires only a small up-front investment but also has an NPV of ¤100,000. Clearly, we’d prefer to make the investment in the theme that ties up less cash but that has the same NPV. What we’d really like is to express the return on a theme in percentage terms so that we can compare themes directly.

Internal Rate of Return

Internal Rate of Return (IRR, and sometimes called Return on Investment or ROI) provides a way of expressing the return on a project in percentage terms. Where NPV is a measure of how much money a project can be expected to return (in today’s present value), IRR is a measure of how quickly the money invested in a project will increase in value. With IRR we can more readily compare projects, as shown in Table 10.11. Which project would you prefer?

Table 10.11. Comparing Two Projects across NPV and IRR


Most people would prefer to make 43% on their money, even though the NPV is higher for Project A, which also requires the higher initial investment. Cash flows for these two projects are shown in Table 10.12.

Table 10.12. Cash Flows for the Projects in Table 10.11


Many organizations will specify a minimum attractive rate of return, or MARR. Only projects or themes with an IRR that exceeds the MARR will be funded. It is impractical to set a similar threshold for NPV, because NPV values are highly dependent on the magnitude of the project. If an NPV threshold were in place, small (but valuable) projects would never be approved.

IRR is defined as the interest rate at which the NPV of a cash flow stream is equal to 0. In other words, it is the value for i* such that


The formula for calculating IRR is complex and beyond the scope of this book. Fortunately, most major spreadsheet programs include easy-to-use IRR functions. If you want to calculate IRR by hand, Steve Tockey (2004) provides the best description. However, even though you can use a spreadsheet to calculate IRR, there are a couple of preconditions for its use that you need to be aware of:

• The first one or more items in the cash flow stream must be expenses. (Note that there must be at least one.)

• Once the cash flow stream turns positive, it must remain positive.

• The sum of the positive items is larger than the sum of the negative items—that is, money is made overall.

Because the cash stream for the WebPayroll overnight-delivery theme satisfies these preconditions, we can calculate the IRR for the theme. To do so in Excel, enter this formula into a cell:

+IRR({0, –85750, –14150, 18250, 20750, 29000, 29000, 36500, 36500})

The numbers within the curly braces are the cash flow streams for each of the eight quarters. The initial 0 indicates that no up-front costs occurred on the first day of the project (as might if WebPayroll had to buy additional servers to initiate the project). For the WebPayroll overnight project the IRR is 12%, which means that the expected cash flow stream is equivalent to earning a 12% annual return on the company’s investment.

A first advantage to using IRR is that there is no requirement to establish (or, in the worst case, guess at) an organization’s discount rate, as is necessary when calculating NPV.

A second advantage to IRR is that it can be used directly in comparing projects. A project with a 45% IRR has a higher return on its investment than does a project with a 25% IRR. You cannot usually use IRR in isolation, though, for making decisions. Suppose the project returning 45% is very small, so the 45% return comes on a small investment yet the project ties up a critical developer. Further, suppose that the project returning 25% does so against a large investment but requires the same critical developer. You may choose to make more money by doing the second project, the one with the lower IRR.

As an additional example, you may prefer the project with the 45% IRR, but it requires two years of investment before it begins generating spectacular returns. The project with 25% IRR begins earning money after a year. If the organization cannot afford to make two years of investment, the project with the lower IRR may be preferable.

A first disadvantage to IRR is that because the calculation is hard to do by hand, the result may be more subject to distrust by some. A second disadvantage is that IRR cannot be calculated in all situations. As we saw previously, three preconditions must be met to calculate a meaningful IRR.

Payback Period

Through NPV, we can look at a cash flow stream as a single, present value amount. Alternatively, we can look at a cash flow stream as an interest rate through IRR. An additional way of looking at a cash flow stream is as the amount of time required to earn back the initial investment. This is known as the payback period. To see how it is determined, Table 10.13 shows the payback calculations for the WebPayroll overnight project.

Table 10.13. Determining the Payback Period for the WebPayroll Overnight Project


During the first quarter, WebPayroll invests ¤85,750 in the project. In the second quarter, it makes an additional net investment of ¤14,150. In the third quarter it starts earning back the investment by making ¤18,250. Sometime during the seventh quarter, the net investment in the project turns positive, and the project’s payback period is said to be seven quarters.

There are two primary advantages to using payback period when comparing and prioritizing themes. First, the calculations and interpretation are straightforward. Second, it measures the amount and duration of financial risk taken on by the organization. The larger the payback period, the riskier the project, because anything could change during that period.

The primary disadvantage to payback period is that it fails to take into account the time value of money. Money received three years in the future is valued as highly as money paid out today. The second drawback to payback period is that it is not a measure of the profitability of a project or theme. Payback periodwill tell us that an organization will recover its money in seven quarters, but it doesn’t address how much money will be made.

Discounted Payback Period

It is easy to remedy the first drawback of the payback-period calculation. To do so we simply apply the appropriate discount factor to each item in the cash flow stream. The way to do this is shown in Table 10.14 for the WebPayroll overnight project.

Table 10.14. Determining the WebPayroll Overnight Project’s Discounted Payback Period


As Table 10.14 shows, the running total of discounted cash flow becomes positive in the seventh quarter (just as it did in the simple payback-period calculation).

Comparing Returns

As you assess each theme, you build up information that can be used to compare the themes and make the prioritization decisions that are driving this analysis. The results of valuing multiple themes can be presented as shown in Table 10.15. A table such as this lets an organization quickly review its options and choose to work on the highest-valued themes.

Table 10.15. Various Valuations for Each Theme in a Project


In this case, the overnight theme has the highest net present value, but it takes the longest to earn back the investment. The partner integration theme has the highest return on investment and the shortest discounted payback period, but it has the lowest NPV. Custom reporting has the lowest rate of return on investment. However, it could be combined with partner integration and done with the same cost as the overnight service theme. Making a decision is not cut and dried; the product owner and team will need to consider a variety of situationally specific factors, such as the organization’s tolerance for risk, need for short payback periods, availability of resources, other options for investment money, and so on.

For More on Project Economics

Although this chapter provides a basic overview of how to use and calculate four financial measures, much more could be said. For more on the subject of software project economics, Steve Tockey’s Return on Software: Maximizing the Return on Your Software Investment (2004) is a wonderful book. The four financial measures here, including their formulas, are drawn from Tockey’s book.


Financial analysis of themes helps in prioritization because for most organizations the bottom line is the amount of money earned or saved. It is usually sufficient to forecast revenue and operational efficiencies for the next two years. You can look further ahead, however, if necessary.

A good way of modeling the return from a theme is to consider the revenue it will generate from new customers, from current customers buying more copies or additional services, from customers who might have otherwise gone to a competitive product, and from any operational efficiencies it will provide.

Money earned or spent today is worth more than money earned or spent in the future. To compare a current amount with a future amount, the future amount is discounted back into a current amount. The current amount is the amount that could be deposited in a bank or into some other relatively safe investment and that would grow to the future amount by the future time.

Four good ways to evaluate a cash flow stream are net present value, internal rate or return (return on investment), payback period, and discounted payback period. By calculating these values for each theme, the product owner and team can make intelligent decisions about the relative priorities of the themes.

Discussion Questions

1. If your organization were choosing among the themes in Table 10.15, what would be the most appropriate decision? Why?

2. How would you model the return for a theme on your current project? Are the suggested categories of new revenue, incremental revenue, retained revenue, and operational efficiencies appropriate? What categories would you use instead?

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.