Select Page

Software measurement and metrics are crucial aspects of software development, providing valuable insights into the size, quality, and productivity of the development process. Size-oriented metrics are a specific category of software metrics that use the size of the software as a baseline for normalization. Here’s an overview of various size-oriented measures:

Lines of Code (LOC):

  • Description: The most common size-oriented metric, LOC simply counts the number of lines of code in the program.
  • Limitations: LOC can be misleading as it doesn’t consider the complexity of the code or the programming language used. A program with fewer lines of complex code written in a low-level language can be more challenging to understand and maintain than one with more lines of simpler code written in a high-level language.

Function Points (FP):

  • Description: Function points are a more holistic measure that considers the functionality delivered by the software rather than just lines of code. It takes into account five main factors:
    • Inputs: The number of external inputs provided to the system.
    • Outputs: The number of external outputs generated by the system.
    • Inquiries: The number of times users interact with the system to retrieve data.
    • Internal Logical Files (ILFs): The number of data entities stored within the system.
    • External Interface Files (EIFs): The number of interfaces with external systems.
  • Benefits: Function points provide a language-independent measure of software size, making it easier to compare projects written in different languages.

Other Size-Oriented Measures:

  • Non-commented Source Lines of Code (NCSLOC): Similar to LOC but excludes comments and blank lines.
  • Delivered Source Lines of Code (DSLOC): Focuses on the code delivered to the customer, excluding internal development code.
  • Equivalent Lines of Code (ELOC): Estimates the amount of code in a specific language that would be functionally equivalent to the existing code in another language.

Using Size-oriented Metrics:

These metrics are valuable when used alongside other software quality and productivity metrics. Here are some common applications:

  • Effort Estimation: Historical data on LOC or function points can be used to estimate the effort required for future projects of similar size.
  • Project Planning: Size metrics can aid in project planning by providing a baseline for scheduling and resource allocation.
  • Productivity Measurement: Metrics like LOC per developer-month can be used to assess developer productivity, but should be interpreted with caution considering the limitations of LOC.
  • Quality Control: Trends in size metrics can be monitored to identify potential quality issues, such as code complexity.

Important Considerations:

  • Size-oriented metrics alone don’t provide a complete picture of software quality or development effectiveness. They should be used in conjunction with other relevant metrics.
  • The chosen metric (LOC, function points, etc.) should be appropriate for the project and development methodology.
  • It’s essential to avoid focusing solely on maximizing code production based on size metrics, as this can lead to sacrificing code quality and maintainability.

By effectively utilizing size-oriented metrics along with other measurement practices, software development teams can gain valuable insights to improve project planning, resource allocation, and overall software quality.