Aller Anfang …

Begrüßung und Organisatorisches

Das Herbstcampus-Team

Bookware
Dienstag, 2. 9., 09:30 – 10:00 Uhr Di de

Wasser auf die Mühlen

Continuous Feedback: Mit Kontinuierlichkeit zu erfolgreichen Projekten

Neno Loje

K10 Dienstag, 2. 9., 10:00 – 10:50 Uhr Keynote Di de

Technologien, Entwicklungsprozesse und Methoden ändern sich mit der Zeit, aber die grundlegenden Herausforderungen bleiben die gleichen. In einer schnelllebigen Zeit mit kurzen Innovationszyklen, wie können wir da als Unternehmen schneller, kosteneffizienter und mit hoher Qualität Software erstellen?

In diesem Vortrag geht es um Dinge aus dem Alltag und wie diese überhaupt in kurzen Zyklen funktionieren können: Anforderungen aufnehmen, Planen und Priorisieren, im Team entwickeln (Continuous Integration), (agil?) Testen (Continuous Testing), Ausliefern (Continous Deployment) und Feedback einbeziehen (Continuous Feedback) mit dem ultimativen Ziel Nutzen und Mehrwert zu schaffen (Continuous Value Delivery).

Was bist Du groß geworden!

8 Jahre Team Foundation Server

Neno Loje

N12 Dienstag, 2. 9., 11:20 – 12:30 Uhr Di de

Den Visual Studio Team Foundation Server, das Herzstück der Microsoft ALM-Plattform, gibt es nun schon seit 2006 auf dem Markt. Die meisten Unternehmen nutzen jedoch nicht annähernd die vielen Möglichkeiten aus, die von Version zu Version und auch in den Updates (4 mal im Jahr) hinzugekommen sind.

Dieser Vortrag gibt Antworten auf: Was der TFS – nach heutigem Stand – alles kann, welche Highlights man keinesfalls verpassen sollte, ausgewählte Tipps & Best Practices, die sich im Laufe der Jahre angesammelt haben, sowie einen Ausblick auf die zukünftige Entwicklung. Somit ist dieser Vortrag für Einsteiger, Umsteiger und bestehende Nutzer zu empfehlen.

Home Improvement

Entity Framework 6.x

Thomas Haug

MATHEMA Software GmbH
N13 Dienstag, 2. 9., 14:00 – 15:10 Uhr Di de

Das Microsoft Entity Framework 6.x wartet mit einer Vielzahl von (neuen) Eigenschaften auf und bietet im Vergleich zu den Vorgängerversionen weitreichende Möglichkeiten, um Anpassungen und Erweiterungen am Basis-Framework vorzunehmen. Die neuen Features und die Fähigkeit, Anpassungen vorzunehmen, bilden die Grundlage, nützliche Frameworks und Hilfsmittel um das Entity Framework „herum“ zulegen.

In diesem Vortrag werden bestehende Frameworks rund um das Entity Framework 6.x vorgestellt. Des Weiteren wird exemplarisch gezeigt wie (Basis-)Dienste des Frameworks durch eigene Implementierungen ausgetauscht beziehungsweise erweitert werden können.

Bunte Welt

Es muss nicht immer Windows sein

Markus Müller

datainfo.de
N14 Dienstag, 2. 9., 15:40 – 16:50 Uhr Di de

.NET und C# bringt man immer ganz klar mit Windows in Verbindung. Doch mit C# lassen sich zwischenzeitlich auch ganz ausgereifte Anwendungen und Apps für Mac OS X, iOS und Android herstellen.

In diesem Vortrag erfahren Sie, wie man eine einheitliche Code-Basis für Windows, iOS und Android mit Hilfe von Xamarin unter einen Hut bekommt. Bekommen Sie einen Geschmack für Multiplattformentwicklung unter C#.

Ausgereizt

Visual Studio Tipps und Tricks

Daniel Meixner

Microsoft Deutschland GmbH
N15 Dienstag, 2. 9., 17:20 – 18:30 Uhr Di de

