Softwerkskammer

 

Open Space der Softwerkskammer Karlsruhe Februar 2018

Hinweis: Um die Fotos der Protokolle sehen zu können, must Du angemeldet sein!

Marktplatz

Markplatz vormittag
Markplatz nachmittag

Session Test von Deployment Pipelines

Test von Deployment Pipelines

Session Refactoring

Refactoring

Session Was ist Software-Qualität

Was ist Software-Qualität 1
Was ist Software-Qualität 2

Session Statische Code-Analyse

Def. Statische Code-Analyse (SCA)

Statisch (d.h. nicht ausführen) Source-Code (manchmal auch Bytecode oder Binärcode) Analyse

Was wird wofür analysiert?

  • Metriken (z.B. mit Sotograph)
  • Coding-Style
  • Bugs
  • Security-Lücken
  • Unused code detector
  • welche Lizenzen sind im Einsatz
  • Unterstützung bei Code-Reviews
  • Code-Bewertung bevor er gekauft wird (z.B. via Fortify-Dienstleistung)

Technik für SCA

Leichtgewichtig:

  • Syntax checker, insbes. für Style-Check
  • Heuristiken
  • Findbugs mitunter am besten

Schwergewichtig: Verifizierend vs. Nicht-Verifizierend

  • AST
  • Datenfluss- und Kontrollfluss-Analyse
  • Compilerbau
  • Mathematisch

Tools

  • Sonar-Cube
  • Code-Sniffer (PHP)
  • Findbugs (Java)
  • Checkstyle (Java)
  • HP Fortify (nicht empfehlenswert (insbes. für Python))
  • Axivion Bauhaus
  • Coverity, Grammatech Code-Sonar
  • Verifizierend: Polyspace, Astrée

Probleme

  • Es wird nicht viel (Zeit) investiert in SCA

  • Früh einsetzen, nicht erst wenn "die Kacke am dampfen ist"

  • Idealerweise in IDE/Entwicklungsprozess integrieren, muss aber integriert werden

  • Akzeptanz im Team (aber wenn die Schmerz haben, akzeptieren sie die Kosten)

  • Wie Stakeholder motivieren?
    -> es muss Schmerz (von altem Projekt) da sein

  • Wie suzkessive anfangen?
    -> Erst mal ganz viele Kategorien ausschließen!

  • Wenn ein Bug/Warnung zu schwer zu verstehen/fixen? (z.B. Boolean-Variable undefined)
    -> man holt sich eine Umgebung und probiert aus;
    oder man schreibt Justification, ist aber keine wirkliche Lösung

Entscheidungsvorlage/Grundlage beim Kauf von SW

  • ROI, wo im Lifecycle (nicht bei sterbendem Projekt)? Heißes, schwieriges Thema
  • IT-Bugdet halbiert durch Einsatz von Sonar, Selenium, ...
  • Stanford-Studie zu SW-Quality (? Stefan fragen)

Session Elektronische Signatur und Co

Elekronische Signatur 1
Elekronische Signatur 2
Elekronische Signatur 3
Elekronische Signatur 4

Session Git + Windows + Line-Endings: Best Practices

Git + Windows + Line-Endings

Session IOT-Payment

IOT-Payment

Session tech fresh up

tech fresh up

Session C++-Testframeworks und -Refactoringtools

C++-Testframeworks und -Refactoringtools

Session Model Builder Pattern

Model Builder Pattern

Session Clean Code

Clean Code

Session SWK KA - Quo vadis?

SWK KA - Quo vadis?

Session SQL, NoSQL, No!

SQL, NoSQL, No!

Session Was zur Hölle ist Docker

Docker 1
Docker 2

Feedback

Feedback-Übersicht
Feedback-Detail "Das war gut"
Feedback-Detail "Damit wird es noch besser"