Build-Prozesse für Geschäftsanwendungen mit Apache Maven

Größe: px
Ab Seite anzeigen:

Download "Build-Prozesse für Geschäftsanwendungen mit Apache Maven"

Transkript

1 Build-Prozesse für Geschäftsanwendungen mit Apache Maven

2 Was sind eigentlich Geschäftsanwendungen? Geschäftsanwendungen (z.b. ERP) potenziell viele Benutzer in unterschiedlichen Rollen und unterschiedlichen Eingabegeräten Hoher Grad an Integration mit hohen Zuverlässigkeitsanforderungen Bsp: Lagerbestellungen, Abrechnungen Entweder Standardprodukt (hier nicht interessant) Individualimplementierung (hier interessant) von potenziell unterschiedlichen Entwicklern/Teams => Wunsch nach Konsolidierung/Wiederverwendung

3 Anforderungen an den Build Prozess Modularisierung Geschwindigkeit Abhängigkeiten Richtlinien für Projektstrukur Dokumentation Unterstützung von Enterprise Frameworks SW Metriken

4 Agenda Eine kurze Geschichte der Build-Werkzeuge Unsere Geschichte verfügbare Build Werkzeuge Warum haben wir uns für Maven entschieden? Maven Überblick

5 Die Geschichte der Build-Werkzeuge Eine Java-zentrische Perspektive der ersten Epoche Ganz früher: 1 Programmdatei erzeugte 1 Programm => keine Werkzeugunterstützung notwendig Etwas später, aber immer noch lange her: Aufteilung von Programmen in wieder verwendbare Module => die Geburt von make (1977) In den Anfangszeiten von Java wurde make auch benutzt, aber unintuitive, technische Syntax verschreckte Anwender. Die Lösung: Ant (2000) XML - basierte Konfiguration (build.xml) einfache Syntax, einfache Konzepte inzwischen umfangreiche Bibliotheken

6 Unsere Situation vor 1-2 Jahren Für fast alle Projekte Ant als Build-Werkzeug viele schlechte Erfahrungen gesammelt, insb. für Projekte mit mehreren Modulen (langsam, schwer wartbar, unzuverlässig) Notwendig: Strategische Entscheidung für ein Build-Werkzeug Vorgehen: Sichten der interessanten Alternativen Auswahl eines Produkts (auch mit kleinen Testprojekten) Evaluation innerhalb eines mittelgroßen Projekts (2-3 Py)

7 Sichten der interessanten Alternativen Evolution von Java-Build-Werkzeugen (die zweite Epoche)

8 Ant Historie: erste Version 2000, aktuell (2008) Konzept: Aufteilung in Teilaufgaben ( Targets ) Teilaufgaben kapseln Skripte = Folgen von Anweisungen ( Task ) Abhängigkeiten zwischen Targets Ausführung eines Targets: Ausführen aller abhängigen Targets Ausführen des Skripts (= alle Tasks) Typische Tasks: Übersetzung von Java-Klassen, Packen von Archiven, Ausführen von Tests, etc.

9 Maven Historie: Maven 1: Maven 2: komplett neu geschrieben mit allgemeinerer Architektur aktuelle Version: (2.1.0 in Arbeit) Konzept: feste Konventionen bzgl. Projektaufbau deklarative Projektbeschreibung, keine Skripte Modularisierung durch Unterprojekte Verwaltung von Abhängigkeiten

10 Ivy: Ant += Abhängigkeitsverwaltung Historie: 2005 erste öffentl. Version 0.5 aktuell: (2.0 in Arbeit) Konzept: Spezifikation der Projektabhängigkeiten Ivy lädt benötigte Bibliotheken in ein lib-verzeichnis Konstruktion der Projektartefakte dann mittels Ant Anpassungsfähiger Ansatz (keine strikten Konventionen)

11 Historie: 2008 erste Version 0.1 aktuell: 0.4 Konzept: Projekt besteht aus Tasks, die Groovy- Skripte kapseln Modularisierung durch Unterprojekte Abhängigkeiten per Ivy alles dynamisch änderbar r komfortable Ant-Einbettung ng => Best of all breeds Gradle

12 Warum haben wir uns für Maven entschieden? Alternativen: Gradle oder Maven 2 Gradle: IOHO: Sehr gut geeignet für Experten-Build-Manager, problematisch für normale Anwendungsentwickler hohe Mächtigkeit durch Groovy als Build-sprache => wenn keine Erfahrungswerte vorhanden, Gefahr für ineffiziente und unzuverlässige Build potenziell aufwendige Fehlersuche durch dynamische Skriptsprache noch sehr neu Maven: feste (durch Erfahrungswerte fundierte) Vorgaben für Build-Strukturen ausgereifter wird von vielen OS-Produktanbietern unterstützt (insb. JBoss)

13 Apache-Maven in a Nutshell

14 Die grundlegenden Entwurfsrichtlinien Konvention statt Konfiguration => strikte Vorgaben für Projektstrukturen 1 Projekt erzeugt 1 Artefakt Gleichartige Benutzung/Schnittstelle z.b. gleiches Startkommando für jeden Compiler Wiederverwendung von Build-Logik Kapselung in Plugins Modellbasierte Speicherung der Projektinformationen (POM = Project Object Model) Einsatz von Repositories für Auflösung von Abhängigkeiten => Abhängigkeiten sind stets Binärabhängigkeiten

15 Ein einfaches Beispiel

16 Das minimale Java Projekt <project> <modelversion>4.0.0</modelversion> <groupid>de.akquinet.maven</groupid> <artifactid>minimal-pom</artifactid> <version>1.0-snapshot</version> </project>

17 Was kann man damit nun tun? Übersetzung aller Klassen: mvn compile Packen aller Klassen und Ressourcen zu einem Archiv (ohne die Tests) mvn package Löschen aller erzeugten Artefakte mvn clean => Einfache Aufgaben sind einfach.

18 Anforderungen an den Build Prozess Modularisierung Geschwindigkeit Abhängigkeiten Richtlinien für Projektstrukur Dokumentation Unterstützung von Enterprise Frameworks SW Metriken

19 Die interne Architektur von Maven Lifecycles

20 Die drei Lebenszyklen Maven Lifecycle := Schritte die notwendig sind ein Projekt zu bauen default erzeugen und verteilen des Projektartefakts clean lokales Löschen aller erzeugten Artefakte site erzeugen und verteilen der Projektdokumentation

