Software Measures can be understood as a process of quantifying and symbolizing various attributes and aspects of software.
Software Metrics provide measures for various aspects of software process and software product.
Software measures are fundamental requirement of software engineering. They not only help to control the software development process but also aid to keep quality of ultimate product excellent.
According to Tom DeMarco, a (Software Engineer), “You cannot control what you cannot measure.” By his saying, it is very clear how important software measures are.
Let us see some software metrics:
● Size Metrics - LOC (Lines of Code), mostly calculated in thousands of delivered source code lines, denoted as KLOC.
● Function Point Count is measure of the functionality provided by the software. Function Point count defines the size of functional aspect of software.
● Complexity Metrics - McCabe’s Cyclomatic complexity quantifies the upper bound of the number of independent paths in a program, which is perceived as complexity of the program or its modules. It is represented in terms of graph theory concepts by using control flow graph.
● Quality Metrics - Defects, their types and causes, consequence, intensity of severity and their implications define the quality of product.
● The number of defects found in development process and number of defects reported by the client after the product is installed or delivered at client-end, define quality of product.
● Process Metrics - In various phases of SDLC, the methods and tools used, the company standards and the performance of development are software process metrics.
● Resource Metrics - Effort, time and various resources used, represents metrics for resource measurement.