### Introduction

During the development process of a large software project, the project management team has to constantly track the implementation of its plan and calculating the deviation of its schedule and budget. An outstanding progress tracking method can easily control the software development risk. Certainly, Earned Value Management (EVM) is a common method, which will comprehensively consider the scope, cost and schedule of projects (Robert, 2007) ^{[1]}. Moreover, it will help the project managers to evaluate the project performance and the developing trend.

In general, the EVM principle might suitable for any project within any industry. However, software projects are extremely special because it is quite difficult to determine their requirements and design. Additionally, their budget and schedule cannot be changed frequently. Thus, these characteristics tend to increase the complexity of EVM implement. Accordingly, the research and application of EVM will be limited, unclear, abstract and inscrutable (Scheid, 2013) ** ^{[2]}**. This article will analyze EVM in a relaxed, simple and practical way.

**To begin with a story**

The following story might help readers understand the basic of EVM.

Assume that the requirement was to cut down 800 trees within 10 days and the current resource was a woodcutter who can cut 10 trees down per hour. Soon afterwards, the project manager determined the project plan, which was that the woodcutter should work 8 hours per day and for each working hour, he could get £10. To sum up, 80 trees could be felled down every day and the total duration would be 10 days and the cost would be £800.

*According to the analysis, even the simplest plan requires the consideration of these factors:
*

- The number and the ability of employees. (1 woodcutter, 10 trees per hour)
- The daily working hours. (8 hours per day)
- The daily situation of project completion. (80 trees per day)
- The total duration and cost of the project. (10 days, £800)

*After planning, the project began. The actual situation of the first three days might be this.
*[DAY1] The woodcutter spent 8 hours to cut down 80 trees.

[DAY2] The woodcutter spent 8 hours to cut down 100 trees.

[DAY3] The woodcutter was really tired, he spent 8 hours to cut down 60 trees.

*In particular, these content will be concerned during the project tracking.*

- What is the difference between the planning time and the actual working time.
- What is the difference between the planning progress and the actual progress.

*For example:
*[DAY1] The actual progress completely meets the plan.

Completion rate: 100%.

[DAY2] The actual duration is as same as the plan and the task is over-done.

Completion rate: 125%.

[DAY3] The actual duration is consistent with the plan, but the task is unfinished.

Completion rate: 75%.

Unfortunately, the following progress is not optimistic.

[DAY4] The woodcutter was sick. He only worked 4 hours and cut down 20 trees.

[DAY5]* *The progress was more terrible. The woodcutter worked 4 hours and cut 10 trees.

[DAY6, 7, 8] The woodcutter applied for sick leave.

[DAY9] The woodcutter returned to work. He worked 8 hours and cut down 80 trees.

[DAY10]* *The project is seriously behind schedule. So, two new woodcutter were hired by the manager. Three employees worked 12 hours (4 overtime hours, requires double pay) and cut down 360 trees.

[Final Result] 710 trees were cut. The total cost was £880. Therefore, The project cannot be completed before the deadline and it was over budget.

*Actually, for the general projects, the salary can be determined in two different ways.*

- Based on the working time. (£10 per hour)
- Based on the working progress. (£1 per tree)

Undoubtedly, any wise managers will not consider the first one. Because it will highly reduce the work efficiency and another one can certainly control the total cost. Nevertheless, for software projects, the salary cannot be calculated by the immeasurable progress. Typically, most software companies will use the working hour to count the salary. That is why in this story, working time was the salary standard.

As a result of this, project tracking is a status measurement of the project milestones, tasks and activities ** ^{[3]}**. Managers have to continuously monitor the completion status by collecting and calculating the statistical data. Thus, the benefits of EVM are more and more outstanding.

**Three Basic Elements: PV, AC, EV**

*Based on the story, the following three project tracking points must be focused.*

- The completed situation of tasks in the plan.
- The actual situation. Such as the current usage of time and cost.
- The completion situation of tasks in actual.