21 Lifecycle Die interne Architektur Ein Lifecycle besteht aus Phasen. sequentielle Ausführung von Phasen Eine Phase besteht aus Goals Ausführung von Goals in unbestimmter Reihenfolge einer Phase kann leer sein unterschiedliche Phasen können das gleiche Goal benutzen Ein Goal wird durch ein Plugin realisiert Zuordnung von Zielen zu Phasen in Abhängigkeit vom Projekttyp (Packaging Type) z.b. Bibliotheken (jar), Webmodule (war) usw.

22 Alle Phasen des Default-Lebenszyklus 1: validate 11: process-test-resources 21: deploy 2: generate-sources 12: test-compile 3: process-sources 13: test 4: generate-resources 14: prepare-package 5: process-resources 15: package 6: compile 16: pre-integration-test 7: process-classes 17: integration-test 8: generate-test-sources 18: post-integration-test 9: process-test-sources 19: verify 10: generate-testresources 20: install => sollte alle Build-Szenarien abdecken (Einfluss von Erfahrungen ist klar zu erkennen)

23 Abhängigkeiten

24 Anforderungen an den Build Prozess Modularisierung Geschwindigkeit Abhängigkeiten Richtlinien für Projektstrukur Dokumentation Unterstützung von Enterprise Frameworks SW Metriken

25 Was sind Abhängigkeiten? innere und äußere Abhängigkeiten ein Projekt benötigt Bibliotheken für Übersetzung/Testausführung/ Ausführung Abhängigkeiten innerhalb eines modularisierten Projekts Konzept: Deklaration der Abhängigkeiten im POM Maven kümmert sich um Analyse und Auflösung des Abhängigkeitsgraphs transparente Bereitstellung der konkreten Artefakte für die gewünschte Aktion

26 Deklaration einer Abhängigkeit im POM <project> <dependencies> <dependency> <groupid>junit</groupid> <artifactid>junit</artifactid> <version>4.4</version> <scope>test</scope> </dependency> </dependencies> </project>

27 Sichtbarkeit von Abhängigkeiten compile (Standard) test Ziel wird für Übersetzung und Ausführung benötigt Ziel wird nur für Testausführung benötigt (z.b. JUnit, EasyMock) provided Ziel wird nur für die Übersetzung benötigt. Es steht in der Ausführungsumgebung zur Verfügung. (z.b. Servlet API) runtime Ziel wird nur zur Laufzeit benötigt.

28 Propagieren von Abhängigkeiten Üblicherweise sind Abhängigkeiten transitiv, z.b. A benötigt log4j B benötigt A B benötigt dann auch log4j Projekt-B Projekt-A log4j manchmal ist es aber nicht so einfach...

29 Transitivität hängt vom Sichtbarkeitsbereich ab compile transitives Propagieren der Abhängigkeit provided Abhängigkeiten werden nicht propagiert. Jedes Artefakt ist selbst für seine Zielumgebung verantwortlich. test Abhängigkeiten werden nicht propagiert.

30 Die genaue Propagationstabelle

31 Modularisierung

32 Warum sollte man ein Projekt in verschiedene Projekte aufspalten? Alternative: ein Anwendungsprojekt mit Bibliotheken Technische Beschränkungen z.b. JEE-Anwendung bestehend aus JPA-, EJB- und Web-Modulen Einsatz von Modulen um SW-Architektur abzubilden Verteilung der Schichten in unterschiedliche Projekte Build-Werkzeug und/oder IDE erzwingen mit Zugriffsbeschränkungen die SW-Architektur Ein Beispiel

33 Einsatz von Unterprojekten zur Erzwingung der SW- Architektur

34 Umsetzung in Maven eine knappe Übersicht Ein Mehrmodul-Projekt definiert sich durch ein Elternprojekt, das beliebig viele Submodule referenziert. Ein Elternprojekt benutzt speziellen Projekttyp pom, vererbt Konfiguration und Parameter an seine Submodule

35 Typische Verzeichnisstruktur Eternprojekt Submodule Quell- und Zielordner

36 Was hat man nun davon? Korrekte effiziente Reihenfolge der Projekt-Builds Maven analysiert die Abhängigkeiten jede Aktion, die auf dem Elternprojekt aufgerufen wird, wird auch auf den Subprojekten aufgerufen Vererbung der Konfiguration Build-Konfiguration (z.b. Compiler-Optionen) Abhängigkeiten (z.b. für Standardbibliothken wie log4j) Build-Eigenschaften (z.b. für eine Adaptierung des Builds) => Zentrale, damit vereinfachte Wartung der POM-Dateien

37 Projektdokumentation

38 Anforderungen an den Build Prozess Modularisierung Geschwindigkeit Abhängigkeiten Richtlinien für Projektstrukur Dokumentation Unterstützung von Enterprise Frameworks SW Metriken

39 Entwicklungsprojekte und Dokumentation Das Problem mit Entwicklungsdokumentation alles was händisch gewartet, veraltet höchstwahrscheinlich Daher: soweit möglich, sollte Dokumentation automatisch erzeugt werden Dokumentation sollte nahe beim Code liegen (möglichst kein Medienbruch) Konzept von Maven: Dokumentation eines Artefakts gehört zum Projekt Unterstützung von automatisch erstellten Reports

40 Ein Beispiel Erzeugung direkt aus den POM-Daten

41 Reports / Berichte Erzeugen von Berichten pro Projekt ist einfach, viele Plugins existieren (z.b. für JavaDoc, Testabdeckung, Kodierungsrichtlinien usw.) Was man für größere Geschäftsanwendungen aber eigentlich möchte, ist aggregierte Reports für alle Subprojekte Trendanalysen => Hierfür gibt es das Dashboard-Plugin...

42 Dashboard Die Architektur Lokale Reportplugins erzeugen Daten (XML-files) Dashboard aggregiert Daten und erzeugt Report mit Charts Dashboard speichert Daten für eine Trend-Analyse

43 Beispiel Testabdeckung Die aggregierte Zusammenfassung

44 Beispiel Testabdeckung Zentraler Zugriff auf die einzelnen Reports

45 Trendanalyse der Codekopien

46 Repositories

47 Maven Repositories Die Architektur project pom.xml local repository Artefakt artifact global repository Artefakt artifact

48 Aber eigentlich benötigt man ein Enterprise Repository Ein Enterprise-Repository (z.b. Artifactory, Archiva) ermöglicht: Proxy für externe Repositories Reduktion von Netzwerklast (als Cache) Berücksichtigung von Intranet-Grenzen Deployment interner (nichtöffentlicher) Artefakte

