As the developer, the most thing is do the development work right!
One of the most critical factors in software development is the competency of developer(s). This competency relates directly to their effectiveness and performance. To evaluate the Key Performance Indicators (KPIs) of a developer or team of developers is fairly complex process. But we can use a set of software development KPIs to measure the effectiveness of development work, then create a fair, non-biased assessment.
What do we really have to measure software development work?
In another word, how to collect measurement data? Which must be easy and cheap to collect and simple to use and understand it.
We divide software development work KPIS into three areas to:
- Effectiveness KPIs measure the time taken for the initial requirements, as well as the revisions and tweaks that go into fixing bugs and achieving alignment with delivery goals.
- Quality KPIs will monitor and report the number of issues related problems that are discovered during developing, testing and implementing.
- Productivity KPIs gauges productivity by measuring the amount of work done to produce the passed set of requirements over a given period of time.
All these KPIs should be measured together, productivity should after reliability and quality, otherwise no developer will want to take on hard problems.
Each KPI will have its own benchmarking goals to evaluate performance. Such goals are established at different levels according to past performance, best practices and overall requirement objectives.
Except main KPIs above, we also need consider developer’s contributions in Wiki, Documentation, and Tutoring. Because we encourage good developers to share their ideas and experiences to make the whole team growing healthy.
Below is some examples:
- Actual delivery time vs. Estimated delivery Time. Predictability percentage. More close 100%, more accuracy and effectiveness.
- One time Successful deliveries vs. Total deliveries, Reliability percentage.
- Original Requirements vs. Development Plan vs. Final deliveries, accomplish rate
- Overall accomplish time: issue created time to issue resolved time.
- Handle multi-tasks ability: one solution for multiple requirements.
- Handle similar issues ability: one solution to solve same type issues overall system.
- Re-do/Re-work counts in one requirement. One time delivery means good quality.
- Number of Bugs reported during the Test. Less the bugs better the performance
- Critical Bugs vs. Total Bugs found. Severity rating
- Any clear documented requirements before development work begins.
- Any clear plans to solve the issue.
- Any clear description for issue solved. This document work will help to reduce similar issue solving time.
- Number of issues solved.
- Number of critical issues solved.
- Count of deliveries.
- Size of the deliveries, counting the lines of code, and commented lines of code, counting of files of code.
- Count of peer reviews
- Any wiki documents created
- Leading any training classe