CTR and Project management
By Xiaoming Wang
Eight weeks ago, I joined ThoughtWorks as a Business Analysis. Now, I am writing this post to talk about some ideas of Agile project management what the best practice of Agile project management could be in my opinion.
The most interesting topic of Agile software development practice is project controlling. It is fairly difficult to see how the controlling works compared with traditional software project management. Talking about project control, which includes schedule, cost control change and risk management. In most of the cases, a cost controller(or PM) is responsible to make the cost control strategy align with the schedule control methodology. So, how to do cost control in Agile project?
Let’s talk about the schedule in Agile project first. It relies on the control of iteration schedule, velocity, timebox for spike, etc… The duration of an iteration that matches the estimation will be calculated based on how long an iteration is supposed to be done, plus timebox strategy. But we do not see how the resource, time and cost are related to each other. So how could a project be managed without considering these three key factors and the relationship between them?
Actually, there is a methodology called CTR which can solve the problem in practice. It is fairly easy to understand the theory but it really needs a lot of practice to make it work well during the whole project lifecycle. So how does CTR work in Agile project? Let’s have a look how CTR works in traditional project management.
CTR, which stands for Cost-Time-Resource, require a lot of experience on many projects and seasoned practice of the industry. The definition of a standard CTR is that to complete one standard workload-man-hour and how much cost-time-resource it requires. The system collects average CTR on every project and then returns an average value across all CTR. Note that CTR needs to be maintained up-to-date.
Let’s have a close look at why we need CTR and how CTR works on an Agile project.
When we estimate the duration of an iteration, we can also estimate the CTR of an iteration, even of a release. For example, a standard CTR means one standard cost + one standard time + one standard resource. An iteration might need 20 CTR in order to complete it. So for a Tom and Jerry pair, they are supposed to complete 10 CTR and Joey and Ross are supposed to complete the other 10. Tom and Jerry can contribute 2 standard resource + 1 standard time + 1 standard cost: 2*1/1=2. Thus, it is 2 CTR for Tom and Jerry to work one pair hour. Ross and Joey pair can contribute 4 standard resource + 1 standard time + 2 standard cost: 3*1/2=1.5. So it is 1.5 CTR for Joey and Ross to work one pair hour. The reason is that Ross is a senior and can contribute more, at the same time, he costs more. So there are options here, we need to use more high value/cost resource if it is not against resource development.
As I said the standard CTR comes from previous project experiences and industry practice. So the more you have projects you had, the move valuable your CTR is. Fortunately, some companies have been working in this business for more than 10 years, hence the reasonabe value of a CTR in larger companies.
The workload of each iteration (which we can call IterationCTR) can be a trade-off as the value of CTR. What a project manager/iteration manager or project controller needs to do is to make sure that the amount of CTR that s/he spends does not go beyond IterationCTR, so that the budget is under control. It means that the project manager needs to put the right resource on the right job, especially senior people.
Mr Xiaoming Wang, MSc (Information Processing), is a consultant, project manager, trainer, coach and business analyst in ThoughtWorks. Xiaoming has valuable experience of enterprise information system development widely across banking, finance, retail, manufacture, hydrocarbon, HSE management, telecommunication, CRM,.CMS, BPMS and grid computing. His expertise includes Agile project management, Lean methodology consulting, organization transformation from CMM to Lean/Agile, program management and business analysis. Xiaoming has worked in diverse industries for four years then settled down in IT industry as an IT manager. Then he moved to IT consulting field and focuses on IT project management. He was also a contributor to open source, such as CruiseControl.
Xiaoming’s Weblog OSSME.COM has rich information of IT project management, agile practice and lean methodology.