.Net Day Switzerland 2019

Donovan Brown: "Fragt nicht nach Erlaubnis, tut es einfach!"

Uhr

Softwareentwicklung, agile Methoden und Devops - das waren die heissen Themen am .Net Day Switzerland 2019 in Zürich. Die Veranstaltung lockte über 300 Teilnehmer in die Arena-Kinos.

Am 28. Mai ist in Zürich der .Net Switzerland Day 2019 über die Bühne gegangen. Über 300 Teilnehmer und 22 Referenten fanden in den Arena-Kinos im Sihlcity zusammen, um sich über Themen wie Azure, C#, Softwarearchitektur, Serverless Computing und .Net auszutauschen.

Im September kommt .Net Core 3.0

Die Keynote hielt Kathleen Dollard. Sie ist Mitglied des .Net-Core-Teams bei Microsoft und arbeitet an der .Net-Core-CLI, dem SDK, C# und Visual Basic.Net. Dollard blickte auf die Geschichte der .Net-Plattform zurück. Sie sei stark gewachsen und biete mittlerweile Frameworks, Tools und Schnittstellen, um Software für alle möglichen Plattformen zu entwickeln. Etwa für den Desktop, das Web, die Cloud, das Internet der Dinge und für künstliche Intelligenz. Oder für Gaming (Xbox) und Mobile (Xamarin).

Kathleen Dollard, Mitglied des .Net-Core-Teams bei Microsoft

Wie geht es weiter mit .Net? Im Juli soll der Release-Kandidat für .Net Core 3.0 kommen, im September die finale Version. Zwischen dem 23. und dem 25. September werden Release-Partys für .Net Core 3.0 stattfinden. Und im November folge bereits .Net Core 3.1 LTS. Die weitere Roadmap sieht laut Dollard wie folgt aus: .Net 5.0 soll im November 2020 rauskommen, .Net 6.0 LTS im November 2021, .Net 7.0 im November 2022 und .Net 8.0 LTS im November 2023. LTS (Long Term Support) garantiert Updates bis 3 Jahre nach Release beziehungsweise bis 1 Jahr nach Veröffentlichung der nächsten LTS-Version.

Tipps für Softwarearchitekten

Auch Urs Enzler von BBV Software Services referierte. Er zeigte, auf was Softwarearchitekten in einer agilen Welt achten müssen. Eine der wichtigsten Aufgaben sei es, die richtigen Leute zu finden, um Teams effektiv zusammenzustellen. "Idealerweise fällt das Team Architekturentscheidungen gemeinsam, so dass sie alle mittragen können", sagte Enzler.

Urs Enzler von BBV Software Services

Am Anfang stehe meist eine Idee, dann gebe es einen Initial Requirements Workshop, und man bespreche mit den Stakeholdern verschiedene Szenarien. "Die non-funktionalen Szenarien sind für Softwarearchitekten wichtiger als die funktionalen", sagte Enzler. "Trotzdem werden sie oft vernachlässigt."

Es sei darum nicht einfach, ein Projekt iterativ zu entwickeln und dabei immer agil zu bleiben. Um das zu erreichen, empfiehlt Enzler, Softwareprojekte so weit als möglich zu modularisieren. Diese Strategie sei auch hilfsreich, wenn man komplexe Entscheidungen fallen müsse. Oft könne man diese in mehrere Teilentscheidungen aufbrechen und sich die Arbeit so erleichtern.

Urs Enzler von BBV Software Services

"Aber was kann ein Softwarearchitekt machen, wenn er unter hohem Zeitdruck liefern muss?", fragte Enzler. "Funktionen weglassen und sich auf die wichtigen Dinge konzentrieren." Das Team könne zum Beispiel nur die Schritte 2 bis 4 eines Workflows umsetzen und die Schritte 1 und 5 vorläufig simulieren. Um die Entwicklung zu beschleunigen, empfiehlt Enzler ausserdem Continuous-Delivery- und Devops-Modelle, die Prozesse stark automatisieren. Sie senken die Fehlerrate und vereinfachen das Ausrollen von neuem Code.

Warum KIs voreingenommen sind

Laurent Bugnion, Senior Cloud Developer Advocate bei Microsoft, sprach über ethische Implikationen von künstlicher Intelligenz (KI) und Deep Learning. Er rief die Robotergesetze von Isaac Asimov in Erinnerung. Der russisch-amerikanische Biochemiker definierte folgende Grundsätze: Ein Roboter darf keinen Menschen verletzen oder durch Untätigkeit zulassen, dass Menschen Schaden zugefügt wird; ein Roboter muss Befehle von Menschen befolgen, ausser sie verstossen gegen Regel 1; ein Roboter muss seine Existenz beschützen, solange seine Aktionen nicht Regel 1 oder 2 widersprechen.

Laurent Bugnion, Senior Cloud Developer Advocate bei Microsoft

Diese Regeln gelten auch heute noch, zum Beispiel für KIs. Das grösste Problem heutiger KIs seien die Daten, mit denen Menschen sie füttern, sagte Bugnion. Sie seien voreingenomen und voller Vorurteile. Wolle ein Mensch diesen "Bias" beheben, füge er oft einen neuen "Bias" in das System ein. Ein weiteres Problem bei KIs und Deep Learning sei der Datenschutz. "Entwickelt keine KI, wenn ihr nicht wisst, ob ihr die Daten, auf der sie basiert, überhaupt nutzen dürft!", appelierte Bugnion an das Publikum.

So läuft die Entwicklung bei Microsoft

Zum Abschluss sprach Donovan Brown, Cloud Advocate bei Microsoft. Er definierte zuerst den Begriff Devops: "Eine Vereinigung von Menschen, Prozessen und Produkten, um kontinuierlich einen Mehrwert für den Endnutzer zu liefern." Brown motivierte die Zuhörer, in ihren Unternehmen Devops-Modelle zu implementieren. "Fragt nicht nach Erlaubnis, tut es einfach!" Die Resultate würden dann für sich sprechen und die Aktion legitimieren.

Donovan Brown, Cloud Advocate bei Microsoft

Die Teams bei Microsoft bestehen laut Brown aus 10 bis 12 Leuten. Sie seien eigenständig und interdisziplinär, könnten autonom handeln und existierten rund 12 bis 18 Monate. Die Mitarbeiter dürften die Teams auch wechseln. Dafür seien keine Interviews und auch keine Top-Down-Reorganisation nötig. "Nur rund 20 Prozent der Mitarbeiter tun das", sagte Brown. "Aber 100 Prozent der Mitarbeiter haben die Wahl."

Microsoft entwickle seine Software in Sprints, die drei Wochen dauern. Vor dem Wechsel auf dieses Modell sei die ganze Belegschaft in agilen Methoden geschult worden. Das sei wichtig, sagte Brown. Denn alle Mitarbeiter müssten die agilen Methoden und das dafür nötige Vokabular kennen, so Brown.

Der erste .Net Day Switzerland fand letztes Jahr statt. Mehr dazu lesen Sie hier.

Webcode
DPF8_140863