Als Nachfolger des populären und weit verbreiteten Frameworks AngularJS 1.x leitet Google mit Angular 2.0 eine neue Ära der Webentwicklung ein. In diesem Workshop lernen Sie dieses neue Framework, das „für das Web von morgen“ geschaffen wird, anhand eines durchgängigen Beispiels kennen. Dabei werden die grundlegenden Konzepte hinter der Architektur genauso beleuchtet wie die konsequente Nutzung moderner Ansätze, wie ECMAScript 6, TypeScript und Komponenten.
Manfred Steyer (www.softwarearchitekt.at) betreut als Trainer und Berater Kunden im gesamten deutschsprachigen Raum. Dabei fokussiert er sich auf moderne Web- und Servicearchitekturen mit Angular. Daneben unterrichtet er an der berufsbegleitenden FH CAMPUS 02 in Graz. Manfred hat Bücher bei O’Reilly, Microsoft Press und beim Carl Hanser Hanser veröffentlicht und schreibt für das Windows Developer Magazin (vormals dot.net-magazin) und Heise Online. Sein Wissen gibt er regelmäßig auf Konferenzen weiter.
Microservices sind in aller Munde. In diesem Workshop wollen wir nicht nur theoretisch über Microservices sprechen, sondern ganz praktisch ein System aus Microservices aufbauen und diskutieren. Zunächst gibt es eine Einführung in Microservices-Architekturen, ihre Vor- und Nachteile sowie wesentlichen Eigenschaften. Dann geht es in die Praxis: containerloses Deployment mit Spring Boot und Koordination der Anwendungen mit Spring Cloud und dem Netflix-Stack. Am Ende können wir eine Anwendung aus mehreren Microservices betreiben und weiterentwickeln.
Eberhard Wolff ist Fellow bei innoQ und arbeitet seit mehr als fünfzehn Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u. a. zu Continuous Delivery und Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Continuous Delivery, DevOps, Microservices und NoSQL.
Das Thema Docker sorgt gerade für viel Aufsehen. Ob kleine Start-ups oder große Firmen – schon aufregend viele Unternehmen setzen auf die Open-Source-Technologie Docker. Aber was hat es mit dieser Art von Containern auf sich, die den Virtualisierungsmarkt aufrollen und die Softwareentwicklung nachhaltig verändern wollen? Docker verspricht einen schnellen Start, flexible Konfiguration und stabile Images für Entwicklung und Produktion. In diesem Workshop wollen wir diesen Versprechen praktisch nachgehen. Wir starten mit einem Überblick und stellen die ersten Schritte beim Einsatz von Docker vor. Die Teilnehmer lernen die wichtigsten Befehle, Anweisungen und Konzepte praktisch kennen. Anhand eines ausführlichen Beispiels zeigen wir, wie ein Microservice mit Java implementiert, mit Docker installiert und in einer Umgebung mit anderen Services integriert wird. Außerdem diskutieren wir das aktuelle Docker-Ökosystem und klären über Chancen und Risiken auf.
Niclas Mietz ist DevOps-Engineer mit Leidenschaft in der bee42 solutions gmbh und studiert Informatik an der FH in Dortmund.
Er beschäftigt sich gerne mit Open-Source-Projekten des Docker-Ökosystem und liebt es Automatisierung voranzutreiben.
Zudem ist Er auch Co-Organisator des Docker Bochum Meetups.
Peter Roßbach ist freiberuflicher Systemarchitekt und Coach zahlreicher Webanwendungen. Sein besonderes Interesse gilt der Entwicklung von komplexen Informationssystemen, einschließlich der Gestaltung und Realisierung von testgetriebenen Prozessen. Seit 1997 ist Peter Roßbach im Bereich HTTP-Server und Webcontainer tätig. Er ist Committer im Apache-Tomcat-Projekt und Mitglied der Apache Software Foundation. Sein besonderes Interesse gilt der Gestaltung von Provisionierungs-, Überwachungs- und Analysesystemen für komplexe Infrastrukturen. Mit der bee42 solutions gmbh realisiert er entsprechende Infrastrukturprodukte und Dienstleistungen auf Basis des Docker-Ökosystems, aktueller Webtechnologien, NoSQL-Datenbanken und Cloud-Plattformen.
Java hat ein solides Memory Model und eine Vielzahl reifer und mächtiger Bibliotheken für Concurrency. Aber welcher Ansatz hilft am effektivsten, die jeweiligen Ziele zu erreichen, und wie setze ich ihn im konkreten Projekt ein? Wie bewertet man alternative Ansätze und Implementierungen? Dieser Workshop vermittelt praktisches Handwerkszeug, um mit Concurrency in verschiedenen Situationen umzugehen. Das beginnt mit einer Analyse der Gründe für einen Einsatz von Concurrency – ist sie einfach durch ein Framework vorgegeben? Soll ein System schneller antworten? Soll der Durchsatz für einen bestimmten fachlichen Use Case optimiert werden? Außerdem behandelt er eine Reihe von Grundmustern, denen man in nebenläufigen Systemen immer wieder begegnet: Locks, Lock-freie Algorithmen, Queues mit Worker Threads, seiteneffektfreie Programmierung etc. Wir werden in dem Workshop ihre jeweiligen Stärken und Schwächen beleuchten, die in verschiedenen Szenarien unterschiedlich zum Tragen kommen. Schließlich geht der Workshop auf das große Feld des Testens von nebenläufigem Code ein, und zwar sowohl auf Korrektheit als auch auf Performance. Das Ganze wird durch eine Behandlung von Java Memory Model und moderner Hardware abgerundet. Der Schwerpunkt liegt dabei durchgängig auf lauffähigem Quellcode und praktischen Übungen durch die Teilnehmer, die deshalb ein Notebook mitbringen sollten.
Diplom-Informatiker Nico Feiertag arbeitet als Java-Softwareentwickler seit 2006 bei der Symtavision GmbH. Er hat an der TU Braunschweig Informatik studiert und verfolgt momentan eine Industriepromotion in Zusammenarbeit mit dem Institut für Datentechnik und Kommunikationsnetze der TU Braunschweig. Beruflich beschäftigt er sich mit der Entwicklung und Implementierung von Performanzanalysen von Bussen, Netzwerken und Betriebssystemen. Nico Feiertag vertritt Symtavision in diversen nationalen und internationalen Projekten als Technischer Leiter.
Arno Haase ist freiberuflicher Softwareentwickler. Er programmiert Java aus Leidenschaft, arbeitet aber auch als Architekt, Coach und Berater. Seine Schwerpunkte sind modellgetriebene Softwareentwicklung, Persistenzlösungen mit oder ohne relationale Datenbank, und nebenläufige und verteilte Systeme. Arno spricht regelmäßig auf Konferenzen und ist Autor von Fachartikeln und Büchern. Er lebt mit seiner Frau und seinen drei Kindern in Braunschweig.
In diesem Workshop nehmen wir uns einen Tag Zeit, um Domain-driven Design (DDD) näher anzuschauen. Themen sind die Ubiquitous Language, die „Building Blocks“ Entities, Value Objects, Services und Co. Außerdem schauen wir auf DDD im Großen und insbesondere das Konzept des Bounded Context, das auch die Grundlage für Microservices bietet. Der Workshop besteht aus abwechselnd Vortrag, Diskussion und Übungen.
Dr. Carola Lilienthal ist Seniorsoftwarearchitektin bei der Workplace Solutions GmbH und Mitglied der Geschäftsleitung. Sie hat an der Universität Hamburg studiert und dort zum Thema „Komplexität von Softwarearchitekturen“ promoviert. Seit 2003 analysiert sie im Auftrag ihrer Kunden in ganz Deutschland regelmäßig die Architektur von Softwaresystemen und fasst das Ergebnis in Qualitätsgutachten sowie mit priorisierten Refactoring-Maßnahmen zusammen. Außerdem leitet sie seit 2000 Softwareprojekte von unterschiedlicher Größe im Banken-/Versicherungs- und Logistikbereich und berät das Management kleiner und mittelständischer Unternehmen bei der Entwicklung einer modernen IT-Strategie.
Henning Schwentner liebt Programmieren. Diese Leidenschaft lebt er als Softwarearchitekt und Berater bei der WPS aus. Seine Projekte sind agil und am liebsten in Java, das seit Version 1.0 seine Leib-und-Magen-Programmiersprache ist. Oft begegnet ihm aber auch C# und sogar ABAP. Ihn interessieren die Evolution von Programmiersprachen, langlebige Softwarearchitekturen und große Refactorings.
Im Gegensatz zu älteren Versionen ist die Entwicklung mit Java EE 7 trotz der Komplexität der Anwendungslandschaft einfach – teilweise sogar einfacher als im Standalone-Umfeld. Das wollen wir in diesem Workshop mit einem durchgängigen Beispiel zeigen. Wir setzen dabei natürlich auf JPA, BV, CDI, EJB und JSF, aber auch nach Wunsch der Teilnehmer auf weitere Teile der Plattform, z. B. Timer, asynchrone Verarbeitung, WebSockets, REST, Batch, ... Ein besonderer Fokus liegt auf den neuen Features in Java EE 7, z. B. Konverter, Entity Graphs oder Faces Flows. Das Beispiel wird interaktiv entwickelt und steht den Teilnehmern als Git Repository zum aktiven Mitmachen zur Verfügung. Benötigt wird nur ein Notebook mit Java 8, Maven, einer IDE mit Maven-Unterstützung und WildFly 10 oder GlassFish 4. Details zur Vorbereitung stehen ab Oktober auf https://github.com/dirkweil/javaee-workshop.
Dirk Weil ist seit 1998 als Berater im Bereich Java tätig. Als Geschäftsführer der GEDOPLAN GmbH in Bielefeld ist er für die Konzeption und Realisierung von Informationssystemen auf Basis von Java EE verantwortlich. Seine langjährige Erfahrung in der Entwicklung anspruchsvoller Unternehmenslösungen machen ihn zu einem kompetenten Ansprechpartner und anerkannten Experten auf dem Gebiet Java EE. Er ist Fachbuchautor, schreibt Artikel für Fachmagazine, hält Vorträge und leitet Seminare und Workshops zu diversen Java-SE-/EE-Themen.
Cloud-Größen wie Google, Twitter und Netflix haben die Kern-Bausteine ihrer Infrastruktur quelloffen verfügbar gemacht. Das Resultat aus vielen Jahren Cloud-Erfahrung ist nun frei zugänglich, jeder kann selbst cloud-native Anwendungen entwickeln – Anwendungen, die in der Cloud zuverlässig laufen und fast beliebig skalieren. Die Bausteine wachsen zu einem großen Ganzen zusammen: dem Cloud Native Stack. Wir stellen die wichtigsten Konzepte und Schlüssel-Technologien wie Docker, DC/OS und Kubernetes vor, und bringen gemeinsam eine Beispielanwendung schrittweise in der Cloud zum Laufen.
Folien, Lab-Beschreibungen und notwendige Voraussetzungen, um die Labs am eigenen Notebook mitmachen zu können, findet ihr auf unserem github Repo: https://github.com/qaware/hitchhikers-guide-cloudnative.
Josef Adersberger ist technischer Geschäftsführer der QAware GmbH, einem IT-Projekthaus mit Schwerpunkt auf Cloud-native Anwendungen und Softwaresanierung. Er hält seit mehr als zehn Jahren Vorlesungen und publiziert zu Themen des Software Engineering, aktuell insbesondere zu Cloud Computing.
Mario-Leander Reimer ist seit Anfang 2014 Cheftechnologe bei QAware. Er verantwortet den technischen Erfolg von Projekten im Bereich Aftersales beim Kunden BMW. Er ist Spezialist für den Entwurf und die Umsetzung von komplexen System- und Softwarearchitekturen auf Basis von Open-Source-Technologien. Als Mitglied im Java Community Process (JCP) ist sein Ziel, die Java-Plattform weiter zu verbessern und praxistaugliche Spezifikationen zu entwickeln. Er ist Speaker auf internationalen Konferenzen und Gastdozent an der Hochschule Rosenheim. Mario-Leander Reimer hat in Rosenheim und an der Staffordshire University Informatik studiert und ist seit 2009 Mitarbeiter der QAware.
Auf Basis der Case Study LiftUp aus unserem Buch „Business Enterprise Architecture“ entwickeln wir einen Masterplan für die Transformation sowie ein entsprechend bewertetes Transformation-Portfolio. Neue Technologien sind ein wesentlicher Enabler für die Veränderungen. Diese stehen in diesem WS aber nicht im Fokus, sondern die Veränderungen im Unternehmen, um die neuen Technologien für den Geschäftserfolg nutzbar zu machen. An Beispielen werden die Teilnehmer die Werkzeuge des Buchs praktisch anzuwenden lernen und unter anderem ein neues Business-Model, Operating-Model und eine Zielarchitektur entwickeln. Außerdem werden wir ausführlich darüber diskutieren, wie eine Transformation strukturiert und durchgeführt werden kann. Der Workshop wird interaktiv und mit vielen Diskussionen und Übungen gestaltet werden. Die jeweiligen Aspekte werden in kleinen Gruppen erarbeitet und im Plenum mit allen Teilnehmern stetig abgestimmt, sodass am Ende ein ganzheitlicher Entwurf der umsetzbaren Transformation entsteht. Bringen Sie Kreativität und gute Laune mit.
Dr. Thomas Grimm berät seine Kunden bei der Ausgestaltung ihrer Transformation in den unterschiedlichen Dimensionen. Er ist promovierter Physiker und hat in den 1990er-Jahren in Frankfurt, Göttingen und Los Angeles studiert. Kurz vor der Jahrtausendwende wechselte er als Berater für neue Softwaretechnologien und moderne Architekturen in die Industrie. Mitte 2004 übernahm er bei einem großen Telekommunikationsanbieter die Verantwortung für die Integrationsstrategie und -plattform SOA. Später zeichnete er als Group-Enterprise-Architekt für die Entwicklung der Konzernzielarchitektur und deren internationales Alignment verantwortlich. Anfang 2013 übernahm er in einem neuen Geschäftsfeld für Fort- und Weiterbildung die Verantwortung für Strategie und Business Development. Neben seiner beruflichen Tätigkeit hat Thomas einen Masterstudiengang „Enterprise Information Management“ an der Henley Business School (UK) erfolgreich abgeschlossen. Weiterhin betätigt er sich gerne als Autor von Fachartikeln und Büchern, Sprecher auf Konferenzen und als Gastdozent.
Carsten Sensler berät Kunden im Kontext ihrer Transformation in den verschiedensten Dimensionen und Ausprägungen. Vor dieser Zeit war Carsten bis Ende 2013 Angestellter eines großen Telekommunikationskonzerns. Dort war er als Vice President „Technology, Architecture and Operation“ Mitgründer eines strategischen Konzerngeschäftsfelds. Vorher arbeitete er in dem Konzern als Group-Enterprise-Architekt für den CIO. Carsten war für die Ausgestaltung der Konzernzielarchitektur und deren internationalem Alignment verantwortlich sowie zuvor innerhalb der Enterprise-Integration für die konzernweite Standardisierung einer SOA-Infrastruktur sowie der entsprechenden SOA Governance. Seine Karriere begann er als Consultant für neue Technologien. Neben seinen beruflichen Herausforderungen konnte Carsten an der Henley Business School (UK) erfolgreich den Masterstudiengang in „Enterprise Information Management“ absolvieren. Carsten teilt sehr gerne sein Wissen und seine Erfahrungen mit anderen, indem er Fachartikel veröffentlicht, auf Konferenzen referiert oder als Gastdozent Lehrveranstaltungen gibt.
Agile Teams sollen selbstorganisiert arbeiten und dabei effizient kooperieren. Auf formaler Ebene wird dies durch Methoden wie Scrum und deren Elemente (Retrospektive, Daily Stand-up, ….) organisiert. Wie genau diese agilen Elemente eingesetzt werden, muss allerdings auf das jeweilige Team abgestimmt sein. Hier entscheidet sich dann erst, ob das agile Team wirklich Fahrt aufnimmt oder sich selbst ausbremst. In dieser Session geht es darum, was gute Kooperation im agilen Team ausmacht, wie sie erreicht und immer wieder aufs Neue hergestellt werden kann.
Dr. Ing. Dipl. Inform. Jörg Preußig arbeitet seit 2010 als freiberuflicher Berater und Trainer für Agiles Projektmanagement und Soft Skills. Davor war er viele Jahre in SoftwareProjekten im Mittelstand und Großkonzern unterwegs. Er hat eine Ausbildung zum systemischen Coach und langjährige Bühnenerfahrung als Schauspieler im Improvisationstheater.
In dieser interaktiven Session erleben Sie, wie Sie als Agiler Coach mit Übungen aus dem Bereich der Improvisationstechnik Vertrauen und Kooperation innerhalb agiler Teams aufbauen.
Dr. Ing. Dipl. Inform. Jörg Preußig arbeitet seit 2010 als freiberuflicher Berater und Trainer für Agiles Projektmanagement und Soft Skills. Davor war er viele Jahre in SoftwareProjekten im Mittelstand und Großkonzern unterwegs. Er hat eine Ausbildung zum systemischen Coach und langjährige Bühnenerfahrung als Schauspieler im Improvisationstheater.
Agile Softwareentwicklung mit einem oder zwei Teams ist mittlerweile sehr gut verstanden. Was aber, wenn zur Erreichung des Ziels siebzig Entwickler/zehn Teams benötigt werden? Was, wenn plötzlich das Ideal der unabhängigen User Story nicht mehr gilt und man stattdessen mit Epics hantieren muss? Wie koordiniert man zehn parallel arbeitende Teams und deren Kommunikation? Welche neuen Aufgaben und Rollen ergeben sich durch die Skalierung? Wie plant man mit siebzig Entwicklern über mehrere Sprints hinweg? Wie priorisiert man das Backlog? Welche Herausforderungen stellten sich ab welcher Teamgröße und wie wurden diese gelöst? Wenn Sie diese Fragen interessieren, dann sind Sie in diesem Praxisvortrag genau richtig.
Christoph Stock ist Physiker und einer der Gründer von TNG Technology Consulting. Seit 2001 ist er besonders an agiler Softwareentwicklung interessiert. So hat er schon bei vielen Kunden von TNG agile Methoden (meistens Scrum) eingeführt. Natürlich ist Scrum auch das präferierte Vorgehensmodell für TNG-Projekte. Durch ständig wachsende Projekte kam Herr Stock mit den Herausforderungen der skalierten agilen Entwicklung in Kontakt.
Retrospektiven sind ein Kernelement agiler Vorgehensmodelle wie Scrum. Wie können Retrospektiven aufgebaut sein, wie halte ich sie lebendig und stelle sicher, dass sie kontinuierlich Verbesserungen hervorbringen? Welche Werkzeuge gibt es für verschiedene Situationen in Retrospektiven?
Konstantin Diener ist CTO bei cosee. Sein aktueller Interessenschwerpunkt liegt auf selbstorganisierten Teams, agiler Unternehmensführung, Management 3.0 und agiler Produktentwicklung. Daneben entwickelt er noch leidenschaftlich gerne selbst Software.
Deine Firma will agiler werden. Die meisten Firmen wollen das. Also holen sie Consultants, machen einige Re-Orgs, sagen ab sofort zu ihren Managern „Scrum Master“, und so weiter ... Und dann geben sie ihren Erfolg bekannt: Die Softwareentwicklung ist jetzt ein kleines bisschen billiger. Aber viele dieser Firmen mit „erfolgreichen“ „Agile Transitions“ wurden nicht wirklich agil. Sie haben keine „Business Agility“, keine nachhaltige Entwicklung, keine wirklich selbstorganisierten Teams. Die traurige Wahrheit ist: Wenn deine Firma nicht jetzt schon agil ist, wird sie es wahrscheinlich nie. Oder nicht in vernünftiger Zeit. In diesem Vortrag werde ich über Gründe sprechen, warum viele Firmen es nicht schaffen, agil zu werden, und warum viele junge, kleine Firmen „einfach sind“. Wir werden auch gemeinsam darüber diskutieren, was man tun kann, um diese Probleme zu lösen.
David Tanzer ist seit 2006 als freiberuflicher Berater, Trainer und Softwareentwickler tätig. Im Rahmen dieser Tätigkeit beschäftigt er sich mit Softwarequalität in agilen Projekten, also unter anderem mit den Themen Architektur in agilen Projekten, Softwaredesign, agiles Anforderungsmanagement und Testen. David „spricht“ mehrere Programmiersprachen und ist als Entwickler sowohl im Frontend als auch im Backend – vor allem von Webanwendungen – zu Hause.
Leider wird immer häufiger noch agil mit planlos gleichgesetzt. Dies ist aber nicht der Fall. Die Art und Kultur der Planung ändert sich jedoch erheblich. In der agilen Planung kann entsprechend den Erfordernissen des Planungshorizonts in einer passenden Granularität zeitgerecht eine belastbare Aufwandsschätzung erstellt werden. Im Vortrag werden hierzu Best Practices anhand von Beispielen vorgestellt. Ein wesentliches Thema ist aber auch die Planungs- und Fehlerkultur, die immanent für den Erfolg der agilen Planung sind.
Inge Hanschke ist Geschäftsführerin von Lean42 und eine anerkannte Autorin von Fachbüchern über EAM, BPM, Businessanalyse und Lean-IT-Management. Die Inhalte basieren auf den Erfahrungen aus 27 Berufsjahren als IT-Managerin bei Anwenderunternehmen, in einem ERP-Produkthaus und bei verschiedenen IT-Dienstleistern. Ihr und auch das Motto von Lean42 ist einfach und effektiv – mit handhabbaren Lösungen Schritt für Schritt nachhaltig Mehrwert schaffen.
Zum Abschluss diskutieren die Speaker des Agile Days die wichtigsten Themen und Fragestellungen, die sich im Laufe des Tages gezeigt haben. Die Teilnehmer können selbstverständlich auch eigene Fragen, Erfahrungen und Ideen in die Diskussion einbringen.
Sebastian Meyen verantwortet als Chief Content Officer den Geschäftsbereich Magazine und Konferenzen bei Software & Support Media. Als Journalist begleitet er die IT-Industrie bereits seit über fünfzehn Jahren und hat zahlreiche Einblicke in die unterschiedlichen Technologiebereiche. Er beschäftigt sich mit dem Aufspüren neuer Trends in Technologie und Medien und interessiert sich dabei immer auch für die pragmatischen Erfolgsfaktoren: Technologien, Werkzeuge und Methoden, durch die Entwicklungsteams noch bessere Ergebnisse erzielen können. Bevor er zu Software & Support Media kam, studierte er Philosophie in Frankfurt.
Die Weiterentwicklung des JDK verläuft seit Java 7 und 8 in ruhigen Bahnen, und trotz Terminverschiebungen ist weiter mit verlässlichen Innovationsschritten zu rechnen. Anders verhält es sich mit der Java Enterprise Edition: Hier sind zuletzt Irritationen nicht nur über Releasetermine, sondern auch über die generellen Ziele entstanden. Nun ergibt sich im Licht des kometenhaften Aufstiegs von JavaScript, aber auch von Microservices oder modernen Cloud-Plattformen („Serverless“) die Frage: Welches Java brauchen wir? Wir diskutieren mit Experten, welche Rolle die Java Language zukünftig spielen soll, ob wir weiterhin die „großen“ Spezifikationen à la Enterprise Edition noch benötigen und welche neuen Ansätze innerhalb der Java-Welt uns eventuell weiterhelfen werden.
Arno Haase ist freiberuflicher Softwareentwickler. Er programmiert Java aus Leidenschaft, arbeitet aber auch als Architekt, Coach und Berater. Seine Schwerpunkte sind modellgetriebene Softwareentwicklung, Persistenzlösungen mit oder ohne relationale Datenbank, und nebenläufige und verteilte Systeme. Arno spricht regelmäßig auf Konferenzen und ist Autor von Fachartikeln und Büchern. Er lebt mit seiner Frau und seinen drei Kindern in Braunschweig.
Niko Köbler macht irgendwas mit Computern, viel im Web, meistens (funktional) auf der JVM. Er ist Co-Lead der JUG Darmstadt, Autor und Sprecher auf internationalen Konferenzen. Niko tweetet unter @dasniko.
Sebastian Meyen verantwortet als Chief Content Officer den Geschäftsbereich Magazine und Konferenzen bei Software & Support Media. Als Journalist begleitet er die IT-Industrie bereits seit über fünfzehn Jahren und hat zahlreiche Einblicke in die unterschiedlichen Technologiebereiche. Er beschäftigt sich mit dem Aufspüren neuer Trends in Technologie und Medien und interessiert sich dabei immer auch für die pragmatischen Erfolgsfaktoren: Technologien, Werkzeuge und Methoden, durch die Entwicklungsteams noch bessere Ergebnisse erzielen können. Bevor er zu Software & Support Media kam, studierte er Philosophie in Frankfurt.
Lars Röwekamp, Gründer des IT-Beratungs- und Entwicklungsunternehmens open knowledge GmbH, beschäftigt sich im Rahmen seiner Tätigkeit als „CIO New Technologies“ mit der eingehenden Analyse und Bewertung neuer Software- und Technologietrends. Ein besonderer Schwerpunkt seiner Arbeit liegt derzeit in den Bereichen Enterprise und Mobile Computing, wobei neben Design- und Architekturfragen insbesondere die Real-Life-Aspekte im Fokus seiner Betrachtung stehen. Lars Röwekamp, Autor mehrerer Fachartikel und -bücher, beschäftigt sich seit der Geburtsstunde von Java mit dieser Programmiersprache, wobei er einen Großteil seiner praktischen Erfahrungen im Rahmen großer internationaler Projekte sammeln konnte.
SQL ist die Sprache von Big Data. Egal, ob eine klassische relationale Datenbank, ein Column Store (NewSQL) oder ein nicht relationales Speichersystem (NoSQL) verwendet wird, eine starke, deklarative, SQL-basierte Abfragesprache verschafft den entscheidenden Vorteil. Der SQL-Standard hat sich drastisch weiterentwickelt, genauso wie seine kommerziellen und Open-Source-Implementierungen. Leider haben dies die wenigsten Leute im Java-Umfeld mitgekriegt, weswegen die meisten nur 10 Prozent der Features ihrer Datenbank verwenden. In diesem rasanten Vortrag werden wir einige eigenartige, jedoch sehr interessante Datenprobleme anschauen und mittels SQL lösen. Wir untersuchen Common Table Expressions, hierarchisches SQL, Tabellenfunktionen, sortierte Mengen, Aggregationsfunktionen, Reihenausdrücke, Fensterfunktionen und erweiterte Datentypen wie XML und JSON. Und wir werfen einen Blick auf Oracles mysteriöse MODEL- und MATCH_RECOGNIZE-Klauseln. Am wichtigsten: Wir werden feststellen, dass jeder fortschrittliches SQL schreiben kann. Sobald die Grundsätze dieser Tricks bekannt sind, werdet ihr SQL noch mehr lieben!
Lukas Eder ist der Gründer und Geschäftsführer der Data Geekery GmbH aus Zürich – fasziniert von der Interaktion zwischen Java und SQL. Die meiste Erfahrung hat er im Schweizer E-Banking-Umfeld gesammelt, hauptsächlich mit JDBC, Hibernate und Oracle. Als Java Champion teilt er sein Wissen auf verschiedenen Konferenzen, JUGs, Inhousepräsentationen, Workshops und auf dem Firmenblog.
Microservices sollen keine gemeinsame Datenbank haben. Warum eigentlich? Und was ist mit der dabei entstehenden Redundanz? Viele Architekturen kranken an zu großen und inflexiblen Datentöpfen. Dieser Vortrag zeigt die Gründe für die Probleme: die Missachtung von Bounded Context und eine viel zu enge Kopplung der Datenmodelle. Ansätze wie CQRS (Command Query Responsibility Segregation) und Event Sourcing zeigen, wie solche Probleme gelöst werden können – ohne dass dabei zu große Redundanzen bei den Daten entstehen.
Eberhard Wolff ist Fellow bei innoQ und arbeitet seit mehr als fünfzehn Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u. a. zu Continuous Delivery und Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Continuous Delivery, DevOps, Microservices und NoSQL.
Diese Session, anhand eines fiktiven Pentests praktisch dargestellt, wird Ihnen einen fundierten Überblick über die Tools und ihre Nutzungsarten geben, welche Security-Professionals und Pentester in ihrer täglichen Arbeit einsetzen, um Sicherheitslücken (manuell und teilautomatisiert) aufzuspüren. Trotz des hohen Qualitätsgrads der unterstützenden Tools in diesem Bereich, ist dies für viele Entwicklungsprojekte noch ein unbekanntes Terrain und damit ungenutztes Potenzial. Da so manchem Projekt der Einsatz des einen oder anderen Tools sicherlich helfen würde, sichere Software zu entwickeln, lohnt es sich allemal, sich einen guten Überblick zu verschaffen: Nach meinem Vortrag kennen Sie die Tools der Profis mitsamt Einsatzart, Zweck sowie Pros und Cons – in der Hoffnung, dass deren Einsatz nicht nur in der Hand der Pentester bleibt.
Christian Schneider (@cschneider4711) ist als freiberuflicher Softwareentwickler, White-Hat-Hacker und Trainer tätig. Abseits der klassischen Softwareentwicklung unterstützt er Kunden im Bereich der Websecurity durch Penetration-Tests, Security Consulting und Architekturberatung zur Härtung gegen Angriffe. In dieser Rolle führt er regelmäßig Trainings zu den Themen Pentesting sowie Security DevOps durch und bloggt auf www.Christian-Schneider.net.
Für die Umsetzung der Digitialisierung benötigt man einerseits ein Instrumentarium, um ganzheitlich Transparenz über die Ausgangslage zu schaffen, Lösungsideen zu gestalten und diese schnell zu verproben (Lean Startup). Andererseits muss parallel dazu die Organisation ertüchtigt werden, um die Businessagilität umzusetzen. Eine offene Leistungskultur muss über einen Veränderungsprozess schrittweise aufgebaut werden. Im Vortrag stellen wir erprobte Methoden, wie das Digital-Strategy-Framework und ein Lean-Methodentoolkit vor. Das Digital-Strategy-Framework beschreibt unterschiedliche digitale Treiber und deren Auswirkungen auf eine Vielzahl von Einflussgebieten innerhalb einer Organisation und die Konsequenzen hieraus. Dies beinhaltet auch eine Reifegradeinschätzung und Empfehlung, was in den verschiedenen Reifegraden pro digitaler Treiber und Fähigkeiten erreicht sein sollte. Das Lean-Methodentoolkit stellt Methoden und Tools bereit, um Transparenz zu schaffen, innovative Lösungen zu gestalten und in der Organisation zu verankern.
Inge Hanschke ist Geschäftsführerin von Lean42 und eine anerkannte Autorin von Fachbüchern über EAM, BPM, Businessanalyse und Lean-IT-Management. Die Inhalte basieren auf den Erfahrungen aus 27 Berufsjahren als IT-Managerin bei Anwenderunternehmen, in einem ERP-Produkthaus und bei verschiedenen IT-Dienstleistern. Ihr und auch das Motto von Lean42 ist einfach und effektiv – mit handhabbaren Lösungen Schritt für Schritt nachhaltig Mehrwert schaffen.
Danny Weinberger ist seit fünfzehn Jahren in der IT-Industrie- und Beratung in unterschiedlichen Positionen tätig und entwickelt aktuell mit einigen Kunden eine digitale Strategie für Versicherungen, Banken und Industrieunternehmen (Digital Banking, Digital Insurance und Industrie 4.0). Dabei geht es ihm vor allem auch um eine digitale Geschäftsstrategie einschließlich realistischer und zukunftsfähiger Use Cases für eine digitale IT-Strategie/Plattform in Verbindung mit agilen Lean-IT-Management- und -Architekturansätzen.
User Experience (UX) wird immer wichtiger. Nicht zuletzt, weil Mobile-Apps und moderne Websites den Anspruch der Nutzer an Oberflächen und Bedienung drastisch erhöhen. Damit sind nicht zuletzt Entwickler von Enterprise-Anwendungen gefordert, beim Thema User Experience eine Schippe drauf zu legen. Doch was ist UX und wie kann man diese im Entwicklungsprozess mit berücksichtigen? Diese Session gibt Oberflächenentwicklern aber auch UI-Muffeln einen spannenden Einblick in Usability Engineering und dessen Notwendigkeit in Softwareentwicklungsprojekten.
Alexander Casall arbeitet seit ca. fünf Jahren bei der Saxonia Systems AG als Softwareentwickler. Sein tägliches Brot verdient er mit der Implementierung moderner Multi-Touch-Applikationen (JavaFX) und widmet sich zudem der iOS-Entwicklung (www.buildpath.de). Alexander veröffentlicht Artikel in Fachzeitschriften, hält Vorträge auf Konferenzen (JavaOne, JAX, W-JAX) und ist bei User Groups aktiv.
Jedes Softwareteam schreibt Code, aber einige produzieren weniger Bugs als andere. Jedes Softwareteam baut neue Features, aber einige sind schneller als andere. Was machen Hochleistungsteams anders, und warum sind diese Teammitglieder fokussierter, glücklicher und entspannter? Sie arbeiten zusammen. Kein zehn mal so produktiver Rockstarprogrammierer kann das erreichen, was ein gut geöltes, begeistertes Team kann. Sven zeigt, wie die besten Softwareteams sich Ziele setzen und diese nachverfolgen, was Vielfältigkeit ausmacht, wie man ständig die Teamgesundheit überprüfen und verbessern kann, wie man Teams mithilfe eines Playbooks durch jede Phase der Entwicklung leiten kann und auch wie eine kreative und flexible Arbeitsumgebung bei mulitdisziplinären Projekten helfen kann. Es werden Techniken vorgestellt wie Sparrings, OKRs, Feature-Buddies, Offene Demos, Fokuswochen und vieles mehr, die dabei helfen, dass Teams und Teammitglieder effektiver zusammenarbeiten, und bessere Software gemeinsam erstellen.
Sven Peters ist ein Softwaregeek und arbeitet als Botschafter für Atlassian in Deutschland. Er hat 1998 mit Java-Entwicklung begonnen und programmiert jetzt schon länger, als er zugeben möchte. Neben dem Programmieren gilt seine Leidenschaft effektiver Softwareentwicklung und der Motivation von Entwicklern. Sven ist regelmäßiger Sprecher auf Konferenzen in über zwanzig Ländern darunter Jfokus, GeeCon, 33rd Degree, Devoxx, DevNexus, JAX und viele andere.
Historically, J2EE servers were huge monolithic beasts. While the second generation of the platform, called Java EE, improved a lot, there are already production-ready solutions to bring even more flexibility to run enterprise Java applications. Many major vendors, including IBM, Red Hat and Payara, strive to provide lightweight and extensible runtimes to power microservices, cloud deployments and reactive architectures already. Their individual efforts are naturally followed by an open collaboration within the MicroProfile.io initiative. I invite you to join the adventure with me and follow the quest for a new generation enterprise Java platform. We will explore what has happened in the world of enterprise Java recently, including the progress of the Java EE 8 specifications and the features already provided by some interesting open-source projects. Afterwards, we will have a closer look at the MicroProfile.io initiative and how its future direction can be formed even with your contribution. Lots of coding and demonstrations using Payara Micro included to illustrate the concepts.
Ondrej Mihalyi is a Senior Service Engineer at Payara, software developer and consultant specializing in tweaking standard and proven tools to solve new and challenging problems. He’s been developing in Java and Java EE for 9 years. As a Scrum Master and experienced Java developer, Ondrej’s helped companies to build and educate their development teams, improve their development processes and be flexible and successful in meeting client requirements. He loves working with Java EE community and would welcome anyone to contribute to Payara Server, as well as to any other open project in Java EE ecosystem.
In diesem Lab machen wir mit euch die ersten Schritte auf einer OpenStack-basierten Public Cloud. In praktischen Übungen lernt ihr nicht nur die wichtigsten Konzepte und Muster für den Aufbau eines ausfallsicheren und hochskalierbaren Systems in einer Public Cloud kennen. Nach einer pragmatischen Einführung in Ansible installieren, konfigurieren wir nicht mehr altmodisch per Hand, sondern nutzen Infrastruktur-as-Code. Am Ende hat jeder Teilnehmer eine reale Installations-Aufgabe in einer echten OpenStack Public Cloud automatisiert und hoffentlich Lust auf mehr.“
*** Anmeldung / Registration
Bitte tragen Sie sich vor Ort am Speaker Check-In in die Lab-Teilnehmerliste ein; es sind nur begrenzte Plätze verfügbar.
Please sign up for this lab at the speaker ceck-in desk, only limited places are available.
*** Teilnehmer-Voraussetzungen
- Jeder Teilnehmer bringt seinen Laptop mit; der Kura unterstützt Windows, MacOS oder Linux wird unterstützt
- Der Laptop soll möglichst ungehindert auf das Internet zugreifen können (Browser und SSH)
- Bedienung eines Unix TextEditors (vi oder nano)
- Falls der Teilnehmer auf eine VPN-Lösung angewiesen ist, so ist sicherzustellen, dass ggf. über Proxy-Server folgende Browserverbindungen möglich sind:
https://myworklpace.t-systems.com , https://console.otc.t-systems.com , https://cloud.telekom.de , sowie IP-Adressbereiche: http://160.44.*.* und http://49.29.*.*
- Die wesentlichen Aufgaben werden in einer SSH-Konsole auf der Cloud selbst bearbeitet. Daher sollten Teilnehmer, wissen, wie man SSH auf dem eigenen Gerät nutzt. Insbesondere ist sicherzustellen, dass SSH-Verbindungen vom Gerät auf Internet-Adressen (ggf. über einen Proxy) möglich sind. Der Kurs nutzt Putty unter Windows, OpenSSH unter Linux oder SSH im MacOS Terminal
- Jeder Teilnehmer sollte Erfahrung mit Programmierung und Erstellung von Shell-Skripten haben
- Jeder Teilnehmer sollte schon einmal eine Anwendung auf einem Server installiert haben
- Die besprochenen Themen sind DevOps-lastig
- Bedienung eines Unix TextEditors (vi oder nano)
Bernd Rederlechner arbeitet als leitender T-Systems Enterprise und Cloud Architect. Vom kleinen Innovationsprojekt bis hin zum strategischen Großprojekt (wie z. B. DeMail) hat er die Architektur vieler Kundenvorhaben bis zum produktiven Einsatz verantwortet. Diese Erfahrung, gepaart mit modernen Ideen wie „Lean Startup“, nutzt er jetzt, um Cloud-Kunden Wege zur effizienten Umsetzung ihrer digitalen Geschäftsideen zu zeigen.
Michael Rose ist derzeit als Cloud Consultant bei der T-Systems Onsite beschäftigt. Im Rahmen verschiedener Projekte unterstützt er Kunden bei der Migration auf Cloud Plattformen wie die Open Telekom Cloud. Insbesondere die Integration in Tools wie Ansible ist dabei ein Schwerpunkt gewesen, um Themen wie DevOps, Continuous Integration oder Continous Delivery im Rahmen solcher Projekte umzusetzen.
How we save time and nerves, incorporating RAML and TDD to do rapid prototyping with our customers. Negotiating the API contract is a great way to achieve a common understanding of what they want. With our approach we're having a solid idea of what we're about to build without a single line of code and can run a prototype API with an optional API-Console right after finishing the definition of the API in RAML. Giving us the capabilities to work on all ends right off the start.
Ovidiu Boc is a developer and team architect for SAP YaaS. His current technical expertise focuses on combining cloud solutions, microservice architecture, API design, DevOps all while finding simplicity in complexity.
Daniel Roth is a Developer of the core part of the as-a-service product at SAP Hybris with a keen interest in next-generation technologies. He has been working on enterprise applications, cloud services and DevOps topics in the last years.
Diese Session behandelt Concurrency jenseits von volatile und synchronized: Memory Barriers, Hardware Friendliness, Umgang mit Prozessor-Caches, warum stark optimierter Code sun.misc.Unsafe verwendet und was es mit VarHandles in Java 9 auf sich hat.
Arno Haase ist freiberuflicher Softwareentwickler. Er programmiert Java aus Leidenschaft, arbeitet aber auch als Architekt, Coach und Berater. Seine Schwerpunkte sind modellgetriebene Softwareentwicklung, Persistenzlösungen mit oder ohne relationale Datenbank, und nebenläufige und verteilte Systeme. Arno spricht regelmäßig auf Konferenzen und ist Autor von Fachartikeln und Büchern. Er lebt mit seiner Frau und seinen drei Kindern in Braunschweig.
Die meisten von uns werden an einer Software arbeiten, welche auf mehrere Services, Systeme und/oder Server bzw. Rechenzentren verteilt ist. In verteilten Systemen fallen naturgemäß auch verteilte Logs an, welche aber am Besten über ein API durchsuchbar und monitorbar sein sollten. Der Stack mit Elasticsearch, Logstash und Kibana (ELK) ist üblich, um diese Problematik zu adressieren und bietet eine wunderbare Basis für unsere Infrastruktur. In dieser Session wird exemplarisch gezeigt, wie man ELK in seine bestehende Servicearchitektur integrieren kann, um den bestmöglichen Einblick in seine Anwendung zu erhalten. Dabei werden Logs aus verschiedenen Anwendungen nach Elastic geschrieben und mit kleinen Tricks serviceübergreifende Semantik und Nachvollziehbarkeit erreicht. Dabei werden wir sehen, wie uns Dashboards für verschiedene Stakeholder (Sales, Marketing, Ops, Devs, ...) quasi geschenkt werden. Und das Coolste dabei: Unsere bestehenden Services werden gar nicht viel davon mitbekommen.
Johannes Unterstein organisiert die Java User Group in Kassel, lehrt an der DHBW Stuttgart und arbeitet als Distributed Applications Engineer bei Mesosphere. Als Teil des Marathonteams arbeitet er hart daran mit, Marathon und DC/OS ein Google-Like-Scaling für jedermann zu ermöglichen. Trotz der großen Faszination von Containern und deren Orchestrierung kann er es sich nicht verkneifen, oft über Elasticsearch und Neo4j zu sprechen.
Wie weit kommt man ohne esoterische Frameworks, Abhängigkeiten und ausschließlich minimalistischen Ansätzen im Microservice-Umfeld? In dieser Session werde ich „Thin War“, kB-Microservices implementieren, versionieren, kommunizieren lassen, konfigurieren, deployen und überwachen. Da wir auf Slides verzichten, sollte die Zeit für die Implementierung der Patterns wie Bulkheads oder Circuit Breaker ausreichen. Fragen, Anregungen und Vereinfachungen sind während und nach der Session willkommen.
Consultant and author Adam Bien is an Expert Group member for the Java EE 6 and 7, EJB 3.X, JAX-RS, and JPA 2.X JSRs. He has worked with Java technology since JDK 1.0 and with Servlets/EJB 1.0 and is now an architect and developer for Java SE and Java EE projects. He has edited several books about JavaFX, J2EE, and Java EE, and he is the author of Real World Java EE Patterns – Rethinking Best Practices and Real World Java EE Night Hacks – Dissecting the Business Tier. Adam is also a Java Champion, Top Java Ambassador 2012, and JavaOne 2009, 2011, 2012, 2013 and 2014 Rock Star. Adam occasionally organizes Java EE workshops at Munich’s airport (http://airhacks.com).
Der JPA-Standard ist in diesem Jahr zehn Jahre alt geworden. Längst hat er sich in Enterprise-Java-Architekturen etabliert. Welche architektonischen Konzepte und Best Practices haben die vergangenen Jahre gebracht. In der Session werden Probleme und Lösungen aus zehn Jahren JPA vorgestellt. Dabei wird gezeigt, wie man heutzutage mit JPA leichtgewichtige Anwendungen bauen kann und sich dabei Features wie Lazy Loading, den Extended Persistence Context und Transaction Synchronization zunutze macht.
Arne Limburg ist Enterprise Architect bei der open knowledge GmbH in Oldenburg. Er verfügt über mehrjährige Erfahrung als Entwickler, Architekt und Trainer im Enterprise-Umfeld und ist darüber hinaus seit dem ersten Tag im Android-Umfeld tätig. Zu diesen Bereichen spricht er regelmäßig auf Konferenzen und führt Workshops durch. Darüber hinaus ist er im Open-Source-Bereich tätig, unter anderem als PMC Member von Apache OpenWebBeans und Apache DeltaSpike und als Urheber und Projektleiter von JPA Security.
Webanwendungen werden auf allen Ebenen vom Frontend bis hin zum Backend angegriffen. Die Zeiten, in denen einzig die simple Absicherung des Java-Backends ausreichend war oder sich ein Angreifer durch eine Eingabevalidierung im Browser aufhalten ließ, sind vorbei. Heutzutage müssen die Entwickler von Webanwendungen jeden Layer bestmöglich schützen und alles für die Verteidigung ihrer Webanwendung tun. Und wo immer möglich die Securityfunktionalität anderer Anwendungen integrieren. Ein Angreifer, der eine Schutzebene erfolgreich aushebelt, steht dadurch weiterhin vor genügend Hindernissen, die ihn von der Erreichung seines Ziels abhalten. Die Session stellt dazu Schutz- und Verteidigungsmaßnahmen für die unterschiedlichen Layer einer Java-Webanwendung vor, vom Frontend bis hin ins Backend. So werden alle Layer optimal in die Verteidigung einbezogen und können ihren Teil zum Schutz der Webanwendung beitragen. Die entstehende Webanwendung ist rundum geschützt und versteht es, Angriffen auf allen Ebenen erfolgreich zu begegnen.
Dominik Schadow besitzt viele Jahre Erfahrung in der Java-Entwicklung und -Beratung und arbeitet als Senior Consultant beim IT-Beratungsunternehmen BridgingIT. Er ist spezialisiert auf die Architektur und Entwicklung von Java-Enterprise-Applikationen, Enterprise-Application-Integration und die sichere Softwareentwicklung mit Java. In Trainings und Coachings überzeugt er andere Entwickler von der sicheren Entwicklung mit Java. Daneben ist er seit vielen Jahren regelmäßiger Speaker auf verschiedenen Konferenzen rund um die Themen Java und sichere Softwareentwicklung, Buchautor (Java-Web-Security – Sichere Webanwendungen mit Java entwickeln) und Autor zahlreicher Fachartikel. In seiner Freizeit leitet er das Open-Source-Projekt JCrypTool, mit dem Anwender für die Kryptografie begeistert werden und ihre eigenen Krypto-Plug-ins entwickeln können.
Die MS Universal Windows Platform (UWP), der Standard hinter Windows 10 und Windows 10 Mobile, vereinheitlicht Gestaltungskonzepte für Desktop, Web und Telefon. Wir zeigen, woraus die UWP besteht und wie sie für gute Gestaltung in Java-Desktop- und -Webprojekten nützlich ist, sowie viele hilfreiche Quellen. SAPs OpenUI5 ist ein Rahmenwerk für rollenbasierte, plattform- und geräteübergreifende Gestaltung mit Schwerpunkt auf Geschäftsanwendungen. Wir zeigen Beispiele solcher Anwendungen und wie man das auf den Java-Desktop übertragen kann, um einfach, einheitlich und günstig zu gestalten. Die Beispiele zeigen wir mit Übertragungen der UWP und OpenUI5 für Swing und JavaFX.
Karsten Lentzsch ist unabhängiger Berater und Softwareenthusiast. Er entwirft, gestaltet und implementiert seit über zweiundzwanzig Jahren grafische Oberflächen mittels Objekttechnologien. In der Java-Welt zählt er zu den führenden Experten in den Bereichen Gestaltung und Look and Feel. Er berät Großunternehmen beim Entwurf und der Produktion von Java-Client-Anwendungen und veröffentlicht Artikel, Bibliotheken, Beispielprogramme und Produkte zu Java-Gestaltungsthemen. Vor der Gründung seines Design- und Beratungsunternehmens JGoodies hat er Informatik studiert und in kleinen und großen Unternehmen zahlreiche Clients entwickelt.
Die Theorie besagt, die organisatorische Ebene von Arbeiten an der Architektur und reinen Entwicklungsarbeiten in agilen Projekten nicht zu trennen. In der Realität – gerade auf großen Projekten – ist das oft anders. Verschiedenste Herausforderungen wie technische und architekturelle Rahmenbedingungen sowie Verantwortlichkeiten sind zu beachten. Spezifische Rollenbeschreibungen und die Zusammenarbeit verschiedener externer Unternehmen erhöhen die Komplexität im Zusammenspiel mit Architekturarbeiten sowie der Zusammenstellung von Teams.
Dieser Vortrag gibt einen detaillierten kritischen Einblick in das Spektrum der Organisation von Architekturarbeiten in großen agilen Projekten. Zu jedem Szenario in diesem Spektrum werden die Vorbedingungen und Konsequenzen diskutiert sowie Praxisbeispiele referenziert.
Im Unterschied zu anderen Vorträgen fokussiert sich dieser Vortrag auf organisatorische und Rollenaspekte wie z.B. den Architectural Runway und nicht auf die technische Realisierung einer Architektur im agilen Kontext.
Alexander Birke begann als Entwickler und technischer Architekt in der IT. Heute leitet er die Agile Unit von Accenture im deutschsprachigen Raum. Er befasst sich mit Agilität, Lean und Kanban seit 2008 als Anwender, Trainer und Konferenzsprecher. Sein Schwerpunkt liegt auf dem Einsatz von Agilität in Großprojekten mit 10+ agilen Teams.
Der moderne Softwarelebenszyklus hat sich in den vergangenen Jahren stark verändert. Durch Cloud- und Containertechnologien, Microservices-Architekturen, neue Frontend-Ansätze und Kulturen wie Lean Enterprise und DevOps sollte jedes Projekt auf optimalen Kundennutzen, kurze Entwicklungszyklen und schnelles Feedback fokussieren. Die Session präsentiert unseren Ansatz und unsere Erfahrungen, mit verteilten Teams real wahrnehmbaren Kundennutzen zu generieren.
Wolfgang Hermann verantwortet seit April 2016 den Aufbau der DevOps-Teams bei der CINTEO GmbH. Zuvor war er als IT-Consultant und Softwarearchitekt bei der dmc digital media center GmbH in Projekten rund um den Digital Channel der Daimler AG tätig. Aktuell unterstützt er die Organisation auf dem Weg hin zu einer DevOps-Kultur sowie bei der Optimierung der Zusammenarbeit lose gekoppelter Teams im Gesamtkontext Best Customer Experience über alle digitalen Kanäle der Daimler AG hinweg.
Thomas Seibert ist seit Juli 2015 bei der CINTEO GmbH als Senior Technical Lead Architect tätig und verantwortet dort Architekturen innerhalb des digitalen Clusters der Daimler AG. Seit mehr als einem Jahrzehnt arbeitet er in agilen Softwareprojekten als IT-Consultant und Softwarearchitekt. Sein aktuelles Interesse erstreckt sich auf den Aufbau skalierbarer Cloud-Architekturen und die organisatorischen Veränderungen, die mit den sich wandelnden IT-Paradigmen notwendig werden.
An increasing amount of vendors is offering cloud services for various aspects of Artificial Intelligence. We investigate the possibilities, considerations and limitations when building a system from such services. This also leads to the question to which degree human cognitive performance can in general be mimicked by utilizing services with specialized capabilities.
Matthias works in the field of Machine Learning since 2003. He utilized Machine Learning for Brain-Computer Interfaces, portfolio optimization and text analytics. He leads the field of Artificial Intelligence for Accenture Emerging Technologies in Germany and is concerned with the its application in enterprises.
In einem funktionalen Stil programmieren kann man in fast jeder JVM-Sprache. Frege geht aber einen qualitativ wichtigen Schritt darüber hinaus, indem die Sprache die Eigenschaften von Haskell auf die JVM bringt: garantiert seiteneffektfreie Funktionen, Bedarfauswertung und eine erstaunlich weitreichende Typinferenz. Frege kommt mit einem neuartigen Ansatz, wie man echt funktionale Programmierung mit den Vorzügen der JVM verbinden kann, ohne die Reinheit des Ansatzes zu kompromittieren. Wer funktionale Programmierung ernst nimmt und gerne mal etwas fundamental Neues in der Welt der JVM-Sprachen sehen möchte, der bekommt in dieser Session neue Anregungen.
Dierk König (JavaOne Rock Star) works as a fellow for Canoo Engineering AG, Basel, Switzerland. He is a committer to many open-source projects including OpenDolphin, Groovy, Frege, Grails, GPars and GroovyFX, and initiator of the open-source Canoo WebTest project. He is lead author of the “Groovy in Action” book, which is among the publisher’s best-selling titles of the decade. Twitter: @mittie
Im heutigen Zeitalter von verteilten (Cloud-)Anwendungen und Microservices wird schnell klar, dass die Autentifizierung und Authorisierung der Benutzer keine leichte Aufgabe darstellt. Und wer hat schon Lust, zum 100sten Mal ein Log-in-Formular und die dazugehörige Logik zu implementieren? Die Lösung kommt mit JBoss Keycloak daher. Keycloak ist ein Single Sign-on (SSO) und Identiy-Mangement-(IDM-)System, welches sich sehr einfach und schnell in viele bestehende Anwendungen integrieren lässt. Die Token-basierte Benutzerauthentifizierung nach OAuth 2, OpenIDConnect oder auch SAML2.0 funktioniert zuverlässig und bedarf nicht noch weiterer Entwicklungsarbeit. Bestehende LDAP- oder andere Benutzerverzeichnisse lassen sich leicht einbinden und auch die Authentifizierung gegen Social-Provider wie GitHub, Twitter und Co. sind schnell konfiguriert. Im Vortrag gebe ich nicht nur einen Überblick über Keycloak, sondern zeige auch, wie diese SSO-Lösung in verschiedenste Anwendungen, angefangen von reinen Java-EE-Backend-REST-Services über Spring Boot bis hin zu JavaScript-basierten Clientanwendungen integriert werden kann.
Niko Köbler macht irgendwas mit Computern, viel im Web, meistens (funktional) auf der JVM. Er ist Co-Lead der JUG Darmstadt, Autor und Sprecher auf internationalen Konferenzen. Niko tweetet unter @dasniko.
In den meisten Projekten wird das Thema Testing immer noch zu stiefmütterlich behandelt. Jedoch ist es für funktionierende Software unabdingbar, alle Funktionalitäten auf Korrektheit zu prüfen. Dieser Vortrag zeigt, wie man Java-EE-Applikationen möglichst produktiv und doch umfassend testen kann, warum es unabdingbar ist, vollständige Systemtests durchzuführen und warum die meisten Integrationstests à la Arquillian überschätzt werden. Die meiste Zeit wird mit Live-Coding und natürlich Live-Testing verbracht.
Sebastian Daschner arbeitet als freiberuflicher Java Consultant, Softwareentwickler bzw. -architekt und programmiert begeistert mit Java (EE). Er nimmt am Java Community Process teil, ist in der JSR 370 Expert Group vertreten und entwickelt an diversen Open-Source-Projekten auf GitHub. Er ist ein Java Champion und arbeitet seit über sechs Jahren mit Java. Darüber hinaus benutzt Sebastian auch intensiv Linux und Containertechnologien wie Docker. Er evangelisiert Java- und Programmierthemen unter https://blog.sebastian-daschner.com und auf Twitter unter @DaschnerS.
cosee wurde als Firma mit sehr klassischen Strukturen gegründet; technologisch setzten wir am Anfang sehr stark auf Enterprise-Technologien. Nach kurzer Zeit mussten wir aber feststellen, dass uns beide Schuhe nicht so recht passten, und wir sind daran fast gescheitert. Wir haben sodann unsere Technologien verändert und sind mit unserer Software in die Cloud gewandert. Gleichzeitig änderte sich unsere Unternehmensstruktur hin zu Agilität und Selbstorganisation. Ein Erfahrungsbericht über die Verknüpfung zwischen Technologien und Arbeitsweisen.
Konstantin Diener ist CTO bei cosee. Sein aktueller Interessenschwerpunkt liegt auf selbstorganisierten Teams, agiler Unternehmensführung, Management 3.0 und agiler Produktentwicklung. Daneben entwickelt er noch leidenschaftlich gerne selbst Software.
JavaFX nimmt immer mehr Fahrt auf, und es steigt der Bedarf, auf Swing-basierende Altanwendungen hin zu den neuen UI-Technologien der heutigen Zeit zu migrieren. Wie kann ein solcher Migrationspfad an einer bestehenden Anwendung aussehen, ohne sich mit der kompletten zeitaufwendigen Neuimplementierung zu beschäftigen? Diese Session soll zeigen, wie eine weltweit eingesetzte Medizinanwendung von Swing nach JavaFX portiert wurde. Am Ende des Wegs steht eine Anwendung auf Basis von Eclipse e4 mit dem JavaFX-Renderer-Framework e(fx)clipse. Es werden die einzelnen Stufen der Migration, Best Practices und der Wechsel nach Eclipse erläutert und ein sehr interessanter Ansatz für den gleichzeitigen Betrieb der Swing-Anwendung auf Basis der veralteten Spring Rich Client Platform und dem neuen Anwendungsteil basierend auf purem Eclipse e4 und JavaFX innerhalb einer Anwendung gezeigt. Dass dabei die Funktionalitäten unbeeinträchtigt bleiben, zeigt eine Livedemo der Anwendung anhand unterschiedlicher Migrationsstände.
Thomas Fahrmeyer ist seit mehr als fünfzehn Jahren freiberuflich im Java-Umfeld tätig und beschäftigt sich im Moment hauptsächlich mit der Entwicklung von Fat-Client-Projekten auf Basis von Eclipse RCP, OSGi und Spring RCP und führt diese hauptverantwortlich. Sein Tätigkeitsschwerpunkt sind dabei Architektur, Design und Codereviews.
Thomas Hartthaler ist seit 2008 bei der Saxonia Systems AG tätig und beschäftigt sich seit 2010 mit der Softwareentwicklung im medizinischen Umfeld. Neben der Umsetzung von Client-Server-Installationsprozessen ist er derzeit an der Migration einer Swing-basierten Clientanwendung hin zur JavaFX-Technologie beteiligt.
In diesem Lab bekommen Sie eine Microservices-Umgebung mit Spring Boot und Spring Cloud. Nach einer theoretischen Einführung können Sie in der Umgebung praktische Erfahrungen mit Hystrix für Resilience oder Ribbon für Load Balancing sammeln – oder wollen Sie lieber Monitoring mit Graphite oder Loganalyse mit dem ELK-Stack ergänzen? Das Lab bietet sich zur praktischen Vertiefung der Ansätze aus dem Microservices-Power-Workshop an.
*** Anmeldung / Registration
Bitte tragen Sie sich vor Ort am Speaker Check-In in die Lab-Teilnehmerliste ein; es sind nur begrenzte Plätze verfügbar.
Please sign up for this lab at the speaker ceck-in desk, only limited places are available.
Eberhard Wolff ist Fellow bei innoQ und arbeitet seit mehr als fünfzehn Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u. a. zu Continuous Delivery und Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Continuous Delivery, DevOps, Microservices und NoSQL.
Building a strong, closely linked culture is critical to the success of any organization. However, there are many challenges that have to be overcome in the process of building that culture. How do we address the ability to collaborate across different groups, be it developers, testers, or project managers, to help provide a better quality application for end users? Damien Walsh discusses how this is done at each of the product lifecycle stages and how the communication will effectively improve quality. In this session, Damien talks about software quality, the benefits of collaboration and swaying the naysayers. Discussion points will include:
We are all on the software quality journey and we all share in the responsibility of delivering better products to our users. Join Damien for a candid conversation about what works and what doesn’t.
As the Sr Sales Engineer, Damien facilitates conversations to help teams better understand how to implement development, performance and testing processes to improve the quality of software. He is responsible for assisting account manager, partner and customers alike in finding the best ways to achieve their end goals. With over fifteen years of experience, working in roles from support to consultancy to an advisory role across EMEA and APAC, Damien has been involved in various projects in different sectors providing advice, support and implementation to customers.
Das „Schwergewicht“ Java EE scheint nicht wirklich mit der Wunderwelt der Microservices und den damit einhergehenden Architekturpatterns zu harmonisieren. Dabei bringt der Java-Enterprise-Standard technologisch gesehen alles mit, was es zur Umsetzung von Microservices benötigt. Wo also liegt das Problem? In der Session werden wir Schritt für Schritt eine monolithische Java-EE-Anwendung „sezieren“ und uns den damit einhergehenden Herausforderungen der neu entstandenen, Microservice-basierten Architektur stellen. Aha-Effekte garantiert!
Lars Röwekamp, Gründer des IT-Beratungs- und Entwicklungsunternehmens open knowledge GmbH, beschäftigt sich im Rahmen seiner Tätigkeit als „CIO New Technologies“ mit der eingehenden Analyse und Bewertung neuer Software- und Technologietrends. Ein besonderer Schwerpunkt seiner Arbeit liegt derzeit in den Bereichen Enterprise und Mobile Computing, wobei neben Design- und Architekturfragen insbesondere die Real-Life-Aspekte im Fokus seiner Betrachtung stehen. Lars Röwekamp, Autor mehrerer Fachartikel und -bücher, beschäftigt sich seit der Geburtsstunde von Java mit dieser Programmiersprache, wobei er einen Großteil seiner praktischen Erfahrungen im Rahmen großer internationaler Projekte sammeln konnte.
Transformationen werden aus unterschiedlichsten Gründen angestoßen. Die digitale Transformation ist einer davon, oft aber auch Standardisierung und Effizienzsteigerung. Der Knackpunkt ist, dass die Vielschichtigkeit einer solchen Transformation oft nicht erkannt wird oder aufgrund von Widerständen man nur einen Teil der notwendigen Transformation angeht. Das führt dazu, dass die Transformation nicht den erwarteten Mehrwert bringt. Kotter spricht davon, dass nur etwa 30 Prozent der Transformationen gelingen. Wir zeigen in unserem Vortrag die Vielschichtigkeit eines ganzheitlichen Transformationsportfolios und wie man es steuern kann, ohne die Organisation zu überfordern. Gleichzeitig lässt sich die Fähigkeit der Organisation zur Veränderung stärken und so die Wahrscheinlichkeit erhöhen, auch große und grundlegenden Transformationen zu meistern. Wir werden weniger über die Herausforderungen einer Technologietransformation sprechen, sondern über Methoden und Frameworks wie Portfoliomangement, Ability2Execute oder Transformationspoker. Gewürzt wird der Vortrag wie immer mit Erfahrungen aus unserem Projektalltag.
Dr. Thomas Grimm berät seine Kunden bei der Ausgestaltung ihrer Transformation in den unterschiedlichen Dimensionen. Er ist promovierter Physiker und hat in den 1990er-Jahren in Frankfurt, Göttingen und Los Angeles studiert. Kurz vor der Jahrtausendwende wechselte er als Berater für neue Softwaretechnologien und moderne Architekturen in die Industrie. Mitte 2004 übernahm er bei einem großen Telekommunikationsanbieter die Verantwortung für die Integrationsstrategie und -plattform SOA. Später zeichnete er als Group-Enterprise-Architekt für die Entwicklung der Konzernzielarchitektur und deren internationales Alignment verantwortlich. Anfang 2013 übernahm er in einem neuen Geschäftsfeld für Fort- und Weiterbildung die Verantwortung für Strategie und Business Development. Neben seiner beruflichen Tätigkeit hat Thomas einen Masterstudiengang „Enterprise Information Management“ an der Henley Business School (UK) erfolgreich abgeschlossen. Weiterhin betätigt er sich gerne als Autor von Fachartikeln und Büchern, Sprecher auf Konferenzen und als Gastdozent.
Carsten Sensler berät Kunden im Kontext ihrer Transformation in den verschiedensten Dimensionen und Ausprägungen. Vor dieser Zeit war Carsten bis Ende 2013 Angestellter eines großen Telekommunikationskonzerns. Dort war er als Vice President „Technology, Architecture and Operation“ Mitgründer eines strategischen Konzerngeschäftsfelds. Vorher arbeitete er in dem Konzern als Group-Enterprise-Architekt für den CIO. Carsten war für die Ausgestaltung der Konzernzielarchitektur und deren internationalem Alignment verantwortlich sowie zuvor innerhalb der Enterprise-Integration für die konzernweite Standardisierung einer SOA-Infrastruktur sowie der entsprechenden SOA Governance. Seine Karriere begann er als Consultant für neue Technologien. Neben seinen beruflichen Herausforderungen konnte Carsten an der Henley Business School (UK) erfolgreich den Masterstudiengang in „Enterprise Information Management“ absolvieren. Carsten teilt sehr gerne sein Wissen und seine Erfahrungen mit anderen, indem er Fachartikel veröffentlicht, auf Konferenzen referiert oder als Gastdozent Lehrveranstaltungen gibt.
Microservices sind eine tolle Sache. Die Aufgaben können gut verteilt werden. Änderungen können schnell produktiv gesetzt werden. Und vieles mehr. Allerdings hat das auch seinen Preis. Die Angriffsfläche erhöht sich im Vergleich zu monolithischen Anwendungen auf ein Vielfaches. Es gibt nicht mehr nur einen Security Context, sondern viele. Zwischen den Services muss die Nutzeridentität verteilt werden. Die Kommunikation erfolgt nicht im geschützten Kontext einer Anwendung, sondern über freie Strecke. Es gibt nicht eine Rechteverwaltung, sondern prinzipiell hat jeder Service seine eigene. Der Vortrag zeigt, wie man diese Probleme mithilfe von OAuth 2 lösen kann. Dabei wird zuerst auf die Grundlagen von OAuth 2 eingegangen, danach werden unterschiedliche Problemszenarien – und natürlich auch Lösungsmöglichkeiten – betrachtet. Den Abschluss bildet eine kleine Livedemo mit Spring Security OAuth 2 und Spring Cloud.
Claus Straube ist seit 2011 als IT-Architekt für Java-Architektur und Anwendungsintegration beim internen IT-Dienstleister (itM) der Landeshauptstadt München (LHM) angestellt. Zusätzlich berät er freiberuflich Organisationen in Architekturfragen – insbesondere bei Integrationsthemen. Aktuell beschäftigt er sich im Rahmen von Kundenprojekten mit Themen wie Spring Cloud, Docker, OAuth und Codegenerierung mit Xtext. Vor seiner Zeit bei der LHM war er als Entwickler und Architekt bei Oracle, Kabel Deutschland und einem Start-up beschäftigt.
Egal ob es sich um Neuentwicklungen oder Migrationsprojekte handelt, oft stellt sich die Frage nach der richtigen UI-Technologie. Wenn dann noch Web gefordert ist, fällt die Entscheidung beim aktuellen Technologieangebot nicht gerade leicht. Die Entscheidung sollte jedoch keinesfalls durch ein Bauchgefühl getroffen, sondern durch objektive Entscheidungskriterien herbeigeführt werden. Die Session zeigt Ansätze zur Bewertung von UI-Technologien und stellt beispielhaft Angular 2 und React einander gegenüber.
Alexander Casall arbeitet seit ca. fünf Jahren bei der Saxonia Systems AG als Softwareentwickler. Sein tägliches Brot verdient er mit der Implementierung moderner Multi-Touch-Applikationen (JavaFX) und widmet sich zudem der iOS-Entwicklung (www.buildpath.de). Alexander veröffentlicht Artikel in Fachzeitschriften, hält Vorträge auf Konferenzen (JavaOne, JAX, W-JAX) und ist bei User Groups aktiv.
„TLS? Langsam! HTTP2? Braucht kein Mensch!“ – Unfug! TLS ist auf dem Vormarsch, demnächst Pflicht in Chrome und Firefox und Grundlage für den Einsatz von HTTP/2. Das Gerücht von langsamen TLS hält sich hartnäckig und gründet sich in den vielen Standardinstallationen von Apache, nginx und Co. Mit dem Start von Let’s Encrypt sind reguläre SSL-Zertifikate für jedermann erhältlich. In dieser Session heben wir (live) eine ungesicherte Webseite auf TLS und HTTP/2. Wir arbeiten mit einem Let’s-Encrypt-Zertifikat. Wir prüfen und optimieren TLS-Sicherheitslevel und -Geschwindigkeit. Vor allem der initiale TLS-Handshake benötigt einiges an Optimierung, um vor allem bei mobilen Verbindungen die Latenz und damit die TTFB zu minimieren. Im letzten Schritt heben wir die Auslieferung der Webseite auf HTTP/2.
Torsten Köster ist CTO der Shopping24 GmbH und verantwortet dort Entwicklung und Betrieb der hauseigenen Produktsuchen. Aktuell beschäftigt er sich mit innovativen, schlanken Technologien rund um Suche und Event-Stream-Processing.
Hier wird frische Gestaltung für Java gezeigt, die man mit Swing, SWT und JavaFX umsetzen kann und beim Übergang von Desktop zu Web hilft. An vielen Bildschirmbeispielen zeigen wir realistische und günstig machbare Überarbeitungen von Geschäftsanwendungen. Sie lernen, wie man Omas funktions- und formularzentriertes GUI in eine rollenbasierte, aktionszentrierte Anwendung überführt, die zeitgemäße User Experience bietet – so mächtig wie Java-Desktop, so schick wie Web. Der Vortrag ist eigenständig und braucht kaum Vorwissen, lässt sich aber gut ergänzen durch „Gestaltung mit UWP und OpenUI5“.
Karsten Lentzsch ist unabhängiger Berater und Softwareenthusiast. Er entwirft, gestaltet und implementiert seit über zweiundzwanzig Jahren grafische Oberflächen mittels Objekttechnologien. In der Java-Welt zählt er zu den führenden Experten in den Bereichen Gestaltung und Look and Feel. Er berät Großunternehmen beim Entwurf und der Produktion von Java-Client-Anwendungen und veröffentlicht Artikel, Bibliotheken, Beispielprogramme und Produkte zu Java-Gestaltungsthemen. Vor der Gründung seines Design- und Beratungsunternehmens JGoodies hat er Informatik studiert und in kleinen und großen Unternehmen zahlreiche Clients entwickelt.
In this session you will find out how T-Systems AppAgile is combining PaaS and Big Data. You will furthermore learn how easy it is to develop “Big Data ready” code, using things like docker images for Mongo Database, Cassandra and further Hadoop based images. And if things are ready to get bigger you will see how you can make use of T-Systems bare metal on demand platform starting with small data to grow to big data and if end up with huge data.
You will also gain insight into the road map of hybrid solutions, combining the capabilities of public clouds like Microsoft Azure with the secure private possibilities of AppAgile.
Finally you will learn why T-Systems was the Red Hat’s cloud hosting partner of the year 2015. Featureing installations for German Toll collect Roadcharging systems, Hermes (logistic partners), and many more IoT and Non IoT workloads.
Thomas joint T-Systems/debis Systemhaus in 1997. Before (starting in 1986) he was running CAD operation at a leading German manufacturing company. He provides a wealth of expertise in server consolidation and server centralization which he sold and implemented for many Fortune 500 customers in various verticals (financial industries, manufacturing, whole sale).He sold and implemented SaaS architectures based on private cloud computing environments and storage clouds.Thomas provides IT expertise in Virtual Desktop Infrastructures (VDI). Calculated and presented business case for a major VDI environment on TCO basis. Negotiated contracts for such environment (SLAs, commercials, asset and staff transfer) with customer and vendors.Sold and implemented many complete (desktop, network, datacentre) outsourcings. Conducted proof of concepts in integrating VDI environment in an existing IT landscape.During his career Thomas lived for almost four years in the US (Chicago) were he successfully sold and implemented ICT and System integration outsourcings.Currently Thomas was running the account CTO function for a German Financial Asset managing Corporation. In 2013 Thomas was successfully creating the PaaS business for T-Systems Digital Division which was named AppAgile.Early 2016 Thomas was also tasked to take the helm for the Big Data business of T-Systems Digital Division on top of his PaaS responsibility.
Java EE 8 wird ein neues Action-basiertes Webframework namens MVC erhalten. Es beruht sehr stark auf bestehenden Technologien wie JAX-RS oder CDI und bietet Entwicklern daher einen leichten Einstieg. Ein besonderes Feature ist die Möglichkeit, nahezu beliebige Technologien für die Views zu verwenden. Auch wenn es mit der Fertigstellung von Java EE 8 noch ein wenig dauern wird, kann man auf Basis der Referenzimplementierung von MVC bereits heute experimentieren. In dieser Session wird eine Webanwendung auf Basis von MVC per Live-Coding erstellt und die Konzepte des neuen Frameworks dabei veranschaulicht.
Thilo Frotscher arbeitet seit über fünfzehn Jahren als freiberuflicher Softwarearchitekt und Trainer. Als Experte für Java EE und Systemintegration unterstützt er seine Kunden überwiegend durch Projektmitarbeit oder die Durchführung von Schulungen. Thilo ist (Ko-)Autor mehrerer Bücher im Bereich Java EE, (Web) Services und SOA und hat zahlreiche Artikel für diverse Fachzeitschriften veröffentlicht. Darüber hinaus wirkt er auch als Fachgutachter für IT-Publikationen und spricht regelmäßig auf internationalen Fachkonferenzen, auf Schulungsveranstaltungen oder bei Java User Groups (http://www.frotscher.com).
The DevOps movement is gaining momentum – which is good. But still DevOps often is seen way to small. DevOps is not only more collaboration between Development and Operations. It is the implementation driver for a massive change in IT – and it is not enough in itself. In this session we will examine the drivers and goals behind DevOps, why we need the change, how DevOps affects the whole IT value chain and what else is needed to really “become DevOps”. We will develop an “DevOps ecosystem” and draw the missing lines between several important concepts that all feed into the actual goals behind DevOps.
Uwe Friedrichsen travels the IT world for many years. As a fellow of codecentric AG he is always in search of innovative ideas and concepts. His current focus areas are resilience, scalability and the IT of (the day after) tomorrow. Often, you can find him on conferences sharing his ideas, or as author of articles, blog posts, tweets and more.
An increasing demand is being put on automobile manufacturers to move to autonomous vehicles or connected cars that require connectivity to back-end systems for pushing updates to the car’s computer system that previously required a trip to your local dealership. Infotainment systems and electronic control units are being implemented by these automakers that leverage connectivity through Bluetooth, WIFI, and cellular baseband networks for that connectivity creating an attack surface as a result of security being an afterthought to design and functionality. The vulnerabilities discussed in this presentation are exploitable and were found over the past few penetration tests performed of European automakers, and electronic control unit (ECU) and infotainment manufacturers who retained Alissa Knight to perform this testing. Because the vulnerabilities allow interception of messages between the manufacturer’s backend servers and the ECU which is connected to the CAN bus of the automobile, we will demonstrate how it’s possible to intercept, decrypt, and replay modified messages to the ECU that can result in remote control of the car. Solutions for how to address these risks and treat them to an acceptable level will be discussed as well as mitigating controls to treat the risks that are inherent in the cellular networks that the automobile, ECU, and infotainment manufacturers have no control over fixing.
Alissa Knight has been working in IT Risk Management for over sixteen years. As a serial entrepreneur, Alissa has started and sold two previous companies in the IT security space and is currently the Group Managing Partner of Brier & Thorn, Inc. and Managing Director of its European subsidiary in Stuttgart, Germany. Prior to her role at Brier & Thorn, Alissa worked with the U.S. Intelligence Community in cyber warfare operations in HUMINT of state and non-state sponsored threats in the cyber battlespace. With previous roles in penetration testing, incident response and forensics, and now IoT penetration testing, Alissa is currently focused on working with automobile, ECU, and infotainment manufacturers in understanding their new attack surface to help secure their connected systems.
Die Grundidee von Microservices besteht darin, kleine und unabhängige Services zu einem Gesamtsystem zu verbinden, um die einzelnen Services getrennt entwickeln, testen und deployen zu können. Das bedeutet aber auch, dass wir die zugehörige Benutzeroberfläche ebenfalls aufteilen müssen, um sie auf gleiche Art und Weise austauschbar zu machen. Die Session zeigt verschiedene Ansätze, wie sich dieses Problem in der Praxis lösen lässt.
Thorsten Maier arbeitet bei der OIO – Orientation in Objects GmbH in Mannheim. Er erschließt kontinuierlich bessere Wege, Software zu entwickeln, indem er selbst als leidenschaftlicher Java-Softwareentwickler unterwegs ist und anderen als Berater, Trainer, Autor sowie Speaker dabei hilft. Trotz seiner Begeisterung für Neues sind ihm Menschen stets wichtiger als Technologien. Sein Hauptaugenmerk liegt daher auf der Frage, wie sich modernste Technologien in gewachsene Umgebungen einbinden lassen und wann man besser auf Bestehendes zurückgreifen sollte.
What is Neural Network? Why is Deep Learning so important? What are the challenges for introducing those technologies to production services? In this session, we will look at the answers for those questions and how Google has been successfully deploying large scale neural network on services such as Google Photos, Android and Google Search. Also, we will introduce the new Google Cloud products such as Cloud Vision API, Speech API, TensorFlow and Cloud ML that allows developers to take advantage of the power of Google's machine intelligence with scalable and fully managed services.
Robert Kubis is a Developer Advocate for the Google Cloud Platform based in London, UK, specializing in Container, Storage and Scalable technologies. Before joining Google, Robert collected over ten years of experience in Software Development and Architecture. He has driven multiple full-stack application developments at SAP with a passion for distributed systems, containers and databases. In his spare time he enjoys following tech trends & good restaurants, traveling and improving his photographing skills.
Blockchains gehören in den Werkzeugkoffer des modernen digitalen Entscheiders, Architekten und/oder Entwicklers. Der Vortrag spannt den Bogen von Bitcoin über Blockchains hin zu Disruptionen wie Smart Contracts und Decentralized Applications. Im ersten Teil geht es um elliptische Kurven und byzantinische Generäle zur Absicherung des Bitcoin-Transaktionsgraphen; als Demo gibt es auf einem lokalen Bitcoin-Testnetz (Docker) einige Beispieltransaktionen. Im zweiten Teil werden Architekturstile beim Einsatz von Blockchains vorgestellt. Damit werden im dritten Teil wichtige Nutzungsmöglichkeiten von Blockchains jenseits der Finanzwelt aufgezeigt. Der vierte Teil zeigt eine Demo mit einem Smart Contract auf Ethereum und stellt verfügbare Architekturen und Technologien für Blockchains und Decentralized Applications (Azure, Eris, Hyperledger, Ripple) vor. Im Abspann als fünftem Teil geht es dann um große Hacks der Blockchain-Welt (Mt Gox/Bitfinex/DAO), die eingangs fomulierte Perspektive und was man jetzt schon tun kann.
Lothar Wieske ist Cloud Architect. Ihn interessiert das Zusammenspiel von Cloud, Data, IoT, Mobile, Social und digitale Disruption als Bindeglied und Wirkmechanismus. Mal schauen, was Augmented Reality, Bionics, Blockchain und Cognitive Computing demnächst noch so bringen.
Most nontrivial software systems suffer from significant levels of technical and architectural debt. This leads to exponentially increasing cost of change, which is not sustainable for a longer period of time. The single best thing you can do to counter this problem is to apply some useful principles and rules to the way your organize your code. This session will explain a practical approach to code organization and architecture and also introduce a domain specific language that can be used to enforce architectural rules during all stages of the development process.
Alexander von Zitzewitz is a serial entrepreneur in the software business and one of the founders of hello2morrow, an ISV specializing in static analysis tools that can enforce architecture and quality rules during development and maintenance of software systems. He worked in the industry since the early 1980s and focusses on the role of software architecture and technical quality on successful project outcomes. He moved from Germany to Massachusetts in 2008 to develop hello2morrow’s business in North America.
Many people are worried about the rise of smart machines and the impact this may have on paid employment. Several recently-published books, including Brynjolfsson and McAfee’s The Second Machine Age and Martin Ford’s The Rise of the Robots have forecast widespread technological unemployment over the next half century. Are the authors of these books right? Are those in the technology sector gradually building the machines that will render themselves obsolescent? Or should we be skeptical of these claims? If not, how can society handle the distributive crisis that will result from the death of paid employment? And how will humans find meaning and fulfilment in a world without work? These are the questions addressed in this talk. It will argue that the threat to paid employment is real and that society may need to embrace a radical “postwork” vision of the human future.
John Danaher (PhD) is a lecturer in the School of Law at NUI Galway (Ireland). His research interests are eclectic, ranging from the philosophy of religion to ethics and legal theory. His main area of research is the philosophy of technology and the impacts of emerging technologies on society. His writes a blog called Philosophical Disquisitions and is an affiliate scholar for the Institute for Ethics and Emerging Technologies. From 2015 to 2017 he is the lead investigator on the Algocracy and Transhumanism Project, which looks at the future of governance and values in an era of advanced artificial intelligence. The project is funded by the Irish Research Council.
„Machine Learning First“ ist seit diesem Jahr das Mantra von Google. Auch wir spüren im Projektalltag bei unseren Kunden, dass Machine Learning kein Nischendasein mehr fristet, sondern seine eigene Faszination entfaltet. Waren bisher die – meist noch simpel gehaltenen – Analysen im Big-Data-Umfeld primär nach innen gerichtet, geht der Trend jetzt in die umgekehrte Richtung. Die erzeugten Daten sollen auch nach außen wirken und Kunden einen Mehrwert bieten: als Datenprodukte. Dazu werden die bestehenden Daten mithilfe von Machine-Learning-Algorithmen untersucht und die Ergebnisse als zusätzlicher Nutzen präsentiert. Preisvorhersagen, gezielterer Kundenservice und Empfehlungen sind nur einige Beispiele. Dies setzt voraus, dass Entwickler neben dem reinen Coding über Daten und Datenmodelle neu nachdenken. Jeff Dean von Google geht davon aus, dass nur 10 Prozent der Google-Entwickler dieser Herausforderung bereits gewachsen sind. In dieser Session möchten wir die Umwälzungen durch Deep Learning und Co. für das Kunsthandwerk der Entwicklung diskutieren. Wir illustrieren anhand von Beispielen, wie sich die Welt um uns herum bereits zu verändern beginnt, und spekulieren über die weitere Entwicklung der Entwicklerprofession.
Christian Meder ist CTO bei inovex. Er beschäftigt sich vor allem mit leichtgewichtigen Java- und Open-Source-Technologien sowie skalierbaren Linux-basierten Architekturen. Seit mehr als einer Dekade ist er in der Open-Source-Community aktiv.
Dr. Christoph Tempich ist Leiter der Consulting Unit bei der inovex GmbH. Er berät und unterstützt Unternehmen aller Branchen bei den strategischen, organisatorischen und kulturellen Herausforderungen der Digitalen Transformation. Sein Fokus liegt derzeit auf der Etablierung und Verbesserung von digitalen Geschäftsmodellen und auf der Kreation und Implementierung von Datenprodukten. Dr. Tempich hat 2006 über Soziale Netzwerke und Wissensmanagement an der Universität Karlsruhe promoviert.
Die nächste Version von Java steht bevor. Die Freigabe von Java 9 ist für den September 2016 geplant. Die Session gibt einen Ausblick auf Java 9 und seine interessantesten Features. Es sind zwar keine neuen Sprachmittel für Java 9 geplant, aber zahlreiche Ergänzungen und Verbesserungen der JVM und des JDK, u. a. ein Modulkonzept für das JDK (Project Jigsaw) und eine Überarbeitung des Memory Models von Java (JMM 2.0).
Angelika Langer arbeitet als Trainer und Consultant mit eigenem Schulungsprogramm im Bereich der Softwareentwicklung mit C++ und Java. Sie ist Sprecher auf zahlreichen Konferenzen, darunter JavaOne, OOPSLA, JAX und viele andere (siehe lanyrd.com/profile/angelikalanger/). Sie ist u. a. Autor der Onlineressourcen „Java Generics FAQ“ und „Lambda Tutorial & Reference“ unter www.AngelikaLanger.com. Gemeinsam mit Klaus Kreft ist sie Autor zahlreicher Veröffentlichungen, darunter eine Artikelserie im Java Magazin.
Wir bewegen uns im Umfeld von UIs für Geschäftsanwendungen: am Sachbearbeiter orientiert, viele Felder, durchaus komplexe Dialoge. Wer da trotz aller Frameworks auf HTML5 setzt – der Kunde will ja schließlich „zero installation“! – der erkauft das durchaus schmerzhaft mit „endless maintenance“: Der Endnutzer findet immer einen Browser/Device, auf dem sich das System anders verhält, als es sollte. Und beim nächsten Major-Browserreleasewechsel kommt einiges in Unordnung. Muss das so sein? Wir sagen: definitiv nicht! Und zeigen es auch. Die „RISC-Methode“ nutzt den Browser auf andere Art als „normale“ Frameworks. Der Kern ist die Reduzierung der HTML-Nutzung auf alle wesentliche Elemente („Primitivelemente“) und der Aufbau von JavaScript-Bibliotheken auf Basis dieses Kerns. Und heraus kommt ein Webframework, in dem Browserkompatibilität keine Rolle mehr spielt. Und: Heraus kommt eine Gestaltungsfreiheit und Performance, die uns selbst überrascht hat. Lassen auch Sie sich überraschen!
Björn Müller ist seit 2001 im Bereich von UI-Frontend-Architekturen aktiv – sowohl auf der HTML-/Ajax-Seite als auch auf der Java-Swing- und JavaFX-Seite. Seit 2007 entwickelt er aktiv innerhalb der CaptainCasa-Community ein Java-basiertes Rich-Client-Framework für umfangreiche Geschäftsanwendugen, den CaptainCasa-Enterprise-Client. Wurde bis 2016 clientseitig auf Java-basierte Technologien gesetzt, so erfolgte nun der geräuschlose Umstieg auf einen HTML5-basierten Client, basierend auf der sog. „RISC-Methode“.
Aufwandsschätzungen sind in der Softwareentwicklung ein Problem – Organisationen, die Software entwickeln, fragen immer wieder, wie sie ihre geschätzten Termine besser definieren und einhalten können. Ironischerweise geht das am besten, wenn Sie Ihren Prozess so umstellen, dass Schätzen überflüssig wird! Matthias Bohlen zeigt in diesem Talk, wie Sie von Blei (Personentage) zu Gold (gar keine Schätzungen mehr) kommen.
Mit seinen Coachingprogrammen und Trainings hilft Matthias Bohlen Führungskräften und Teams, die in der Entwicklung von Produkten tätig sind, dabei, profitable Produkte zur Tür hinaus zu bekommen, ohne dabei den Verstand zu verlieren: Start-ups und Produktmanager erarbeiten mit Matthias, wie deren neues Produkt aussehen soll, damit es für Kunden unwiderstehlich wird. Kleine und mittlere Unternehmen wollen von ihm wissen, wie sie effizienter und zuverlässiger entwickeln können, z. B. mit Kanban. Unternehmen mit reifen Produkten nutzen Matthias’ Talent als Softwarearchitekt und Mitglied des iSAQB, um mit seiner Hilfe ihre Produkte wieder wartbar und robust zu bekommen. Alle möchten bei Matthias Soft Skills lernen wie z. B. Präsentieren, Moderieren, Designmeetings leiten, Entscheidungen herbeiführen und Konflikte bei der Arbeit ausräumen. Teammitglieder, die mit Matthias schon gearbeitet haben, nennen ihn den „Team- und Managementflüsterer“. Matthias Bohlen hat eine einzigartige Weise, komplizierte Dinge einfach zu erklären und in kleinen Schritten umsetzbar zu machen.
Im Zusammenhang mit Microservices und modernen Deployment-Modellen hat Spring Boot einige Popularität erlangt. Während dieses zwar Unterstützung für einige Java-EE-Standards wie JAX-RS mitbringt, entwickelt man damit letztlich jedoch immer eine Spring-Anwendung. Somit muss entsprechendes Spring-Know-how mitgebracht oder aufgebaut werden. Daher stellt Boot nicht für jedermann die optimale Lösung dar. Entwickler, die es bevorzugen, komplett auf Basis des Java-EE-Standards zu entwickeln, haben inzwischen jedoch einige Alternativen, wie etwa Wildfly Swarm, KumuluzEE oder Payara Micro. In dieser Session werden die unterschiedlichen Lösungen miteinander verglichen, der aktuelle Stand der Technik beleuchtet und an einem konkreten Beispiel demonstriert, wie Java EE Microservices erstellt werden.
Thilo Frotscher arbeitet seit über fünfzehn Jahren als freiberuflicher Softwarearchitekt und Trainer. Als Experte für Java EE und Systemintegration unterstützt er seine Kunden überwiegend durch Projektmitarbeit oder die Durchführung von Schulungen. Thilo ist (Ko-)Autor mehrerer Bücher im Bereich Java EE, (Web) Services und SOA und hat zahlreiche Artikel für diverse Fachzeitschriften veröffentlicht. Darüber hinaus wirkt er auch als Fachgutachter für IT-Publikationen und spricht regelmäßig auf internationalen Fachkonferenzen, auf Schulungsveranstaltungen oder bei Java User Groups (http://www.frotscher.com).
Die Anzahl der Testfälle sollte immer ein ausgewogenes Verhältnis zwischen Testabdeckung und Aufwand darstellen. Dazu wurden verschiedene Testfallermittlungsverfahren für White- und Black-Box-Tests entwickelt. Dieses Wissen ist besonders in agilen Projekten und genauso für Entwickler wichtig. Sie müssen gemeinsam mit den Testern innerhalb der Testpyramide Testfälle schreiben und durchführen. Der Vortrag stellt die wichtigsten Testfallermittlungsverfahren theoretisch und praktisch an Beispielen vor. Entwickler können ihr Wissen auffrischen oder neue Erkenntnisse gewinnen.
Kay Grebenstein arbeitet als Testmanager und Testcoach für die Saxiona Systems AG, Dresden. Er hat in den letzten Jahren in Projekten unterschiedlicher fachlicher Domänen (Telekommunikation, Industrie, Versandhandel, Energie …) Qualität gesichert und Software getestet. Dabei konnte er seine Kenntnisse sowohl im klassischen als auch im agilen Umfeld erweitern.
Hört man heute, dass BPM einen monolithischen Block bildet, der wenig in das Microservices-Umfeld passt, so zeigt dieser Vortrag, dass es auch anders geht. An einem Beispiel mit dem Open-Source-Projekt jBPM wird erklärt, wie Geschäftsprozesse und Geschäftsregeln sich harmonisch in eine Microservice-Architektur integrieren und sich die entstehenden Synergien nutzen lassen. BPM verhilft dabei, die Abläufe zwischen Microservices sichtbar, veränderbar und transaktionssicher zu machen. Auf der anderen Seite ermöglichen z. B. Docker, Kubernetes und fabric8 die Aufteilung von BPM und BRM (Business Rules Management) in kleine fachlich isolierte Services. Als Resultat arbeiten BPM und BRM selber als Microservice, und der Entwicklungs- und Auslieferungsprozess wird vereinfacht. Erfahren Sie in diesem Vortrag, wie BPM und BRM mit Java EE und JavaScript Frontends (z. B. Angular 2) in einer Containerarchitektur zusammenarbeiten können und welche Möglichkeiten dadurch entstehen.
Kai Jemella arbeitet bei der agentbase AG, ist IT-Experte in den Bereichen Java EE sowie Business Process Management und seit über zehn Jahren in unterschiedlichen Kundenprojekten im Einsatz. Er ist mal Teil von Scrum-Teams oder als Berater/Reviewer zu den Themen Geschäftsprozesse mit jBPM und Geschäftsregeln mit Drools unterwegs.
In diesem Lab werden wir hands-on mit ESP8266-Mikrocontrollern eine IoT-Anwendung bauen, mit der man auf Knopfdruck eine „Bestellung“ machen kann, die in der Cloud verarbeitet wird. Der Fortschritt der Versandstatus wird in Echtzeit auf dem Gerät visualisiert. Die Teilnehmer bauen im Lab unter Anleitung die Schaltung auf und stellen die Softwareware fertig. Viel Spaß ist garantiert!
*** Anmeldung / Registration
Bitte tragen Sie sich vor Ort am Speaker Check-In in die Lab-Teilnehmerliste ein; es sind nur begrenzte Plätze verfügbar.
Please sign up for this lab at the speaker ceck-in desk, only limited places are available.
*** Voraussetzungen
Bitte bringen Sie einen Laptop mit der Software "Arduino-IDE" zum Lab mit.
Detaillierte Infos werden unter: https://github.com/Accenture/iotlab-wjax2016 bereit gestellt.
Jan Delgado is working as IT architect for Accenture. Before shifting focus on architectural work, he developed software on large system integration projects. Currently he is helping clients to design and build microservice architectures and bring their devices to the cloud. He likes to program micro controllers to set up non-common application and held IoT workshops on that topic.
Holger Zahnleiter hat 1998 sein Studium der Informatik an der FH Darmstadt mit einem guten, altmodischen Diplom abgeschlossen.
Seither arbeitete er zunächst für debis Systemhaus (heute T-Systems).
Seit 2001 ist er für Accenture tätig.
Dabei ist er hauptsächlich als Entwickler und technischer Architekt auf Software-Entwicklungsprojekten in verschiedenen Branchen unterwegs.
Dort hat er vom kleinen Smartphone über den Unix-Server bis zum Host diverse Anwendungen in Java, C++, Perl und Swift entwickelt.
Aktuell begleitet Hr. Zahnleiter als technischer Berater die Einführung einer SAP Standard-Software bei einer Versicherung im schönen Hamburg.
Er lebt mit Frau und Kindern in der Nähe von Darmstadt.
OpenShift beinhaltet eine Docker- und Kubernetes-basierte Containerlaufzeitumgebung. Sie ermöglicht mittels SDN den Zugriff auf Anwendungen in OpenShift, die Kommunikation einzelner Container untereinander und mit Services in umliegenden Netzen, isoliert Mandanten voneinander und wird nahtlos von OpenShift verwaltet. Dieser Vortrag stellt OpenShift vor, erklärt die Mechanismen des SDN und anderer Komponenten und zeigt, wie sie zusammenspielen, um eine nahtlose "User Experience" zu erreichen.
Wolfram is an Enterprise Solution Architect with Red Hat in the Manufacturing Vertical in Germany. As such, he is responsible for solution design across the whole Red Hat portfolio. Before joining Red Hat in 2014, he had worked in technical presales roles at IBM, as specialist for the Middleware portfolio and as software client architect for utilities. Wolfram is passionate about connecting technical capabilities to business value and hates to write in the 3rd person about himself. He holds a Dipl.-Ing (BA) from the university of cooperative education in Stuttgart, Germany and an MBA from Henly Management College, UK. In the rare case he happens to experience any free time, he quickly drowns it with side projects such as having a family with two kids, riding a motorcycle and group fitness programs.
Die so genannten „progressiven Web-Apps“ sind die nächste Stufe moderner Webanwendungen. Sie verhalten sich noch stärker wie native Anwendungen und unterstützen dank neuester Browserstandards Offlinefähigkeit, echte Benachrichtigungen sowie Datensynchronisation im Hintergrund. Dazu kommen Ansätze wie Service Worker, das Web App Manifest, Browserdatenbanken, aber auch das App-Shell-Muster zum Einsatz. Diese Keynote geht auf diesen neuen Architekturansatz, der bereits von nationalen und internationalen Konzernen aufgegriffen wurde, ein und zeigt am Beispiel einer Angular-2-Anwendung, wie dieser Ansatz realisiert werden kann und worauf dabei zu achten ist.
Manfred Steyer (www.softwarearchitekt.at) betreut als Trainer und Berater Kunden im gesamten deutschsprachigen Raum. Dabei fokussiert er sich auf moderne Web- und Servicearchitekturen mit Angular. Daneben unterrichtet er an der berufsbegleitenden FH CAMPUS 02 in Graz. Manfred hat Bücher bei O’Reilly, Microsoft Press und beim Carl Hanser Hanser veröffentlicht und schreibt für das Windows Developer Magazin (vormals dot.net-magazin) und Heise Online. Sein Wissen gibt er regelmäßig auf Konferenzen weiter.
In den letzten zwölf Monaten hat sich für so manches Projekt oder manchen Softwarehersteller eine scheinbar völlig neue Klasse von kritischen Verwundbarkeiten der eigenen Software aufgetan. Objektiv betrachtet ist das Thema „Remote Code Execution“ durch Deserialisierung von Objekten in der Securityszene jedoch schon lange ein Thema und betrifft weit mehr Sprachen als nur Java. In diesem Talk ordne ich die Verwundbarkeit aus Sicht eines Security Professionals und Pentesters ein und zeige Ihnen, wie ein solcher Angriff funktioniert und warum es ein Problem auf breiterer Basis ist, als nur eine Hand voll Bibliotheken betreffend (so wie es leider in manchen Medien behandelt wurde). Nachdem wir gemeinsam die Vorgehensweise eines Angreifers (am realen Beispiel eines großen Onlinezahlungsdienstleisters) zur kompletten Übernahme des Application Servers nachvollziehen, werden Sie das eigentliche Problem dahinter verstehen und können die abschließend präsentierten Abwehrmaßnahmen besser auf Wirkung und Restrisiko einschätzen.
Christian Schneider (@cschneider4711) ist als freiberuflicher Softwareentwickler, White-Hat-Hacker und Trainer tätig. Abseits der klassischen Softwareentwicklung unterstützt er Kunden im Bereich der Websecurity durch Penetration-Tests, Security Consulting und Architekturberatung zur Härtung gegen Angriffe. In dieser Rolle führt er regelmäßig Trainings zu den Themen Pentesting sowie Security DevOps durch und bloggt auf www.Christian-Schneider.net.
Immer wieder ärgern wir uns in Konfliktsituationen, nicht schlagfertiger reagieren zu können. Oft fühlen wir uns überrumpelt und trauen uns nicht, unseren Standpunkt zu verteidigen. Andere wiederum sind in Extremsituationen vielleicht zu direkt und riskieren, es sich mit Kollegen oder gar dem Vorgesetzten dauerhaft zu verscherzen. Wie überzeuge ich nun andere richtig und finde in Konfliktsituationen die richtigen Worte? Welche Kommunikationsstrategie wende ich bei wem richtig an, um erfolgreich meine Ziele zu erreichen? In dieser Session erfahren Sie, was Kommunikation mit dem Säbelzahntiger zu tun hat und wie Sie in Zukunft wichtige Gespräche zielorientierter vorbereiten.
Yasmine Limberger ist Dipl.-Betriebswirtin und arbeitet seit mehr als achtzehn Jahre in der IT-Beratung. Sie war verantwortlich für die Bereiche Recruiting, Personalmarketing und Human Resources und hat langjährige Erfahrungen in der Auswahl von IT-Fach- und Führungskräften. Zu ihren weiteren Fachgebieten gehören zudem Persönlichkeitswahrnehmung, Training und Coaching. In der 2. Auflage ihres beliebten Kultratgebers „IT Survival Guide“, der bei entwickler.press erschienen ist, gibt Yasmine hilfreiche Tipps und Tricks für das Arbeitsleben im IT-Dschungel. Seit Jahren ist Yasmine Limberger nebenbei als Karriereberater im Einsatz, und die Leser des Windows Developer Magazins kennen ihre regelmäßig veröffentlichte Karrierekolumne. Yasmine Limberger ist erreichbar unter: yasmine.limberger@gmx.de und natürlich auch in XING zu finden. Mehr Infos auch unter: www.karriere-welten.de
Die Definition von Build-Pipelines im Sourcecode Repository der jeweiligen Anwendung (Pipeline as Code) hat gegenüber dem herkömmlichen Ansatz zur Definition von Build-Jobs viele Vorzüge, aber auch Grenzen. Dieser Vortrag soll aufzeigen, wann Pipeline as Code Sinn ergibt und wann nicht. Demonstriert wird dies an Beispielen aus der Praxis, die z. B. Build-Jobs für Feature-Branches automatisch anlegen oder löschen oder auch exploratives Testen von Änderungen der Build-Pipeline erlauben. Auch wann ein Branch automatisch gebaut werden soll und wann nicht, will wohlüberlegt sein. Mithilfe von fortgeschrittenen Features wie Global Pipeline Library werden Softwareprinzipien wie z. B. DRY (Don’t Repeat Yourself) auch für Build-Pipelines umgesetzt.
Bernhard Cygan ist Senior Solution Architect bei CloudBees. Ausgehend von Tätigkeiten in Dev und Ops lernte er agile Methoden und Prozesse schätzen. Er beschäftigt sich mit Softwaretechnologien im Enterprise-Umfeld und hält regelmäßig Vorträge oder Workshops zu agilen Vorgehensweisen. Die Erweiterung von Continuous Integration zu Continuous Delivery ist für ihn der nächste logische Schritt in der Professionalisierung von Softwareentwicklung.
Mit Docker Swarm und Compose stehen nun endlich Werkzeuge zur Verfügung, mit der stabile Docker-Cluster aufgebaut werden können. Compose kümmert sich dabei um die Bereitstellung der Container in diesem Cluster, Swarm bietet die Grundlage, in dem es verschiedene Voraussetzungen hierfür schafft. Mit einer Beispielapplikation werden wir in die Untiefen und Abgründe der Nutzung von Swarm und Compose in einem produktiven Umfeld abtauchen.
Dr. Halil-Cem Gürsoy ist Principal Software Architect bei der adesso AG (http://www.adesso.de) in Dortmund. Sein Fokus liegt auf verteilten Java-Applikationen, wobei er zugeben muss, im letzten Jahr mehr Zeilen produktiven Infrastrukturcode in Python, Ruby und Golang implementiert zu haben. Zudem liegt sein Schwerpunkt bei den Herausforderungen der Persistenz in solchen verteilten Applikationen.
Bremst Ihre IT den Fachbereich aus? Sinkende Margen, Ergebnisdruck, Regulatorik und die ständige Gefahr, dass ein Wettbewerber mit einer digitalen Lösung emporschießt – der Druck auf die IT als Enabler wird immer größer und droht zur Bremse des Unternehmens zu werden. Mittels Outsourcing in die Cloud, agiler Entwicklungsmethodik, Continuous Delivery und anderen Strategien versucht die IT ihrer Rolle gerecht zu werden. Ein unterschätzter Hebel für Businessagilität wird dabei häufig übersehen: effektive Softwarearchitektur. In Verbindung mit einem geeigneten Toolset treten Business und IT aufs Gaspedal. Anhand konkreter Praxisbeispiele stellt diese Session mögliche Architekturansätze und darauf abgestimmte agile Arbeitsmodelle für Business und IT vor.
Arthur Hupka ist Architekt und Mitglied des Core-Entwicklungsteams bei ACTICO. Seit seinem Studium ist er fasziniert von allen Aspekten der Softwareentwicklung im Allgemeinen und flexiblen Softwarearchitekturen im Speziellen. Er befasst sich intensiv mit der Frage, wie moderne Softwarearchitekturen dabei helfen können, schwergewichtige IT-Prozesse und Releasezyklen in Unternehmen aufzubrechen. In seiner Freizeit tüftelt Arthur gerne an eigenen Ideen und kümmert sich bei den Metal Maniacs als Vorstand um die Organisation und Vermarktung verschiedener Events.
BPMN und CMMN sind sehr spannende Standards, der eine für starre Workflows, der andere für flexible Fallbearbeitung. Beide Standards können auf entsprechenden Engines direkt ausgeführt werden. In der Session gebe ich eine kurze Einführung in beide Standards und erläutere anhand von Beispielen und Livedemos, wann welcher Standard für eine bestimmte Problemstellung geeignet ist. Also beispielsweise die Frage, bis zu welchem Punkt Case Management noch mit BPMN adressiert werden kann und ab wann CMMN die bessere Wahl ist. Vorsicht: Pragmatismus und Praxiserfahrung!
Bernd Rücker ist Mitgründer und Technology Evangelist bei Camunda. Vor Camunda BPM hat er aktiv an der Entwicklung der Open Source Workflow Engines JBoss jBPM 3 und Activiti mitgearbeitet. Er begleitet seit über zehn Jahren Kundenprojekte rund um BPM, Workflow Engines und Java Enterprise. „Entwicklerfreundliches BPM“ ist seine absolute Leidenschaft! Wenn er nicht im Kundeneinsatz ist, spricht er auf Konferenzen und publiziert Fachartikel und Bücher.
Each microservice is a small server application which has to be implemented (including authentication, authorization, billing etc.), operated and maintained. This adds a lot extra work and duplication inside the product. For organizations it is important to reduce this extra cost by providing a platform taking care of this generic functions. What are the requirements for a microservice platform, which functionalities should be provided and how could a solution look like. We will have a look into different technologies and talk about "opinionated platforms”.
Johannes Engelke is an Operations Architect of YaaS – a cloud ecosystem of business APIs and microservices. Having been working for about ten years within the area of system automation and provisioning, he has worked on both big monolithic JEE applications as well as modern microservice architectures.
Organizations across all industries and geographies are trying to determine how they can use technology to differentiate from the competition, disrupt new markets and thrive in the new digital world. This session will explore how organizations developing new innovative applications and services will need to think differently about the role of technology; the process of innovation and how to organize the people responsible for creating new applications and services. We'll look at some of the emerging technology, trends and ideas that are making the transformation to digital possible.
Rich is the Senior Director of Product Management in the Application Platforms Business Group at Red Hat. He has spent the last twenty years evangelizing, using and designing Enterprise Java Middleware; he previously worked for Forte Software and Sun Microsystems and as an independent software developer and consultant building large distributed software systems for the space, transport and energy sectors. He also serves on the Node.js Foundation Board of Directors.
In his spare time he enjoys running, cycling and anything that gets him outdoors. More information about Rich can be found on his blog, LinkedIn, and you can follow him on Twitter.
RESTful Web Services sind schon seit einiger Zeit in aller Munde und sehr beliebt. Viele der bekannten öffentlichen Web-APIs behaupten von sich, RESTful zu sein. Viele aktuelle APIs erfüllen ein wichtiges Element von REST allerdings nicht: Hypermedia as the Engine of Application State (HATEOAS). Diese Session gibt einen Überblick über das Thema und zeigt an vielen konkreten Beispielen, warum RESTful-Hypermedia-APIs sinnvoll und sehr nützlich sind. Dabei geht Kai Tödter sowohl auf verschiedene Repräsentationen wie z. B. HAL und Siren ein als auch auf deren Einbindung in existierende Infrastrukturen wie z. B. den Spring Stack. Auch für das Erstellen von API-Dokumentation gibt Kai praxisnahe Tipps. Ziel dieser Session ist, am Ende selbst beurteilen zu können, ob Hypermedia für das eigene REST-API Vorteile bringt.
Kai Tödter ist Principal Key Expert für Software-Architektur und -Technologien bei Siemens Building Technologies.Er hat zwanzig Jahre Java-Erfahrung und vertrat Siemens im Java Community Process (JCP) und in der Eclipse Foundation. Kai ist Committer bei einigen Open-Source-Projekten, seine aktuellen Themenschwerpunkte sind Technologien im Webumfeld, Microservices und Hypermedia-APIs.
DMN ist der brandneue Standard im Bereich der Geschäftsregeln und erfreut sich großer Aufmerksamkeit. Und mit der Camunda DMN Engine gibt es bereits heute eine leichtgewichtige Open-Source-Bibliothek, die über Java oder REST verwendet werden kann. Die Session zeigt, wie Entscheidungen in DMN so definiert werden können, dass sie technisch ausführbar und fachlich verständlich und anpassbar sind. Es wird live eine Entscheidungstabelle erstellt und anschließend automatisiert und im Betrieb verändert. Dabei wird nicht nur das Einbinden der Engine in wenigen Zeilen Java-Code gezeigt, sondern auch die Nutzung fortgeschrittener Features wie Testing, Versionierung und Historisierung.
Bernd Rücker ist Mitgründer und Technology Evangelist bei Camunda. Vor Camunda BPM hat er aktiv an der Entwicklung der Open Source Workflow Engines JBoss jBPM 3 und Activiti mitgearbeitet. Er begleitet seit über zehn Jahren Kundenprojekte rund um BPM, Workflow Engines und Java Enterprise. „Entwicklerfreundliches BPM“ ist seine absolute Leidenschaft! Wenn er nicht im Kundeneinsatz ist, spricht er auf Konferenzen und publiziert Fachartikel und Bücher.
The Scala language and its environment have been evolving quite significantly over the past few years. The adoption of the language is slowly growing and it can now even be found in use in rather conservative enterprise settings. At the same time there have been quite a few criticism of the language, its ecosystem and its practicability in larger teams. Many developers are still avoiding to have a more serious look at Scala and its ecosystem for a variety of reasons ranging from the fear of good tooling support to the apprehension of advanced category theory principles. This talk is a reflection upon six years of working professionally with Scala in projects of various size and shape. It aims at conveying some of the learnings and practical insights gained during that time as well as to debunk some of the many preconceptions that surround the language and its ecosystem.
Manuel Bernhardt is a passionate engineer, author, speaker, and consultant with a keen interest in the science of building and operating networked applications. Since 2008, he has guided and trained enterprise teams on the transition to distributed computing. In recent years, he has focused primarily on production systems that embrace the reactive application architecture, using Scala, Play Framework, and Akka to this end.
Microservice sind momentan in aller Munde. In Abwägungen zwischen klassischen Systemen und Microservice-Umgebungen wird den unabweisbaren Vorteilen von Microservices – kleine und verständliche Einheiten, kurze Entwicklungszyklen, flexible Technologieauswahl usw. oft die Komplexität eines verteilten Systems als Nachteil gegenübergestellt. Selten wird jedoch der Sicherheitsaspekt in solchen Abwägungen berücksichtigt, obwohl dieser eine beträchtliche Herausfoderung darstellt: Statt einer monolithischen Applikation müssen nun eine Vielzahl von Microservices, teilweise in verschiedenen Programmiersprachen/Laufzeitumgebungen implementiert sowie abgesichert werden. Die Authentifizierungs-/Autorisierungskonzepte und Mechanismen müssen über Applikationen und Netzwerkgrenzen hinweg funktionieren. Es sind potenziell deutlich mehr Schnittstellen über das Netzwerk exponiert und bieten somit auch eine entsprechend größere Angriffsfläche. Regeln für Firewalls und Intrusion-Detection-Systeme werden deutlich komplizierter. In diesem Vortrag werden die typischen Securityschwierigkeiten in Microservice-Umgebungen aufgezeigt und passende Lösungsansätze dargeboten, damit Ihnen zukünftig die Bewertung eines Micorservices-Ansatzes besser möglich ist.
Simon Kölsch arbeitet als Consultant bei innoQ mit dem Schwerpunkt Web-Architektur und Security. In seiner Freizeit druckt er Dinge aus Plastik.
Everybody knows the Proxy Pattern, but how can you use it effectively? What kinds of proxy patterns are available and how can you build patterns more effectively with these? Why is reflection needed for this? Most importantly, how can we only use the Core JDK? In this talk we will start from the basics and move straight on to Dynamic Proxies, Dynamic-/Static-ObjectAdapter, DynamicStaticProxies at runtime and more. Would it influence your team members to start using functional aspects in your Core Java Project? How we can combine this with other patterns? We will have a detailed view on the possibilities to reduce the amount of code with this Pattern, and we will see how we could make it more generic. One of the main points will be the combination of this Patterns with for example NestedBuilder-Pattern and more. After this you will have a better understanding of this Pattern group from the practical point of usage. All Pattern are build up from scratch, to give a feeling of the way to develop your own pattern based on this talk, or how you could change it for the needs of your project.
Sven Ruppert arbeitet als Fellow bei der Reply Group in München, spricht seit 1996 Java und arbeitet seitdem in nationalen und internationalen Projekten. In seiner Freizeit schreibt er als Gastautor für JAXenter (http://jaxenter.de/Sven-Ruppert-168244), http://www.rapidpm.org sowie im Java, Entwickler und Eclipse Magazin. Am liebsten hält er in Deutschland bei JUGs Vorträge (http://tinyurl.com/ntxz5r4).
A coderetreat is a hands-on coding lab focused on practicing the principles of test driven development, pair programming and clean code. The lab is programming language agnostic and is aimed at developers with different levels of experience.
*** Anmeldung / Registration
Bitte tragen Sie sich vor Ort am Speaker Check-In in die Lab-Teilnehmerliste ein; es sind nur begrenzte Plätze verfügbar.
Please sign up for this lab at the speaker ceck-in desk, only limited places are available.
Martin Klose ist Mitgründer der Software Craftsmanship Community Berlin und hat unzählige Workshops im Zeichen von Testing, Codequalität und Agilität durchgeführt. Sauberer und getesteter Code lässt ihn nachts besser schlafen. Martin ist einer der erfahrensten Coderetreat-Facilitatoren und gehört zum Organisationsteam des Global Day of Coderetreat, an dem mehrere Tausend Entwickler weltweit teilnehmen. Als klose brother hilft Martin, passende Lösungen in agilen Projekten zu finden. Er unterstützt Teams sowohl auf technischer als auch auf methodischer Ebene dabei, bessere Software besser zu liefern.
Agile Softwareentwicklungsteams haben den Anspruch, mit jedem Sprint hochqualitative Software zu liefern. Dazu setzen sie auf Praktiken wie TDD, Continuous Integration und "put everything under version control". Die Infrastruktur zum Betrieb dieser Software ist allerdings oft noch 'handgedrechselt', ungetestet und nicht reproduzierbar. Der Sprecher zeigt, wie man die obigen Praktiken auch auf die Entwicklung von Infrastruktur anwenden kann, indem man
Christoph Lukas berät und unterstützt seit 1998 unter dem Namen pingworks Unternehmen und Teams bei der Anwendung agiler Methoden und Prinzipien. Ein Schwerpunkt seiner Arbeit liegt dabei auf der Umsetzung von DevOps-Prinzipien und Implementierungen von Continuous Delivery.
Learn how GitHub's globally distributed teams use GitHub tooling to develop GitHub, collaborate with engineering, sales, marketing, services and legal and deploy more than 500 times a week. Experience ChatOps, a great way to reduce friction between development and operations and super efficient way to bring new engineers up to speed.
See life examples on how to use Hubot to retrieve log files, graph various metrics and deploy pull requests directly from Slack to Heroku. Get some ideas how to build such a ChatOps environment yourself.
Passionate about the power of software, how it is improving our lives, and transforming every single industry on the planet. At GitHub Marko is helping large businesses in Europe transform how they deliver better software, keep their developers happy, attract talent, and reuse code by adapting GitHub. Marko has over ten years of Experience in the IT industry, and lives in Vienna.
Johannes is an Open Source enthusiast highly interested in Application Lifecycle Management, continuous integration, distributed development and enterprise application integration.
Es gibt Momente, in denen will man einfach nur Code schreiben und in der Cloud ausführen, ohne sich lange mit der Infrastruktur aufzuhalten, ohne Infrastruktur dauerhaft zu betreiben/laufen zu lassen. Weil man es weder braucht noch will und weil es teuer ist. Ereignisgesteuerte Funktionen in der Cloud ausführen – darauf ist AWS Lambda spezialisiert. Entwickler schreiben einfach nur noch den Code, in JavaScript, Java oder Python, um den Rest kümmert sich Lambda. Abgerechnet wird in 100-ms-Blöcken, wer effizienten Code schreibt, zahlt entsprechend wenig. Das AWS-API steht zur Laufzeit zur Verfügung, eigene Bibliotheken können mitdeployt werden. Dank des API-Gateways erhalten Lambda-Services eine HTTP-Schnittstelle und können so auch mit dem REST der Welt kommunizieren. Wer also davon überzeugt ist, dass Microservices wirklich klein sein müssen, der muss sich mit Lambda beschäftigen. Viel kleiner geht nicht mehr. Und App-Server? Die waren gestern ...
Niko Köbler macht irgendwas mit Computern, viel im Web, meistens (funktional) auf der JVM. Er ist Co-Lead der JUG Darmstadt, Autor und Sprecher auf internationalen Konferenzen. Niko tweetet unter @dasniko.
Mit Lambda-Ausdrücken und Streams in Java 8 eröffnen sich neue Möglichkeiten. Einige davon waren vorher ein Einsatzgrund für Groovy. Wir beleuchten, wie sich die Features von Groovy und Java 8 gegenseitig ergänzen und wie Groovy weiterhin seine Aufgabe erfüllt, die Power von Java noch vielseitiger nutzbar zu machen.
Dierk König (JavaOne Rock Star) works as a fellow for Canoo Engineering AG, Basel, Switzerland. He is a committer to many open-source projects including OpenDolphin, Groovy, Frege, Grails, GPars and GroovyFX, and initiator of the open-source Canoo WebTest project. He is lead author of the “Groovy in Action” book, which is among the publisher’s best-selling titles of the decade. Twitter: @mittie
JavaScript wurde lange Zeit als Sprache unterschätzt und oftmals nur für Validierungen auf Frontend-Seite eingesetzt. In den letzten Jahren hat sich dieses Bild jedoch gravierend gewandelt – JavaScript wird nun auch vermehrt im Backend und sogar als Datenbankabfragesprache eingesetzt. Dies ermöglicht eine durchgängige Entwicklung von Webanwendungen mit JavaScript als einheitlicher Programmiersprache. Entsprechend hat sich ein Entwicklungsstack gebildet, der aus den JavaScript-Technologien MongoDB, Express, AngularJS und Node.js besteht – abgekürzt mit MEAN. In dieser Session werden diese vier Technologien kurz vorgestellt und die Entwicklung von Web-Apps auf deren Grundlage anhand eines Beispiels kurz erläutert. Abschließend erfolgt ein Vergleich mit den eher klassischen Technologiestacks, bei denen eine relationale Datenbank und Java im Backend zum Einsatz gelangen.
Prof. Dr. Norman Lahme-Hütig ist promovierter Wirtschaftsinformatiker und unterrichtet an der Fachhochschule Münster Studierende im Bereich Web und Mobile Engineering. Nebenberuflich arbeitet er weiterhin als Berater bei der viadee Unternehmensberatung, wo er bis zu seiner Berufung in Vollzeit angestellt war. Im Rahmen zahlreicher Projekteinsätze konnte er Erfahrungen in mittelständischen Unternehmen wie auch in Großkonzernen in verschiedenen Rollen sammeln (Entwickler, Softwarearchitekt, Teamleiter und technischer Projektleiter). Sein Wissen und seine Erfahrungen vermittelt er bereits seit 1998 in verschiedenen Seminarformen an interessierte Teilnehmer aus der Praxis. Zuletzt entwickelte er für einen großen Finanzdienstleister hybride mobile und stationäre bankfachliche Anwendungen mit JavaScript und Apache Cordova.
Kernelement des Fuhrparkmanagements von Sixt Mobility Consulting (SMC) ist die individuelle Beratung zu Prozess- und Qualitätsoptimierung im Flottenmanagement. Sowohl der Kunde als auch die eigenen Prozessberater erwarten, dass Änderungen einfach möglich sind und das „Zurücksetzen eines Prozesses“ jederzeit vorgenommen werden kann. Hat man sich hier mit der Implementierung in BPMN zu frühzeitig festgelegt, bedeutet jede Prozessänderung die Ausführung eines kompletten Code-Test-Deploy-Zyklusses. Eine Lösung wäre die Modellierung in CMMN, dafür muss die Organisation allerdings auch „gereift“ sein. Der im Projekt gewählte Ansatz zur Lösung dieses Dilemmas war das Aufbrechen in Subprozesse und die Schaffung manueller Eingriffsmöglichkeiten in die Prozessabfolge auf der Ebene der Usertasks. Der Vortrag zeigt außerdem die technische Umsetzung auf Camunda, das durch Integrationsmöglichkeiten, vorhandene APIs sowie das Zusammenspiel mit üblichem Testtooling überzeugt hat.
Wolfgang Strunk verantwortet die Softwareentwicklung für die Sixt Leasing AG. Der Schwerpunkt seiner Arbeit liegt in der Modellierung und Automatisierung der Kundenprozesse sowie in der Erneuerung der verwendeten Technologieplattform. Er hat mehr als zwanzig Jahre Erfahrung als SW-Entwickler, SW-Architekt und Berater in großen objektorientierten Softwareprojekten. In verschiedenen Unternehmen hat Herr Strunk agile Entwicklungsprozesse und notwendiges Tooling zur Unterstützung aller beteiligten Rollen eingeführt.
Mit Jenkins 2.0 ist endlich ein Nachfolger des weitverbreiteten Build-Servers verfügbar. Diese Version lockt u. a. mit dem Versprechen, besonders für den Einsatz in einem Continuous-Delivery-Umfeld geeignet zu sein. Ob dieses Versprechen tatsächlich eingehalten werden kann und welche anderen Dinge bei einem Umstieg zu beachten sind, werden wir im Detail in dieser Session betrachten. Auch wird das Thema Stabilität sowie Unterstützung von Docker-Containern eine zentrale Rolle spielen.
Dr. Halil-Cem Gürsoy ist Principal Software Architect bei der adesso AG (http://www.adesso.de) in Dortmund. Sein Fokus liegt auf verteilten Java-Applikationen, wobei er zugeben muss, im letzten Jahr mehr Zeilen produktiven Infrastrukturcode in Python, Ruby und Golang implementiert zu haben. Zudem liegt sein Schwerpunkt bei den Herausforderungen der Persistenz in solchen verteilten Applikationen.
As is often the case with software development, we try to plan ahead yet we frequently fail. Here at JFrog, when we envisioned Bintray as a high-loaded distribution service, we planned for scale. And yet, when it hit us, we still had to adopt. By attending this session you will time travel through two years of agile architecture – we’ll explore and share with you what components we took, what decisions we made, what stayed, what changed, and why. Through our successes, failures, and corrections we can share our lessons learnt to benefit you on current and future endeavors.
Yoav Landman is the CTO of JFrog, the Artifactory Binary Repository creators, JavaOne 2011 and 2013 Duke Choice Awards winner; Yoav laid the foundation to JFrog’s flagship product in 2006 when he founded Artifactory as an open source project. In 2008 he co-founded JFrog where he leads the future of products like Artifactory and, more recently, Bintray. Prior to starting up JFrog, Yoav was a software architect and consultant in the field of configuration management and server-side JVM applications. Yoav blogs at http://www.jfrog.com/blog/ and http://java.net.
JavaFX ist eine moderne UI-Technologie zur Entwicklung plattformübergreifender Desktopanwendungen und mobilen Apps. Dennoch fehlt bislang die Unterstützung von Web, die die Technologie zu einem bisher nicht dagewesenen, vollständigen Cross-Plattform-Ansatz machen würde. Die hier vorgestellte Technologie mit dem Namen jpro ermöglicht es, ohne nötiges Java-Plug-in JavaFX-Anwendungen im Browser auszuführen. Dazu führt jpro JavaFX auf dem Server aus und bildet den Scene Graph direkt im Browser mittels HTML5 ab.
In dieser Session werden beeindruckende JavaFX-Demos wie die Desktopapplikation “SceneBuilder” sowie eine echte DJ-Software im Browser gezeigt. Man lernt, wie einfach es ist, eine bestehende JavaFX-Anwendung unter Verwendung von Java 8 und Multi-Threading per jpro-Gradle-Task als HTML5-Web-App in den Browser zu deployen.
Matthias Hänel, CEO at UltraMixer Digital Audio Solutions, member of the board at jpro technologies AG Matthias Hänel has been writing software programs since he was twelve years old. After his studies at University of Applied Sciences in Görlitz and Northern Arizona University he started working at Baumer Optronic in the field of firmware and APIs for industrial digital cameras. In 2006 he started UltraMixer Digital Audio Solutions with his partner Tobias Bley, where they build up deep know how for Java performance programming and Java interfacing for native libraries. Since early 2016 he is part of the jpro team, which aims to bring JavaFX into the web.
Hans-Henry with his outstanding track record in providing top notch technologies he is visionary with the capacity to foresee the deployment of technologies in where certain markets are going. Typically Hans-Henry is recognized as one of the most important software developers the broadcast industry knows today. As being his specialty most successful news systems are bearing his signature! To mention; Newswire2000; market leading OpenMedia and M-Power/NC-Power which runs within the entire RTL Group. Companies like ANNOVA, Norcom Technologies and Step2E Systems are still running on the concepts. He saw his challenge to synchronize broadcast with the web, mobile and social media applications. As a seasoned computer scientist he took the initiative to build his own Domain Specific Language (DSL).
His lifetime experience of being an entrepreneur and an innovative software strategist give his presence in Sandec GmbH he co-founded in June 2014 a meaningful gain to the world of software writers developing basically their (scalable) frontend and backend applications. Since early 2016 he is founder and CEO of the jpro technologies AG, which aims to bring JavaFX into the web.
Dieser Vortrag stellt ausgewählte Features des Spring-Komponentenmodells vor – mit einem Fokus auf das aktuelle Spring Framework 4.3. Die Themen reichen vom umfassenden Support für Java 8 bis hin zum verfeinerten Einsatz von Annotations in vielen Bereichen, illustriert mit Codebeispielen und Erläuterungen zur Designphilosophie in Spring.
Jürgen Höller ist Mitbegründer des Open-Source-Projekts Spring Framework und begleitet das Kernprojekt bereits seit 2003 als Projektleiter und Releasemanager. Er ist ein erfahrener Softwarearchitekt und Berater mit besonderer Expertise in Codeorganisation, Transaktionsmanagement und Messaging in Unternehmensanwendungen.
Here we are: Microservices, Container, Cloud ... and lots of data to deal with. Usually that’s where the real trouble starts. Many developers still base their designs on the concept of perfectly consistent ACID transactions, no anomalies or other inconsistencies around. But reality is different: Perfect consistency does not exist and many real-world use cases require much weaker consistency models in order to satisfy the scalability or robustness requirements. So, what are our options and what is the price we need to pay? Do we need to accept potentially losing data in order to get higher availability? How much can I scale without compromising consistency? In this session we will answer this and many more questions. We will also discuss how to pick the right data store (not only) with respect to consistency. Finally, we will have a peek into latest research pushing the borders of the current state-of-art.
Uwe Friedrichsen travels the IT world for many years. As a fellow of codecentric AG he is always in search of innovative ideas and concepts. His current focus areas are resilience, scalability and the IT of (the day after) tomorrow. Often, you can find him on conferences sharing his ideas, or as author of articles, blog posts, tweets and more.
Seit Ende 2011 steht WebSocket als offizieller Standard (RFC 6455) bereit. Doch wie sieht es mit dem Einsatz von WebSocket in der Praxis wirklich aus? Funktioniert WebSocket auch im mobilen Umfeld? Was hat sich seit dem Fertigstellen der Spezifikation getan? Wie sehen die Neuerungen aus? Was bedeutet HTTP/2 für WebSocket? Der Vortrag gibt einen Überblick zum aktuellen Stand des Protokolls, sowie dessen Erweiterungen und stellt verschiedene Java-Client- und Server-Frameworks anhand von praktischen Beispielen vor.
Matthias Weßendorf arbeitet am AeroGear-Projekt, wo er sich mit den verschiedenen Facetten des Themas „Mobile und Enterprise“ auseinandersetzt.
Im September 2016 begann die Rampdown-Phase mit Fehlerbereinigung und Vorarbeiten, um den finalen Release Candidate für JDK 9 bereitzustellen. Der JDK-9-Schwerpunkt liegt bei der neuen Plattformmodularisierung mit dem Projekt Jigsaw. Über die JDK-Enhancement-Vorschläge JEP 200 (Modulares JDK), JEP 201 (Modularer Sourcecode) und JEP 220 (Modulare Laufzeitimages) gelangen die technischen Vorschläge ins JDK 9. Der JSR 376 (Java-Platform-Module-System) schafft die Grundlage für die Referenzimplementierung vom OpenJDK-Projekt Jigsaw. Diese Veränderungen lassen es zu, mit dem JDK 9 die gewünschte technische Paketierung von ausgewählter Java-Funktionalität selbst zu bestimmen. Das Projekt Jigsaw hat die primäre Aufgabe, das Design und die Implementierung eines Standardmodulsystems für die Java-Plattform und für das JDK 9 bereitzustellen. Dabei soll die durchgängige, dynamische und einfache Anpassbarkeit der Java-SE-Plattform und dem JDK umgesetzt, sowie die Verbesserung von Sicherheit und Wartbarkeit von Java-SE-Plattform-Implementierungen (JDK) verwirklicht werden.
Wolfgang Weigend arbeitet als Sen. Leitender Systemberater bei der Oracle Deutschland B.V. & Co. KG. Er beschäftigt sich mit Java-Technologie und Architektur für unternehmensweite Anwendungsentwicklung.
Der Vortrag berichtet von unseren Erfahrungen bei der Prozessautomatisierung mit BPMN und der Camunda Engine. Die Möglichkeit zur Integration mit bestehenden Legacy-Systemen zur Bestands-, Kunden- sowie Datenverwaltung war genauso essenzielle Voraussetzung, wie die Option, ein bereits etabliertes Postkorbsystem zu nutzen. Die Unittestbarkeit und Unterstützung von CI-Prozessen ermöglicht es mittlerweile, Prozesse schrittweise als BPMN zu realisieren und damit Geschäftsvorfälle nach und nach immer besser systemgesteuert zu unterstützen.
David Ibl ist Softwareentwickler und Architekt bei LV 1871 sowie zuständig für die Planung und Umsetzung der Automatisierungsstrategie. Außerdem ist er mitverantwortlich für das Konzept Arbeitsplatz der Zukunft. Seit 2014 hält er Coding-Dojos und Katas mit Themen: Clean Code, Java, Camunda, Angular 2, TypeScript und LESS.
Ringo Roidl ist Anwendungsentwickler bei der LV 1871 sowie BPMN-Enthusiast und hat langjährige Erfahrung mit DMS und Workflowsystemen.
Vielen Firmen und Mitarbeitern fehlt Fokus. Es wird an zu vielen Dingen gearbeitet und zu viele Meetings durchgeführt. Jedes Start-up ist fokusiert. Mit Wachstum und immer neuen Ideen verliert eine Firma ihren Fokus, bis sie ihr ganzes Potenzial verspielt. Dabei ist Fokus der größte Hebel zum Erfolg. Der Vortrag zeigt, wie man Fokus zurückgewinnt, die Firma neu ausrichtet, welchen massiven Effekt Fokus hat und wie man mit Fokus mehr persönlichen Erfolg hat.
Stephan Schmidt arbeitet mit übercto als Berater und Interim CTO für Start-ups. Er hilft, Firmen auf die nächste Stufe zu heben, und ihre technischen Herausforderungen in den Bereichen Sicherheit, Skalierung und Teamaufbau zu meistern. Zuvor war er in technischen Managementrollen bei ImmobilienScout24 und als CTO bei brands4friends/eBay Inc. tätig.
Containervirtualisierung revolutioniert. Continuous-Delivery-Implementierungen: Neue Anwendungsinstanzen stehen in Sekunden zur Verfügung, Anwendungsteile können sehr einfach voneinander separiert werden. Die deutlich engere Verzahnung von Software und Laufzeitumgebung bringt allerdings auch neue Herausforderungen mit. Im Vortrag zeigen die Sprecher
Christoph Lukas berät und unterstützt seit 1998 unter dem Namen pingworks Unternehmen und Teams bei der Anwendung agiler Methoden und Prinzipien. Ein Schwerpunkt seiner Arbeit liegt dabei auf der Umsetzung von DevOps-Prinzipien und Implementierungen von Continuous Delivery.
*** Wiederholung aufgrund großer Nachfrage der Session vom 08.11.2016***
Microservices sollen keine gemeinsame Datenbank haben. Warum eigentlich? Und was ist mit der dabei entstehenden Redundanz? Viele Architekturen kranken an zu großen und inflexiblen Datentöpfen. Dieser Vortrag zeigt die Gründe für die Probleme: die Missachtung von Bounded Context und eine viel zu enge Kopplung der Datenmodelle. Ansätze wie CQRS (Command Query Responsibility Segregation) und Event Sourcing zeigen, wie solche Probleme gelöst werden können – ohne dass dabei zu große Redundanzen bei den Daten entstehen.
Eberhard Wolff ist Fellow bei innoQ und arbeitet seit mehr als fünfzehn Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u. a. zu Continuous Delivery und Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Continuous Delivery, DevOps, Microservices und NoSQL.
Eine Stunde live in der IDE mit Neuem und Altbekanntem, Nützlichem und Überraschendem für Neulinge und alte Hasen. Eine Session mit Unterhaltungswert.
Arno Haase ist freiberuflicher Softwareentwickler. Er programmiert Java aus Leidenschaft, arbeitet aber auch als Architekt, Coach und Berater. Seine Schwerpunkte sind modellgetriebene Softwareentwicklung, Persistenzlösungen mit oder ohne relationale Datenbank, und nebenläufige und verteilte Systeme. Arno spricht regelmäßig auf Konferenzen und ist Autor von Fachartikeln und Büchern. Er lebt mit seiner Frau und seinen drei Kindern in Braunschweig.
During this session we will build a full-stack cloud based IoT system from scratch. We gather data from a flying drone, publish the data to the IoT system, deploy a beautiful IoT dashboard web app and send two-way commands back and forth between the cloud and the drone inside the conference room. All of this is done step-by-step from Java developer’s point of view to really demystify how to build IoT systems from scratch. And because learning can also be fun, we’ll be flying a drone as the IoT device and spice it all up with some social media magic so the audience can join hands-on. Technologies and tools used: Mosquitto MQTT broker, Eclipse Paho MQTT messaging, Vaadin Framework web apps and Parrot AR.Drone 2.0.
Ville Ingman is a Java EE guy since year 2000. Joined the Vaadin team over ten years ago and has concentrated since on Java based web application development. Currently working as a developer advocate for the Vaadin framework.
Den Robotern gehört eindeutig die Zukunft. Bei der W-JAX übernehmen die Maschinen auch in der Kampfarena das Kommando. Sei beim großen Roboterfight dabei: Bau mit deinem Team (bestehend aus 2 bis 8 Personen) die ultimative LEGO-MINDSTORM-EV3-Kampfmaschine, programmiere sie in Java und schick sie ins Duell der Maschinen. Wer seinen Konkurrenten als Erstes aus dem Ring befördert, ist eine Runde weiter. Vor dem Wettbewerb gibt es eine rund 45-minütige Einführung in LEGO MINDSTORM EV3 und dessen Programmierung unter Java. Der Wettbewerb eignet sich also auch bestens für Einsteiger. Auf alle Fälle garantieren wir allen Teilnehmern jede Menge Spaß!
Bernhard Löwenstein ist Inhaber von Lion Enterprises (http://lion.enterprises) und Gründer und Obmann des Instituts zur Förderung des IT-Nachwuchses (http://ifit.education). Sein gemeinnütziger Verein hat sich in den letzten Jahren mit mehr als 500 durchgeführten Technologie-Workshops zur größten aktiven MINT-Förderorganisation in Österreich entwickelt.
Java Mission Control basiert auf dem Eclipse RCP und besteht aus zwei Komponenten, der Management Console und dem Java Flight Recorder. Tatsächlich ist dieses Werkzeug mit einem echten Flugdatenschreiber vergleichbar, wie man ihn im Flugzeug findet. Die auf ihm gespeicherten Informationen werden wichtig, wenn etwas schief gelaufen ist, und so ist es auch beim Java Flight Recorder: Hier finden sich kontinuierlich aufgezeichnete Informationen darüber, was auf der Java Virtual Machine passiert ist, wenn ein Fehler auftrat. Das Werkzeug ist im Oracle JDK enthalten und kann mit beliebigen Java-Anwendungen und Applikationsservern, von der Entwicklung bis zum produktiven Betrieb verwendet werden. Die einheitliche Datenbasis vom Java Flight Recorder ermöglicht Administratoren und Entwicklern, gemeinsam an Problemlösungen zu arbeiten und Konflikte besser und schneller bewältigen zu können.
Wolfgang Weigend arbeitet als Sen. Leitender Systemberater bei der Oracle Deutschland B.V. & Co. KG. Er beschäftigt sich mit Java-Technologie und Architektur für unternehmensweite Anwendungsentwicklung.
Fast jedes Softwaresystem wird mit guten Vorsätzen, aber unter schwierigen Bedingungen entwickelt. Deadlines, unterschiedliche Qualifikationen und Missverständnisse im Entwicklungsteam führen dazu, dass die Architektur des Systems erodiert und Schritt für Schritt technische Schulden aufgebaut werden. In diesem Vortrag zeige ich Ihnen, wie Sie Ihre Architektur im Team analysieren, diskutieren und schnell Refactorings entwickeln können. Das gemeinsame Verständnis über die Architektur wird bei der Mobarchitekturverbesserung geschärft und jeder im Entwicklungsteam versteht, wie der Sourcecode organisiert und weiterentwickelt werden muss, um technische Schulden zu verhindern. Meine Empfehlungen basieren auf über hundert Analysen in Java, C#, C++, PHP und ABAP.
Dr. Carola Lilienthal ist Seniorsoftwarearchitektin bei der Workplace Solutions GmbH und Mitglied der Geschäftsleitung. Sie hat an der Universität Hamburg studiert und dort zum Thema „Komplexität von Softwarearchitekturen“ promoviert. Seit 2003 analysiert sie im Auftrag ihrer Kunden in ganz Deutschland regelmäßig die Architektur von Softwaresystemen und fasst das Ergebnis in Qualitätsgutachten sowie mit priorisierten Refactoring-Maßnahmen zusammen. Außerdem leitet sie seit 2000 Softwareprojekte von unterschiedlicher Größe im Banken-/Versicherungs- und Logistikbereich und berät das Management kleiner und mittelständischer Unternehmen bei der Entwicklung einer modernen IT-Strategie.
PAAS-Lösungen wie Cloud Foundry oder OpenShift bringen viele Vorteile für den Betrieb und die Entwicklung einer Anwendung mit sich. Aber kann tatsächlich eine bestehende Anwendung ohne Änderung auf einer PAAS-Umgebung betrieben werden? In der Tat ist das häufig so, doch die Frage sollte eine ganz andere sein: Ergibt es Sinn, eine Anwendung unverändert auf einer Plattform zu betreiben, bei der ganz andere Bedingungen herrschen und andere Annahmen getroffen werden, wie z. B. die Art der Skalierung, Netzwerklatenzzeiten, Restart-Verhalten usw. Was sollte ich also beachten, wenn ich meine Anwendung in eine PAAS-Umgebung bringe? Welche Architekturpatterns eignen sich für PAAS? Wie könnte ein Migrationsplan aussehen?
Mike Wiesner ist als Senior Manager für MHP - A Porsche Company tätig. Nach diversen Technologiefirmen wie SpringSource, Pivotal und Mimacom nutzt er jetzt seine Erfahrung aus den Bereichen Integrationslösungen, Cloud/PAAS, Big Data und Application Security als Berater für Fachabteilungen, Architekt und Coach für Entwicklerteams. Technologische Schwerpunkte sind unter anderem in den Bereichen Spring, Cloud Foundry, Kafka und Hadoop, über die er auf nationalen und internationalen Konferenzen referiert.
Das im Frühjahr 2017 erscheinende Spring Framework 5.0 setzt auf ausgewählte Schwerpunktthemen: insbesondere reaktive Webapplikationen auf Basis von Reactive Streams, mit klassischem Server oder auch mit Embedded Runtime sowie umfassende Unterstützung für JDK 9. Dieser Vortrag stellt den aktuellen Stand der Entwicklung gegen Ende der Milestone-Phase vor und gibt einen konkreten Ausblick auf die weitere Roadmap.
Jürgen Höller ist Mitbegründer des Open-Source-Projekts Spring Framework und begleitet das Kernprojekt bereits seit 2003 als Projektleiter und Releasemanager. Er ist ein erfahrener Softwarearchitekt und Berater mit besonderer Expertise in Codeorganisation, Transaktionsmanagement und Messaging in Unternehmensanwendungen.
Microservices ermöglichen es, dass Teams unabhängig voneinander arbeiten und neue Features ohne großen Aufwand in Produktion gebracht werden können. Und natürlich können Microservices einzeln skaliert werden, sodass bei hoher Last oft nur ein Service in mehr Instanzen laufen muss. Dazu muss die Aufteilung in Microservices aber stimmen – und das ist gar nicht so einfach. Dieser Vortrag zeigt, wie Microservices geschnitten werden und so die verschiedenen fachlichen, organisatorischen und technischen Rahmenbedingungen ideal unterstützen können.
Eberhard Wolff ist Fellow bei innoQ und arbeitet seit mehr als fünfzehn Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u. a. zu Continuous Delivery und Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Continuous Delivery, DevOps, Microservices und NoSQL.
In this talk/live-coding session we will have a practical look at how a reactive web application is different from a “normal” one and how resilience, elasticity and responsiveness translate into code. We will start by having a quick theoretical introduction to asynchronous computation and then build, run, deploy and load-test a small reactive web application built with the Play Framework, exploring a few key concepts such as Futures, Actors and Circuit Breakers along the way.
Manuel Bernhardt is a passionate engineer, author, speaker, and consultant with a keen interest in the science of building and operating networked applications. Since 2008, he has guided and trained enterprise teams on the transition to distributed computing. In recent years, he has focused primarily on production systems that embrace the reactive application architecture, using Scala, Play Framework, and Akka to this end.
Scripting languages are commonly used to write automation code. Python and Ruby seem to be the default choices for the task. They are flexible and easy to work with. But often a problem arises as the code base grows: refactoring becomes harder and harder without the compiler support. As a consequence it becomes almost impossible to keeping the code clean and readable. Change the people working on the project and you easily end up in ... well ... hell. Is there another way? Can you gain the benefits of statically-typed languages without losing the development speed? To answer this question I’ll present our journey of rewriting existing Ruby deployment tooling from scratch in Scala. This will include: What were the problems with existing tooling? Why did we decide to have a full rewrite? All the design-decisions we made and why. What were the problems and what we learned along the way? The goal of the presentation is not to convince you to rewrite everything in Scala, nor to preach the benefits of static languages. It is simply to give you another perspective on the topic of tooling. Who knows, maybe you’ll find some parts worth adopting to your situation.
Ivan Kusalic is a Sr Software Engineer working for HERE in Berlin. He organizes Berlin’s Software Craftsmanship meetup, SoCraTes - International Software Craftsmanship and Testing Conference, and Global Day of Coderetreat. He has also organized various meetups and Coderetreats. Ivan speaks regularly at meetups and conferences. He is passionate about well-crafted software, particularly in functional and strongly-typed direction.
In Zeiten von Docker, Big Data und Microservices wird es immer wichtiger, seine verteilte Anwendung sinnvoll auf sein Cluster zu verteilen und dabei trotzdem noch den Überblick zu behalten. Daher werden Plattformprodukte bzw. Cluster-Management-Systeme wie Kubernetes oder DC/OS immer wichtiger und halten in immer mehr Bereiche Einzug. In dieser Session werden wir einen Java-basierten Service implementieren und ihn mit einer Handvoll umgebenden Services zunächst mit Docker-Compose starten. Danach werden wir sehen, wie einfach es ist, die gleiche verteilte Anwendung in DC/OS auf dem eigenen Cluster zu deployen und zu monitoren. Danach werden wir einzelne Services unabhängig von der restlichen Anwendung skalieren und im laufenden Betrieb aktualisieren. Und das Coolste dabei: Wir können uns alle Vorgänge visualisieren lassen.
Johannes Unterstein organisiert die Java User Group in Kassel, lehrt an der DHBW Stuttgart und arbeitet als Distributed Applications Engineer bei Mesosphere. Als Teil des Marathonteams arbeitet er hart daran mit, Marathon und DC/OS ein Google-Like-Scaling für jedermann zu ermöglichen. Trotz der großen Faszination von Containern und deren Orchestrierung kann er es sich nicht verkneifen, oft über Elasticsearch und Neo4j zu sprechen.
Kaum eine Sprache hat sich in den vergangenen Jahren so stark gewandelt wie JavaScript. Während die Sprache früher als Spielerei abgetan wurde, hat sich besonders in den letzten Sprachversionen gezeigt, dass man auch in JavaScript professionellen und hochwertigen Code schreiben kann. Dieser Talk zeigt anhand konkreter Beispiele, in welchen Bereichen es deutliche Verbesserungen gegeben hat und auf welche Weise man heute die typischen JavaScript-Fallstricke vermeiden kann. Dabei stehen besonders die neuesten Sprachversionen ECMAScript 2015 und 2016 im Fokus, die sich mithilfe von Transpilern auch problemlos in älteren Browsern nutzen lassen.
Christian Kaltepoth arbeitet als Senior Developer bei ingenit GmbH & Co. KG in Dortmund. Sein Schwerpunkt ist die Entwicklung von webbasierten Unternehmensanwendungen auf Basis von Java-EE-Technologien. Darüber hinaus ist er in mehreren Open-Source-Projekten wie Apache DeltaSpike, Rewrite, PrettyFaces und Togglz aktiv. Er ist Mitglied der JSR 371 Expert Group und ein regelmäßiger Sprecher auf Konferenzen.
Das Stream API in Java 8 hält allerlei Überraschungen bereit, wenn man genauer hinschaut. Nach dem Motto „Wussten Sie schon ... ?“ laden wir zur Entdeckungsreise ein und erläutern interessantes Verhalten, verblüffende Features, verbreitete Missverständnisse und einiges mehr im Zusammenhang mit Lambdas, Streams und Co. Eine Session zum Mitdenken und Staunen.
Klaus Kreft arbeitet seit mehr als zwanzig Jahren als Consultant im Bereich der Softwareentwicklung mit Java. Sein Interesse gilt hauptsächlich komplexen Multi-Thread-Systemen mit hohen Performanceanforderungen. Er ist Sprecher auf Fachkonferenzen (JAX, OOP, Ch/Open-Workshop-Tage und diverse JUGs). Gemeinsam mit Angelika Langer ist er Autor zahlreicher Veröffentlichungen, darunter eine Artikelserie im Java Magazin.
Angelika Langer arbeitet als Trainer und Consultant mit eigenem Schulungsprogramm im Bereich der Softwareentwicklung mit C++ und Java. Sie ist Sprecher auf zahlreichen Konferenzen, darunter JavaOne, OOPSLA, JAX und viele andere (siehe lanyrd.com/profile/angelikalanger/). Sie ist u. a. Autor der Onlineressourcen „Java Generics FAQ“ und „Lambda Tutorial & Reference“ unter www.AngelikaLanger.com. Gemeinsam mit Klaus Kreft ist sie Autor zahlreicher Veröffentlichungen, darunter eine Artikelserie im Java Magazin.
„Hilfe, wir brauchen eine App!“ Erschreckend, aber wahr: Nicht selten starten Unternehmen genau so ihre mobilen Projekte. Dabei geht es doch weniger um einzelne Apps, als vielmehr darum, mit einem sinnvollen „Mobile Engagement“ die bestehende Enterprise-(IT-)Strategie gewinnbringend zu ergänzen. Mobile Mehrwerte schaffen ist der Schlüssel zum Erfolg. Doch wie findet man diese? Und hat man sie einmal gefunden, ist dann das Backend überhaupt in der Lage, den neuen Channel „Mobile“ sinnvoll zu bedienen? Keine Frage, eine Mobile-Enterprise-Strategie muss her! Die Session zeigt die typischen Stolpersteine vieler Unternehmern auf dem Weg in die Wunderwelt „Mobile“ und gibt praxisnahe Tipps an die Hand, wie man diese mit ein wenig Planung umgehen kann. Am Ende steht – statt einer Menge Frust – eine gelungenes Mobile Engagement mit Anbindung an das Unternehmens-Backend.
Lars Röwekamp, Gründer des IT-Beratungs- und Entwicklungsunternehmens open knowledge GmbH, beschäftigt sich im Rahmen seiner Tätigkeit als „CIO New Technologies“ mit der eingehenden Analyse und Bewertung neuer Software- und Technologietrends. Ein besonderer Schwerpunkt seiner Arbeit liegt derzeit in den Bereichen Enterprise und Mobile Computing, wobei neben Design- und Architekturfragen insbesondere die Real-Life-Aspekte im Fokus seiner Betrachtung stehen. Lars Röwekamp, Autor mehrerer Fachartikel und -bücher, beschäftigt sich seit der Geburtsstunde von Java mit dieser Programmiersprache, wobei er einen Großteil seiner praktischen Erfahrungen im Rahmen großer internationaler Projekte sammeln konnte.
Softwaresysteme wachsen historisch. Das gilt nicht als Idealzustand, aber so ist die Realität nun mal. Für Systemlandschaften gilt es erst recht. IT-Trendwellen schwappen über Unternehmen und hinterlassen ihre Spuren in den Anwendungen, geglückte Würfe ebenso wie gescheiterte Initiativen. (De-)Zentralisierung, Objektorientierung, SOA, Standardisierung, Cloud ... Manche Unternehmen haben Vermächtnisse (engl. Legacy) aus drei Jahrzehnten im Betrieb. In vielen Fällen wird das Wissen darum nur mündlich weitergegeben. Die Konsequenz: langwierige und lückenhafte Einarbeitung, Unsicherheiten bei Änderungen und Neuentwicklungen. Im Extremfall führt dies zu geringem Vertrauen bei Entscheidern. Dabei ist der Aufwand, das Wesentliche fest und aktuell zu halten, gar nicht groß. In dieser Session zeige ich, wie ihr bestehende Systemlandschaften kartografiert und es allen Beteiligten leichter macht, sich zurechtzufinden und informierte Entscheidungen zu treffen. Mit Anlehnung an Methoden wie arc42 (das initial nur auf Einzelsysteme passt), Beispielen aus echten Ausgrabungen, aber ohne C14.
Von der Bayer AG über IBM und oose zu embarc. Stefan Zörner blickt auf zwanzig Jahre IT-Erfahrung zurück und stets gespannt nach vorn. Er unterstützt in Architektur- und Umsetzungsfragen mit dem Ziel, gute Architekturansätze wirksam in der Implementierung zu verankern. Sein Wissen und seine Erfahrung teilt er regelmäßig in Vorträgen, Artikeln und Workshops. Stefan ist aktives Board-Mitglied im iSAQB und Autor des Buchs „Softwarearchitekturen dokumentieren und kommunizieren“ (Carl Hanser Verlag, 2. Auflage 2015).
JavaScript ist eine dynamisch typisierte Programmiersprache. Obwohl diese Eigenschaft manchmal sehr nützlich sein kann, bringt das fehlende Typensystem auch deutliche Nachteile mit sich. Während der Compiler bei statisch typisierten Sprachen bereits sehr früh auf Fehler hinweisen kann, so fallen bei JavaScript Probleme oft erst zur Laufzeit auf. Das macht Refactorings fehleranfällig, und die Arbeit an großen Codebasen wird enorm erschwert. TypeScript ergänzt JavaScript um ein mächtiges Typensystem, welches die Vorteile einer statisch typisierten Sprache auch in die JavaScript-Welt bringt. Darüber hinaus bietet TypeScript sogar eine große Menge von modernen JavaScript-Sprachfeatures aus dem aktuellen ECMAScript-Standard. Diese Session stellt TypeScript anhand konkreter Beispiele vor und zeigt, wie einfach sich TypeScript in klassischen Java-Webanwendungen nutzen lässt.
Christian Kaltepoth arbeitet als Senior Developer bei ingenit GmbH & Co. KG in Dortmund. Sein Schwerpunkt ist die Entwicklung von webbasierten Unternehmensanwendungen auf Basis von Java-EE-Technologien. Darüber hinaus ist er in mehreren Open-Source-Projekten wie Apache DeltaSpike, Rewrite, PrettyFaces und Togglz aktiv. Er ist Mitglied der JSR 371 Expert Group und ein regelmäßiger Sprecher auf Konferenzen.
Remember the times when one server was enough? And a guy named “sysadmin” was babysitting it along with his other duties of installing MS Office for everybody? For better or for worse, those times are long gone. Today, companies manage tens of thousands of servers and perform thousands of production changes per day. In this talk we will look at the resources, techniques and tools needed for managing DevOps at Scale and we will discuss the challenges that companies encounter when they hit it.
Baruch Sadogursky (a.k.a JBaruch) is the Developer Advocate of JFrog, the home of Artifactory – the Universal Artifact Repository, and Bintray – the Universal Distribution Hub. For a living he hangs out with the JFrog tech leaders, writes some code around Artifactory and Bintray, and then speaks and blogs about all that. He does it repeatedly for the last dozen of years and enjoys every moment of it. Baruch is @jbaruch on twitter and mostly blogs on http://www.jfrog.com/blog/ and http://blog.bintray.com . He is a professional conferences speaker on DevOps, Java and Groovy topics, including JavaOne (with Rock Star award), JAX and W-JAX, Devoxx, DevOps Days, OSCON, QCON and many others. His full speaker history is available on Lanyrd: http://lanyrd.com/profile/jbaruch/sessions/.
Man muss kein Prophet sein, um den weiteren Einzug von maschinellem Lernen (ML) in unseren Alltag vorherzusagen. Der Erfolg von angewandtem ML hängt davon ab, dass nicht nur Data Scientists sich durch Daten wühlen und einen Wert darin entdecken, sondern dass diese Erkenntnisse auch „auf die Straße“ gebracht werden. Hier sind Java-Entwickler und DevOps-Enthusiasten gefragt. Im Vortrag führe ich zunächst die wichtigsten Kennzahlen und „Best Practices“ für das Lernen von Modellen aus Daten ein. Dann schauen wir uns ausgewählte Beispiele an, unter anderem mit DL4J und Weka. Damit wird einerseits die Nutzung dieser beiden Bibliotheken demonstriert. Darauf aufbauend präsentiere ich jedoch auch Designempfehlungen für den Entwurf von ML-Systemen, indem die wichtigsten Abstraktionen identifiziert werden. Abschließend liste ich aktuelle Herausforderungen für ein angewandtes Maschinelles Lernen.
Lars Schwabe hat an der TU Berlin in Informatik promoviert. Nach der akademischen Laufbahn und Stationen in der Energiewirtschaft und Onlinemarketing leitet er derzeit das Data Insight Lab im Technology Innovation Center der Lufthansa Industry Solutions, wo Data Scientists und Machine-Learning-Experten für Industrieunternehmen neue datengetriebene Lösungen entwickeln.
Das Onlinebezahlsystem paydirekt der deutschen Banken und Sparkassen setzt auf eine Microservices-Architektur. Im Talk wird gezeigt, wie durch Microservices Geschäftsnutzen generiert wird, wie die IT-Architektur auf die teilnehmenden Banken und Sparkassen ausstrahlt und wie technische Aspekte wie Event-Sourcing und Fail-Fast als fachliche Anforderungen formuliert werden.
Jochen Christ ist Technical Lead bei der Senacor Technologies AG in Nürnberg. Als Spezialist für moderne Java-Technologien arbeitet er gerne an eleganten Lösungen mit innovativen Architekturkonzepten. Ihm ist dabei immer wichtig, dass er mehr Zeit in der IDE als mit PowerPoint verbringt.
Mit seinen sieben Jahren zählt Redis zu den beliebteste Open Source Key Value Stores. Spring Data Redis Lead Christoph Strobl führt Sie durch High Availability und Cluster Set-ups. Grundlegende Redis Commands, Object Hash Mapping und Secondary-Index-Strukturen begleiten uns auf dem Weg, mit Spring das Beste für Ihre Applikation herauszuholen.
Christoph Strobl ist Principal Software Engineer bei Pivotal Software, Inc. Als Teil des Spring-Data-Teams entwickelt und betreut er unter anderem Abstraktionen für MongoDB, Redis und Solr. Er hat eine Vorliebe für Design und Testen sowie besonderes Interesse an NoSQL, Suche und Webentwicklung.
Automated testing of mobile applications can shorten your delivery cycle, improve your application’s reliability, and save you time. Join this talk to learn how to deliver these benefits to your team. You’ll be introduced to the Appium testing framework, learn how to automate a use case, and run your tests on real devices in the cloud. Finally, you’ll be introduced to test automation best practices that will allow you to scale your test coverage more effectively.
Chris Lample is a Test Automation Engineer at TestObject. He advises customers on adopting test automation best practices, improves automated testing infrastructure, and supports customers using on-premise installations. He enjoys working with the broad set of challenges customers face and how this exposes him to a wide range of technologies.
Der Traum von einer einzigen Codebasis für alle Clientplattformen: Er lebt immer noch. In dieser Session zeigt Ihnen Christian Weyer, wie weit dieser Traum mit HTML5/JavaScript und aktuellen Cross-Plattform-Werkzeugen Wirklichkeit werden kann. Auf Basis moderner UI/UX-Konzepte lassen sich Oberflächen für Desktops, Tablets und Smartphones entwerfen – mit einer Codebasis. Mischt man diesen Ansatz mit Tools wie Cordova und Electron, so kann man mit Single-Page-Applications-(SPA-)Frameworks wie Angular 2 echte Anwendungen für alle relevanten Plattformen und Devicegrößen bauen, Mobile und Desktop: Windows, Linux, Mac OS, iOS, Android und Co. – und natürlich den Browser. Kommen Sie vorbei und sehen Sie all dies in Action!
Christian Weyer ist Gründer und Vorstand der Thinktecture AG sowie Google GDE (Developer Expert) und Microsoft MVP (Most Valuable Professional). Er spricht seit knapp zwei Dekaden auf unterschiedlichsten Softwarekonferenzen und -events weltweit – mit Leidenschaft und Engagement.
Microservices sind in aller Munde, und immer mehr Initiativen widmen sich dem Thema. Es wird ausprobiert, konzipiert, „refactored“ und neu aufgesetzt. Manche „haben es schon lange so gemacht“ und haben zumindest einen coolen Namen für ihren Architekturstil bekommen. Doch bei all der Breitenwirkung: Microservices sind nicht einfach umzusetzen. Häufig werden technische oder konzeptionelle Fehler gemacht. Manchmal so gravierend, dass die erkauften Vorteile nicht zur Wirkung kommen oder der Ansatz gänzlich scheitert. In dieser Session werden fünf häufig anzutreffende Antipatterns vorgestellt und ihre Auswirkungen besprochen.
Stefan Toth arbeitet als Entwickler, Softwarearchitekt und Berater bei der embarc GmbH. Seine Schwerpunkte liegen in der Konzeption und der Bewertung mittlerer bis großer Softwarelösungen sowie der Verbindung dieser Themen zu agilen Vorgehen. Er ist Autor zahlreicher Artikel und des Buchs „Vorgehensmuster für Softwarearchitektur“.
Das Package java.lang.instrument führt das Konzept eines Java-Agenten ein, der Klassen beim Laden in die VM oder bereits geladene Klassen innerhalb der VM ändern kann. Man kann daher mit Standard-Java ohne zusätzliche Bibliotheken Klassen zur Laufzeit ändern. Die Änderungen sind beschränkt auf (neue) Methodenrümpfe und Konstanten. Das Hinzufügen, Löschen oder Umbenennen von Methoden und Variablen ist nicht erlaubt. Dieser Vortrag führt die Konzepte der Instrumentierung ein und zeigt, wie einfach das Ersetzen von Klassen zur Laufzeit (Hot-Swap) mit Standard-Java ist. Der Vortrag belegt diese „Einfachheit“ durch kleinere Demos. Die letze Demo zeigt, wie eine JRebel-Light-Variante mit Standard-Java ohne externe Bibliotheken gebaut werden kann.
Nach seinem Studium der Informatik und der Promotion arbeitete Bernd Müller für die IBM und die HDI Informationssysteme. Er ist Geschäftsführer und Professor, Autor mehrerer Bücher zu den Themen JSF und JPA, sowie regelmäßiger Speaker auf nationalen und internationalen Konferenzen.
Das Spring-Data-Projekt organisiert seine Releases in ungefähr halbjährlichen Release-Trains, die ein gutes Duzend Module enthalten, um Datenzugriffsschichten für verschiedene Datenbanken zu implementieren. Der Vortrag widmet sich den wichtigsten Features der letzten Releases: Erweiterung der Unterstützung von Java 8, ein Programmiermodell für Projektionen in Repositories und Store-spezifische Änderungen in JPA, MongoDB, Redis und den Spring-Data-Communitymodulen.
Oliver Gierke ist Leiter des Spring-Data-Projekts bei Pivotal, früher besser bekannt als SpringSource. Seit über acht Jahren widmet er sich dem Entwickeln von Java-Enterprise-Applikationen, Open-Source-Projekten und ist Mitglied der JPA Expert Group. Seine Arbeitsschwerpunkte liegen im Bereich Softwarearchitektur, Spring, REST und Persistenztechnologien. Er ist regelmäßiger Sprecher auf deutschen und internationalen Konferenzen sowie Autor von Fachartikeln und des ersten Spring-Data-Buchs.
Herzlich willkommen im Elfenbeinturm! Hier können Sie noch sehen, wie Software- und Systemarchitekturen am Reißbrett entworfen werden. Am Reißbrett? Wirklich? Hatten wir diese Zeit nicht hinter uns gelassen, schon vor vielen Jahren? Sind wir nicht in einer Zeit angekommen, in der agile und eher fachlich orientierte Teams Technologie einfach nutzt? Gänzlich ohne eigene Frameworks und Abstraktionen? Scheinbar nicht – wie viele Unternehmen und damit verbundene Organisationsstrukturen immer noch beweisen. Es wird Zeit, diese historischen Monster endlich in den Ruhestand zu schicken und der Rolle des Enterprise-Architekten ein neues Aufgabenspektrum anzuvertrauen, sodass technologisches Momentum zugelassen und dennoch Wildwuchs vermieden wird. Der moderne Enterprise-Java-Architekt in Zeiten sich auflösender zentralistischer Strukturen – modelliert in einer einzigen Session.
Jens Schumann, Softwarearchitekt bei dem IT-Beratungs- und Entwicklungsunternehmen open knowledge GmbH sowie freier Autor, beschäftigt sich seit vielen Jahren mit dem Design und der Umsetzung komplexer Lösungen im Enterprise-Computing-Umfeld. Neben den rein theoretischen Ansätzen liegen vor allem die anwendungsbezogenen Aspekte dieses Problemfelds im Fokus seiner Tätigkeit. Seine praktische Erfahrung sammelte Jens Schumann in diversen großen, internationalen Projekten und gibt sie als Vortragender auf deutschen und amerikanischen Konferenzen sowie durch sein Engagement innerhalb diverser Open-Source-Projekte weiter. Seine Schwerpunkte bilden derzeit vornehmlich die Aspekte des serverseitigen Java, der aktuelle Fokus liegt dabei im Speziellen auf der Umsetzung von verteilten Anwendungen und der Schaffung einer Enterprise-Java-basierenden Mobile-Computing-Infrastruktur.
Klassische Multi-Tier-Architekturen auf Basis von Applikationsservern und Datenbanken waren lange Zeit das Rückgrat skalierbarer Infrastrukturen. Mithilfe dieses Architekturansatzes konnten Komponenten relativ einfach voneinander isoliert werden, was die granulare Skalierbarkeit der Anwendung erhöht. Ein deutlich einfacherer Architekturansatz ist die so genannte „Serverless Architecture“. In diesem Vortrag wird gezeigt, wie hochskalierbare Anwendungen ohne Server mithilfe vom Amazon API Gateway, AWS Lambda, Amazon S3, Amazon DynamoDB und dem Serverless-Framework gebaut werden können.
Sascha Möllering works as Solutions Architect at Amazon Web Services. He’s interested in automation, infrastructure as code, distributed computing, containers and JVM.
Um das Potenzial agiler Softwareentwicklung voll ausschöpfen zu können, sind neue und vor allem schnellere Methoden der Anwendungsauslieferung nötig. Diese Methoden müssen jedoch auch mit der vorhandenen Infrastruktur integrierbar sein.
In diesem Vortrag erfahren Sie, wie Sie Docker mit der „Non-containerized“-Welt verbinden, d.h. verlinken von Applikationen innerhalb und außerhalb von Containern, um einen ganzheitlichen Automatisierungsprozess zu erreichen.
Lernen Sie, wie Sie Continuous Delivery selbst für komplexe Applikationen erreichen können. Entdecken Sie die Vorteile einer Einbindung von Docker in den gesamten Bereitstellungs- und Deployment-Prozess, um Transparenz und Übersicht über alle Aktivitäten hinweg zu schaffen.
Jürgen Güntner hat mehrere Jahre Erfahrung im Bereich Softwareentwicklung, Integration von neuen Technologien in bestehende Softwarelandschaften von Banken und anderen Großkonzernen und ist Fan von Automatisierung. Seine Hauptaufgabe bei Automic ist es, Kundenbedürfnisse zu analysieren und deren IT-Prozesse zu optimieren. Dabei hilft er Unternehmen, die DevOps-Philosophie zu etablieren. Zu seinen täglichen Tätigkeiten zählen das Arbeiten mit diversen neuen Technologien, Integration von multiplen Systemen und das Automatisieren von End-2-End-Prozessen.
Schnell, elastisch, fehlerresistent und serverlos. Um die neuen Möglichkeiten von Cloud-Systemen auszureizen, benötigt es geeignete Architekturen, Frameworks und effiziente Entwicklungsprozesse. An konkreten Use Cases sollen die Möglichkeiten der RH OpenShift PaaS aufgezeigt und geeignete Tools und Komponenten aus dem Kubernetes- und Open-Source-Ökosystem genutzt werden, um moderne Applikationen zu bauen, die auch in kritischen Unternehmensbereichen bestehen und das Ensemble an Legacy-Software hoffentlich schrittweise ersetzen können.
Robin Meißner arbeitet als Pre-Sales Consultant im Themenfeld PaaS und Big Data. Nach einigen Jahren als Solution-Architekt vor allem in kritischen Großkundenprojekten möchte er seine Erfahrungen nutzen und Kunden überzeugen, mit modernen Cloud-basierten Ansätzen und agilen Entwicklungsmethoden ihre Probleme zu lösen. Damit Entwicklungsteams wieder mit Schwung und Freude die Unternehmens-IT bereichern, erfolgskritische Ziele realistisch erreicht werden können und jegliche Innovationen nicht schon im Keim ersticken.
Eine App "from scratch" zu entwickeln, ist der Traum jedes Entwicklers. Endlich kann mal der Code sauber und durchdacht aufgebaut werden, man setzt hippe neue Libraries ein und muss sich nicht mit Altlasten herumschlagen.
Wir haben bei der Entwicklung der waipu.tv-Android-App u.a. RxJava, Retrofit und Dagger verwendet und versucht, eine saubere App-Architektur auf die Beine zu stellen. Dass Dagger einen Zeit- und Mehraufwand bedeutet, mit RxJava leicht Memory Leaks zustande kommen und eine MVP-Architektur lange Callback-Strecken nach sich ziehen kann, sind nur einige der Herausforderungen, auf die wir gestoßen sind. Wie sich die Bibliotheken im Produktiveinsatz geschlagen haben und welche Lektionen wir gelernt haben, zeigen wir im Vortrag anhand von einigen Praxisbeispielen.
Andreas Bauer ist als Software Entwickler bei der inovex GmbH angestellt. Er ist spezialisiert auf die Entwicklung von nativen und hybriden Android Apps und besitzt einige Jahre Erfahrung in diesem Gebiet. Im Rahmen dieser Tätigkeit interessiert er sich für Agile Projekte, Reactive Programming und modernes Softwaredesign.
Johannes Schamburger ist bei der inovex GmbH als Softwareentwickler tätig. Sein Schwerpunkt ist dabei die Entwicklung von nativen und hybriden Android-Apps. Dabei interessiert er sich unter anderem für die Schnittstellen zu Backend-Systemen, persistente Datenspeicherung und User Interface Design.
Worauf muss man bei der Verwendung von Stream-Operationen bzgl. der Performance achten? Die Session behandelt u. a. den Performancevergleich von einem sequenziellen Stream mit einer for-Schleife und erläutert, welche Eigenschaften der auszuführenden Funktionalität den Performanceunterschied ausmachen. Des Weiteren wird diskutiert, wann und um wieviel parallele Stream-Abarbeitung schneller ist als sequenzielle. Dazu sehen wir uns interne Details der Stream-Implementierung wie Iterator/Spliterator und Reduktions- vs. Akkumulationsalgorithmen an. Wann lohnt sich parallele Abarbeitung bzw. wann eher nicht?
Klaus Kreft arbeitet seit mehr als zwanzig Jahren als Consultant im Bereich der Softwareentwicklung mit Java. Sein Interesse gilt hauptsächlich komplexen Multi-Thread-Systemen mit hohen Performanceanforderungen. Er ist Sprecher auf Fachkonferenzen (JAX, OOP, Ch/Open-Workshop-Tage und diverse JUGs). Gemeinsam mit Angelika Langer ist er Autor zahlreicher Veröffentlichungen, darunter eine Artikelserie im Java Magazin.
Dieser Vortrag gibt einen Überblick über die technischen Lösungen für die Orchestrierung von Kubernetes-basierten Microservices. Erzeugen, Betreiben und Ändern von vielen Maschinen und Containern auf dem eigenen Notebook, im DataCenter oder in der Cloud ist eine Herausforderung. Unsere Produkte werden ständig erweitert und an verschiedene Nutzungen angepasst. Um Microservices zu entwickeln, bedarf es einer guten Koordination von Gruppen von Prozessen und ihren Abhängigkeiten. Das Kubernetes-Ökosystem bietet hier vielversprechende Werkzeuge um automatische Skalierung, Fehlerbehebung und Deployment. Der Vortrag stellt den praktischen Nutzen der Kubernetes-Plattform vor und demonstriert den praktischen Umgang damit.
Peter Roßbach ist freiberuflicher Systemarchitekt und Coach zahlreicher Webanwendungen. Sein besonderes Interesse gilt der Entwicklung von komplexen Informationssystemen, einschließlich der Gestaltung und Realisierung von testgetriebenen Prozessen. Seit 1997 ist Peter Roßbach im Bereich HTTP-Server und Webcontainer tätig. Er ist Committer im Apache-Tomcat-Projekt und Mitglied der Apache Software Foundation. Sein besonderes Interesse gilt der Gestaltung von Provisionierungs-, Überwachungs- und Analysesystemen für komplexe Infrastrukturen. Mit der bee42 solutions gmbh realisiert er entsprechende Infrastrukturprodukte und Dienstleistungen auf Basis des Docker-Ökosystems, aktueller Webtechnologien, NoSQL-Datenbanken und Cloud-Plattformen.
Der Trend zu kleineren Softwaresystemen stellt Entwickler beim Design dieser Systeme vor neue Herausforderungen: In welche Teile separiere ich meine Domäne? Wie referenziere ich logisch gleiche Artefakte eines Gesamtsystems in den einzelnen Teilsystemen. Domain-driven Design definiert verschiedene Konzepte, um Komplexität in Software beherrschbarer zu machen. Der Vortrag stellt die im Kontext von Microservices grundlegendsten und wichtigsten vor und erläutert, warum gerade diese es sind, die in einer Landschaft kleiner Systeme so wichtig sind. Der Vortrag zeigt auf, wie sehr Konzepte aus DDD gerade im Kontext von Microservices von höchster Wichtigkeit sind: Bounded Contexts, Aggregates, Context Maps. Er zeigt auf, welch enge Beziehung zwischen beiden Themen besteht und wie sie sich gegenseitig beeinflussen.
Oliver Gierke ist Leiter des Spring-Data-Projekts bei Pivotal, früher besser bekannt als SpringSource. Seit über acht Jahren widmet er sich dem Entwickeln von Java-Enterprise-Applikationen, Open-Source-Projekten und ist Mitglied der JPA Expert Group. Seine Arbeitsschwerpunkte liegen im Bereich Softwarearchitektur, Spring, REST und Persistenztechnologien. Er ist regelmäßiger Sprecher auf deutschen und internationalen Konferenzen sowie Autor von Fachartikeln und des ersten Spring-Data-Buchs.
Softwarearchitekturen werden mit Begriffen beschrieben, für die in Programmiersprachen keine überprüfbaren Repräsentationen existieren. Die Folge: Architekturdefinitionen mit ihren Konzepten und Constraints sind nur als Dokumentation vorhanden, über deren Inhalt alle Entwickler stetig auf dem Laufenden gehalten werden müssen. Dieses Vorgehen scheitert meist in der Praxis, ein Auseinanderdriften von Architektur und Codebasis ist kaum zu verhindern. Der Vortrag präsentiert einen Ansatz der automatisierten Codeanalyse, welcher Informationen aus strukturrelevanten Elementen – vom Build-System über Klassen bis hin zu Frameworkdeskriptoren – extrahiert und in einer Datenbank ablegt. Die gewonnenen Daten können über Abfragen für umfassende Explorationen und Visualisierungen genutzt werden, stellen aber auch die Basis für die Anreicherung um projektspezifische Konzepte aus der jeweiligen Design- und Architektursprache dar. Auf dieser Grundlage lassen sich Validierungen durchführen, die Entwicklern schnell aussagekräftiges Feedback über vorliegende Verletzungen geben.
Oliver Fischer arbeitet als Senior Software Engineer bei der E-Post Development GmbH in Berlin und ist Committer bei der Apache Software Foundation. Regelmäßig publiziert er vorrangig zu Java-relevanten Themen für verschiedene Zeitschriften und Onlinemagazine. Seine Interessensschwerpunkte liegen auf innovativen Systemen und Ideen, am liebsten in Java, aber auch mit zunehmendem Interesse an DevOps-bezogenen Themen. Zudem leitet Oliver die Java Usergroup Berlin-Brandenburg und wirkt an der Organisation verschiedener Konferenzen mit.
JSON Schema (http://json-schema.org) is a web standard to define valid JSON objects. The definition is JSON itself and basically describes all properties of an object and their types. Defining a JSON Schema for your data enables a number of interesting use-cases. Just to name one: For a RESTful API the JSON content of the requests and replies can be exactly defined (also see Open API) and in addition any JSON can be validated against its JSON Schema – client- and server-side based on the same definition. Of course where there is light there is also shadow. With JSON Schema you are required to define your data and the available tooling to do so is not really great (yet). In this presentation we will provide you with criteria to judge whether JSON Schema could be beneficial for your project or is just too much overhead.
Maximilian Koegel is focused on pragmatic modeling and web applications. He is a project lead and a committer of various open-source and Eclipse projects and serves on the Eclipse Architecture Council. Maximilian has more than a decade of experience with Eclipse, modeling in general, web technology and open source and is consulting customers in those areas as general manager of EclipseSource Munich. He is a regular blogger and speaker at conferences such as EclipseCon and Jax.
Rund um Spring Boot hat sich ein Ökosystem von „Startern“ entwickelt: Module, die automatische Konfiguration und Abhängigkeiten mitbringen und dabei helfen, vollständige Anwendungen und Microservices zu modularisieren. Durch „opionated defaults“, die nur solange aktiv sind, wie man nicht selbst tätig wird, wird ein reibungsloser Start gewährleistet. In diesem Vortrag werde ich zeigen, dass dahinter keine Magie steckt, sondern ein sehr nachvollziehbarer, einfacher Automatismus, der auch für eigene Module sinnvoll genutzt werden kann. Während der Demo wird ein individueller Dialekt für die Templatesprache Thymeleaf entwickelt, der mit einem Spring-Boot-Starter-Modul zur Verfügung gestellt wird.
Father of two, husband, geek, programmer, biker. Software architect at ENERKO Informatik.
Push-Nachrichten sind ein zentraler Bestandteil von mobilen Betriebsystemen und bieten eine komfortable Möglichkeit, um mit dem App-Benutzer in Kontakt zu treten. Um diese Interaktion auch ins Web zu exportieren, bieten die großen Hersteller seit Kurzem den Versand von Push-Nachrichten für den hauseigenen Browser an. Das stellt den Entwickler vor Probleme: Neben den bisher traditionell unterschiedlichen Push-Plattformen wie Apple/iOS oder Google/Android kommen nun auch verschiedene Browser hinzu. Seit 2015 arbeiten Mozilla, Mircosoft und Google gemeinsam an dem „WebPush“-Standard. Dieser besteht aus einem JavaScript-API, sowie einem HTTP/2-basierten und plattformunabhängigen Protokoll. Google hat bereits angekündigt, das neue WebPush-Protokoll in Chrome und GCM/FCM in der Zukunft zu integrieren. Der Vortrag stellt WebPush anhand von Client- und Server-Implementierungen in Java und JavaScript vor.
Matthias Weßendorf arbeitet am AeroGear-Projekt, wo er sich mit den verschiedenen Facetten des Themas „Mobile und Enterprise“ auseinandersetzt.
Spotify has a highly distributed engineering organization with more than 80 autonomous teams and has been experiencing fast growth. Matching the organization, the Spotify backend consists of hundreds of small services, each owned by one of the teams. Teams not only build their services, they fully operate them. In this talk, you’ll learn how Spotify went from a small centralized operations team, to fully distributed operations and how that has enabled us to both grow as a company and constantly scale our backend to an ever growing number of users.
Niklas Gustavsson is a backend engineer at Spotify, open source hacker, mountain biker and father of two awesome kids. At Spotify, he has a long history of working on audio playback and content delivery. Niklas tweets as @protocol7.
We often hear programmers complain about the syntax, especially when learning a new language. It turns out that, while syntax plays a role in our ability to learn and use languages, the real force we have to deal with is in the semantics. Once we get past the syntax, the semantics is where the real power and the real scare is. Curious to learn more?
Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., creator of agilelearner.com, and an instructional professor at the University of Houston. He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with sustainable agile practices on their software projects. Venkat is a (co)author of multiple technical books, including the 2007 Jolt Productivity award winning book Practices of an Agile Developer. You can find a list of his books at agiledeveloper.com. You can reach him by email at venkats@agiledeveloper.com or on twitter at @venkat_s.
Microservices-basierte Architekturen auf der grünen Wiese starten, mag ja noch vorstellbar sein. Was aber, wenn es – wie leider so häufig in der Praxis – einen bestehenden, historisch gewachsenen Monolithen gibt, der schon einmal bessere Tage gesehen hat? Wie kann ein möglicher Migrationspfad aussehen, und mit welchen Stolperfallen muss dabei gerechnet werden? Im Rahmen des Workshops nehmen wir uns anhand eines konkreten Beispiels einen solchen Monolithen vor, überlegen, welche Services sich sinnvoll herauslösen lassen und welche Patterns dazu verwendet werden sollten. Natürlich ergeben sich durch die neue Architektur auch neue Herausforderungen, denen wir uns stellen müssen. Aber auch das kann uns nicht stoppen ...
Renke Grunwald ist Enterprise-Entwickler bei der open knowledge GmbH in Oldenburg. Zu seinen Schwerpunkten gehören moderne Frontend-Technologien (insbesondere im Kontext von SPAs), neuartige Architektur-Ansätze wie Microservices sowie das Thema Continuous Integration/ Deployment. Die Mission seiner Arbeit ist immer, den Prozess der Software-Entwicklung zu verbessern und zu vereinfachen.
Lars Röwekamp, Gründer des IT-Beratungs- und Entwicklungsunternehmens open knowledge GmbH, beschäftigt sich im Rahmen seiner Tätigkeit als „CIO New Technologies“ mit der eingehenden Analyse und Bewertung neuer Software- und Technologietrends. Ein besonderer Schwerpunkt seiner Arbeit liegt derzeit in den Bereichen Enterprise und Mobile Computing, wobei neben Design- und Architekturfragen insbesondere die Real-Life-Aspekte im Fokus seiner Betrachtung stehen. Lars Röwekamp, Autor mehrerer Fachartikel und -bücher, beschäftigt sich seit der Geburtsstunde von Java mit dieser Programmiersprache, wobei er einen Großteil seiner praktischen Erfahrungen im Rahmen großer internationaler Projekte sammeln konnte.
In diesem Hands-on-Workshop greifen wir gemeinsam eine Trainingswebanwendung an, um Schritt für Schritt die Rolle eines Pentesters einzunehmen. Sie lernen den Umgang mit professionellen Securitywerkzeugen anhand zahlreicher Praxisübungen sowie die allgemeine Vorgehensweise von Pentestern bei Angriffen auf Webanwendungen. Selbstverständlich werden wir uns auch um Abwehrmaßnahmen zur Absicherung der gefundenen Lücken kümmern, im Vordergrund steht jedoch der gezielte Umgang mit professionellen Angriffswerkzeugen zur (teilautomatischen) Durchführung einer Sicherheitsanalyse. Nach dem Workshop verfügen Sie über praktische Erfahrungen zur Angriffsdurchführung auf Webanwendungen, welche Sie im Rahmen Ihrer eigenen Softwareentwicklung umsetzen können, um die Sicherheit Ihrer Projekte nachhaltig zu erhöhen.
Christian Schneider (@cschneider4711) ist als freiberuflicher Softwareentwickler, White-Hat-Hacker und Trainer tätig. Abseits der klassischen Softwareentwicklung unterstützt er Kunden im Bereich der Websecurity durch Penetration-Tests, Security Consulting und Architekturberatung zur Härtung gegen Angriffe. In dieser Rolle führt er regelmäßig Trainings zu den Themen Pentesting sowie Security DevOps durch und bloggt auf www.Christian-Schneider.net.
In diesem Workshop schauen wir an, wie die Garbage-Collection-Algorithmen in der HotSpot JVM von Oracle (aka OpenJDK) funktionieren und wie man sie konfigurieren kann. Ehe man eine sinnvolle Konfiguration ausprobieren kann, um Probleme wie minutenlange „Stop-the-World-Pausen“ zu beseitigen, muss analysiert werden, wie die langen Pausen zustande gekommen sind. Dazu wird in der Regel die Trace-Ausgabe der Garbage Collectors analysiert. Wie in einem Workshop üblich, soll praktisch geübt werden. Die Teilnehmer bekommen ein kleines synthetisches Java-Programm, welches das Speicherallokations- und -freigabeverhalten einer echten Anwendung emuliert. Dieses Programm wird verwendet, um GC-Analysewerkzeuge auszuprobieren, die den GC-Trace analysieren helfen. Anschließend wird die Garbage Collection neu konfiguriert und der Erfolg des Tunings überprüft. Ab Java 9 wird der „Garbage First“-(G1-)Kollektor der Default-GC-Algorithmus sein. Selbstverständlich sehen wir uns auch seine Eigenschaften und Konfigurationsmöglichkeiten an.
Klaus Kreft arbeitet seit mehr als zwanzig Jahren als Consultant im Bereich der Softwareentwicklung mit Java. Sein Interesse gilt hauptsächlich komplexen Multi-Thread-Systemen mit hohen Performanceanforderungen. Er ist Sprecher auf Fachkonferenzen (JAX, OOP, Ch/Open-Workshop-Tage und diverse JUGs). Gemeinsam mit Angelika Langer ist er Autor zahlreicher Veröffentlichungen, darunter eine Artikelserie im Java Magazin.
Angelika Langer arbeitet als Trainer und Consultant mit eigenem Schulungsprogramm im Bereich der Softwareentwicklung mit C++ und Java. Sie ist Sprecher auf zahlreichen Konferenzen, darunter JavaOne, OOPSLA, JAX und viele andere (siehe lanyrd.com/profile/angelikalanger/). Sie ist u. a. Autor der Onlineressourcen „Java Generics FAQ“ und „Lambda Tutorial & Reference“ unter www.AngelikaLanger.com. Gemeinsam mit Klaus Kreft ist sie Autor zahlreicher Veröffentlichungen, darunter eine Artikelserie im Java Magazin.
In diesem Workshop werden wir eine kleine, aber vollständige Webapplikation entwickeln. Der Clientteil basiert auf Angular 2, TypeScript und ein wenig Bootstrap. Der Serverteil basiert auf Spring Boot, verwenden werden wir außerdem Spring Data/REST/HATEOAS. Wir werden also RESTful Web Services entwickeln, die um Hypermedia angereichert sind. Dabei wird Kai Tödter die Grundlagen von Spring Boot und den verwendeten Frameworks erklären und auch die generellen Prinzipien von REST und HATEOAS (Hypermedia as the Engine of Application State, ein wichtiges REST-Architekturprinzip). Für die Cliententwicklung gibt Kai eine kurze Einführung in Angular 2, TypeScript und die gängigen JavaScript-Entwicklungstools wie gulp, npm, Bower, Jasmine etc.
Kai Tödter ist Principal Key Expert für Software-Architektur und -Technologien bei Siemens Building Technologies.Er hat zwanzig Jahre Java-Erfahrung und vertrat Siemens im Java Community Process (JCP) und in der Eclipse Foundation. Kai ist Committer bei einigen Open-Source-Projekten, seine aktuellen Themenschwerpunkte sind Technologien im Webumfeld, Microservices und Hypermedia-APIs.
To make the complex, distributed and highly interconnected system landscapes of today robust, responsive and highly available, we need to implement resilience into them at application level. Many patterns for implementing resilience into an application exist. The daunting questions are how to slice (design) an application and which patterns to pick and combine in order to match your specific needs best. In the first part of this tutorial we will get an overview about the resilience pattern landscape, which patterns exist, how to organize and select them and how to design resilient applications. In the second part of this tutorial you will have the opportunity to apply the just learned contents to a real-life case study and design and discuss your own resilient solution. After this session, you will have a much deeper understanding how to design a solution that satisfies your specific robustness needs.
Ansgar Fitz works as product owner and architect at codecentric. Agile values define the way he thinks and acts. Often he shares his knowledge and experiences by training and coaching his customers. His current focus areas are agile manufacturing, distributed systems and resilient software design.
Uwe Friedrichsen travels the IT world for many years. As a fellow of codecentric AG he is always in search of innovative ideas and concepts. His current focus areas are resilience, scalability and the IT of (the day after) tomorrow. Often, you can find him on conferences sharing his ideas, or as author of articles, blog posts, tweets and more.