请输入您要查询的百科知识:

 

词条 Software metric
释义

  1. Common software measurements

  2. Limitations

  3. Acceptance and public opinion

  4. See also

  5. References

  6. External links

{{Software development process}}

A software metric is a standard of measure of a degree to which a software system or process possesses some property. Even if a metric is not a measurement (metrics are functions, while measurements are the numbers obtained by the application of metrics), often the two terms are used as synonyms. Since quantitative measurements are essential in all sciences, there is a continuous effort by computer science practitioners and theoreticians to bring similar approaches to software development. The goal is obtaining objective, reproducible and quantifiable measurements, which may have numerous valuable applications in schedule and budget planning, cost estimation, quality assurance, testing, software debugging, software performance optimization, and optimal personnel task assignments.

Common software measurements

Common software measurements include:

  • Balanced scorecard
  • Bugs per line of code
  • Code coverage
  • Cohesion
  • Comment density[1]
  • Connascent software components
  • COSMIC Function Points
  • Constructive Cost Model
  • Coupling
  • Cyclomatic complexity (McCabe's complexity)
  • Defect density - defects found in a component
  • Defect potential - expected number of defects in a particular component
  • Defect removal rate
  • DSQI (design structure quality index)
  • Function Points and Automated Function Points, an Object Management Group standard[2]
  • Halstead Complexity
  • Instruction path length
  • Maintainability index
  • Number of lines of code
  • Program execution time
  • Program load time
  • Program size (binary)
  • Weighted Micro Function Points
  • CISQ automated quality characteristics measures

Limitations

As software development is a complex process, with high variance on both methodologies and objectives, it is difficult to define or measure software qualities and quantities and to determine a valid and concurrent measurement metric, especially when making such a prediction prior to the detail design. Another source of difficulty and debate is in determining which metrics matter, and what they mean.[3][3]

The practical utility of software measurements has therefore been limited to the following domains:

  • Scheduling
  • Software sizing
  • Programming complexity
  • Software development effort estimation
  • Software quality

A specific measurement may target one or more of the above aspects, or the balance between them, for example as an indicator of team motivation or project performance.

Acceptance and public opinion

Some software development practitioners point out that simplistic measurements can cause more harm than good.[4] Others have noted that metrics have become an integral part of the software development process.[5]

Impact of measurement on programmer psychology have raised concerns for harmful effects to performance due to stress, performance anxiety, and attempts to cheat the metrics, while others find it to have positive impact on developers value towards their own work, and prevent them being undervalued.[6]

Some argue that the definition of many measurement methodologies are imprecise, and consequently it is often unclear how tools for computing them arrive at a particular result,[7] while others argue that imperfect quantification is better than none (“You can’t control what you can't measure.”).[8]

Evidence shows that software metrics are being widely used by government agencies, the US military, NASA,[9] IT consultants, academic institutions,[10] and commercial and academic development estimation software.

See also

  • Goal Question-Metric
  • List of tools for static code analysis
  • Orthogonal Defect Classification
  • Software crisis
  • Software engineering
  • Software package metrics

References

1. ^{{cite web|title=Descriptive Information (DI) Metric Thresholds|url=http://www.lsec.dnd.ca/qsd_current_version/eng_support/di/metrics.htm|work=Land Software Engineering Centre|accessdate=19 October 2010|deadurl=yes|archiveurl=https://archive.is/20110706175332/http://www.lsec.dnd.ca/qsd_current_version/eng_support/di/metrics.htm|archivedate=6 July 2011|df=}}
2. ^{{cite web|url=http://www.omg.org/news/releases/pr2013/01-17-13.htm |title=OMG Adopts Automated Function Point Specification |publisher=Omg.org |date=2013-01-17 |accessdate=2013-05-19}}
3. ^{{cite web|last=Kolawa|first=Adam|title=When, Why, and How: Code Analysis|url=http://www.codeproject.com/KB/interviews/Code_Review.aspx|work=The Code Project|accessdate=19 October 2010}}
4. ^{{citation |last=Kaner|first=Dr. Cem|title=Software Engineer Metrics: What do they measure and how do we know?|citeseerx=10.1.1.1.2542}}
5. ^{{cite web|last=Binstock|first=Andrew|title=Integration Watch: Using metrics effectively|url=http://www.sdtimes.com/link/34157|work=SD Times|publisher=BZ Media |accessdate=19 October 2010}}
6. ^{{cite web|url=http://www.projectcodemeter.com/cost_estimation/images/files/PCMProManual.pdf |title=ProjectCodeMeter (2010) "ProjectCodeMeter Users Manual" page 65 |format=PDF |date= |accessdate=2013-05-19}}
7. ^{{citation|first1=Rüdiger|last1=Lincke|first2=Jonas|last2=Lundberg|first3=Welf|last3=Löwe|title=Comparing software metrics tools|year=2008|work=International Symposium on Software Testing and Analysis 2008|pages=131–142|url=http://www.arisa.se/files/LLL-08.pdf}}
8. ^{{cite book | last = DeMarco | first = Tom | authorlink = Tom DeMarco | year = | title = Controlling Software Projects: Management, Measurement and Estimation | edition = | pages = | publisher = | isbn = 0-13-171711-1}}
9. ^{{cite web |url=http://earthdata.nasa.gov/our-community/esdswg/metrics-planning-and-reporting-mparwg |title=NASA Metrics Planning and Reporting Working Group (MPARWG) |publisher=Earthdata.nasa.gov |date= |accessdate=2013-05-19 |deadurl=yes |archiveurl=https://web.archive.org/web/20111022023020/https://earthdata.nasa.gov/our-community/esdswg/metrics-planning-and-reporting-mparwg |archivedate=2011-10-22 |df= }}
10. ^{{cite web|url=http://sunset.usc.edu/csse/research/COCOMOII/cocomo_main.html |title=USC Center for Systems and Software Engineering |publisher=Sunset.usc.edu |date= |accessdate=2013-05-19}}

External links

  • Definitions of software metrics in .NET
  • Software Metrics
  • Software Engineering Metrics: What do they measure and how do we know
{{DEFAULTSORT:Software Metric}}

3 : Software metrics|Metrics|Software engineering

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/22 6:53:10