In writing the next post, I realised that I needed to explain why it was I'm trying to understand and use Function Points.
I've spent a few months reading about and trying to get my head around various estimation techniques. I've read Function Point Analysis by the two Davids as well as joined the ifpug (more about my experiences of this later on). I've also read various papers on other estimation techniques such as MarkII and other FP derived methods. Fundamentally, at this stage, it looks like FP is the most used and comprehensive method available. So I chose to take a deeper look at this.
In a nutshell, Function Points provide a common denominator across different technologies. The kinds of metrics I think are useful to measure within a delivery organisation are things such as; 1) delivery-rate improvement over time in a technology, 2) size of assets under management, 3) costs of managing various technology stacks etc.
1. delivery-rate improvement over time in a technology
Consulting groups are the first to adopt new technologies. The first project will be a large learning effort for everyone involved. The following projects will each improve upon the one before - you hope, but have no way of knowing for sure. Knowing your delivery rate is a bit like understanding velocity.
2. size of assets under management.
We need to know how much functionality we actually manage, how much it grows. From an architecuture, or application portfolio perspective it's critical to know how big the thing is. When we need to replace it, what is it we are actually replacing? In business all assets are tagged, yet software has no inventory model. Could FP be this fit?
3. costs of managing various technology stacks
The company I work for completely supports some of the applications it builds. How do we determine how much effort is appropriate for a support team? How do we know if it's worth investing dollars to improve the quality of an application so that our costs of support are lower?
These are just some of the questions that I think FPs are well suited to answer.
The other aspect of function-points I particularly like is the end-user value perspective it takes. The Lines of Code, or size of database or whatever are of less concern than the value these things bring to the business. Function Points are more value based, it seems. I think other constructs such as FDDs Features or XP stories could play a similar role.
There is one huge caveat I wish to highlight. I'm not looking to compare productivity across organisations. I just want to be able to measure within our organisation
Comments