Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Table of Contents

Architecture

Concept

Definition

Related Topics

AnalyzerA client application that analyzes the source code to compute snapshots.See the SonarQube Platform Overview.
Database

Stores:

  • configuration
  • snapshots
See the SonarQube Platform Overview.
Server Web interface that is used to browse snapshot data and make configuration changesSee the SonarQube Platform Overview.

 

Quality

Concept

Definition

Related Topics

BugAn issue that represents something wrong in the code. If this has not broken yet, it will, and probably at the worst possible moment. This needs to be fixed. Yesterday. 
Check

Check = Coding Rule.

 
Code SmellA maintainability-related issue in the code. Leaving it as-is means that at best maintainers will have a harder time than they should making changes to the code. At worst, they'll be so confused by the state of the code that they'll introduce additional errors as they make changes. 
Coding Rule

A good coding practice. Not complying to coding rules leads to quality flaws and creation of issues in SonarQube.

Coding rules can check quality on files, unit tests or packages.

See Viewing Unit Tests > Issues Perspective
ComponentA piece of software (project, module/package, file) or a view or a developer. 
CostSee Remediation Cost 
DebtSee Technical Debt 
Issue

When a component does not comply with a coding rule, an issue is logged (was violation prior to SonarQube 3.6) on the snapshot.

An issue can be logged on a source file or a unit test file. There are 3 types of issue:

  • Code Smell : an issue affecting your maintainability rating, preventing you to inject changes as fast as when you start from scratch
  • Bug : an issue highlighting a real or potential point of failure in your software
  • Vulnerability : an issue highlighting a security hole that can be used to attack your software
 
Leak PeriodThe period for which you're keeping a close watch on the introduction of new problems in the code. Typically this is since the previous_version, but if you don't use a Maven-like versioning scheme you may need to set a relatively arbitrary time period such as 21 days or since a specific date. 
Measure

The value of a metric for a given component at a given time.

Examples:

  • 125 lines of code on class MyClass
  • Density of duplicated lines of 30.5% on project myProject
 
Metric

A type of measurement. Metrics can have varying values, or measures, over time. Examples: number of lines of code, complexity, etc.

A metric may be either:

  • qualitative: gives a quality indication on the component (ex: density of duplicated lines, line coverage by tests, etc.)
  • or quantitative: does not give a quality indication on the component (ex: number of lines of code, complexity, etc.)
See detailed documentation on metrics.
Non-functional requirementNon-functional requirement = coding rule 
Quality Profile

A set of coding rules.

Each snapshot is based on a single quality profile.

See Quality Profiles.
Remediation CostThe estimated time required to fix Vulnerability and Reliability Issues. 
Snapshot

A set of measures and issues on a given component at a given time.

A snapshot is generated for each analysis.

 
Technical DebtThe estimated time required to fix all Maintainability Issues / code smells 
VulnerabilityA security-related issue which represents a potential backdoor for attackers. See also Security-related rules. 
  • No labels