R & D productivity metrics in agile mode

Since 2011, I first share "Agile metrics" Agile Tour Suzhou station since the solving of this problem has been to the end of 9012.

Recently some X-Developer application, users exchange for performance evaluation developers, decomposition and measure demand is still difficult. Customers believe that even if you can not do it, then it is unfair for the statistics on the number of requirements in demand, but to do even demand, but also a difficult problem to solve. Other industry conventional wisdom was that, as long as the demolition, demolition, demolition, final demand will be "close to even," but this view unless there is a limit on the mathematical proof, or a statistical regression analysis, can only be one kind assumptions.

In this paper, the accounting principles in business activities, storage and sales cost analysis, provides a complete set of research and development capacity in the Agile model can measure method.

Essentially change the mode of operation

Why from the big to the small version version to version iterations, the iteration to continuous delivery, seemingly simple - not that shorten release cycles Well - companies do it so difficult? Essentially change the mode of operation. Manufacturing, retail and service companies, its management and net profit calculation is not the same: manufacturing is special about depreciation of plant and assets such as land management, and retail is inventory management, service companies is the cost management.

As a software company, its delivery model represents the business model, delivery model has changed, change management, everything will be confusion. Overall, the traditional software-based vendors to purchase IT department, close to the manufacturer; R & D center is close to the retail company, and now we are in service to the company's asset-light transition: such as cloud services cost alternative to hardware depreciation costs, R & D costs assets.

Because not really be completely unavailable (demand backlog), under the measure agility mode, shift more to learn from the retail inventory cost calculation, made to an iterative version of the system, very similar to the perpetual inventory system on a regular basis system change: timeliness improved. Under the perpetual inventory system mode, every record needs to send and receive goods and balance, in order to keep abreast of the company's property and supplies, but increased the workload of accounting. For needs, using an iterative model, requirements gathering held more frequent meetings, increased workload, but can be more timely understanding and processing requirements. So is not taking iterative development, companies need to be judged according to their needs response cycle can even coexist in many ways.

Estimates want it

Estimate (Estimate) is a very controversial term in the software, because the manager is always the estimate as promised, and very inaccurate estimate, so many people want it, "kill." However Estimate really is a glossary of accounting, accounts receivable / payable often not necessarily receive / pay real book value, so to make accounting estimates. In project management, due to the lack of actual adjustments to estimates, resulting in a final variation, also led to real difficulties in managing the delivery cycle.

What is the estimated real difficulty is it? That there is no basis. Or that many companies will evaluate the implementation of mistake. Here are the estimated one (classic) title, to test your understanding:

Project Manager allows developers to Wang estimated demand development cycle B, project managers own assessment done two days before Wang made a similar scale of demand A, with three days, Wang B needs assessment after that five days to finish, estimated demand development cycle B should be:
. a three days
. b five days
. c four days
d days.

What you choose?


Estimation of technical understanding is correct, the correct answer is a, three days. Because this is the fact that the data, estimates are based on assessment of the facts happened in the past, rather than subjective ideas, or calculate the average.

R & D output in the end how to count?

First paragraph, calculated based on the number of output demand there are two problems:

  1. Difficulty demand methods of resolution;
  2. Assuming that limit the scale of demand is the average of the lack of proof.

Basic Definition

If you do not understand the system in terms of lean, this section may be additional background knowledge. The main three definitions of time: lead time, cycle time and takt time.

Lead time (Lead Time)
lead time measured in the lean period of the system is the order response, refers to calendar days from order to delivery to accept successful passes. For example, the number of orders received August 30, No. September 27 delivery to the hands of users, lead time is 28 days. In software development, the lead time means the demand to publish all received calendar days after the on-line process. Demand accepted definition, is the product / R & D department and business department confirmed that this is a valid demand, will be developed, rather than simply reject out, so the back of demand for clarification, analysis, change the time it takes, will be included within the lead time.

Lead time is an important indicator of the overall assessment of demand response capacity, due to the business, operation and maintenance are included, so it reflects the comprehensive ability, too many factors, such as possible all aspects of quick, but manual regression testing workload is too heavy, too slow, the whole will be very long lead time. Lack of automation capabilities of the company, not suitable for lead-time as an evaluation index.

Cycle Time (Cycle Time)
cycle time in the lean system measures the production itself "how fast", so it is the statistics from the beginning of production to shipping all natural passing day. For example, September 12th started production plans, September 15 issued goods, cycle time is three days. For software development, the cycle time is "entering the development" to "ready to release" all natural process through the day. Demand began to design, in principle, is "entering the development", because agile advocate is not divided into different stages of design coding. It is ready to release the release point to the production environment, if the pre-transition iteration, the business also can not timely acceptance, can also preparing to release UAT (user acceptance environment) as a temporary end, and then slowly pull business into the rhythm.

Since the period of time to remove the need to clarify the impact of deployment on the line, so it is an important indicator of the efficiency of research and development. In other words, this indicator does not look good, improve the range of R & D in the interior, including the development and testing.

X-Developer calculated on the cycle time is a requirement for the code submitted by natural day time elapsed from the first to the last time the code submitted, it is very accurate, but also very timely. There in the trial product manager, said, "Our demands are bi-weekly iterations, the demand for more than two weeks period of time that can not happen." But the data illustrate, here is the code has filed against some of those needs after two weeks no matter because the configuration scripts, or because context switching, or because the customer data import, which in fact is not really completed within two weeks.

Takt time (Takt Time)
beat time refers to the time it takes to produce a single product, a measure of the time the cost per unit of output. For example, the cycle time of three days, produced a total of 30 products to be shipped, the cycle time is 1/10 days. In software development, the average cycle time can be regarded as a period of demand.