However, neither the customers or boss will pay their attention on whether the employees are sick or not; whether the programmers work overtime or not. In general, most customers only care about that can the requirements be delivered on time. The amount of project benefit achievement will be the greatest concern of the boss. For that reason, the three basic elements of EVM are using money as their quantitative unit. In other word, PV, AC and EV respectively quantified the three above points** **** ^{[4]}**.

*Based on the felling story.
*The

**Planed Value (PV)**is 8 hours * 10 days * £10 = £800.

4 days later, the actual work of the woodcutter is 8 hours + 8 hours + 8 hours + 6 hours = 30 hours. So the

**Actual Cost (AC)**is 30 hours * £10 = £300.

Finally, due to the task is to cut down 800 trees and only 80 trees + 100 trees + 60 trees + 20 trees = 260 trees have been cut down. So the completion rate is 260 trees / 800 trees = 32.5% and the

**Earned Value (EV)**is 32.5% * £800 = £260.

In summary, PV responses the planning of tasks. AC indicates the actual investment of tasks. EV displays the actual completion situation of tasks ** ^{[4]}**. On the other hand, money might not be a suitable unit of measurement. Because every employee has their own salary standard, which is confidential.

*There are two ways to solve this issue.*

- Comprehensive cost

Putting the various cost together, such as the utility bills, the site fees, the salary of all employees, etc. Then equally divided it to every staff who will directly involve in the project development.

*For example,* a company needs to pay the following costs every day, namely, £50 for utility bills, £150 for site fees, £800 for salary, £600 for the others. Moreover, there are 9 programmers and a manager who are working for the project. And they will work 8 hours per day. So the comprehensive cost is (£50 + £150 + £800 + £600) / 10 people / 8 hours = £20 / hour.

- Working hours

Using working hours to express these values and do not transform them into costs.

Moreover, a project will include several tasks and each task will have their own PV, AC and EV values. The initial state of these three values is zero. As the project progressed, they will keep accumulating and increasing.

*The following figure shows four different situations of task completion:*

**Four Measurement Value: CV, SV, CPI, SPI**

*These measurement indicators will predict the development trends of cost and schedule ^{[4]}.*

- Cost Variance:
**CV = EV – AC** - Schedule Variance:
**SV = EV – PV**

If the result is zero, the progress will be completely consistent with the plan. The positive result indicates that the cost is under budget and the actual progress is ahead of schedule. The negative result indicates that the cost is over budget and actual progress is behind schedule.

- Cost Performance Indicator:
**CPI****= EV / AC** - Schedule Performance Indicator:
**SPI****= EV / PV**

If the result is one, the progress will be completely consistent with the plan. If the value is greater than 1, then the cost will be under budget and the actual progress will be ahead of schedule. If the value is smaller than 1, then the cost will be over budget and the actual progress will be behind schedule.

In simple terms, the higher the numbers are, the better the results are.

*For examples (still based on the felling story):
*The PV, AC and EV have been figured out in the previous section. In detail, four days later, the three basic elements of the project are: PV = £800, AC = £300 and EV = £260. So, the four measurement indicators can be calculated:

CV = £260 – £300 = -£40

SV = £260 – £800 = -£540

CPI = £260 / £300 = 0.867

SPI = £260 / £800 = 0.325

Therefore, after four days, the project was over budget and seriously behind schedule.

**Estimate At Completion (EAC)**

Undoubtedly, every stakeholder wants to know the final cost of projects. EAC can predict the completion cost during the development process.

*The estimation formulas of EAC are *^{[4]}*:*

EAC = AC + Future Cost

Future Cost = Unfinished Work / CPI

Unfinished Work = Budget at Completion (BAC) – EV

*The formula simplification is:*

**EAC = AC + (BAC – EV) / CPI **= AC + (BAC – EV) / (EV / AC) **= BAC * AC / EV**