Visual Studio ist eine wahre Goldgrube, wenn es darum geht, neue Features zu entdecken. In diesem Vortrag zeigt der Referent eine Handvoll erlesener Shortcuts, Features und Funktionen, die im Visual Studio verborgen sind und manch ein Entwickler vielleicht noch nicht kennt. Die Tipps und Tricks sorgen dafür, dass man schneller, sicherer, sauberer und vielleicht auch einfach komfortabler durchs Visual Studio navigiert.

Data Driven Documents

Infografiken für Jedermann mit D3

Axel Feix

Itech Progress GmbH
A12 Dienstag, 2. 9., 11:20 – 12:30 Uhr Di de

Haben Sie nicht auch schon ab und an einmal neidisch auf eine Infografik im „Spiegel“, der „New York Times“ oder in „Die Zeit“ geschaut und im Stillen bei sich gedacht: das würde ich auch gerne können – am besten sogar auf meiner Homepage? Die gute Nachricht ist: das geht jetzt. Mit D3 sind komplexe Infografiken ohne komplexe Programmierung möglich – wenn man weiss wie. Data Driven Documents, kurz D3, ist ein JavaScript-Framework für die einfache Erzeugung von komplexen Infografiken auf HTML-Seiten.

Dieser Vortrag beleuchtet die Philosophie, die technischen Prinzipien und den Aufbau der API, und erläutert an mehreren aussagekräftigen Beispielen die Fähigkeiten dieses schönen und spannenden Frameworks.

Built to last

Nachhaltige Software-Entwicklung

Frank Pientka

MATERNA GmbH
A13 Dienstag, 2. 9., 14:00 – 15:10 Uhr Di de

Nichts bleibt für die Ewigkeit. Oft wurde die Software auf Plattformen mit Werkzeugen entwickelt, die heute gar nicht mehr existieren und hat inzwischen sogar seine Ersteller überlebt. Damit eine Software den aktuellen, fachlichen und technologischen Anforderungen genügt, muss sie permanent angepasst werden. Damit Altprodukte nicht später zu unkalkulierbaren Risiken werden, ist es wichtig bereits frühzeitig einige Kardinalfehler zu vermeiden, die eine spätere Modernisierung oder Anpassung erschweren.

Doch muss es nicht soweit kommen, wenn man einige wenige Erkenntnisse konsequent umsetzt, wie kleine Einheiten statt großer Monolithen, Design-by-Community statt Design-by-Committee, Design-for-Replacement statt Design-for-Reuse oder fachübergreifende Teams, die den gesamten Software-Zyklus kontinuierlich begleiten. Damit lassen sich Verzögerungskosten vermeiden, Anpassungsaufwände reduzieren und teure Migrationsprojekte vermeiden.

Aller klar? Von wegen!

Die Fallstricke des Denkens und wie man sich gegen Fehlentscheidungen wappnet

Dr. Karl Kollischan

kobaXX Consultants
A14 Dienstag, 2. 9., 15:40 – 16:50 Uhr Di de

Unser Leben besteht aus Entscheidungen, im Beruflichen wie auch im Privaten. Häufig hängt unser Geld, unsere Karriere oder unser Glück davon ab. Wem sollen wir unser Vertrauen schenken? Wen halten wir für kompetent? Welcher Mitarbeiter ist für eine bestimmte Aufgabe am besten geeignet? Sollen wir ein aus dem Ruder gelaufenes Projekt, in das schon viel Geld investiert wurde, retten oder abbrechen? Was macht uns in Zukunft glücklich? Für viele unserer wichtigen Entscheidungen kennen wir die Gründe. Wirklich? Die moderne Kognitionspsychologie liefert verblüffende Antworten darauf, was in unserem Gehirn passiert, wenn wir Entscheidungen treffen. Wir haben zwei Denksysteme, ein langsames, rationales, das wir bewusst erfassen und ein schnelles, intuitives, das ständig präsent ist und uns automatisch in Bruchteilen von Sekunden mit Einschätzungen versorgt. Dies ist in vielen Situationen sinnvoll, führt jedoch häufig zu eklatanten Fehlentscheidungen.

