Blog

Alle Beiträge in der Kategorie 'Software-Architektur'

Sanduhr

Angular-Komponententests – Zeit und Nerven sparen

Komponententests in Angular sind teuer und nehmen viel Zeit in Anspruch. Deshalb sollten die Testmodule so sparsam wie möglich aufgebaut sein. Durch die Erfahrungen in mehreren Projekten haben wir viele hilfreiche Tipps in Bezug auf Angular-Komponententests gesammelt und konnten so eine Zeitersparnis von insgesamt 90% erreichen. Diese Tipps und Erfahrungen möchten wir in diesem Beitrag gern mit euch teilen. So könnt ihr zukünftig nicht nur viel Zeit, sondern auch viele Nerven sparen.

weiterlesen

JVM-Con-Logo

Unser Kotlin-Workshop auf der JVM-Con 2018

Zeit und Ort des Workshops: JVM-Con in Köln, 28.11.2018, 9:00 bis 13:00 Uhr. Siehe auch: Eintrag im Konferenz-Programm

Kotlin – die neue beste Programmiersprache für die Java Virtual Machine (JVM). Wirklich?

Versprechungen macht die Programmiersprache aus dem Hause JetBrains viele. Es ist die Rede von einer nahezu perfekten Interoperabilität mit Java, signifikant weniger Boilerplate-Code und besserer Skalierbarkeit, um nur einige der Vorteile zu nennen.

Hält Kotlin, was es verspricht?
weiterlesen

Software Craftsmanship – Das Manifest für Entwickler?

„Wenn man mit Stolz Software entwickelt, seinen Job liebt und stetig besser werden will, eine Karriere mit Autonomie, einem Zweck und hervorragenden Leistungen verfolgt, dann beginnt man am besten mit der Erkenntnis, dass man ein Software Craftsman ist“. Dieser Satz stammt aus dem Ende 2014 erschienenen Buch „The Software Craftsman“ von Sandro Mancuso. Hinter diesem Statement steckt die Idee, dass Entwickler entgegen einer landläufigen Meinung keine Coding Monkeys sind, sondern ein Handwerk ausüben. Die Software Craftsmanship-Bewegung hat ihren Ursprung in den Neunzigerjahren und brachte ihre Werte auch in das Agile Manifesto ein. Die Agile Softwareentwicklung fokussierte sich jedoch aus der Sicht vieler schon bald zu sehr auf Prozesse und Vorgehensweisen (Scrum) und vernachlässigte handwerkliches Können (eXtreme Programming). Dies führte letztlich im 2009 zu einem eigenen Manifest für „Software Craftsmanship“, obwohl die „Handwerkskunst“ den agilen Werten und Prinzipien eigentlich nicht widerspricht.
weiterlesen

Continuous Security @ EnterJS

EnterJS: Security at the next level

Ich hatte auch dieses Jahr wieder das Vergnügen, als Vortragender auf der enterJS sprechen zu dürfen. Mein Talk „Continuous Security auf dem nächsten Level“ (Slides sind online abrufbar) traf den richtigen Nerv, um das Thema Sicherheit von verschieden Ebenen zu beleuchten und ihm so mehr Raum einzuräumen. Dabei gehe ich nicht nur auf methodische Maßnahmen ein, sondern zeige auch technische Hilfsmittel, die an verschiedenen Punkten des Softwareentwicklungsprozesses ansetzen.
Pete Cheslock hat es wunderbar in einem Tweet zusammengefasst:

Es nutzt relativ wenig, Sicherheit erst bei Inbetriebnahme mit Penetrationstests zu adressieren. Vielmehr muss ganzheitlich vorgegangen werden. indem das Thema analog zu DevOps an verschiedenen Stellen berücksichtigt wird. Dabei können einerseits Tools zum CodeScanning wie Sonar oder auch OWASP-Tools wie Zed Attack Proxy (ZAP) genauso helfen, wie andererseits, dass das Scrum-Team schon beim Planning die Sicherheit mit berücksichtigt.

Das Feedback zu meinem Talk und die anschließenden Gespräche zu dem Thema waren sehr positiv und bestärken mich darin, dass dem Thema im agilen Softwareentwicklungszyklus mehr Raum gegeben werden muss.

JavaSPEKTRUM 3/2018: Save im Safe

In der Ausgabe 3/2018 des JavaSPEKTRUM erscheint ein Artikel von mir zum Thema Sicheres Configuration Management mit Hashi Vault: Gerade bei Docker stellt sich das als gar nicht so einfach heraus. Die meisten Vorlagen steuern das Verhalten über Umgebungsvariablen, auch Zugangsdaten. Hier bieten sich mit HashCorp Vault und Consul im Docker Container-Umfeld sehr interessante Möglichkeiten, Einstellungen und weitere schützenswerte Werte sicher abzulegen.
Vor dem Hintergrund immer kürzerer Releases (Continuous Delivery und Integration) wird häufig die Sicherheit vernachlässigt. Penetrationstests sind dabei als Sicherheitsmaßnahmen nicht ausreichend. Durch die Schnelligkeit und Häufigkeit von Deployments steht gerade die IT-Sicherheit vor neuen Herausforderungen, und es sind – ähnlich wie bei der DevOps-Intitiative – weitere Maßnahmen nötig, um die IT-Sicherheit und die Entwicklung enger zu verzahnen. In dem Artikel gehe ich auch auf die Integration mit Jenkins und Spring ein.
Das aktuelle Heft ist im Fachhandel und online verfügbar.