The cycle time can be measured to the task, and can measure development and testing tasks, respectively. 2018 in order to measure a retail bank, for example, we measure the granularity period of time on the characteristics of flow efficiency measure of particle size on the task, so that, when the cycle time is short features, see task flow of scale can be assessed.
R & D productivity metrics in agile mode

This metric is the perfect solution to the problem of uneven demand granularity, on this basis, we define a formula:

R & D capacity demand * = number of time periods

The idea behind this formula is: Those who can not handle the addition and subtraction calculations, multiplication get.

However, the great accounting standards would have given a better solution, they cried out: the average cost method, FIFO, LIFO and individual recognizable law. Specific not carried out, we can learn from the accounting of inventory costing calculations given directly applicable mode with different approaches.

The average cycle time method ACT - Average cycle time

All research and development capacity can be calculated using the average cycle time demand delivery as the second factor calculated average cycle time in France. "All the demand" range can be set according to the situation in the project, even across teams within the team. In fact, depending on how much you are now a fact.

R & D capacity demand * = number average cycle time

Every demand publishing on-line, the average cycle time of the next change will occur, so if that all historical average cost, then they can be called the moving average method. The advantages of simple average method is calculated, the disadvantage is that if major changes occur team, average cycle time will be inaccurate, say, three months before the big version of the system, demand full cycle time is three months, is now two Monday iteration, the average moment, or two months, it is difficult in a timely manner? capture improvements. So there will be a next method.

FIFO FIFO - First in, first out

Develop an evaluation period, this period is started as a part of the average cycle time factor calculation.

R & D capacity demand * = number of initial average cycle time

For example, some companies began to improve from July 2019, want to see results within three months. According to the FIFO method:

  • In July 2019, taken in May 2019 as a factor in calculating average cycle time development costs
  • In August 2019, taken in June 2019 R & D costs as a factor calculation, and so on ......
  • In September 2018, because the calculation factor was in July 2019, we can assess the effect of the improvement.

LIFO LIFO - Last in, first out

And FIFO difference is taken of the end of the evaluation period, i.e. the current period and the most recent period as a calculation factor.

R & D capacity demand * = number of late average cycle time

Example: In July 2019, June 2019 to take the factor calculated as the average cycle time development costs. LIFO can find more timely improvements, but the drawback is the time too, may improve really obvious, is not very good explanation.

Individual identification method SI - Specific identification

France is recognizable for each individual needs are the statistics of the time period and then added.

R & D capacity = Sum (demand cycle time)

This method is less suitable for execution in each cycle, the number of demand, the demand a large particle size, and especially not where measured. For example, when beginning to improve in July, the current method can identify an individual basis, statistics and calculation of the cycle time of each requirement. Example: July completed a total of three requirements, time periods were 12 days, 18 days, 24 days, then developed the capacity is 54 days.

This time may be many readers will ask, if the demand is equal to the number of * production cycle time, it is not demand equal to the number of time periods when the team reached capacity utilization maximized? Team can not easily cheat? There is, if we shorten the cycle time, that in this formula, the capacity would not be dropped? Below we solved it.

Assessment of the capacity formula

For example, a team using the FIFO method of assessment, delivered the n demand within the initial period, the cycle time t, and now the cycle time is reduced to tx, then how to assess productivity is rising or falling out? Let's assume the same capacity, namely:

nt = n'(t-x) => n' = nt/(t-x)

That is, in the case of shortening the cycle time, if the team is to maintain the existing production capacity of the same, should be delivered nt / (tx) a demand. Then divided into the following three cases:

  • n '<nt / (tx) Description team output has declined, the demand for smaller, but no increase delivery capacity
  • n '== nt / (tx) Description No team improved capacity, demand some do, but each needs a smaller
  • n '> nt / (tx) described the production capacity of the group, needs only be done quickly, and do more of

For example, the last team to do five 30 demand, now do five 20 demand, production is down; but now do 10 20 demand, production capacity is increased. When the team reached 15 Shi 15 = 225 "approximate maximization", it does not mean you can not improve, because 16 * 15 = 240 is called production capacity.

Upgrading measure lean mode

Simply put, agile look rhythm, flow efficiency lean look - not just the rate, but also a waste. Upgrade metric formula is as follows:

* R & D costs = number of demand cycle time - wasting

Waste is calculated as the cumulative calendar days each demand interval within the period of time to wait for more than one day. For example, a requirement to stay two days in the standby state, a waste of time 2-1 = 1 day.

X-Developer waste of natural day cumulative calculation code delivery interval of more than 1 day, for example filed September 1 code, filed September 2 is not, No. filed September 3, the accumulated waste as 0; if No. 3 September has not submitted a total waste began to count as 1, and so on. The advantage of this method of calculation is not only to capture the real R & D activity data, and can speed up the rhythm of a real continuous integration. Because only the code is submitted to the warehouse, it may start working integration deployment, the software can be delivered at this time was only constructed out - no submission, no output.

This production method can measure the amount of science and technology is the first field (any similarity is just coincidence), also X-Developer commercial version of the first to implement. In the community version of the application, we found that many teams have not yet implemented the most basic code delivery specification (notes contain demand numbers), want to be able to implement, because it is not only a number of manufacturers (Microsoft, Google, Facebook, Ali ...... ), but also many open source projects (Jenkins, Spark ......) basic specification, which can not only help the team to shorten the time to solve problems (rapid demand back into the code), it can also give feedback and guidance on scientific data-driven era.


The amount of science and technology field is a focus on product innovation and performance optimization platform for service providers, based on our more than ten years of consulting experience in well-known companies to provide tools and data analysis platform focusing on product innovation and helping companies to optimize product development performance.

Guess you like

Origin blog.51cto.com/14588342/2455715