In diesem Vortrag werden einige der mentalen Muster vorgestellt, denen wir bei unseren Urteilen folgen und die uns immer wieder in fatale Denkfallen tappen lassen. Wer weiß, welchen Fehlschlüssen wir unterliegen, ist besser gewappnet.

SAP HANA

Was ist drin für Java-Anwendungen?

Holger Seubert

SAP Deutschland SE & Co. KG
A15 Dienstag, 2. 9., 17:20 – 18:30 Uhr Di de

Neben einer In-Memory SQL-Datenbank für transaktionale- und analytische Aufgabenstellungen, bietet SAP HANA weitere Funktionen, die bei der Umsetzung Java-basierter Lösungsarchitekturen interessant sein können.

So lassen sich unstrukturierte Daten mittels Textanalyse auf Basis mitgelieferter, oder eigener Dictionaries verarbeiten, lokationsbasierte Daten mit der GeoSpatial Engine auswerten, oder integrierte Data Mining-Algorithmen zur Datenanalyse nutzen. An Hand von Beispielen werden die verschiedenen Mehrwertfunktionen vorgestellt.

Grunt.js

Im Schweinsgalopp zum Ziel

Frank Goraus

MATHEMA Software GmbH
A16 Dienstag, 2. 9., 20:00 – 21:10 Uhr Di de

JavaScript ist inzwischen in aller Munde. In nahezu keiner Web-Anwendung gibt es nicht irgendein Feature, das auf JavaScript basiert. Doch inzwischen ist JavaScript schon weit über den Browser hinaus gewandert und kann sogar für sich allein stehend als Anwendung genutzt werden. Mittels Node.js kann man zum Beispiel seinen eigenen Web- oder Mail-Server aus 100% JavaScript gestalten. Was spricht also noch dagegen auch seine Build-Prozesse per JavaScript abzubilden? An dieser Stelle kommt Grunt.js ins Spiel. Als so genannter Task Runner kann man eigene Task definieren und laufen lassen. Natürlich auf JavaScript-Basis.

Was Grunt so alles bietet und leisten vermag soll in diesem Vortrag beleuchtet werden. Und auch wie man Grunt in sein bestehendes Eco-System integrieren kann, soll kurz vorgestellt werden.

Auf die inneren Werte kommt es an

Kontinuierliche Architekturvalidierung

Kai Spichale

adesso AG
B12 Dienstag, 2. 9., 11:20 – 12:30 Uhr Di de

Eine wichtige Eigenschaft der Software-Architektur, die großen Einfluss auf die Wartbarkeit eines Systems hat, ist die Modularität. Wenn Applikationen größer werden oder über einen langen Zeitraum entwickelt werden, dann wird diese Eigenschaft zunehmend wichtiger, aber auch schwieriger zu realisieren. Bereits vor vier Jahrzehnten wurden eine möglichst hohe Modulkohäsion und eine möglichst schwache Modulkopplung als grundlegende Strukturierungsziele erkannt. Trotzdem werden häufig Abhängigkeitsmanagement und Best-Practices zur Quellcodeorganisation vernachlässigt.

In diesem Vortrag werden verschiedene Ansätze zur logischen und physischen Strukturierung von Java-Applikationen vorgestellt. Der Einsatz von Frameworks und Komponentenmodellen wird ebenfalls beleuchtet. Auch das Planen und Überprüfen von Abhängigkeiten zwischen den Modulen einer Applikation – denn Design-Entscheidungen müssen auch im Code wiederzufinden sein – wird anhand von praktischen Beispielen mit verschiedenen Werkzeugen demonstriert.

Kleiner ist besser

Architekturen mit Micro Services

Eberhard Wolff

Freelance Trainer & Consultant / adesso AG
B13 Dienstag, 2. 9., 14:00 – 15:10 Uhr Di de

Micro Services sind ein neues Architektur-Paradigma: Anwendungen werden in kleine Dienste aufgeteilt, die beispielsweise mit REST kommunizieren. Das soll nicht nur Systeme wartungsfreundlicher machen, sondern auch eine breitere Technologie-Auswahl nutzbar machen und zum Beispiel Vorteile für Continuous Delivery bringen.