49 Zusammenfassung und Bewertung

50 Zusammenfassung/Bewertung von Maven Einfache Aufgaben sind einfach wenn man sich an die Konventionen hält Komplexere Aufgabe sind angemessen einfach wenn sie von Maven fehlerfrei unterstützt werden Komplexe Aufgaben, die nicht von Maven unterstützt werden sind schwierig. 2 Alternativen: Einsatz eines Ant-Skriptes, das von Maven angesteuert wird Erstellung eines eigenen Maven-Plugins Unsere Projekterfahrung: Aufwand für Wartung von POMs war für Komplexität gering (verglichen mit Erfahrungswerten mit Ant) => Wir bleiben erstmal bei Maven :-)

51 Was noch? interessante Plugins Integrationstests mit Cargo UI Tests mit Selenium Release Plugin Integration CI Server Hudson Eclipse, IDEA Ant

52 Danke fürs Zuhören Kontakt

53 Links aus dem Vortrag Enterprise Repositories Eclipse Maven Plugin (Eclipse Update Site) Continuous Integration https://hudson.dev.java.net/

Softwareprojekte mit Kultur

Softwareprojekte mit Kultur Maven Softwareprojekte mit Kultur Patrick Zeising Konfigurationsmanagement Motivation Projektaufbau unterschiedlich Abläufe zum Übersetzen und Deployen unterschiedlich Verwendete Tools, Prozesse, Skripte

Mehr

Maven 2 Softwareprojekte mit Kultur

Maven 2 Softwareprojekte mit Kultur Maven 2 Softwareprojekte mit Kultur Patrick Zeising 28.05.2010 Motivation Projekte unterscheiden sich stark im Aufbau Abläufe beim Übersetzen und Deployen unterscheiden sich stark

Mehr

Der Weisheit letzter Schluss:

Der Weisheit letzter Schluss: Der Weisheit letzter Schluss: Maven 2 in der Java Entwicklung Web Site: www.soebes.de Blog: blog.soebes.de Email: info@soebes.de Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1. Was ist Maven? 2. Features von

Mehr

Automatischer Build mit Maven 2

Automatischer Build mit Maven 2 Automatischer Build mit Maven 2 Stefan Scheidt OPITZ CONSULTING GmbH Ihr Referent Stefan Scheidt Senior Architekt bei der OPITZ CONSULTING GmbH Seit über 10 Jahren im Oracle- und Java-Umfeld tätig Schwerpunkte:

Mehr

Build Management. Präsentation von Daniel Mies daniel.mies@1und1.de

Build Management. Präsentation von Daniel Mies daniel.mies@1und1.de Build Management Präsentation von Daniel Mies daniel.mies@1und1.de Agenda 1&1 Member of United Internet Build Management mit Maven Motivation Kompilieren & Paketieren Dependency Management Software Analyse

Mehr

Maven 2.0. DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH. 2008 codecentric GmbH

Maven 2.0. DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH. 2008 codecentric GmbH Maven 2.0 DRV Jahrestagung Java Würzburg 26.2.2008 Rainer Vehns, codecentric GmbH Agenda Einführung Project Object Model (POM) Repositories Maven und Eclipse Maven - LIVE 1. EINFÜHRUNG Einführung - Was

Mehr

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012 Buildsystem Maven & Scons Controls Entwicklungsforum Januar 2012 1 2 a call from the past Binary Repository Speichern von Artefakten (z.b. Shared Library und zugehörige Header) Versionierung von Artefakten

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 12: Metawissen Java Bibliotheken, Maven Robert Jakob Albert-Ludwigs-Universität Freiburg, Germany SS 2013 Robert Jakob (Univ. Freiburg) Programmieren in Java JAVA 1 / 33

Mehr

Verteilte Systeme (WS 2013/14) Übung 0: Einführung in Maven und Git. Oliver Kleine Institut für Telematik, Universität zu Lübeck

Verteilte Systeme (WS 2013/14) Übung 0: Einführung in Maven und Git. Oliver Kleine Institut für Telematik, Universität zu Lübeck Verteilte Systeme (WS 2013/14) Übung 0: Einführung in Maven und Git Oliver Kleine Institut für Telematik, Universität zu Lübeck Build-Management in JAVA 3 Build-Management? Wozu? Traditionelle manuelle

Mehr

Seminar - Bericht. Maven Project Management & Comprehension. Fachhochschargau Departement Technik Studiengang Informatik. Gruppe Jonas Weibel

Seminar - Bericht. Maven Project Management & Comprehension. Fachhochschargau Departement Technik Studiengang Informatik. Gruppe Jonas Weibel Seminar - Bericht Maven Project Management & Comprehension Fachhochschargau Departement Technik Studiengang Informatik Gruppe Jonas Weibel Betreuender Dozent Prof. Dr. Dominik Gruntz Windisch, im Januar

Mehr

Einführung in Maven und GWT

Einführung in Maven und GWT Einführung in Maven und GWT Prof. Christoph Knabe Beuth-Hochschule Berlin 08.05.2014 Gliederung Motivation für Build-Werkzeug Maven-Ziele, Begriffe Maven-Benutzung in 5 min Maven-Vorteile GWT-Ziele GWT-Projekt

Mehr

Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy

Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy Über Ant und Maven zu SBT und Gradle Persönliche Build-Höllen für Jedermann Andreas Hartmann & Dr. Halil-Cem Gürsoy 07.04.2011 Speaker Andreas Hartmann [hartmann@adesso.de] Principal Software Engineer

Mehr

Builddreikampf: Ant, Maven und Gradle. Sven Bunge / Carl Düvel

Builddreikampf: Ant, Maven und Gradle. Sven Bunge / Carl Düvel Builddreikampf: Ant, Maven und Gradle Sven Bunge / Carl Düvel holisticon AG Wettkampfplan 1. Die Regeln 2. Vorstellung der Kandidaten 3. Ring frei die Disziplinen! 1. Dependency Management 2. Multiprojektsupport

Mehr

Buildwerkzeuge für Javaprojekte. Christian Bunse Institut für Informatik 03.07.2008

Buildwerkzeuge für Javaprojekte. Christian Bunse Institut für Informatik 03.07.2008 Buildwerkzeuge für Javaprojekte Christian Bunse Institut für Informatik 03.07.2008 Inhalt Der Build Besonderheiten von Javaprojekten Ziele von Buildwerkzeugen Continuous Integration Vorstellung von Buildwerkzeugen

