« Home

Mik a különbségek a SonarQube kiadásai között?

Eredetileg 2022 januárjában íródott. Utolsó frissítés: 2023 április.

Gyakran kérdezik tőlem, miben különböznek egymástól a SonarQube verziók.
A kérdésekből világosan látszik, hogy a licencelési opciók sokak számára nem egyértelműek, így elég zavaróak. Ezért úgy döntöttem, hogy összefoglalom a legfontosabb tudnivalókat, és ezzel segítek rendet tenni a témában.

Legend:

Az alábbi cikkben részletesen elmagyarázom a különbségeket. Emellett nemrég készítettünk egy táblázatot, amelyben egyszerűen áttekintheti a termék összes funkcióját kiadásonként, szűrőkkel. Így például látható, mely funkciók csak a Developer vagy az Enterprise kiadásban érhetők el, és melyek hiányoznak bizonyos verziókból. A táblázatot emailben is elkérheti tőlünk: sonarqube@almtoolbox.com.

A SonarQube kiadásainak alapvető különbségei

A SonarQube „Open Core” modellben készült, ami azt jelenti, hogy nyílt forráskódú rendszer egymásra épülő rétegekkel. Minden egyes réteg az előzőt bővíti új funkciókkal:

  • Community (ingyenes) kiadás az alap
  • Erre épül a Developer Edition
  • Erre az Enterprise Edition
  • Végül pedig a Data Center Edition

Nézzük, milyen képességekkel bővülnek az egyes kiadások.

Let’s see the main capabilites which are added in each edition (layer).

Community Edition tartalma

Ez az ingyenes, nyílt forráskódú verzió az alábbiakat kínálja:

1. A SonarQube alapja és 60+ bővítmény

Számos bővítmény érhető el (vannak ingyenesek és fizetősek is). Saját bővítmény is fejleszthető, vagy elkészítjük Önnek.

2. Programnyelvek statikus elemzése

16 nyelvet támogat: Java, JavaScript, C#, Terraform, TypeScript, Kotlin, Ruby, Go, Scala, Flex, Python, PHP, HTML, CSS, XML, VB.NET.

3. A fő (master/main) ág elemzése

Csak a fő git-ág (branch) szkennelése lehetséges.
Egyéb ágak (például feature branch-ek) elemzése nem érhető el a Community verzióban, így a „Shift Left” módszertan nem alkalmazható.

4. SonarLint

A SonarLint valós időben értesíti a fejlesztőt a hibákról közvetlenül az IDE-ben (pl. IntelliJ vagy VS Code), segítve a „clean code” írását.
Megjegyzés: E verzióban a SonarLint nem konfigurálható (ez csak a Developer Edition esetében lehetséges).

Developer Edition és Community Edition összehasonlítása

A Developer Edition mindent tartalmaz, ami a Community verzióban elérhető, továbbá:

  1. Branch-elemzés

tetszőleges ágak vizsgálata, nemcsak a főágé.
Ez lehetővé teszi a hibák korai észlelését még a merge előtt.

  1. Pull Request kiértékelés és elemzés

integráció verziókezelő rendszerekkel (GitLab, GitHub, Bitbucket, Azure DevOps).
A SonarQube elemzési eredmények minőségi kapukként (Quality Gate) jelennek meg a felületen.

  1. Kódbiztonsági elemzés

biztonsági szabályok külön minden nyelvhez.
(A táblázatban részletezve szerepel a nyelvekhez tartozó szabályok száma.)
Megjegyzés: a Community Edition nem vizsgál biztonsági sérülékenységeket.

  1. Továbbfejlesztett SonarLint-funkciók

konfigurálható és „Smart Notification” értesítések beállíthatók.
Például értesítést kaphat, ha nem teljesül a Quality Gate.

  1. További támogatott nyelvek:
  1. C
  2. C++
  3. Objective-C
  4. PL/SQL
  5. ABAP
  6. TSQL
  7. Swift

Összesen 24 nyelvet támogat

Enterprise Edition és Developer Edition összehasonlítása

1. További támogatott nyelvek: 

  1. Apex (of Salesforce)
  2. Cobol
  3. PL/1
  4. RPG
  5. VB 6 (Visual Basic)

Összesen 29 nyelv támogatott.

2. Portfólió- és riportkészítés

Hasznos számos projekt esetén. Összesített nézetet ad a fejlesztések állapotáról – fejlesztési vezetők, CTO-k számára különösen értékes.
Csoportosítási lehetőség (nyelv, csapat, projektcsoport stb.), valamint automatikus PDF-jelentés e-mailben.

Watch a demo (2 min):

3. Biztonsági jelentések

Csak az Enterprise Edition tartalmazza.
Az OWASP Top 10 és CWE Top 25 szabványok szerint jeleníti meg a biztonsági helyzetet, és segíti a sebezhetőségek gyors javítását.

For example:

4.Security Hotspotok és sérülékenységek

A SonarQube gyanús kódrészeket jelöl, amelyek potenciális biztonsági kockázatot hordozhatnak.
Ezek vizsgálata fejleszti a programozók biztonságtudatosságát és szakmai készségeit is.
A sérülékenységeket részletesen dokumentálja, a kód kiemelésével együtt.

See an example (click to enlarge):

Ez a funkció a fejlesztők fejlesztési készségeinek fejlesztésében és képességeik bővítésében is segít: miközben kódot írnak és feltárják a gócpontokat, megismerik a biztonsági kockázatokat és a megelőzésükre vonatkozó legjobb gyakorlatokat.

A biztonsági rések azonnali figyelmet igényelnek. A SonarQube részletes leírást nyújt, és kiemel három releváns kódot, ami segít megérteni, hogy mi a kockázat az adott kódban.

For example (click to enlarge):

5. Párhuzamos feldolgozás

Egyszerre akár 10 párhuzamos elemzés futtatható, nagy projektmennyiség esetén különösen hasznos.

6. Staging licenc

Külön teszt- vagy staging-környezet felállítását teszi lehetővé.
Hasznos frissítés vagy plugin tesztelése előtt, hogy a fő rendszer stabil maradjon.

Data Center Edition és Enterprise Edition

A Data Center Edition magas rendelkezésre állást nyújt globális, nagy léptékű telepítésekhez.
A megbízhatóságot a rendszer minden csomópontján redundancia biztosítja:

  • Komponens-redundancia
  • Adat-tartósság
  • Horizontális skálázhatóság

GYIK

  • K: Mennyibe kerül a SonarQube?
  • V: Az ár több tényezőtől függ:
    kiadás típusa,
  • a kódsorok mennyisége,
  • igényelt ügyféltámogatás.
    Pontosan árajánlatért vegye fel velünk a kapcsolatot: sonarqube@almtoolbox.com vagy telefonon
  • K: Ha olyan nyelvet használok, amit a Community Edition támogat (pl. Java vagy C#), akkor minden funkcióhoz hozzáférek?
  • V: Nem. Az ingyenes verzió csak a Community Edition funkcióit tartalmazza.
    Például: bár a Java elérhető, a biztonsági szabályok, branch-elemzés és jelentések nem.

ALM-Toolbox is an official distributor of SonarQube and provides consulting, SonarQube and SonarCloud licenses, implementation, training and help customers to integrate SonarQube with business flows and CI/CD pipelines. Contact us for any questions including pricing and quotes: sonarqube@almtoolbox.com or call us: 866-503-1471 (USA / Canada) or +31 85 064 4633 

Related Links: