Blog

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

GDPR: No Data to the Rescue

Nun ist die DGSVO/GDPR einige Monate in Kraft – und der große Knall ist erstmal ausgeblieben. Zwar gibt es immer noch viele Seiten, die innerhalb der EU nicht erreichbar sind, aber außer den Cookie-Hinweisen hat sich für den Nutzer nicht viel geändert, zumindest dem äußeren Eindruck nach. Im ersten Post zu GDPR bin ich auf den allgemeinen Umfang des Gesetztes eingegangen und möchte in diesem Beitrag mehr auf die Technik eingehen: Denn da hat sich bei vielen Anbietern tatsächlich einiges getan:

Beim Verarbeiten von personenbezogenen Daten kristallisieren sich im Moment mehrere (durchaus wünschenswerte) Entwicklungen heraus:

  1. Wenige Daten verteilt sammeln: sensible Daten werden an einer Stelle vorgehalten, um die Löschung/Anonymisierung zu vereinfachen.
  2. Mit weiteren Parteien Auftragsdatenvereinbarungen (AAV) eingehen, um sich die Verantwortung und Pflichten klar an den Partner zu kommunizieren.
  3. Verschlüsselte Übertragung per HTTPS: Wer glaubt, ohne Verschlüsselung am Markt agieren zu können, für den kann es bei der Fülle von Anforderungen und verschärften Strafandrohungen schnell teuer werden. Denn die haben es in sich: Es sind saftige Bußgelder fällig, die sogar die Existenz eines Unternehmens gefährden können. Mit Lösungen wie Let’s Encrypt kann man sogar kostenlos und schnell die Verschlüsselung der eigenen Dienste sicherstellen.
  4. Verschlüsselung der Daten mit Public-/Private-Key-Verfahren: Diese Form von „Privacy by Design“ ist besonders interessant. Denn laut DSGVO gelten verschlüsselte Daten nicht als verloren, wenn der Schlüssel nicht mit verlorengeht. Diesen Fakt kann man sich dann auch in Verbindung mit Artikel 17 – dem Recht zu Vergessen – zunutze machen:

weiterlesen

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.