Mehr

Buildmanagement. Konstantin Domoratskyy

Buildmanagement. Konstantin Domoratskyy Buildmanagement Konstantin Domoratskyy Alle Tätigkeiten, die man bereits zwei mal manuell durchgeführt hat, sollen automatisiert werden. Mike Clark 20.05.08 Konstantin Domoratskyy: Buildmanagement 2 Inhalt

Mehr

Konfigurationsmanagement

Konfigurationsmanagement Konfigurationsmanagement mit Maven 2 Michael Albrecht, Manfred Wolff Michael Albrecht ist Chefarchitekt bei der NEUSTA GmbH und seit 2002 mit der Entwicklung und der Architektur von Java EE Projekten beschäftigt.

Mehr

Gliederung. Einführung. Kleines Maven Wörterbuch. Maven im Unternehmenseinsatz. Was bringt die Zukunft?

Gliederung. Einführung. Kleines Maven Wörterbuch. Maven im Unternehmenseinsatz. Was bringt die Zukunft? Build Management, Teil 2: Apache Maven mehr als nur Ant Facelifting Kristian Köhler Steffen Schluff Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung

Mehr

Vom lokalen Build zum Deployment

Vom lokalen Build zum Deployment Vom lokalen Build zum Deployment International PHP Conference Manuel Pichler 12.10.2011 Vom lokalen Build zum Deployment 1 / 36 Über mich Diplominformatiker Mehr als 10 Jahre Erfahrung im PHP-Umfeld Autor

Mehr

Grundlagen des Buildmanagement- Tools Apache Maven

Grundlagen des Buildmanagement- Tools Apache Maven Grundlagen des Buildmanagement- Tools Apache Maven Seminararbeit im Studiengang Scientific Programming vorgelegt von Sinan Böcker Matr.-Nr.: 836951 am 15. Dezember 2011 an der Fachhochschule Aachen Erstprüfer:

Mehr

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,

Mehr

Software-Engineering 2: Automatische Build-Werkzeuge

Software-Engineering 2: Automatische Build-Werkzeuge Software-Engineering 2: Automatische Build-Werkzeuge Prof. Dr. Axel Böttcher 22. Oktober 2012 Motivation 1 Entwicklungprozesse in der Praxis, Beispiel Facbook: Our development cycle is extremely fast,

Mehr

Nils Hartmann Gerd Wütherich. Build my bundle! oder: Es muss nicht immer PDE sein

Nils Hartmann Gerd Wütherich. Build my bundle! oder: Es muss nicht immer PDE sein Nils Hartmann Gerd Wütherich Build my bundle! oder: Es muss nicht immer PDE sein Inhalt» Theorie» Bauen von Software» Projekte, Projektbeschreibungen und Definition von Abhängigkeiten» Integration bestehender

Mehr

1 Welches Problem löst Maven?

1 Welches Problem löst Maven? 1 Welches Problem löst Maven? Maven kann den kompletten Projektlifecycle verwalten und im Speziellen die internen und externen Abhängigkeiten eines Projekts managen. Im Wesentlichen geschieht dies über

Mehr

Den Entwicklungsprozess im Griff mit Maven, Jenkins und Git

Den Entwicklungsprozess im Griff mit Maven, Jenkins und Git Sourcetalktage 2012 Referent: Tobias Heisecke ( theisecke@googlemail.com ) - seit 1995 bei der ZAD-GmbH in Northeim ( Dienstleistungsrechenzentrum im Gesundheitswesen ) - Forderungseinzug für Krankentransport-

Mehr

Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de

Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de ADF Spotlight - Entwicklungswerkzeuge & - methoden - ADF 12c mit Git, Maven & Co. - Status Quo Ulrich Gerkmann-Bartels Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de +++ Bitte

Mehr

Referent: Thomas Storch (FI für Anwendungsentwicklung, 1. Lj.) Vortrag: Apache Maven. Datum: 25.04.2012. Deutsche Software Engineering & Research GmbH

Referent: Thomas Storch (FI für Anwendungsentwicklung, 1. Lj.) Vortrag: Apache Maven. Datum: 25.04.2012. Deutsche Software Engineering & Research GmbH Referent: Thomas Storch (FI für Anwendungsentwicklung, 1. Lj.) Vortrag: Apache Maven Datum: 25.04.2012 Deutsche Software Engineering & Research GmbH Steinstraße 11 02826 Görlitz Germany Telefon: +49 35

Mehr

Softwaretests. Werkzeuge zur Automatisierung. Thementag Wer testet, ist feige. Autor: für 24.06.2009. Markus Alvermann.

Softwaretests. Werkzeuge zur Automatisierung. Thementag Wer testet, ist feige. Autor: für 24.06.2009. Markus Alvermann. Softwaretests Werkzeuge zur Automatisierung für Thementag Wer testet, ist feige 24.06.2009 Autor: Markus Alvermann Seite 2 / 39 Agenda Motivation Versionsverwaltung Build-Tools Unit-Tests GUI-Tests Continuous

Mehr

Continuous Integration mit Jenkins

Continuous Integration mit Jenkins Continuous Integration mit Jenkins Christian Robert anderscore GmbH Senior Software Engineer Frankenwerft 35 christian.robert@anderscore.com 50677 Köln www.anderscore.com FrOSCon 2012 Christian Robert

Mehr

Das Interceptor Muster

Das Interceptor Muster Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster

Mehr

Wer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.

Wer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre. Copyright 2010, MATHEMA Software GmbH 1 Wer bin ich > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.Net > Schwerpunkte Software

Mehr

Das neue Android Build System

