Snowflower Metrics Overview

Snowflower Metrics is a source code metrics measurement tool. By introducing this tool, refactoring points can be found quickly and effectively without relying on the experience of software developers. This application strongly supports the improvement of source code quality.

Software quality improvement activities
Refactoring means preserving the software’s external behavior It is to improve the internal structure of the software. Refactoring makes your code more readable and easier to test.

Refactoring is an important task, Finding refactoring points in a huge amount of source code by yourself is not easy. By introducing this tool, developers will be freed from reading a huge amount of source code, Metrics make it possible to determine the order of priority and proceed with refactoring in a planned manner.

Software metrics

Snowflower Code Merics is specifically based on fieldwork research in software engineering. We carefully select and adopt metrics that have evidence of effectiveness. This app supports the following metrics:

  • Complexity Metrics

    • CC (Cyclomatic Complexity)

    • WMC (Weighted Methods per Class)

    • NPath Complexity

  • Size metrics

    • SLOC (Source Lines of Code)

    • PLOC (Physical Lines of Code)

MetricsPurpose of use

Cyclomatic Complexity

  • Estimate unit test scale (C1: branch coverage)

  • Prediction of failure rate when changing

NPath Complexity

Estimating unit test scale (C2: condition coverage)

SLOC

Calculating Bug Density

Significance of introducing software metrics

Software metrics can identify potential problems during source code development and testing. By identifying and fixing problems early, you can improve the reliability and maintainability of your software. You can decide where to focus your testing efforts during development.

And if you’re reviewing open source or third-party software, you can quickly inspect the quality of their code. It can also be used to ensure that software quality standards are met.

Features of Snowflower Metrics

  • Provides a unified user interface for programming language independent metrics. Therefore, there is no need to learn how to use different analysis tools for each programming language.

  • Works standalone without a server. It allows developers to measure metrics and iterate on refactoring work at maximum speed.

Rich programming language support

Snowflower Metrics are Measure software metrics by parsing programming languages. It supports many programming languages, including relatively new and popular languages.

Below is a list of programming languages that support complexity metrics.

  • C

  • C++

  • C#

  • Dart

  • Groovy

  • Java

  • JavaScript

  • ObjectiveC

  • Python

  • Rust

  • Scala

  • Swift

  • TypeScript

Below is a list of programming languages that support size metrics.

  • C

  • C#

  • C++

  • CSS

  • Dart

  • Fortran

  • FreeMarker

  • Go

  • Groovy

  • Java

  • JavaScript

  • JSP

  • Kotlin

  • Lua

  • ObjectiveC

  • Perl

  • PHP

  • PL/SQL

  • Python

  • Ruby

  • Rust

  • Scala

  • Swift

  • TypeScript

  • Velocity

Reference

Download on the Mac App Store