Category: Software metrics

CppDepend is a static analysis tool for C/C++ code. This tool supports a large number of code metrics, allows for visualization of dependencies using directed graphs and dependency matrix. The tools a
SNAP Points
SNAP is the acronym for "Software Non-functional Assessment Process", a measurement of the size of the software derived by quantifying the non-functional user requirements for the software. The SNAP s
Use case points
Use case points (UCP or UCPs) is a software estimation technique used to forecast the software size for software development projects. UCP is used when the Unified Modeling Language (UML) and Rational
Weissman score
The Weissman score is a performance metric for lossless compression applications. It was developed by Tsachy Weissman, a professor at Stanford University, and Vinith Misra, a graduate student, at the
Software defect indicator
A Software Defect Indicator is a pattern that can be found in source code that is strongly correlated with a software defect, an error or omission in the source code of a computer program that may cau
Domain-to-range ratio
The Domain-to-range ratio (DRR) of a logical (algorithmic) function (or software component) is the ratio of the cardinality of its set of all possible inputs (domain) to the cardinality of its set of
Cockburn Scale
The Cockburn Scale, also known as the Project Classification Scale, is a method of describing how much formal process a software project requires. The scale was described in Alistair Cockburn's book A
Efferent coupling
Efferent coupling is a coupling metric in software development. It measures the number of data types a class knows about. This includes inheritance, interface implementation, parameter types, variable
Code coverage
In computer science, test coverage is a percentage measure of the degree to which the source code of a program is executed when a particular test suite is run. A program with high test coverage has mo
The MK II Method is one of the software sizing methods in functional point group of measurements. This is a method for analysis and measurement of information processing applications based on end user
Ripple effect
A ripple effect occurs when an initial disturbance to a system propagates outward to disturb an increasingly larger portion of the system, like ripples expanding across the water when an object is dro
The Simple Function Point method
The Simple Function Point (SFP) method is a lightweight Functional Measurement Method. The Simple Function Point method was designed to be compliant with the ISO14143-1 standard and compatible with th
Programming complexity
Programming complexity (or software complexity) is a term that includes many properties of a piece of software, all of which affect internal interactions. According to several commentators, there is a
Software measurement
Software measurement is a quantified attribute (see also: measurement) of a characteristic of a software product or the software process. It is a discipline within software engineering. The process of
Understand (software)
Understand is a customizable integrated development environment (IDE) that enables static code analysis through an array of visuals, documentation, and metric tools. It was built to help software deve
Coupling (computer programming)
In software engineering, coupling is the degree of interdependence between software modules; a measure of how closely connected two routines or modules are; the strength of the relationships between m
Source lines of code
Source lines of code (SLOC), also known as lines of code (LOC), is a software metric used to measure the size of a computer program by counting the number of lines in the text of the program's source
GQM, the initialism for "goal, question, metric", is an established goal-oriented approach to software metrics to improve and measure software quality.
Halstead complexity measures
Halstead complexity measures are software metrics introduced by Maurice Howard Halstead in 1977 as part of his treatise on establishing an empirical science of software development.Halstead made the o
Software parametric models
A parametric model is a set of related mathematical equations that incorporates variable parameters. A scenario is defined by selecting a value for each parameter. Software project managers use softwa
Software Metrics Metamodel
The OMG Structured Metrics Metamodel (SMM) specification defines a standard Metrics Metamodel. It is a publicly available specification from the Object Management Group (OMG). SMM specifies a metamode
NDepend is a static analysis tool for .NET managed code. The tool proposes a large number features, from dependency visualization to Quality Gates and Smart Technical Debt Estimation. For that reasons
Software map
A software map represents static, dynamic, and evolutionary information of software systems and their software development processes by means of 2D or 3D map-oriented information visualization. It con
DSQI (design structure quality index) is an architectural design metric used to evaluate a computer program's design structure and the efficiency of its modules. The metric was developed by the United
Bauhaus Project (computing)
The Bauhaus project is a software research project collaboration among the University of Stuttgart, the University of Bremen, and a commercial spin-off company Axivion formerly called Bauhaus Software
Software entropy
Software entropy is the idea that software eventually rots as it is changed if sufficient care is not taken to maintain coherence with product design and established design principles. The common usag
Essential complexity
Essential complexity is a numerical measure defined by Thomas J. McCabe, Sr., in his highly cited, 1976 paper better known for introducing cyclomatic complexity. McCabe defined essential complexity as
Unified Code Count
The Unified Code Counter (UCC) is a comprehensive software lines of code counter produced by the USC Center for Systems and Software Engineering. It is available to the general public as open source c
GQM+Strategies is a method that provides concepts and actionable steps for creating the link between goals and strategies across an organization and allows for measurement-based decision-making. It wa
Open Hub
Black Duck Open Hub, formerly Ohloh, is a website which provides a web services suite and online community platform that aims to index the open-source software development community. It was founded by
Software metric
In software engineering and development, 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 (me
ABC Software Metric
The ABC software metric was introduced by Jerry Fitzpatrick in 1997 to overcome the drawbacks of the LOC. The metric defines an ABC score as a triplet of values that represent the size of a set of sou
Gcov is a source code coverage analysis and statement-by-statement profiling tool. Gcov generates exact counts of the number of times each statement in a program is executed and annotates source code
Kiuwan is a software as a service (SaaS) platform providing end-to-end static application security testing. They provide services to a range of industries, but specialize in code security analysis for
SQUORE is a software analytics and static code analysis tool for software projects. It gathers information from different artefacts types (e.g. source code, test results, bug tracking system) and tool
Cohesion (computer science)
In computer programming, cohesion refers to the degree to which the elements inside a module belong together. In one sense, it is a measure of the strength of relationship between the methods and data
Design predicates
Design predicates are a method invented by Thomas McCabe, to quantify the complexity of the integration of two units of software. Each of the four types of design predicates have an associated integra
Reuse metrics
In software engineering, many reuse metrics and models are metrics used to measure code reuse and reusability. A metric is a quantitative indicator of an attribute of a thing. A model specifies relati
Cyclomatic complexity
Cyclomatic complexity is a software metric used to indicate the complexity of a program. It is a quantitative measure of the number of linearly independent paths through a program's source code. It wa
Function point
The function point is a "unit of measurement" to express the amount of business functionality an information system (as a product) provides to a user. Function points are used to compute a functional
JArchitect is a static analysis tool for Java code. This tool supports a large number of code metrics, allows for visualization of dependencies using directed graphs and dependency matrix. The tools a
Software package metrics
Various software package metrics are used in modular programming. They have been mentioned by Robert Cecil Martin in his 2002 book Agile software development: principles, patterns, and practices. The is an open source web service that lists software development project dependencies and alerts developers to new versions of the software libraries they are using. is written
COSMIC functional size measurement
COSMIC functional size measurement is a method to measure a standard functional size of a piece of software. COSMIC is an acronym of COmmon Software Measurement International Consortium, a voluntary o
Software visualization
Software visualization or software visualisation refers to the visualization of information of and related to software systems—either the architecture of its source code or metrics of their runtime be
Linear code sequence and jump
Linear code sequence and jump (LCSAJ), in the broad sense, is a software analysis method used to identify structural units in code under test. Its primary use is with dynamic software analysis to help
Sourcetrail was a FOSS source code explorer that provided interactive dependency graphs and support for multiple programming languages including C, C++, Java and Python.
Weighted Micro Function Points
Weighted Micro Function Points (WMFP) is a modern software sizing algorithm which is a successor to solid ancestor scientific methods as COCOMO, COSYSMO, maintainability index, cyclomatic complexity,
Tcov is a source code coverage analysis and statement-by-statement profiling tool for software written in Fortran, C and C++. Tcov generates exact counts of the number of times each statement in a pro
Imagix 4D
Imagix 4D is a source code analysis tool from Imagix Corporation, used primarily for understanding, documenting, and evolving existing C, C++ and Java software. Applied technologies include full seman
Duplicate code
In computer programming, duplicate code is a sequence of source code that occurs more than once, either within a program or across different programs owned or maintained by the same entity. Duplicate