Das neue Android Build System Das neue Android Build System Besser Builden mit Gradle JUGS Event, 18. Juni 2015 Kaspar von Gunten, Ergon Informatik AG whois( kvg ) Software-Engineering seit 2002 Entwicklung in Java (Client/Server,

Mehr

Webtests mit Selenium, Groovy, TestNG und Maven

Webtests mit Selenium, Groovy, TestNG und Maven mit Selenium, Groovy, TestNG und Maven Im ersten Teil dieser Artikelserie [1] wurden Testkonzepte und Selenium [2] näher vorgestellt. Dieser zweite Teil stellt die Integration in ein Projekt vor und rundet

Mehr

Maven Tycho. Google Guice. Mylyn für Modelle. 7. bis 11. November 2011. www.jax.de. Eclipse meets. Plus CD! The Westin Grand München Arabellapark

Maven Tycho. Google Guice. Mylyn für Modelle. 7. bis 11. November 2011. www.jax.de. Eclipse meets. Plus CD! The Westin Grand München Arabellapark M Plus CD! JE TZ ER T N! 4.11 Deutschland 9,80 Österreich 10,80, Schweiz sfr 19,20 4.2011 KE Neue Serie: The Making of an Eclipse Project eclipse magazin VO R The Westin Grand München Arabellapark Anmeldung

Mehr

Schöner Bauen mit Maven und Nexus

Schöner Bauen mit Maven und Nexus Schöner Bauen mit Maven und Nexus Johannes Caspary johannes.caspary@cms.hu-berlin.de Skripte zur Automatisierung des Kompilierens und Testens von Quellcode beschleunigen die Entwicklung neuer Software.

Mehr

Welches hätten Sie denn gerne? Markus Stäuble, CTO, namics (deutschland) GmbH

Welches hätten Sie denn gerne? Markus Stäuble, CTO, namics (deutschland) GmbH Buildsysteme Welches hätten Sie denn gerne? Markus Stäuble, CTO, namics (deutschland) GmbH Kurze Vorstellung: about me Markus Stäuble CTO bei namics (deutschland) GmbH Programmierung mit Java seit Version

Mehr

Build-Management. Der Einsatz von Make, Ant und Maven und Co. Prof. Dr. Nikolaus Wulff

Build-Management. Der Einsatz von Make, Ant und Maven und Co. Prof. Dr. Nikolaus Wulff Build-Management Der Einsatz von Make, Ant und Maven und Co. Prof. Dr. Nikolaus Wulff Integrierter Arbeitsplatz Eine IDE wie Eclipse, JBuilder oder NetBeans unterstützt die alltägliche Arbeit. Sie bietet

Mehr

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de

ANT. Kurzvortrag von Manuel Schulze. mschulze@inf.fu-berlin.de ANT Kurzvortrag von Manuel Schulze mschulze@inf.fu-berlin.de ANT Überblick Teilprojekt der Apache Software Foundation [1] ANT ist Opensource Build-Tool ähnlich wie make (?) jedoch voll auf Java zugeschnitten

Mehr

Continuous Database Integration mit Flyway

Continuous Database Integration mit Flyway XP Days Germany 2015 Continuous Database Integration mit Flyway Sandra Parsick info@sandra-parsick.de @SandraParsick Zur meiner Person Freiberufliche Softwareentwickler und Consultant im Java- Umfeld Schwerpunkte:

Mehr

Gradle. Ein kompakter Einstieg in das moderne Build-Management-System ---> Mit einem Geleitwort von Hans Dockter, Erfinder von Gradle

Gradle. Ein kompakter Einstieg in das moderne Build-Management-System ---> Mit einem Geleitwort von Hans Dockter, Erfinder von Gradle Gradle Ein kompakter Einstieg in das moderne Build-Management-System ---> Mit einem Geleitwort von Hans Dockter, Erfinder von Gradle von Joachim Baumann 1. Auflage Gradle Baumann schnell und portofrei

Mehr

Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012

Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012 Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012 vorgestellt am 23.05.2012 Alexander Pacnik inovex GmbH Wir nutzen Technologien, um unsere Kunden glücklich zu machen.

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Make-loses Java für mehr Produktivität: Das z 2 -Environment. Henning Blohm 25.6.2012

Make-loses Java für mehr Produktivität: Das z 2 -Environment. Henning Blohm 25.6.2012 Make-loses Java für mehr Produktivität: Das z 2 -Environment Henning Blohm 25.6.2012 1 Z2 ist ein radikal neuer* Ansatz für System Life-Cycle Management in Java * jedenfalls für Java Oh je noch ein Tool?

Mehr

Oracle Cloud Control. Seminarunterlage. Version 12.03 vom

Oracle Cloud Control. Seminarunterlage. Version 12.03 vom Seminarunterlage Version: 12.03 Version 12.03 vom 1. Oktober 2013 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen

Mehr

Architekturüberblick Gradle

Architekturüberblick Gradle Architekturüberblick Gradle STEFAN ZÖRNER, EMBARC Stefan.Zoerner@ @StefanZoerner 0 Über diese Folien In unserem Architektur-Spicker #1 ( Der Architekturüberblick ) schlagen wir u.a. eine Struktur für Folienvorträge

Mehr

Continuous Integration für Eclipse 4 RCP-Anwendungen mit Maven/Jenkins/Nexus/Sonar

Continuous Integration für Eclipse 4 RCP-Anwendungen mit Maven/Jenkins/Nexus/Sonar Continuous Integration für Eclipse 4 RCP-Anwendungen mit Maven/Jenkins/Nexus/Sonar Hannes Schmidt 02.10.2015 Eclipse-Basics Plugins, Features, Produkte Produkt Feature A Plugin A Plugin B Feature B Plugin

Mehr

Migrationsanleitung von 2.0 auf 2.1

Migrationsanleitung von 2.0 auf 2.1 Die wichtigste Neuerung von 2.0 auf 2.1 aus Sicht der Anwendungs- Migration ist die Verwendung von Maven. Mit Maven holt sich die Anwendung alle notwendigen Bibliotheken in den jeweils angegebenen Versionen

Mehr

Projektmanagement mit Maven

Projektmanagement mit Maven Projektmanagement mit Maven (Ausarbeitung des Seminars vom 9.12.2008) von Sebastian Karbe(ii5849@fh-wedel.de) (Technische Informatik) Inhaltsverzeichnis 1 Grundlegendes 2 1.1 Entstehung.................................

Mehr

Auswahl eines Continuous Integrationsservers

Auswahl eines Continuous Integrationsservers Auswahl eines Continuous Integrationsservers Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung Einführung Auswahlkriterien Fazit 2 Gliederung

Mehr

Praktikum Softwarearchitektur. Apache Maven. Klaus-Christian Saalfeld. 18. Juni 2011. FernUniversität in Hagen

Praktikum Softwarearchitektur. Apache Maven. Klaus-Christian Saalfeld. 18. Juni 2011. FernUniversität in Hagen Praktikum Softwarearchitektur Apache Maven 18. Juni 2011 FernUniversität in Hagen Inhaltsverzeichnis 1. Einführung in Maven 1 2. Grundlagen 1 2.1. Erste Schritte mit Maven........................... 1

Mehr

Ohne Build geht's besser: Makeloses Java mit dem z 2 -Environment. Henning Blohm 5.7.2012

Ohne Build geht's besser: Makeloses Java mit dem z 2 -Environment. Henning Blohm 5.7.2012 Ohne Build geht's besser: Makeloses Java mit dem z 2 -Environment Henning Blohm 5.7.2012 1 Z2 ist ein radikal neuer* Ansatz für System Life-Cycle Management in Java * jedenfalls für Java Ein Builtool?

Mehr

Apache - Maven. Java-Erstellung auf Plugin-Basis. Martin Hoffmann

Apache - Maven. Java-Erstellung auf Plugin-Basis. Martin Hoffmann Apache - Maven Java-Erstellung auf Plugin-Basis Martin Hoffmann Übersicht Was ist Maven Alternative: Ant Arbeitsweise von Maven Standard Eigene Konfigurationen & Plugins Arbeiten im Team Aufteilen von

Mehr

mitp Professional Maven 3 Konfigurationsmanagement mit Java von Martin Spiller 1. Auflage

mitp Professional Maven 3 Konfigurationsmanagement mit Java von Martin Spiller 1. Auflage mitp Professional Maven 3 Konfigurationsmanagement mit Java von Martin Spiller 1. Auflage Maven 3 Spiller schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv 2011 Verlag C.H.

Mehr

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de

Das Build Tool Ant. Sebastian Mancke, mancke@mancke-software.de Das Build Tool Ant Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation Bei der Übersetzung und Pflege von Software treten viele, gleich bleibende Arbeitsschritte auf. Übersetzen des Codes

Mehr

CamelCaseCon 2011 Vortrag von Stefan Glase am 07.09.2011. Statische Code-Analyse für Groovy & Grails mit CodeNarc

CamelCaseCon 2011 Vortrag von Stefan Glase am 07.09.2011. Statische Code-Analyse für Groovy & Grails mit CodeNarc Statische Code-Analyse für Groovy & Grails mit CodeNarc CamelCaseCon 2011 Vortrag von Stefan Glase am 07.09.2011 OPITZ CONSULTING GmbH 2011 Folie 1 Stefan Glase, OPITZ CONSULTING Software-Entwickler Java

Mehr

Das Build-Tool ANT ETIS SS05

Das Build-Tool ANT ETIS SS05 Das Build-Tool ANT ETIS SS05 Motivation Build - Datei Allgemeiner Aufbau Project Target Task Properties Zusammenfassung Literatur Gliederung 2 Motivation ANT I open source-projekt (aktuell: Version 1.6.5)

Mehr

Bau dir dein eigenes Eclipse

Bau dir dein eigenes Eclipse Eclipse Builds mit Bau dir dein eigenes Eclipse Viele Unternehmen setzen auf Eclipse als IDE, reichern diese aber um eigene Plug-ins und ein eigenes Branding an. Wie in [1] beschrieben, war der Prozess

Mehr

Where Do I Begin? Stefan Reinhold

Where Do I Begin? Stefan Reinhold Where Do I Begin? Wie starte ich ein Enterprise-Projekt mit Maven? Stefan Reinhold IT Informatik GmbH, Ulm Inhalt Einleitung Rahmenbedingungen Gründe für Maven Bestandsaufnahme Zukunft Infrastruktur Softwareüberblick

Mehr

Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch

Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch Eclipse Runtime (OSGi) als Plattform eines Swing Rich Client Andreas Mösching Senior IT Architekt Hewlett-Packard (Schweiz) GmbH HP Banking Service Center Bern andreas.moesching@rtc.ch Zu meiner Person

Mehr

OSGi-basierte Webapplikationen Ein Erfahrungsbericht

OSGi-basierte Webapplikationen Ein Erfahrungsbericht OSGi-basierte Webapplikationen Ein Erfahrungsbericht Zürich, 18. März 2009 Pascal Nüesch, Software Engineer 1 www.namics.com Zu meiner Person» Lehre als Elektroniker mit Schwerpunkt SW-Entwicklung» Java

Mehr

Automatisierte Build-Prozesse in Java-Projekten

Automatisierte Build-Prozesse in Java-Projekten Continuous Integration Referent Olaf Kossak Freiberuflicher Informatiker Studium an der Universität Hamburg Java-Entwickler Teamleiter Qualitätsingenieur Banken, Versicherungen, Großhandel, Telekommunikation,

Mehr

Abhängigkeiten und Git

Abhängigkeiten und Git Abhängigkeiten und Git Continuous Lifecycle 2013, 11.11.2013 René Preißel (@RenePreissel) Bjørn Stachmann (@old_stachi) Inhalt 1. Über welche Abhängigkeiten reden wir? 2. Wie versionieren? a. Ein großes

Mehr

Architektur iterativ auf Basis von OSGi entwickeln

Architektur iterativ auf Basis von OSGi entwickeln Architektur iterativ auf Basis von OSGi entwickeln Ein Vortrag von Sven Jeppsson (syngenio AG) und Karsten Panier (Signal Iduna Gruppe) 1 Inhalt Motivation Architektur Architektur Evolution OSGi Refactoring

Mehr

Konfigurationsmanagement mit Maven

Konfigurationsmanagement mit Maven Konfigurationsmanagement mit Maven Manfred Wolff, wolff@manfred-wolff.de, www.manfred-wolff.de Michael Albrecht, malbrecht@neusta.de, wwwneusta.de Im Entwicklungsstadium von Software spielen Managementfragen

Mehr

Open Source. Hendrik Ebbers 2015

Open Source. Hendrik Ebbers 2015 Open Source Hendrik Ebbers 2015 Open Source About me Hendrik Ebbers Lead of JUG Dortmund Java Architect @ Canoo Engineering AG JavaOne Rockstar, Java Expert Group Member Speaker, blogger & author Engineering

Mehr

Ant - das Java Build-Tool

Ant - das Java Build-Tool Hauptseminar Ant - das Java Build-Tool Funktionalität, Mächtigkeit und Praxiserfahrungen Betreuer: Vortragender: Dipl.Inf. Thorsten Strufe Christoph Lühr Gliederung Build-Tools Aufgaben und Probleme Ant

Mehr

Die Integration von Requirements Management, Software Configuration Management und Change Management mit der MKS Integrity Suite 2006

Die Integration von Requirements Management, Software Configuration Management und Change Management mit der MKS Integrity Suite 2006 Die Integration von Requirements Management, Software Configuration Management und Change Management mit der MKS Integrity Suite 2006 Oliver Böhm MKS GmbH Agenda Überblick Der Entwicklungsprozess: Requirements

Mehr

NEUES AUS DER ENTWICKLUNG. April 2015

NEUES AUS DER ENTWICKLUNG. April 2015 NEUES AUS DER ENTWICKLUNG April 2015 Agenda R&D Redwood Produkt-Upgrade und -Releasestrategie Namensänderungen / -Konventionen Produkt Updates Schlusswort INTRODUCTION R&D April 2015 Unser Team 20+ Mitarbeiter

Mehr

Serbest Hammade / Resh serbest.hammade@hammade.de. Do, 21. Juni 2012

Serbest Hammade / Resh serbest.hammade@hammade.de. Do, 21. Juni 2012 Serbest Hammade / Resh serbest.hammade@hammade.de Do, 21. Juni 2012 Continuous Integration Konzept von Continuous Integration Vorraussetzungen für CI Vor- & Nachteile Jenkins Beispiel mit Java Beispiel

Mehr

Configuration Management

Configuration Management Configuration Management Software Engineering Projekt WS 06/07 Fachbereich Softwaretechnik (IV) Technische Universität Berlin Oliver Frank 1 Einleitung...3 2 Version Management... 4 2.1 Lagerung der Dateien...4

Mehr

Invoca Systems. Application Development Framework. Systemdokumentation. Vers. 1.2.2 / 08.02.2005. copyright (c) by Invoca Systems, 4304 Giebenach

Invoca Systems. Application Development Framework. Systemdokumentation. Vers. 1.2.2 / 08.02.2005. copyright (c) by Invoca Systems, 4304 Giebenach Invoca Systems Application Development Framework Systemdokumentation Vers. 1.2.2 / 08.02.2005 Konzepte: Architektur (Backend Applicationserver Client) Java-Database Objectrelational Mapping (=> Doku) Java

Mehr

Oberseminar Software-Entwicklung: Maven. Das Software-Projekt-Verwaltungspragramm - Maven. Oberseminar Software-Entwicklung. Autor: Martin Hoffmann

Oberseminar Software-Entwicklung: Maven. Das Software-Projekt-Verwaltungspragramm - Maven. Oberseminar Software-Entwicklung. Autor: Martin Hoffmann Das Software-Projekt-Verwaltungspragramm - Maven Oberseminar Software-Entwicklung Autor: Martin Hoffmann 1/13 Inhaltsverzeichnis Oberseminar Software-Entwicklung: Maven 1. Einführung...3 2. Der Ansatz

Mehr

Agile Java-Entwicklung in der Praxis

Agile Java-Entwicklung in der Praxis Agile Java-Entwicklung in der Praxis Michael Hüttermann O'REILLY* Beijing Cambridge Famham Köln Paris Sebastopol Taipei Tokyo Inhalt Prolog Einleitung XI XV Teil I: Die Methodik agiler Softwareentwicklung

Mehr

Spring Dynamic Modules for OSGi Service Platforms

Spring Dynamic Modules for OSGi Service Platforms Gerd Wütherich freiberuflicher Softwarearchitekt Spring Dynamic Modules for OSGi Service Platforms Server Anwendungen mit Spring und Eclipse Equinox Agenda OSGi Technologie: OSGi Technologie im Überblick

Mehr

Empfehlungen für erfolgreiche ADF-Projekte. Volker Linz Oracle Deutschland B.V. & Co. KG

Empfehlungen für erfolgreiche ADF-Projekte. Volker Linz Oracle Deutschland B.V. & Co. KG Empfehlungen für erfolgreiche ADF-Projekte Volker Linz Oracle Deutschland B.V. & Co. KG Empfehlungen für erfolgreiche ADF-Projekte Architektur & Design Team & Skills Organisation & Entwicklungsprozess

Mehr

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009

Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 1 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell

Mehr

Eignet sich Eclipse RCP als Enterprise Plattform? 2. Mai 2006 Lars Stucki & Edwin Steiner www.inventage.com

Eignet sich Eclipse RCP als Enterprise Plattform? 2. Mai 2006 Lars Stucki & Edwin Steiner www.inventage.com Eignet sich Eclipse RCP als Enterprise Plattform? 2. Mai 2006 Lars Stucki & Edwin Steiner www.inventage.com Eignet sich Eclipse RCP als Enterprise Plattform? Einführung Demos Corporate Governance Asset

Mehr

Software Configuration Management. Referat von Jens Zastrow Software Engineering Projekt WS 2001/2002

Software Configuration Management. Referat von Jens Zastrow Software Engineering Projekt WS 2001/2002 Software Configuration Management Referat von Jens Zastrow Software Engineering Projekt WS 2001/2002 Inhalt Motivation SCM-Aufgaben Item-Identifikation Identifikation Version/Release Management Change

Mehr

C. Schädel, C. Schmidt-Casdorff iks GmbH. Provisioning unter OSGi für Test und Betrieb

C. Schädel, C. Schmidt-Casdorff iks GmbH. Provisioning unter OSGi für Test und Betrieb C. Schädel, C. Schmidt-Casdorff iks GmbH Provisioning unter OSGi für Test und Betrieb Einleitung Überblicksvortrag Beispiele idealisiert Mischformen existieren Problemstellung des Provisioning unter OSGi

Mehr

Anforderungsgetriebene Webentwicklung mit Grails:

Anforderungsgetriebene Webentwicklung mit Grails: ne mit Grails: und dem 26.01.2012 und dem Gliederung und dem Projektumfeld Agentur mit weniger als 5 Mitarbeitern Schwerpunkte: mit Typo 3 / PHP ios App-Entwicklung für ipad und iphone und dem Folie 1

Mehr

Operation am offenen Herzen

Operation am offenen Herzen Operation am offenen Herzen Case Study zur erfolgreichen JEE-7 Migration Dirk Ehms, GameDuell GmbH GameDuell Plattform Topologie Classic Platform Social Platform 64x Frontend Server OpenMQ 16x Frontend

Mehr

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand IntelliJ IDEA Blick über den Eclipse-Tellerrand Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Version: 1.0 www.oio.de info@oio.de Gliederung 2007 Orientation in Objects GmbH IntelliJ IDEA:

Mehr

Die perfekte Build-Pipeline

Die perfekte Build-Pipeline Die perfekte Build-Pipeline Ohne Mühen Webprojekte bauen Qafoo GmbH October 25, 2012 Die perfekte Build-Pipeline 1 / 44 What comes next? Willkommen Die perfekte Build-Pipeline 2 / 44 Über uns Jakob Westhoff

Mehr

Java Web Services mit Apache Axis2 Entwickler

Java Web Services mit Apache Axis2 Entwickler Thilo Frotscher, Dapeng Wang, Marc Teufel Java Web Services mit Apache Axis2 Entwickler Vorwort 15 1 Einleitung 25 1.1 Entstehung 26 1.2 Unterstützte Standards 28 1.3 Was beinhaltet Axis2? 29 1.4 Warum

Mehr

CDT bei Bosch Rexroth (Ein Erfahrungsbericht)

CDT bei Bosch Rexroth (Ein Erfahrungsbericht) CDT bei Bosch Rexroth (Ein Erfahrungsbericht) DCC/EDF Harald Kästel-Baumgartner Agenda Firmenpräsentation Ausgangslage Zielsetzung Know How Toolchain Projektstruktur Positive und negative Erfahrung 2 Das

Mehr

Docker für Java Entwickler

Docker für Java Entwickler Wir unternehmen IT. Docker für Java Entwickler Dr. Roland Huß, ConSol* Software GmbH JavaLand, 24.3.2015 Agenda Docker Crash Intro Docker für Java Entwickler Integrationstests Paketierung von Anwendungen

Mehr

Build-Pipeline mit Jenkins

Build-Pipeline mit Jenkins JUG Augsburg 24.10.2013 Seite 1 Wer sind wir? Agiler Architekt und Entwickler Eigenes Produkt mit kompletter Pipeline / CD aktuell: Architekt / Entwickler in einem großen Entwicklungsprojekt im Automotiv

Mehr

Deutsche Post - Renten Service. Praxisbeispiel: OSGi im Massendruck

Deutsche Post - Renten Service. Praxisbeispiel: OSGi im Massendruck Deutsche Post - Renten Service Praxisbeispiel: OSGi im Massendruck Praxisbeispiel: OSGi im Massendruck OSGi Thementag 03.11.2009 Autor: Alexander Wolff (Deutsche Post) Agenda Deutsche Post - NL Rentenservice

Mehr

Git in großen Projekten

Git in großen Projekten Git in großen Projekten Einsatz von Submodulen und Subtrees René Preißel (rp@etosquare.de) Buchhandlung Lehmanns, 16.10.2013 1 Über Mich René Preißel (rp@etosquare.de) Freiberuflicher Berater, Entwickler,

Mehr

Entwicklungswerkzeuge

Entwicklungswerkzeuge Entwicklungswerkzeuge Werner Struckmann & Tim Winkelmann 10. Oktober 2012 Gliederung Anforderungen Projekte Debugging Versionsverwaltung Frameworks Pattern Integrated development environment (IDE) Werner

Mehr

Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant

Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant Eclipse und Java Einheit 06: Building Eclipse Projete mit Ant Laith Raed Ludwig-Maximilians-Universität München Institut für Informatik: Programmierung und Softwaretechnik Prof.Wirsing Inhaltsverzeichnis

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

OSGi: Toolunterstützung und Softwareentwicklungsprozess

OSGi: Toolunterstützung und Softwareentwicklungsprozess OSGi: Toolunterstützung und Softwareentwicklungsprozess Thementag OSGi 03.11.2009 Autor: Thorsten Vogel Agenda Herausforderungen der OSGi Entwicklung: Beispiel Webanwendung Was wird entwickelt? - Bundles

Mehr

Kampf dem Fehlerteufel PMD, Findbugs und Checkstyle in großen Projekten

Kampf dem Fehlerteufel PMD, Findbugs und Checkstyle in großen Projekten main {GRUPPE} Seite 1 Jürgen Nicolai Geschäftsführender Gesellschafter Liebknechtstrasse 33 70565 Stuttgart Tel : 07 11/7 81 19 90 Fax : 07 11/ 7 81 19 91 Mail : j.nicolai@main-gruppe.de Web: www.main-gruppe.de

Mehr

Konfigurationsmanagement

Konfigurationsmanagement Konfigurationsmanagement Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Re-usable Content in 3D und Simulationssystemen Dozent: Prof. Dr. Manfred Thaller Referent: Jannes

Mehr

Continuous Delivery. für Java Anwendungen. Axel Fontaine 28.10.2010. Software Development Expert

Continuous Delivery. für Java Anwendungen. Axel Fontaine 28.10.2010. Software Development Expert 28.10.2010 Continuous Delivery für Java Anwendungen Axel Fontaine Software Development Expert twitter.com/axelfontaine blog.axelfontaine.eu business@axelfontaine.eu Ceci n est pas une build tool. Ceci

Mehr

Liebling, ich habe den Build geschrumpft!

Liebling, ich habe den Build geschrumpft! Liebling, ich habe den Build geschrumpft! Endlich (wieder) schnellere Builds mit Hudson Dr. Simon Wiest XP-Days 2009 27.11.2009, Karlsruhe compile compile unit tests compile unit tests javadocs compile

Mehr

Java für C++ Programmierer

Java für C++ Programmierer Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?

Mehr

Lieferung 7.2 Werkzeugintegration/- kette mit Konfiguration für automatisiertes Build und Testen

Lieferung 7.2 Werkzeugintegration/- kette mit Konfiguration für automatisiertes Build und Testen Lieferung 7.2 Werkzeugintegration/- kette mit Konfiguration für automatisiertes Build und Testen für das BMBF-Projekt Modellgetriebene agile Entwicklung für mobile Anwendungen (ModAgile Mobile) Arbeitspaket

Mehr

Eine technische Plattform für Smart-Client-Systeme. Alexander Ziegler

Eine technische Plattform für Smart-Client-Systeme. Alexander Ziegler Eine technische Plattform für Smart-Client-Systeme Alexander Ziegler Agenda Ausgangssituation Smart Client Ansatz Technische Kernthemen Erfahrungen 1 Agenda Ausgangssituation Smart Client Ansatz Erfahrungen

Mehr

Empirische Softwaretechnik Kosten und Nutzen von UML in der Wartung Dr. Victor Pankratius Andreas Höfer Wintersemester 2009/2010

Empirische Softwaretechnik Kosten und Nutzen von UML in der Wartung Dr. Victor Pankratius Andreas Höfer Wintersemester 2009/2010 Empirische Softwaretechnik Dr. Victor Pankratius Andreas Höfer Wintersemester 2009/2010 IPD Tichy, Fakultät für Informatik Pflichtlektüre hierzu: Dzidek, Arisholm, Briand, A Realistic Empirical Evaluation

Mehr