Internosis - knowledge management,ecommerce and project consulting
*Home>>>Software Development

Do we really need software metrics?


Even though I can find so many software metrics starting from "Number of Lines of Code", "Cyclomatic complexity" to "Coupling Between Objects" and "Maintainability Index" in the web, I couldn't find a good reference to apply them in a software development environment or how it actually helps in improving the quality of the work.

will the extra burden of measuring the software metrics paid off?

Knowing how a piece of software performs allows you to estimate how long it will take to accomplish a particular goal. It helps when you are trying to sell a product or service if you know you can get the job done in a reasonable amount of time as time is money. I work for a company where they kept no metrics on thier conversion software whatsoever for 6 years. Then a project came along where they needed to know a simple metric: Number of records converted per second and they couldn't answer that question! They accepted a project that was 10 times larger(data wise) than any other project and when someone finally benchmarked the program they found out that it would take them 2 months longer to convert the data than they alloted time for. The metrics also tell use when the quality is good or in the case of most businesses "good enough". In the real world every metric does not matter but they are useful and necessary.

A software metric is a measure of some property of a piece of software or its specifications.

Since quantitative methods have proved so powerful in the other sciences, computer science practitioners and theoreticians have worked hard to bring similar approaches to software development. Tom DeMarco stated, 鈥淵ou can鈥檛 control what you can't measure鈥?in DeMarco, T. (1982) Controlling Software Projects: Management, Measurement & Estimation, Yourdon Press, New York, USA, p3.


Common software metrics include:

Order of growth (See Analysis of algorithms in terms of Asymptotic analysis and Big O notation)
Source lines of code
Cyclomatic complexity
Function point analysis
Bugs per line of code
Code coverage
Number of lines of customer requirements.
Number of classes and interfaces
Robert Cecil Martin鈥檚 software package metrics
Cohesion
Coupling

also check this out for more information my firend:

http://en.wikipedia.org/wiki/Software_me...

Software metrics are used by managers to measure the performance of their programmers.

However this has been widely criticized in the software development field because it measures the amount of code created, not the quality of the code.

The basic application would be to measure the performance of your programmers in your team. It will help you spot someone who obviously is not competent or lags behind the general standard of your other programmers.

These tools should be used with other management techniques to evaluate your software development team. For example, peer review might also be worth looking at.

Speed is not the only measure you really want to care about. For example, if you one slow programmer who creates very good code that person might be more suitable for optimising code or writing code that is critical to performance.

Metrics help estimate the amount of time something will take to complete, which is then affects all sorts of things from price of the software to how many people you hire, etc.

Tags
  Supply Chain   Data Mining   ERP   CRM   Application Development   Software Consulting   Software Development   Information Technology   Technology Consulting   Project Training   Project Team   Project Control
Related information
  • I am working in a Software Company and would like to Switch Over from Development to Testing.Give me an Idea?

    Frankly speaking the toal number od people chasing the job in testing r far less as compaed to development .... so u heading for more specilist job ... which has its won merits or demerits ..........

  • In your opinion, why do software developers choose java technology in their Program application development? S

    Reasons are obvious.. 1) Java is strictly platform independent. 2)Java is dynamic 3)Java is more secured(cos uses concept of JVM) 4)Java/container supports multithreading 5)Lower development c...

  • How can I become an educational software expert (specialist)?

    learn computer languages start with HTML then Javascript then PHP and then start learning software languages like Python or Vbs

    ...
  • Free accounting software in the way you want?

    No doubt! that will be a great offer and more than excellent. GOD bless the team offering a such nice free service. But what's the background.

    ...
  • What kind of software will come out when the iPhone SDK comes out in February?

    it is coming out for the iphone and ipod touch. it is a safe jailbreak so that so no hackers can get into iphones more info at ...

  • What are the prospects of software testing in future?

    best sallary without hardworking try to learn winRuner

    ...
  • How to enter US / Europe software market?

    Even I need the answer for this.I am running a software company in india, more than dozen java and j2ee outsourced projects running but still feeling difficult to get a direct client contact from...

  • Which is the best editor for development in php?

    For free both PHP Eclipse and PHP designer are pretty good. PHP Eclipse Plug-in (Requires Eclipse IDE) ...

  •  

    Categories--Copyright/IP Policy--Contact Webmaster