Thus, if the current CPI can be kept, the project final cost will be as same as this EAC result. According to the CPI definition ** ^{[5]}**, managers should ensure that the CPI value is greater than or equal to 1.

*For examples (again, the felling story):
*After the first four days, AC = £300, EV = £260 and BAC = £800. So, the final cost of the project can be estimated: EAC = £800 * £300 / £260 = £923. Hence, this manager will face to the discontent of his boss owing to the additional cost.

**Idealization situation**

If the poor manager in the story knows the EVM method, he might predict the final situation before day 5 and discover an appropriate method of risk response.

*Then, the ending of this story may be changed.*

[DAY5] Firstly, let the woodcutter go home to take a rest. Secondly, looking for new employees. Thirdly, changing the project plan and adding an incentive method (if the daily progress of each worker is more than 80 trees, a £5 reward will be paid for every 10 additional trees).

[DAY6] Hired two new woodcutters, they worked 8 hours and cut down 240 trees. The additional bonus was £40.

[DAY7] They worked 8 hours and cut down 240 trees. The additional bonus was £40.

[DAY8]* *They worked 2 hours and cut down 60 trees.

[Final Result] The project was completed and it could be delivered to the customer two days before the deadline. The total cost of the project was £720, which was £80 lower than the budget.

**Actual situation**

The above discussion supports that EVM can digitize and visualize the project management. It will make every beginner extremely excited. Nevertheless, the actual result and the practical effect are quite hard to meet these positive ideas.

*The common situations will be shown as follows.*

- Incorrect project planning or terrible project tracking

Numerous software projects not only forget to create the complete record, but also lack a detailed plan. That is why the three basic values (PV, AC and EV) cannot be counted. Thus, the project tracking might never achieve by using EVM.

- Lacking an effective and simple method to collect the actual data

PV can be counted by using the ‘Microsoft Project’ and EV can be calculated by updating the progress record. However, AC will be really difficult to collect. Because the project members, such as programmers cannot easily complete the statistics of their actual work.

- Software projects are special

Because the requirements of software projects are always changing, the project plan cannot be fully confirmed at the beginning and the PV value will often be adjusted. Moreover, AC and EV will also fluctuate frequently. So the measurement values (CV, SV, CPI, SPI and EAC) are uncertain. Consequently, the benefit of EVM is not obvious.

- Additional workload

The project plan will include its development plan, coding plan, testing plan, training plan, etc. They will be responded by different employees. If the purpose is to track the PV, AC and EV values, first the managers have to unify and quantify them. Undoubtedly, it will bring a large number of additional workload.

- Require professional knowledge of software engineering

EVM also requires some professional knowledge of software engineering. For instance, the manager needs to know the work breakdown structure (WBS) ** ^{[7]}**, which is a hierarchical breakdown structure of all tasks. In addition, the project main schedule (PMS)

**will always be shown as a Gantt Chart, which relates to the task progress. However, most software companies will only focus on the coding ability of their programmers. This will increase the difficulty of software engineering management.**

^{[8] }**Make Earned Value Management useful and practical**

Back to the fundamental question: why use EVM? The above discussion proves that the higher the measurement values are, the better the situations are. However, is it always positive when CPI and SPI around 100%? Is it always favorable when CV and SV greater than zero? In fact, these numbers cannot clarify all the issues. Although they might be positive and large, the project will still encounter several serious troubles. Such as its plan might miss a critical task and then the PV value will become meaningless. Actually, the purpose of EVM is to compare the plan and the implementation. So a useful EVM must require a correct project plan ** ^{[6]}**.

Therefore, the project success tends to be impacted by these main factors, which are the ability and the expertise of all members, the orderliness and the preciseness of whole project development, the complexity and the innovation of every requirement, etc. In particular, the essence of EVM is to understand the meaning of PV, AC and EV, rather than to pursue the precise values which are calculated by the mathematical formulas. EVM is not a mathematical game. All calculated values must be supported by numerous objective facts. Otherwise, unclear results are better than the accurate values and abstraction will be better than quantification.

