Alle Beiträge von Micha Kops

Qualität, funktionale und nichtfunktionale Anforderungen in der Software-Entwicklung

Nutzer und Kunden wünschen sich hochqualitative Software, mit der sie ihre Ziele effektiv und effizient erreichen. „Reibungslos“ soll die funktionieren, möglichst „schnell“, möglichst „bugfrei“. Doch diese naheliegenden, aber sehr allgemeinen Anforderungen sind recht subjektiv und zunächst nichts, womit ein Entwicklungsteam arbeiten kann. Es muss konkreter und spezifischer sein. Was bedeutet also Qualität im Hinblick auf die Entwicklung von Software? Das wollen wir hier einmal beleuchten.

Google Apps Script – Skript-Verwaltung mit dem App Scripts CLI (Clasp)

Google Apps Script ist eine Cloud-basierte Plattform zur Entwicklung von Add-ons für die gängigen G-Suite-Anwendungen, zur Automatisierung von Workflows, Integration mit externen APIs und mehr. Dabei existieren verschiedene Werkzeuge, um die Entwicklung von Apps Script zu unterstützen und Entwicklungsprozesse zu erleichtern. Dazu gehört Clasp, das App-Scripts-Command-Line-Interface. Welche Fähigkeiten dieses Tool bietet, wie es installiert wird und wie es in der Praxis eingesetzt werden kann, zeige ich in diesem Artikel.

Werkzeuge zur Architektur- und Code-Validierung: jqAssistant

Es existieren unterschiedliche Werkzeuge, um Architekturen und Softwareprojekt-Strukturen zu analysieren und zu validieren. Bei jqAssistant handelt es sich um ein neues interessantes Tool für diese Anwendungsfälle, das im Hintergrund mit der bekannten Graphendatenbank Neo4j und ihrer Abfragesprache Cypher arbeitet. Es analysiert gegebene Projekte und Artefakte, speichert deren Metadaten und Relationen in der Graphendatenbank und eine Vielzahl unterschiedlicher Plugins reichern diese Datenbank dann um weitere Informationen an, die als Grundlage späterer Analysen und Validierungen dienen können.

Hands-on-Confluence-Cloud-Apps mit Spring Boot und Atlassian Connect (Teil 1)

Um Integrationen für die On-demand-Varianten der Atlassian-Software-Produkte – also Confluence Cloud, Jira Cloud & Co. – zu ermöglichen, steht Entwicklern mit Atlassian Connect ein Framework zur Verfügung, das ihnen dabei hilft, Add-ons in unterschiedlichen Programmiersprachen zu implementieren. Dies ist der erste Teil der Schritt-für-Schritt-Anleitung.

Apps für die Google G Suite mit dem Google App Maker – Scripting

Nachdem wir im Artikel „Apps für die Google G Suite und der Google App Maker“ einen kurzen Überblick über einige grundlegenden Features des Google App Makers geboten haben, wollen wir in diesem zweiten Teil auf die Scripting-Möglichkeiten eingehen. Der App Maker unterstützt hier bei der Erstellung sowohl von Client- als auch von Remote-Skripten.

Apps für die Google G Suite und der Google App Maker

Der App Maker ist ein Entwicklungs-Tool, um individuelle Applikation für die Google G Suite auf einfache und sichere Art und Weise zu erstellen und auszuliefern. Google bezeichnet den App Maker als „low-code tool“. Tatsächlich ist nicht zwangsläufig ein Entwickler erforderlich; die Basisarbeit erfolgt über weitgehend intuitive Oberflächen mit guten Hilfestellungen durch die Software. Erweiterte Möglichkeiten bietet dann der integrierte Scripting-Editor, der Zugriff auf die Google-APIs erlaubt. Die wichtigsten Funktionen des Tools wollen hier hier am praktischen Beispiel einmal durchgehen.

Analyse einer Java-Anwendung mit Java Mission Control und Flight Recorder

Treten in einer Java-basierten Anwendung qualitative Mängel im Hinblick auf Performance-Faktoren wie das Laufzeit- oder das Verbrauchsverhalten zutage, ist es für das Entwicklungsteam wichtig, mögliche Problembereiche effektiv einkreisen zu können. Der Java Flight Recorder bildet zusammen mit der Java Mission Control eine Tool-Kette, um kontinuierlich detaillierte Laufzeitinformationen einer Java-Anwendung zu sammeln und auszuwerten.

Architekturregeln mit Java und ArchUnit sicherstellen

Eine Herausforderung in Software-Projekten besteht oft darin, spezifische Architekturregeln sicherzustellen. ArchUnit ist eine relativ junge Bibliothek, die es Entwicklern erlaubt, Architekturregeln in Form ausführbarer Tests zu definieren und mit gängigen Werkzeugen und Test-Frameworks wie Gradle, Maven, JUnit, Surefire & Co. auszuführen. In einem Kurzbeispiel wollen wir einen Architekturtest mit ArchUnit erstellen; als Build-Werkzeug kommt Gradle zur Anwendung.