Dieser Vortrag führt in Micro Services ein und zeigt Vor- und Nachteile dieses Ansatzes auf.

Reactive UIs

Event-gesteuerte Architektur für moderne Applikationen

Thomas Spiegl

Irian Solutions GmbH

Manfred Geiler

Irian Solutions GmbH
B14 Dienstag, 2. 9., 15:40 – 16:50 Uhr Di de

State-of-the-Art Applikationen basieren auf asynchroner Kommunikation (event-driven), sind skalierbar, robust und „responsive?. Dieses Reactive Design-Pattern lässt sich auch für Client/Server-Architekturen im Hinblick auf das UI gut anwenden. Das OpenSource-Projekt Ankor.io bietet dafür eine gute Grundlage.

Die Referenten zeigen die Architektur anhand praktischer Beispiele, die auf Ankor.io basieren. Wie lassen sich moderne UI-Technologien wie HTML5, JavaFX und Mobile Apps mit einem ereignisgesteuerten Server kombinieren? Können solche Applikationen einfach zu entwickeln und zugleich robust, skalierbar und performant sein?

Angular JS

Die Grundlagen

Philipp Burgmer

Weigle Wilczek GmbH
B15 Dienstag, 2. 9., 17:20 – 18:30 Uhr Di de

AngularJS, das JavaScript-Framework zur Entwicklung von Single-Page-Web-Anwendungen erfreut sich immer größerer Beliebtheit. Trotzdem soll es doch tatsächlich immer noch Leute geben, die noch nichts davon gehört haben! Macht nichts, das holen wir ja jetzt nach! Was ist AngularJS? Was hat es mit Direktiven, Dependency Injection und Data-Binding auf sich? Wie kann ich einsteigen und wie sieht die Lernkurve aus?

In diesem Vortrag zeigt der Referent um was es geht und wie man schnell und einfach loslegen kann!

Android Puzzlers

Kurioses und Unerwartetes in Googles mobiler Plattform

Thomas Künneth

MATHEMA Software GmbH
B16 Dienstag, 2. 9., 20:00 – 21:10 Uhr Di de

Android ist eine äußerst mächtige und leicht handhabbare mobile Plattform. Im Laufe der Jahre hat Google das System, dessen Programmierschnittstellen und die Entwicklungsumgebung konsequent erweitert werden, verbessert und von Fehlern befreit. Dennoch hat Android seine dunklen Seiten – unerwartetes Verhalten, lustige bis unsinnige Fehlermeldungen, nicht intuitiv nutzbare APIs.

Dieser Vortrag stellt die skurrilsten Merkwürdigkeiten vor und zeigt, wie man als Anwender und Entwickler damit umgeht.

Die wunderbare Welt der Graphen

Ein Einführung in Neo4j

Stefan Armbruster

Neo Technology
C12 Dienstag, 2. 9., 11:20 – 12:30 Uhr Di de

NoSQL-Technologien sind jetzt in aller Munde, und das Interesse daran steigt immer weiter. Der Aufklärungsbedarf ist enorm, da die Verantwortung für die Entscheidung für Technologien immer mehr in den Händen der Entwickler liegt. Die meisten nichtrelationalen Datenbanken kümmern sich bisher nur um den Aspekt der riesigen Datenmenge, aber nicht der hohen (und steigenden) Komplexität der zu verarbeitenden Domäne. Große Firmen wie Google, Facebook und Twitter entwickeln zwar ihre eigenen In-House-Lösungen für die Verarbeitung vernetzter Daten, aber auch für uns Normalverbraucher gibt es erfolgreiche Alternativen im OpenSource-Umfeld.

Neo4j wird schon seit über 10 Jahren entwickelt und ist die ausgereifteste Datenbank in diesem Segment. Graphendatenbanken modellieren Informationen als Knoten, die durch gerichtete, getypte Kanten (oder Verbindungen) verknüpft werden. Beide können beliebige Attribut-Wert-Paare enthalten. Wie viele NoSQL-Lösungen ist Neo4j in Java programmiert und bietet somit Entwicklern auf der JVM besonders gute Integration, sowohl die Bibliotheken und APIs für Programmiersprachen auf der JVM als auch die Möglichkeit Neo4j eingebettet in der eigenen Anwendung laufen zu lassen. Es gibt aber auch viele Treiber für die meisten anderen Programmiersprachen, die den Neo4j-Server nutzen.

