Kategorie: Softwarearchitektur

  • Werkzeuge zur Erhaltung der Softwarearchitektur – CleanUp / ArchUnit – Teil 16

    CleanUp / ArchUnit Nach einer kurzen Pause hier noch zwei weitere Werkzeuge, die einiges leisten. CleanUp In Eclipse findet sich unter “Einstellungen / Java / Code Style / Clean up” einiges an Einstellungen, die einem das Leben erleichtern. Mit der CleanUp Funktion können z.B. fehlende “this.” ergänzt oder @Overrides automatisch erzeugt werden. Somit hilft diese […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – weitere Tools – Teil 15

    Weitere Tools In diesem Blog folgt zum Abschluss der Serie eine Auflistung von Werkzeugen / Frameworks, die ebenfalls einen Bezug zum Thema Architekturerhaltung haben. OWASP (Sicherheit) ZAProxy (Pen-Test) Lizenzkostenpflichtig

  • Werkzeuge zur Erhaltung der Softwarearchitektur – Tools und Plugins – Teil 14

    Tools und Plugins In diesem Posts fasse ich die verschiedenen Werkzeuge, die in den letzten Posts angesprochen wurden, zusammen. Sie bieten eine sehr gute Basis um auf Basis von OpenSource professionelle Prüfungen für die Architekturerhaltung durchzuführen. Es ergibt sich ein bunter Strauß an Werkzeugen mit einer noch größeren Anzahl an Plugins. Eine sinnvolle Nutzung macht […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – jQAssistant – Teil 13

    jQAssistant In den bisherigen Posts haben ich euch Werkzeuge mit feste Prüfregeln vorgestellt. Mit den nun folgenden sehr interessanten Werkzeug wird die Codestruktur in einer Datenbank abgelegt und auf dieser über eine Abfragesprache Analysen definiert. Beispiel für solche ABfragen sind: jQAssistant Die Software jQAssistant übernimmt die Struktur des compilierten Codes in die Graphdatenbank Neo4j. In […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – SonarQube – Teil 12

    SonarQube Bei SonarQube handelt es sich um ein Serverprodukt, das eine sehr gute Übersicht für den manuellen Prozess bietet. Auch wird der zeitliche Verlauf von Regelverletzungen in einer Datenbank gespeichert, so dass die Historie gut zu verfolgen ist. Sonar benötigt mindestens einen eigenen Server, der über Plugins erweitert wird und die Daten in einem DBMS […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – PMD / DRY – Teil 10

    PMD Das Werkzeug PMD analysiert den Quellcode. Nach Angaben der Entwickler ist PMD kein Akronym. Besonders hervorzuheben sind folgende Analysepunkte Für den Bereich Kommentare und Dokumentation ist PMD nicht geeignet (vergl. Checkstyle). Integration False/Positive False/Positives können auf folgende Weisen markiert werden Regelerweiterung Es werden verschiedene Regelpakete / Module bereitgestellt. Des Weiteren sind eigene Erweiterungen möglich, […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – Checkstyle – Teil 9

    Checkstyle In diesem und den kommenden Posts stelle ich die “magischen drei” im Bereich der statischen Code-Analyse vor. Ohne diese Werkzeuge mit geeigneten Regelwerken sollte keine Entwicklungsarbeit mehr erfolgen. Sie sind die Basis für die dauerhafte Einhaltung der Architekturvorgaben und ebenso die Basis für die Vermeidung technischer Schulden. Die einzelnen Werkzeuge kann man inhaltlich nicht […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – JUnit / Selenium / JaCoCo – Teil 8

    JUnit / Selenium / JaCoCo Die zweite Werkzeuggruppe zur Erhaltung der Code-Qualität und Architektur sind Tests. Ich nenne hier nur einige Plugins, die wir primär einsetzen. Es gibt aber noch viele, viele andere. Die Verwendung von Tests stellt die Zielerreichung sicher. Es wird mit dem Test ein Sollverhalten definiert und die entsprechende Umsetzung geprüft. Somit […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – Task Scanner / Open Tasks – Teil 7

    Task Scanner / Open Tasks Viele von uns erstellen jeden Tag – häufig automatisiert – technische Schulden und kennzeichnen diese sogar bewusst. Gemeint sind hier die vielen Code-Stellen mit “TODO” oder “FIXME”. Dies sind klassische Punkte, die nicht fertig gestellt wurden und damit in die technischen Schulden fallen. Grundsätzlich sollte sichergestellt werden, dass solche Einträge […]

  • Werkzeuge zur Erhaltung der Softwarearchitektur – Werkzeugintegration und -konfiguration – Teil 6

    Werkzeugintegration Die Tools zur Vermeidung technischer Schulden können auf verschiedenen Ebenen in die Entwicklung eingebunden werden. Entwicklungsumgebung In der Entwicklungsumgebung erhalten wir bei der täglichen Arbeit direkt Feedback zu Problemen. Beim Speichern und automatischen Kompilieren der Dateien werden Marker erstellt, die Probleme im Quellcode kennzeichnen. Durch dieses direkte Feedback können wir bei der Entwicklung umgehend […]