As I've written several articles lately about Function Point Analysis (FPA), it occurred to me that, just as any other service, there's a big difference between being a Certified Function Point Specialist (CFPS), and a really valuable CFPS.
So, if you're interested in hiring a CFPS, or renting a CFPS consultant, I'd like to share a few thoughts here about what I think makes a good CFPS.
A good Function Point specialist
I don't sell my services as a CFPS any more, but when you're looking for a good CFPS, I think a good CFPS is like a good accountant:
- They really are certified (a CFPS).
- They're detail-oriented.
- They're bold enough to tell you when your documentation is horrible.
- They're not just a bean-counter, they can also offer advice, such as, "You seem to be missing X, Y, and Z."
- They're someone you feel like you can work with.
- They have good references. (This won't be their first project.)
They are certified
Having gone through the CFPS process, I will say that it is very difficult to become a CFPS, and all the training someone goes through to become a CFPS makes them a much more accurate counter. By reading books I was able to learn a lot about FPA, and could get in the ballpark on my counts, but by forcing myself to take training classes and go through the certification process, I became a much better Function Point specialist, specifically a CFPS.
At its core, FPA is about digging through software development documentation, and going into significant (excruciating) detail about each process, including looking at database tables and fields, data entry screens, and reports. It takes a certain personality to be good at this, something like the personality of an accountant.
They're bold enough to tell you when something is wrong
I tried to perform function point counts on several third-party applications, and all I can say is, wow, it's amazing to me what passes for documentation at some companies. Again, a CFPS will need to be able to come into your house and see your database design, read your Use Cases, and see whatever prototypes you have, and if your house isn't in order, they aren't going to be able to do much for you.
Assuming that you don't live anywhere near a CFPS, I strongly recommend sharing your documentation with the CFPS electronically long before they make a trip to your facility, because if your documentation isn't in order, their trip is going to be a waste of everyone's time.