Welcome to YLOAN.COM
yloan.com » Software » Software Development Metrics: Discussing Them Inside Out
Games Personal-Tech Data Entry registry cruise torrent mac code virus storage uninstaller systems cisco bugs wireless codes maintenance dell update communication trojan atlanta Data Backup Data Storage Data Protection Data Recovery Anti-Virus Windows Linux Software Hardware Mobil-Computing Certification-Tests Computers & Internet Internet

Software Development Metrics: Discussing Them Inside Out

The computer software development industry has a poor track record for developing and employing effective software metrics

. Software metric is a measure of some property of a piece of software or its specifications. Software development solutions point out that those naive and simplistic measurements can cause more harm than good. This article reveals the software development metrics that matter in the present industry.

What to be measured?

Different metrics matter to management, team and customer. There are metrics that you have to track because of governance or compliance requirements. There are metrics that the team wants to track because they find them useful and want to share. There are stealth metrics that as a manager you would like to track quietly because you think they will give you better insight into the teams performance and identify problems. And most important, the measures that the customer actually cares about: are you delivering what they need when they need it, is the software reliable and usable?

Size


In case of computer software development a consistent measure of the size of the system and the size of the code base are required to compare data over time or between systems and teams. Counting the Lines of Code, whether it is Source Lines of Code (SLOC) or Effective Lines of Code (ELOC) or NCLOC (Non Commented Lines of Code), is simple and cheap to measure for a code base. Thus Function Points are used to standardize measurements of work for estimation and costing independent of the platform.

Where the time and money are spent?

The basic cost data must be tracked as it is a part of running any project or business. If everyone is tracking time for billing purposes or project costing or OPEX/CAPEX financial reporting or some other reason its easy.

Capers Jones recommends that maintenance teams track Assignment Scope: the amount of code that one programmer can maintain and support in a year. You can use this for planning purposes, watch this change over time and compare between teams and systems, or even against industry benchmarks.

Speed

Everybody wants software development solutions to be delivered as fast as possible. Agile teams measure Velocity to see how fast they are delivering at any point in time. Velocity is only useful as a short-term/medium-term predictor of one teams delivery speed.

Teams that are continuously delivering to production can measure speed by the number of changes they are making, and the how big the changes are. Easy measures the frequency of changes and the size of the change sets, and correlates this with production incident data to help understand whether they are changing too much or too quickly to be safe.

Probably the most useful measure of speed comes from Lean and Kanban. To determine if you are keeping up with customer demand, measure the turnaround or cycle time on important changes and fixes: how long it takes from when the customer finds a problem or asks for a change to when they get what they asked for.

Consistency and Quality

Basic measures of quality and reliability must be considered. For online businesses, Uptime is the most common and most useful measurement of reliability. Some kind of defect data, which come free if you are using a bug tracking system like Bugzilla or Jira are necessary. Identify areas in the code that have the most bugs, measure how long it takes to fix bugs and how many bugs the team can fix each month.

Health of the Code Base

The health of the code base must be found out, how much technical debt you are taking on, using code analysis tools. Code coverage is a useful place to start, especially if you are putting in automated testing, or even if you just want to measure the effectiveness of your manual testing. Tools like EMMA and Clover instrument the code and trace execution.

Measuring Code Complexity, identifying your most complex code and watching to see if complexity is increasing over time helps you make decisions about where to focus your reviews and testing and refactoring work.

Using Metrics Safely

According to many programmers metrics are useless or evil for computer software development, especially if they are used by management to evaluate and compare programmer productivity. IBM for example, uses static measurement data to scorecard application developers and teams and in an attempt to quantify programmer performance. Using such data to rate developers for HR purposes leads to abuse and reinforcing of the wrong behavior.


Use metrics only to identify potential problems and negative trends, strong points and weak points in the code.

Conclusion

Too much emphasis on any one of these aspects of performance is likely to create an imbalance in the teams motivations, leading to a dysfunctional project.

by: Holly Maxted
Using The Time Attendance Software Leverage The Benefits Of Enterprise Compliance Management Software Ebridge Software Hosting Offers Expertize Freight Software For Simplifying The Logistic Operations Bulk Sms Service Provider | International Sms Software | International Bulk Sms|email To Sms Software Development Using Drupal Is The Best Choice Features Of Predicting Customer Interaction Software Top Software Solutions From The Best Software Development Company How To Create Subtitle Video Using Aegisub Software Software Development Company India Proving To Be Efficient Webtek Labs Learn About Best Ecommerce Software How To Choose The Best Data Recovery Software Discount Software Store - Tips To Select The Best One
print
www.yloan.com guest:  register | login | search IP(3.144.237.87) / Processed in 0.008549 second(s), 5 queries , Gzip enabled , discuz 5.5 through PHP 8.3.9 , debug code: 44 , 5010, 95,
Software Development Metrics: Discussing Them Inside Out