*In conclusion, based on the specificity of software project development, the three basic EVM elements can be summarized and analyzed as follows.*

**Planed Value**Reducing the PV value is the most effective way of project success. Based on the requirements that are uncertain and changeable, design and coding progress cannot be clearly determined. Hence, every clever idea of the programmers will solve many problems and decreases the workload. Moreover, the usage of advanced tools, the reuse of software and the choice of correct programming language will also be helpful.

**Actual Cost**An efficient working state can reduce the AC values. It will be improved by using several methods, such as incentives, skill training, technical meeting, expert advice, etc.

**Earned Value**An obvious standard of every task completion will increase the EV values. So managers should break down the large task into several small tasks and try to avoid long duration tasks. Futhermore, the completion rate can be simplified into two states, namely, completed (EV = 100%) or not completed (EV = 0%).

**To end with the same story**

If the manager of the felling story can understand the real purpose of EVM, he could consider these issues at the start of the project.

- How to reduce PV by using clever methods. (Use chainsaw as new tool)
- How to decrease AC by improving the work efficiency. (Training in chainsaw usage)
- How to improve EV by clearly defining the tasks in details. (Arrange daily task)

*According to these considerations, the story will be changed like this:
*[DAY1] Firstly, analyzing the project requirement and made a plan. Secondly, bought a chainsaw, which cost £80. Thirdly, hired a woodcutter then spent additional £20 for a two hours chainsaw training. Finally, arranged the daily task: cut down 100 trees in 6 hours. Daily result: task complete.

[DAY2] Daily task: cut down 200 trees in 8 hours. Daily result: task complete.

[DAY3] Customers changed their requirement, 200 additional trees had to cut down within the project duration. Daily task: cut down 220 trees in 8 hours. Daily result: task complete.

[DAY4] Daily task: cut down 240 trees in 8 hours. Daily result: task did not complete, the woodcutter cut down 220 trees.

[DAY5]

*Daily task: cut down 220 trees in 8 hours. Daily result: task complete.*

[DAY6] Daily task: cut down 40 trees in 2 hours and then spent 6 hours to test the wood of 1000 trees. Daily result: task complete.

[Final Result] Although the requirement had been changed, the project still successfully completed in only 6 days, which meant that it could be delivered four days before the deadline. In addition, the total cost was: £10 * 8 hours * 6 days + £80 + £20 = £580, which was £420 lower than the budget.

**Summary**

As a consequence, according to this simple and funny felling story, which throughout the whole article. EVM has been obviously defined and analyzed. In short, EVM does not only represent the mathematical formulas and values, but also plays a distinguished role in project tracking. This article describes EVM by using a practical and comprehensive way, in order to give a positive feeling to all people who are interested in software engineering management. Without doubt, EVM is not complex, boring and useless. It is the method that can effectively track the progress of software development.

**Bibliography**

[1] R.A. Marshall, “The Contribution of Earned Value Management to Project Success on Contracted Efforts” *J. Contract Management*, pp. 21–33, Summer, 2007.

[2] Scheid, J. (2013), *How Earned Value Management is Limited*.

[3] JB Danforth Company Proprietary, *Project Tracking and Control*.

[4] Nagrecha, S. (March, 2002), “An introduction to Earned Value Analysis”

[5] Dummies, *Earned Value Management Terms and Formulas for Project Managers*.

[6] Sulaiman, T. & Smits, H. (2007), *Measuring Integrated Progress on Agile Software Development Projects*.

[7] Office of Management, Budget and Evaluation (Jun, 2003), *Work Breakdown Structure,* Department of Energy, U.S.

[8] Glen, M. C. (1995),*A GUIDE TO NETWORK ANALYSIS.*