Container verschiffen

Continuous Delivery mit Docker

Dr. Halil-Cem Gürsoy

adesso AG
C13 Dienstag, 2. 9., 14:00 – 15:10 Uhr Di de

Bei Docker handelt es sich um ein System, mit dessen Hilfe sich sehr leichtgewichtige und selbstständige Container für Applikationen aufbauen lassen. Diese Container können von einfachen „echo 'Hallo Welt'“-Applikationen bis hin zu komplexen Application Server-Installationen alles enthalten. Einmal gebaut, werden diese Container von der Entwicklung bis hin zur Produktion promoted.

Wie dies konkret funktioniert und welche Vorteile wir daraus in Entwicklungsprojekten ziehen können, werden wir im Detail betrachten.

Gesucht und gefunden

Solr vs. Elasticsearch

Markus Klose

SHI GmbH & Co. KG
C14 Dienstag, 2. 9., 15:40 – 16:50 Uhr Di de

Die beiden Shooting Stars Apache Solr und Elasticsearch haben zuletzt viel Aufmerksamkeit genossen. Und das nicht nur infolge der Akquisitionswut der Großen in Bezug auf proprietäre Technologiehersteller und der daraus resultierenden Welle der Verunsicherung. Das technologische Fundament hat sich in zahlreichen Projekten, unter äußersten Bedingungen als stabil erwiesen, das Lizenzmodell als attraktiv und das Ökosystem als gesund. Wenn da nur nicht die Qual der Wahl wäre.

Um Ihnen die Entscheidung zu erleichtern, stellt der Referent in diesem Vortrag beide Such-Server in einem objektiven Vergleich vor.

Bullseye

Ein Blick auf Dart

Florian Hirsch

adorsys GmbH & Co. KG
C15 Dienstag, 2. 9., 17:20 – 18:30 Uhr Di de

Mit Dart hat sich Google das Ziel gesetzt JavaScript als Lingua Franca des Webs abzulösen. Zwei Jahre nach der ersten Ankündigung wurde Ende 2013 die Version 1.0 vorgestellt. Seitdem wird Dart von Google produktiv eingesetzt.

Am Beispiel einer kleinen Web-Anwendung zeigt der Vortrag wie Dart tickt und was es anders macht als JavaScript.

Vertragsgemäß

Design By Contract, aber zur Übersetzungszeit

Heiner Kücker

C16 Dienstag, 2. 9., 20:00 – 21:10 Uhr Di de

Moderne Programmiersprachen wie Haskell oder Scala beeindrucken mit hochentwickelten Typ-Systemen und versprechen die Vermeidung von Fehlern bereits zur Kompilierzeit. Mit einem Code-Generator ist manches davon auch mit dem (guten) alten Java möglich.

Kryptokalypse now?

Apache Tomcat aber sicher!

Frank Pientka

MATERNA GmbH
J12 Dienstag, 2. 9., 11:20 – 12:30 Uhr Di de

Sicherheit wird im Internet groß geschrieben. Trotzdem hat die Zahl der Sicherheitslücken erschreckende Ausmaße angenommen. Am Beispiel des am meisten verbreiteten Java-Webservers Apache Tomcat wird gezeigt, welche Angriffsszenarien es gibt und was man dagegen tun kann.

Mit aktuellen Gefahrenpotentialen nach OWASP und CVE werden Lösungen mit Tomcat 8 und Java 8 diskutiert. Mit wenigen konsequent und regelmäßig durchgeführten Maßnahmen lässt sich das Sicherheitsniveau erhöhen. Eine gute Möglichkeit sein Wissen zum Thema Web-Sicherheit und Verschlüsselung aufzufrischen und sich auf Herausforderungen der Zukunft frühzeitig vorzubereiten.

JSF trifft JavaScript

JSF-Komponenten mit JavaScript für Enterprise-Anwendungen

Sven Kölpin

open knowledge GmbH
J13 Dienstag, 2. 9., 14:00 – 15:10 Uhr Di de

Komponentenbibliotheken wie Primefaces und Richfaces stellen für die Entwicklung von JSF-Anwendungen eine Vielzahl komplexer Komponenten bereit. Aber der ersten Euphorie folgt die Ernüchterung. Und statt der erhofften Vorteile muss man sich mit neuen Problemen befassen. Dabei kann man sich mit HTML5, JavaScript, Composite Components und der Behavior API maßgeschneiderte Erweiterungen für die eigene Anwendung schaffen. 

Der Vortrag zeigt wie man für eine JSF-Anwendung dynamische und wiederverwendbare Bausteine für die eigene Anwendung realisieren kann.

Enterprise Java in JavaScript

Avatar: Mehr als nur Node.js auf der JVM

Heiko Spindler

Qualitects Group

Niko Köbler

Qualitects Group
J14 Dienstag, 2. 9., 15:40 – 16:50 Uhr Di de

Aktuell sind leichtgewichtige Architekturen gefragt, in denen der Server lediglich die Ressourcen per (REST-/Push-)Services zur Verfügung stellt und ein großer Teil der Logik in HTML5-Clients per JavaScript implementiert ist. Das Projekt Avatar macht mit seiner Thin-Server-Architektur (TSA) Java EE-Ressourcen direkt per JavaScript zugreifbar, egal ob auf dem Application-Server (Service Components) oder dem Client (View Components). Server-seitig basiert Avatar auf der Node-Implementierung für die JVM
(Avatar.js für die Nashorn Scripting-Engine) und stellt somit fast die gesamte Node.js-API zur Verfügung. Es nutzt ebenfalls das Node-Programmingmodel einer Single Threaded Event-Loop (REPL) – falls gewünscht, auch parallel in mehreren Threads. Auf dem Client sorgt das Framework für das Binding der Ressourcen an HTML5-Widgets und beschränkt sich dabei auf so wenig JavaScript wie möglich, und nur so viel wie gerade nötig. Die Programmierung erinnert hier stark an die Expression Language und ist so für den erfahrenen Java-Entwickler einfach umsetzbar. Da bei einer TSA Client und Server losgelöst voneinander sind und nur protokollbasiert miteinander kommunizieren, ist die Verwendung der View Components nicht zwingend nötig. Hier kann der Entwickler auf das Framework seiner Wahl zurückgreifen.

Die Live-Demo zeigt, wie eine vollständige Java EE-Applikation ganz ohne Java-Code erstellt werden kann, nur mit dem Einsatz von JavaScript.

Kein blasses Schema?

NoSQL mit JPA und Hibernate OGM

Thomas Much

muchsoft.com
J15 Dienstag, 2. 9., 17:20 – 18:30 Uhr Di de

In der Java-Welt ist Hibernate der bekannteste Vertreter der objekt-relationalen Mapper (ORM), mit denen Domänen-Objekt-Modelle auf relationale Datenbanken abgebildet werden können. Die API ist seit langem als JPA (Java Persistence) standardisiert, aber die immer häufiger eingesetzten NoSQL-Datenbanken blieben bisher außen vor bzw. mussten mit den produktspezifischen Schnittstellen angesprochen werden. Hibernate OGM (Object/Grid Mapping) verwendet nun die bekannten JPA-Konzepte, um auch NoSQL-Datenbanken wie MongoDB oder Neo4j anzubinden. Java-Programmierer können dadurch auf die unterschiedlichsten Datenbanksysteme zugreifen – mit einer einheitlichen Schnittstelle, die vielen bereits geläufig ist.

Dieser Vortrag zeigt, wie erstaunlich gut JPA und NoSQL zusammenpassen und welche Einsatzmöglichkeiten sich daraus für Hibernate OGM ergeben. Und natürlich auch, wo die Grenzen eines solchen vereinheitlichenden Ansatzes liegen.

KaffeeKlatsch
Bookware
MATHEMA
adesso