Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir...

34
JAVA - Trendbarometer Trends und Entwicklungen in den Java-Technologien Mai 2010

Transcript of Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir...

Page 1: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

JAVA-Trendbarometer

Trends und Entwicklungen in den Java-Technologien

Mai 2010

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

2

Die Inhalte dieser Studie wurden mit Sorgfalt zusammengestellt Gleichwohl uumlber-nimmt die expeso GmbH keine Haftung fuumlr deren Richtigkeit und Vollstaumlndigkeit sowie fuumlr Schaumlden und Nachteile durch deren Nutzung Bewertungen und Erwartungen an zukuumlnftige Entwicklungen spiegeln unsere gegenwaumlrtige Einschaumltzung wider und koumlnnen sich aumlndern

Von den eigenen Inhalten sind Querverweise (bdquoLinksldquo) auf die von anderen Anbietern bereitgehaltenen Inhalte zu unterscheiden Trotz sorgfaumlltiger Kontrolle uumlbernehmen wir keine Haftung fuumlr die Inhalte externer Links Fuumlr den Inhalt der verlinkten Seiten sind ausschlieszliglich deren Betreiber verantwortlich

Alle genannten Firmennamen und Marken sind Eigentum ihrer Inhaber

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Amtsgericht Mannheim HRB 704028 Geschaumlftsfuumlhrer Markus Roth

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

3

I N H A L T S V E R Z E I C H N I S

1 DASJAVA-TRENDBAROMETER 5

2 DIEJAVA-EXPERTEN 7

3 VERWENDUNGDERJAVA-TECHNOLOGIEN 9

4 SOFTWARE-ENTWICKLUNGSWERKZEUGE 13

5 TECHNOLOGIENUNDFRAMEWORKS 17

6 AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN 21

7 OPENSOURCE 23

8 SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION 27

9 FAZIT 33

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

4

BISHERIGESTUDIEN

3 Java Trendbarometer Mai 20102 Java Trendbarometer Juli 20091 Java Trendbarometer Dezember 2008

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

5

DASJAVA-TRENDBAROMETER1

JAVA-TECHNOLOGIEN haben fuumlr Unternehmensanwendungen eine groszlige Bedeutung Mit dem Java-Trendbarometer legt die expeso GmbH regelmaumlszligig eine systematische Trendstudie fuumlr die Praxis vor Dadurch werden aktuelle Trends und Entwicklungen in der Java-Welt fruumlhzeitig erkannt

Mit dem Java-Trendbarometer zeigt expeso IT-Verantwortlichen und Java-Experten wohin der Trend geht was es Neues gibt und welche Technologien schon reif fuumlr den Einsatz sind Gerade bei den Open Source Frameworks gibt es staumlndig neue und interessante Entwicklungen die fuumlr Unternehmen auch wirtschaftlich interessant sind

Um aussagekraumlftige Ergebnisse mit einem groszligen Praxisbezug zu erhal-ten befragten wir ausschlieszliglich Java-Experten die in der Praxis mit den Technologien befasst sind So ist sichergestellt dass sich die empfohlenen Technologien auch schon in der taumlglichen Projektarbeit bewaumlhrt haben

ZUSAMMENFASSUNGJAVA-TRENDBAROMETER2010

Das Java-Trendbarometer zeigt systematisch die Verbreitung von Technologien Frameworks und Open Source Produkten in realen Software-Entwicklungsprojekten

Besonders deutlich stellt sich in der aktuellen Studie der Trend hin zu Application Server dar Bevorzugte in den vergangenen Jahren die Mehrheit der Java-Entwickler noch einen Servlet-Container zum Deployment ihrer Java Enterprise Applikationen so haben die Application Server nun deutlich im Unternehmensumfeld zugelegt Gemaumlszlig den Planungen der befragten Experten scheint sich dieser Trend auch weiter fortzusetzen

Die aktuelle Studie zeigt auch dass JVM-basierte Skriptsprachen derzeit noch eine untergeordnete Rolle in Unternehmensprojekten spielen Wie in den vergangenen Studien ist auch diesmal Groovy wieder die beliebteste Skriptsprache

Welche neuen Technologien haben sich schon in Projekten bewaumlhrt Wir identifizieren mit der vorliegenden Studie innovative Technologien uumlber die nicht nur viel publiziert wird sondern die daruumlber hinaus auch schon tatsaumlchlich im Projektalltag regelmaumlszligig eingesetzt werden und sich bewaumlhrt haben Ganz vorne dabei sind Google Web Toolkit (GWT) Apache Wicket und JSF 20

INHALT

In den Kapiteln 3 bis 5 analysieren wir den Einsatz von Java-Technologien Werkzeugen Technologien und Frameworks in Software-Entwicklungsprojekten

Danach analysieren wir in Kapitel 6 Themen denen zurzeit bei CIOs und Architekten groszlige Aufmerksamkeit gilt und ermitteln deren Relevanz fuumlr Unternehmen Dies sind zB Cloud Computing SOA Business Process Management (BPM) REST und Domain Specific Languages (DSL)

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

6

Anschlieszligend zeigen wir in Kapitel 7 welche Open Source Tools und Produkte die befragten Experten im Alltag einsetzen Vielleicht gibt es da auch fuumlr Sie noch die ein oder andere bdquoPerleldquo zu entdecken

Und im letzten Kapitel verlassen wir schlieszliglich die Bits und Bytes und betrachten die mit der Java-Technologie eng verbundenen Themen Software-Entwicklungsprozess und Innovation

UumlBEREXPESO

Die Mannheimer expeso GmbH ist der Dienstleister fuumlr Technologie-Beratung Technologie-Coaching und Software-Entwicklung Der Schwerpunkt der hochkaraumltigen expeso-Experten sind Java und Java Enterprise Technologien fuumlr unternehmenskritische Software-Projekte

Durch die langjaumlhrigen Erfahrungen in IT-Projekten dem Kompetenzteam Java und dem neuartigen System von Skill-Scouts ist expeso jederzeit in der Lage Projekte kurzfristig mit qualifizierten Fachleuten zu besetzen

Dadurch koumlnnen fehlende Ressourcen - etwa bei personellen Engpaumlssen oder der Einfuumlhrung von neuen Technologien - gezielt ergaumlnzt werden

Durch das kompetente Matching in der Projektbesetzung sowie den Einsatz hochqualifizierter Experten sparen Unternehmen und Softwarehaumluser gleich doppelt Zeit und Geld ndash sowohl bei der Bewerbersuche und Bewerberauswahl als auch bei der Implementierung von unternehmenskritischen Projekten

Arbeitsbereiche von expeso sind

PROJEKTARBEIT Unterstuumltzung in allen Phasen der Software-Entwicklung

COACHING Know-how Transfer beim Einsatz neuer und innovativer Technologien

TECHNOLOGIE-BERATUNG UNDENTSCHEIDUNGSVORLAGEN Evaluation von neuen Technologien Begutachtung von Architektur und Code (Reviews)

Weitere Informationen finden Sie im Internet unter httpwwwexpesode

REGISTRIERENSIESICH

Damit Sie die Ergebnisse unserer Studie auch in Zukunft erhaltenkoumlnnenSiesichgernebeiunsregistrieren EinentsprechendesFor-mular finden Sie unter httpwww expeso dejava-trendbarometer

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 2: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

2

Die Inhalte dieser Studie wurden mit Sorgfalt zusammengestellt Gleichwohl uumlber-nimmt die expeso GmbH keine Haftung fuumlr deren Richtigkeit und Vollstaumlndigkeit sowie fuumlr Schaumlden und Nachteile durch deren Nutzung Bewertungen und Erwartungen an zukuumlnftige Entwicklungen spiegeln unsere gegenwaumlrtige Einschaumltzung wider und koumlnnen sich aumlndern

Von den eigenen Inhalten sind Querverweise (bdquoLinksldquo) auf die von anderen Anbietern bereitgehaltenen Inhalte zu unterscheiden Trotz sorgfaumlltiger Kontrolle uumlbernehmen wir keine Haftung fuumlr die Inhalte externer Links Fuumlr den Inhalt der verlinkten Seiten sind ausschlieszliglich deren Betreiber verantwortlich

Alle genannten Firmennamen und Marken sind Eigentum ihrer Inhaber

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Amtsgericht Mannheim HRB 704028 Geschaumlftsfuumlhrer Markus Roth

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

3

I N H A L T S V E R Z E I C H N I S

1 DASJAVA-TRENDBAROMETER 5

2 DIEJAVA-EXPERTEN 7

3 VERWENDUNGDERJAVA-TECHNOLOGIEN 9

4 SOFTWARE-ENTWICKLUNGSWERKZEUGE 13

5 TECHNOLOGIENUNDFRAMEWORKS 17

6 AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN 21

7 OPENSOURCE 23

8 SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION 27

9 FAZIT 33

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

4

BISHERIGESTUDIEN

3 Java Trendbarometer Mai 20102 Java Trendbarometer Juli 20091 Java Trendbarometer Dezember 2008

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

5

DASJAVA-TRENDBAROMETER1

JAVA-TECHNOLOGIEN haben fuumlr Unternehmensanwendungen eine groszlige Bedeutung Mit dem Java-Trendbarometer legt die expeso GmbH regelmaumlszligig eine systematische Trendstudie fuumlr die Praxis vor Dadurch werden aktuelle Trends und Entwicklungen in der Java-Welt fruumlhzeitig erkannt

Mit dem Java-Trendbarometer zeigt expeso IT-Verantwortlichen und Java-Experten wohin der Trend geht was es Neues gibt und welche Technologien schon reif fuumlr den Einsatz sind Gerade bei den Open Source Frameworks gibt es staumlndig neue und interessante Entwicklungen die fuumlr Unternehmen auch wirtschaftlich interessant sind

Um aussagekraumlftige Ergebnisse mit einem groszligen Praxisbezug zu erhal-ten befragten wir ausschlieszliglich Java-Experten die in der Praxis mit den Technologien befasst sind So ist sichergestellt dass sich die empfohlenen Technologien auch schon in der taumlglichen Projektarbeit bewaumlhrt haben

ZUSAMMENFASSUNGJAVA-TRENDBAROMETER2010

Das Java-Trendbarometer zeigt systematisch die Verbreitung von Technologien Frameworks und Open Source Produkten in realen Software-Entwicklungsprojekten

Besonders deutlich stellt sich in der aktuellen Studie der Trend hin zu Application Server dar Bevorzugte in den vergangenen Jahren die Mehrheit der Java-Entwickler noch einen Servlet-Container zum Deployment ihrer Java Enterprise Applikationen so haben die Application Server nun deutlich im Unternehmensumfeld zugelegt Gemaumlszlig den Planungen der befragten Experten scheint sich dieser Trend auch weiter fortzusetzen

Die aktuelle Studie zeigt auch dass JVM-basierte Skriptsprachen derzeit noch eine untergeordnete Rolle in Unternehmensprojekten spielen Wie in den vergangenen Studien ist auch diesmal Groovy wieder die beliebteste Skriptsprache

Welche neuen Technologien haben sich schon in Projekten bewaumlhrt Wir identifizieren mit der vorliegenden Studie innovative Technologien uumlber die nicht nur viel publiziert wird sondern die daruumlber hinaus auch schon tatsaumlchlich im Projektalltag regelmaumlszligig eingesetzt werden und sich bewaumlhrt haben Ganz vorne dabei sind Google Web Toolkit (GWT) Apache Wicket und JSF 20

INHALT

In den Kapiteln 3 bis 5 analysieren wir den Einsatz von Java-Technologien Werkzeugen Technologien und Frameworks in Software-Entwicklungsprojekten

Danach analysieren wir in Kapitel 6 Themen denen zurzeit bei CIOs und Architekten groszlige Aufmerksamkeit gilt und ermitteln deren Relevanz fuumlr Unternehmen Dies sind zB Cloud Computing SOA Business Process Management (BPM) REST und Domain Specific Languages (DSL)

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

6

Anschlieszligend zeigen wir in Kapitel 7 welche Open Source Tools und Produkte die befragten Experten im Alltag einsetzen Vielleicht gibt es da auch fuumlr Sie noch die ein oder andere bdquoPerleldquo zu entdecken

Und im letzten Kapitel verlassen wir schlieszliglich die Bits und Bytes und betrachten die mit der Java-Technologie eng verbundenen Themen Software-Entwicklungsprozess und Innovation

UumlBEREXPESO

Die Mannheimer expeso GmbH ist der Dienstleister fuumlr Technologie-Beratung Technologie-Coaching und Software-Entwicklung Der Schwerpunkt der hochkaraumltigen expeso-Experten sind Java und Java Enterprise Technologien fuumlr unternehmenskritische Software-Projekte

Durch die langjaumlhrigen Erfahrungen in IT-Projekten dem Kompetenzteam Java und dem neuartigen System von Skill-Scouts ist expeso jederzeit in der Lage Projekte kurzfristig mit qualifizierten Fachleuten zu besetzen

Dadurch koumlnnen fehlende Ressourcen - etwa bei personellen Engpaumlssen oder der Einfuumlhrung von neuen Technologien - gezielt ergaumlnzt werden

Durch das kompetente Matching in der Projektbesetzung sowie den Einsatz hochqualifizierter Experten sparen Unternehmen und Softwarehaumluser gleich doppelt Zeit und Geld ndash sowohl bei der Bewerbersuche und Bewerberauswahl als auch bei der Implementierung von unternehmenskritischen Projekten

Arbeitsbereiche von expeso sind

PROJEKTARBEIT Unterstuumltzung in allen Phasen der Software-Entwicklung

COACHING Know-how Transfer beim Einsatz neuer und innovativer Technologien

TECHNOLOGIE-BERATUNG UNDENTSCHEIDUNGSVORLAGEN Evaluation von neuen Technologien Begutachtung von Architektur und Code (Reviews)

Weitere Informationen finden Sie im Internet unter httpwwwexpesode

REGISTRIERENSIESICH

Damit Sie die Ergebnisse unserer Studie auch in Zukunft erhaltenkoumlnnenSiesichgernebeiunsregistrieren EinentsprechendesFor-mular finden Sie unter httpwww expeso dejava-trendbarometer

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 3: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

3

I N H A L T S V E R Z E I C H N I S

1 DASJAVA-TRENDBAROMETER 5

2 DIEJAVA-EXPERTEN 7

3 VERWENDUNGDERJAVA-TECHNOLOGIEN 9

4 SOFTWARE-ENTWICKLUNGSWERKZEUGE 13

5 TECHNOLOGIENUNDFRAMEWORKS 17

6 AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN 21

7 OPENSOURCE 23

8 SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION 27

9 FAZIT 33

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

4

BISHERIGESTUDIEN

3 Java Trendbarometer Mai 20102 Java Trendbarometer Juli 20091 Java Trendbarometer Dezember 2008

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

5

DASJAVA-TRENDBAROMETER1

JAVA-TECHNOLOGIEN haben fuumlr Unternehmensanwendungen eine groszlige Bedeutung Mit dem Java-Trendbarometer legt die expeso GmbH regelmaumlszligig eine systematische Trendstudie fuumlr die Praxis vor Dadurch werden aktuelle Trends und Entwicklungen in der Java-Welt fruumlhzeitig erkannt

Mit dem Java-Trendbarometer zeigt expeso IT-Verantwortlichen und Java-Experten wohin der Trend geht was es Neues gibt und welche Technologien schon reif fuumlr den Einsatz sind Gerade bei den Open Source Frameworks gibt es staumlndig neue und interessante Entwicklungen die fuumlr Unternehmen auch wirtschaftlich interessant sind

Um aussagekraumlftige Ergebnisse mit einem groszligen Praxisbezug zu erhal-ten befragten wir ausschlieszliglich Java-Experten die in der Praxis mit den Technologien befasst sind So ist sichergestellt dass sich die empfohlenen Technologien auch schon in der taumlglichen Projektarbeit bewaumlhrt haben

ZUSAMMENFASSUNGJAVA-TRENDBAROMETER2010

Das Java-Trendbarometer zeigt systematisch die Verbreitung von Technologien Frameworks und Open Source Produkten in realen Software-Entwicklungsprojekten

Besonders deutlich stellt sich in der aktuellen Studie der Trend hin zu Application Server dar Bevorzugte in den vergangenen Jahren die Mehrheit der Java-Entwickler noch einen Servlet-Container zum Deployment ihrer Java Enterprise Applikationen so haben die Application Server nun deutlich im Unternehmensumfeld zugelegt Gemaumlszlig den Planungen der befragten Experten scheint sich dieser Trend auch weiter fortzusetzen

Die aktuelle Studie zeigt auch dass JVM-basierte Skriptsprachen derzeit noch eine untergeordnete Rolle in Unternehmensprojekten spielen Wie in den vergangenen Studien ist auch diesmal Groovy wieder die beliebteste Skriptsprache

Welche neuen Technologien haben sich schon in Projekten bewaumlhrt Wir identifizieren mit der vorliegenden Studie innovative Technologien uumlber die nicht nur viel publiziert wird sondern die daruumlber hinaus auch schon tatsaumlchlich im Projektalltag regelmaumlszligig eingesetzt werden und sich bewaumlhrt haben Ganz vorne dabei sind Google Web Toolkit (GWT) Apache Wicket und JSF 20

INHALT

In den Kapiteln 3 bis 5 analysieren wir den Einsatz von Java-Technologien Werkzeugen Technologien und Frameworks in Software-Entwicklungsprojekten

Danach analysieren wir in Kapitel 6 Themen denen zurzeit bei CIOs und Architekten groszlige Aufmerksamkeit gilt und ermitteln deren Relevanz fuumlr Unternehmen Dies sind zB Cloud Computing SOA Business Process Management (BPM) REST und Domain Specific Languages (DSL)

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

6

Anschlieszligend zeigen wir in Kapitel 7 welche Open Source Tools und Produkte die befragten Experten im Alltag einsetzen Vielleicht gibt es da auch fuumlr Sie noch die ein oder andere bdquoPerleldquo zu entdecken

Und im letzten Kapitel verlassen wir schlieszliglich die Bits und Bytes und betrachten die mit der Java-Technologie eng verbundenen Themen Software-Entwicklungsprozess und Innovation

UumlBEREXPESO

Die Mannheimer expeso GmbH ist der Dienstleister fuumlr Technologie-Beratung Technologie-Coaching und Software-Entwicklung Der Schwerpunkt der hochkaraumltigen expeso-Experten sind Java und Java Enterprise Technologien fuumlr unternehmenskritische Software-Projekte

Durch die langjaumlhrigen Erfahrungen in IT-Projekten dem Kompetenzteam Java und dem neuartigen System von Skill-Scouts ist expeso jederzeit in der Lage Projekte kurzfristig mit qualifizierten Fachleuten zu besetzen

Dadurch koumlnnen fehlende Ressourcen - etwa bei personellen Engpaumlssen oder der Einfuumlhrung von neuen Technologien - gezielt ergaumlnzt werden

Durch das kompetente Matching in der Projektbesetzung sowie den Einsatz hochqualifizierter Experten sparen Unternehmen und Softwarehaumluser gleich doppelt Zeit und Geld ndash sowohl bei der Bewerbersuche und Bewerberauswahl als auch bei der Implementierung von unternehmenskritischen Projekten

Arbeitsbereiche von expeso sind

PROJEKTARBEIT Unterstuumltzung in allen Phasen der Software-Entwicklung

COACHING Know-how Transfer beim Einsatz neuer und innovativer Technologien

TECHNOLOGIE-BERATUNG UNDENTSCHEIDUNGSVORLAGEN Evaluation von neuen Technologien Begutachtung von Architektur und Code (Reviews)

Weitere Informationen finden Sie im Internet unter httpwwwexpesode

REGISTRIERENSIESICH

Damit Sie die Ergebnisse unserer Studie auch in Zukunft erhaltenkoumlnnenSiesichgernebeiunsregistrieren EinentsprechendesFor-mular finden Sie unter httpwww expeso dejava-trendbarometer

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 4: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

4

BISHERIGESTUDIEN

3 Java Trendbarometer Mai 20102 Java Trendbarometer Juli 20091 Java Trendbarometer Dezember 2008

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

5

DASJAVA-TRENDBAROMETER1

JAVA-TECHNOLOGIEN haben fuumlr Unternehmensanwendungen eine groszlige Bedeutung Mit dem Java-Trendbarometer legt die expeso GmbH regelmaumlszligig eine systematische Trendstudie fuumlr die Praxis vor Dadurch werden aktuelle Trends und Entwicklungen in der Java-Welt fruumlhzeitig erkannt

Mit dem Java-Trendbarometer zeigt expeso IT-Verantwortlichen und Java-Experten wohin der Trend geht was es Neues gibt und welche Technologien schon reif fuumlr den Einsatz sind Gerade bei den Open Source Frameworks gibt es staumlndig neue und interessante Entwicklungen die fuumlr Unternehmen auch wirtschaftlich interessant sind

Um aussagekraumlftige Ergebnisse mit einem groszligen Praxisbezug zu erhal-ten befragten wir ausschlieszliglich Java-Experten die in der Praxis mit den Technologien befasst sind So ist sichergestellt dass sich die empfohlenen Technologien auch schon in der taumlglichen Projektarbeit bewaumlhrt haben

ZUSAMMENFASSUNGJAVA-TRENDBAROMETER2010

Das Java-Trendbarometer zeigt systematisch die Verbreitung von Technologien Frameworks und Open Source Produkten in realen Software-Entwicklungsprojekten

Besonders deutlich stellt sich in der aktuellen Studie der Trend hin zu Application Server dar Bevorzugte in den vergangenen Jahren die Mehrheit der Java-Entwickler noch einen Servlet-Container zum Deployment ihrer Java Enterprise Applikationen so haben die Application Server nun deutlich im Unternehmensumfeld zugelegt Gemaumlszlig den Planungen der befragten Experten scheint sich dieser Trend auch weiter fortzusetzen

Die aktuelle Studie zeigt auch dass JVM-basierte Skriptsprachen derzeit noch eine untergeordnete Rolle in Unternehmensprojekten spielen Wie in den vergangenen Studien ist auch diesmal Groovy wieder die beliebteste Skriptsprache

Welche neuen Technologien haben sich schon in Projekten bewaumlhrt Wir identifizieren mit der vorliegenden Studie innovative Technologien uumlber die nicht nur viel publiziert wird sondern die daruumlber hinaus auch schon tatsaumlchlich im Projektalltag regelmaumlszligig eingesetzt werden und sich bewaumlhrt haben Ganz vorne dabei sind Google Web Toolkit (GWT) Apache Wicket und JSF 20

INHALT

In den Kapiteln 3 bis 5 analysieren wir den Einsatz von Java-Technologien Werkzeugen Technologien und Frameworks in Software-Entwicklungsprojekten

Danach analysieren wir in Kapitel 6 Themen denen zurzeit bei CIOs und Architekten groszlige Aufmerksamkeit gilt und ermitteln deren Relevanz fuumlr Unternehmen Dies sind zB Cloud Computing SOA Business Process Management (BPM) REST und Domain Specific Languages (DSL)

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

6

Anschlieszligend zeigen wir in Kapitel 7 welche Open Source Tools und Produkte die befragten Experten im Alltag einsetzen Vielleicht gibt es da auch fuumlr Sie noch die ein oder andere bdquoPerleldquo zu entdecken

Und im letzten Kapitel verlassen wir schlieszliglich die Bits und Bytes und betrachten die mit der Java-Technologie eng verbundenen Themen Software-Entwicklungsprozess und Innovation

UumlBEREXPESO

Die Mannheimer expeso GmbH ist der Dienstleister fuumlr Technologie-Beratung Technologie-Coaching und Software-Entwicklung Der Schwerpunkt der hochkaraumltigen expeso-Experten sind Java und Java Enterprise Technologien fuumlr unternehmenskritische Software-Projekte

Durch die langjaumlhrigen Erfahrungen in IT-Projekten dem Kompetenzteam Java und dem neuartigen System von Skill-Scouts ist expeso jederzeit in der Lage Projekte kurzfristig mit qualifizierten Fachleuten zu besetzen

Dadurch koumlnnen fehlende Ressourcen - etwa bei personellen Engpaumlssen oder der Einfuumlhrung von neuen Technologien - gezielt ergaumlnzt werden

Durch das kompetente Matching in der Projektbesetzung sowie den Einsatz hochqualifizierter Experten sparen Unternehmen und Softwarehaumluser gleich doppelt Zeit und Geld ndash sowohl bei der Bewerbersuche und Bewerberauswahl als auch bei der Implementierung von unternehmenskritischen Projekten

Arbeitsbereiche von expeso sind

PROJEKTARBEIT Unterstuumltzung in allen Phasen der Software-Entwicklung

COACHING Know-how Transfer beim Einsatz neuer und innovativer Technologien

TECHNOLOGIE-BERATUNG UNDENTSCHEIDUNGSVORLAGEN Evaluation von neuen Technologien Begutachtung von Architektur und Code (Reviews)

Weitere Informationen finden Sie im Internet unter httpwwwexpesode

REGISTRIERENSIESICH

Damit Sie die Ergebnisse unserer Studie auch in Zukunft erhaltenkoumlnnenSiesichgernebeiunsregistrieren EinentsprechendesFor-mular finden Sie unter httpwww expeso dejava-trendbarometer

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 5: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

5

DASJAVA-TRENDBAROMETER1

JAVA-TECHNOLOGIEN haben fuumlr Unternehmensanwendungen eine groszlige Bedeutung Mit dem Java-Trendbarometer legt die expeso GmbH regelmaumlszligig eine systematische Trendstudie fuumlr die Praxis vor Dadurch werden aktuelle Trends und Entwicklungen in der Java-Welt fruumlhzeitig erkannt

Mit dem Java-Trendbarometer zeigt expeso IT-Verantwortlichen und Java-Experten wohin der Trend geht was es Neues gibt und welche Technologien schon reif fuumlr den Einsatz sind Gerade bei den Open Source Frameworks gibt es staumlndig neue und interessante Entwicklungen die fuumlr Unternehmen auch wirtschaftlich interessant sind

Um aussagekraumlftige Ergebnisse mit einem groszligen Praxisbezug zu erhal-ten befragten wir ausschlieszliglich Java-Experten die in der Praxis mit den Technologien befasst sind So ist sichergestellt dass sich die empfohlenen Technologien auch schon in der taumlglichen Projektarbeit bewaumlhrt haben

ZUSAMMENFASSUNGJAVA-TRENDBAROMETER2010

Das Java-Trendbarometer zeigt systematisch die Verbreitung von Technologien Frameworks und Open Source Produkten in realen Software-Entwicklungsprojekten

Besonders deutlich stellt sich in der aktuellen Studie der Trend hin zu Application Server dar Bevorzugte in den vergangenen Jahren die Mehrheit der Java-Entwickler noch einen Servlet-Container zum Deployment ihrer Java Enterprise Applikationen so haben die Application Server nun deutlich im Unternehmensumfeld zugelegt Gemaumlszlig den Planungen der befragten Experten scheint sich dieser Trend auch weiter fortzusetzen

Die aktuelle Studie zeigt auch dass JVM-basierte Skriptsprachen derzeit noch eine untergeordnete Rolle in Unternehmensprojekten spielen Wie in den vergangenen Studien ist auch diesmal Groovy wieder die beliebteste Skriptsprache

Welche neuen Technologien haben sich schon in Projekten bewaumlhrt Wir identifizieren mit der vorliegenden Studie innovative Technologien uumlber die nicht nur viel publiziert wird sondern die daruumlber hinaus auch schon tatsaumlchlich im Projektalltag regelmaumlszligig eingesetzt werden und sich bewaumlhrt haben Ganz vorne dabei sind Google Web Toolkit (GWT) Apache Wicket und JSF 20

INHALT

In den Kapiteln 3 bis 5 analysieren wir den Einsatz von Java-Technologien Werkzeugen Technologien und Frameworks in Software-Entwicklungsprojekten

Danach analysieren wir in Kapitel 6 Themen denen zurzeit bei CIOs und Architekten groszlige Aufmerksamkeit gilt und ermitteln deren Relevanz fuumlr Unternehmen Dies sind zB Cloud Computing SOA Business Process Management (BPM) REST und Domain Specific Languages (DSL)

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

6

Anschlieszligend zeigen wir in Kapitel 7 welche Open Source Tools und Produkte die befragten Experten im Alltag einsetzen Vielleicht gibt es da auch fuumlr Sie noch die ein oder andere bdquoPerleldquo zu entdecken

Und im letzten Kapitel verlassen wir schlieszliglich die Bits und Bytes und betrachten die mit der Java-Technologie eng verbundenen Themen Software-Entwicklungsprozess und Innovation

UumlBEREXPESO

Die Mannheimer expeso GmbH ist der Dienstleister fuumlr Technologie-Beratung Technologie-Coaching und Software-Entwicklung Der Schwerpunkt der hochkaraumltigen expeso-Experten sind Java und Java Enterprise Technologien fuumlr unternehmenskritische Software-Projekte

Durch die langjaumlhrigen Erfahrungen in IT-Projekten dem Kompetenzteam Java und dem neuartigen System von Skill-Scouts ist expeso jederzeit in der Lage Projekte kurzfristig mit qualifizierten Fachleuten zu besetzen

Dadurch koumlnnen fehlende Ressourcen - etwa bei personellen Engpaumlssen oder der Einfuumlhrung von neuen Technologien - gezielt ergaumlnzt werden

Durch das kompetente Matching in der Projektbesetzung sowie den Einsatz hochqualifizierter Experten sparen Unternehmen und Softwarehaumluser gleich doppelt Zeit und Geld ndash sowohl bei der Bewerbersuche und Bewerberauswahl als auch bei der Implementierung von unternehmenskritischen Projekten

Arbeitsbereiche von expeso sind

PROJEKTARBEIT Unterstuumltzung in allen Phasen der Software-Entwicklung

COACHING Know-how Transfer beim Einsatz neuer und innovativer Technologien

TECHNOLOGIE-BERATUNG UNDENTSCHEIDUNGSVORLAGEN Evaluation von neuen Technologien Begutachtung von Architektur und Code (Reviews)

Weitere Informationen finden Sie im Internet unter httpwwwexpesode

REGISTRIERENSIESICH

Damit Sie die Ergebnisse unserer Studie auch in Zukunft erhaltenkoumlnnenSiesichgernebeiunsregistrieren EinentsprechendesFor-mular finden Sie unter httpwww expeso dejava-trendbarometer

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 6: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

6

Anschlieszligend zeigen wir in Kapitel 7 welche Open Source Tools und Produkte die befragten Experten im Alltag einsetzen Vielleicht gibt es da auch fuumlr Sie noch die ein oder andere bdquoPerleldquo zu entdecken

Und im letzten Kapitel verlassen wir schlieszliglich die Bits und Bytes und betrachten die mit der Java-Technologie eng verbundenen Themen Software-Entwicklungsprozess und Innovation

UumlBEREXPESO

Die Mannheimer expeso GmbH ist der Dienstleister fuumlr Technologie-Beratung Technologie-Coaching und Software-Entwicklung Der Schwerpunkt der hochkaraumltigen expeso-Experten sind Java und Java Enterprise Technologien fuumlr unternehmenskritische Software-Projekte

Durch die langjaumlhrigen Erfahrungen in IT-Projekten dem Kompetenzteam Java und dem neuartigen System von Skill-Scouts ist expeso jederzeit in der Lage Projekte kurzfristig mit qualifizierten Fachleuten zu besetzen

Dadurch koumlnnen fehlende Ressourcen - etwa bei personellen Engpaumlssen oder der Einfuumlhrung von neuen Technologien - gezielt ergaumlnzt werden

Durch das kompetente Matching in der Projektbesetzung sowie den Einsatz hochqualifizierter Experten sparen Unternehmen und Softwarehaumluser gleich doppelt Zeit und Geld ndash sowohl bei der Bewerbersuche und Bewerberauswahl als auch bei der Implementierung von unternehmenskritischen Projekten

Arbeitsbereiche von expeso sind

PROJEKTARBEIT Unterstuumltzung in allen Phasen der Software-Entwicklung

COACHING Know-how Transfer beim Einsatz neuer und innovativer Technologien

TECHNOLOGIE-BERATUNG UNDENTSCHEIDUNGSVORLAGEN Evaluation von neuen Technologien Begutachtung von Architektur und Code (Reviews)

Weitere Informationen finden Sie im Internet unter httpwwwexpesode

REGISTRIERENSIESICH

Damit Sie die Ergebnisse unserer Studie auch in Zukunft erhaltenkoumlnnenSiesichgernebeiunsregistrieren EinentsprechendesFor-mular finden Sie unter httpwww expeso dejava-trendbarometer

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 7: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

7

DIEJAVA-EXPERTEN2

AN unserer Umfrage nahmen 110 Java-Experten teil Das Teilnehmerfeld unserer Umfrage bestand in etwa zu gleichen Teilen aus Personen die als externe Spezialisten in Kundenprojekten taumltig sind und aus internen Mitarbeitern die an den Projekten ihres Arbeitgebers arbeiten (siehe ABBILDUNG1)

80 der Befragten verfuumlgen uumlber mehr als fuumlnf Jahre Erfahrung in der Software-Entwicklung mit Java-Technologien Sie koumlnnen somit als ausge-wiesene Experten auf diesem Gebiet gelten (ABBILDUNG2) Weitere 13 verfuumlgen uumlber mindestens 3 Jahre Erfahrung so dass insgesamt eine solide Befragungsgrundlage vorhanden ist

Die Mehrzahl der Teilnehmer sind hauptsaumlchlich als Entwickler (80) undoder Architekten (60) taumltig und haben somit direkte und praktische Erfahrung mit Java-Technologien (ABBILDUNG3)

43

80

13

0

JAVA-ERFAHRUNGINJAHREN

wenigerals1Jahr

mehrals1Jahre

mehrals2Jahre

mehrals3Jahre

mehrals5Jahre

ABBILDUNG2

45

55

TYPISCHEPROJEKTKONSTELLATION

InternerindenProjektenmeinesUnternehmens

ExternerinKundenprojekten

ABBILDUNG1

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 8: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

8

ABBILDUNG3

HAUPTTAumlTIGKEITINDENPROJEKTEN

100

80

60

40

20

0 Entwickler Architekt Projektleiter IT-LeiterLeiterderSW-Entwicklung

andere

SINDSIEJAVA-SPEZIALIST

Wir moumlchten die Zahl derTeilnehmer bei zukuumlnftigen Studien konti-nuierlich vergroumlszligern Daher freuen wir uns uumlber jeden kompetentenJava-SpezialistendersichanweiterenBefragungenbeteiligenmoumlchte RegistrierenSiesichunterhttpwww expeso deteilnehmen

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 9: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

9Java-Sprache

VERWENDUNGDERJAVA-TECHNOLOGIEN3

DIE Java-Sprache unterliegt einer stetigen Weiterentwicklung In die-sem Kapitel analysieren wir welche Versionen der verschiedenen Java-Technologien heute tatsaumlchlich in Unternehmensprojekten eingesetzt werden Auf eine erste statistische Betrachtung folgen Bewertungen der befragten Java-Experten

Die Java-Sprache ist innovativ und wird fortwaumlhrend weiter entwickelt In der freien Online-Enzyklopaumldie Wikipedia sind die Veroumlffentlichungen seit 1996 dokumentiert (httpdewikipediaorgwikiJava_(Technik))

ABBILDUNG4 zeigt wie haumlufig die verschiedenen Java-Versionen in Unternehmensprojekten verwendet werden Nachdem in unserer letzten Umfrage noch das JDK5 die Nase vorne hatte ist nun das JDK 6 die am haumlu-figsten verwendete Version Trotzdem hat auch JDK 5 noch eine erhebliche Bedeutung in den Projekten

Die Bedeutung des JDK 14 (oder aumllter) ist jedoch von 70 in unserer letzten Studie auf nun 43 deutlich gesunken

Die Veroumlffentlichung des naumlchsten Major Release (JDK 7) ist fuumlr Herbst angekuumlndigt Selbstverstaumlndlich werden wir beobachten wie schnell sich diese neue Version dann etablieren wird

Inwieweit sich ein Umstieg rechnet und welche Maszlignahmen notwendig sind muss im Einzelfall gepruumlft werden Unternehmen die aumlltere Java-Versionen einsetzen sollten beachten dass Sun den generell verfuumlg-baren Support fuumlr das JDK 14 bzw 5 schon 2008 bzw 2009 eingestellt hat Um weiterhin offizielle Unterstuumltzung fuumlr diese Versionen zu erhal-ten muumlsste nun ein spezieller Support-Vertrag abgeschlossen werden Weitere Informationen zum Java-Lebenszyklus finden Sie bei SUN httpjavasuncomproductsarchiveeolpolicyhtml

WELCHEJAVA-VERSIONENVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JDK6 JDK5 JDK1 4oderaumllter

ABBILDUNG4 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 10: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

10

Java Platform Enterprise

Edition (Java EE)

Mit der Java Platform Enterprise Edition (Java EE) steht eine Software-Architektur zur Verfuumlgung mit der verteilte mehrschichtige Anwendungen entwickelt werden koumlnnen Dabei bezeichnet J2EE die Versionen 10 (Dezember 1999) bis 14 (November 2003)

Mit der Version Java EE 5 (Mai 2006) folgte dann ein deutlich uumlberarbei-teter Standard der mit der Version 6 (Dezember 2009) weiter verfeinert wurde Diese beiden neuen Versionen vereinfachen die Entwicklung von Unternehmensanwendungen deutlich

ABBILDUNG5 zeigt dass das wenige Monate alte Java EE 6 schon eine gute Verbreitung hat Trotzdem werden Java EE 5 und J2EE aber zurzeit noch haumlufiger verwendet und sind in etwa gleich auf

Jedoch ist eine deutliche Verschiebung zu erkennen Denn in unserer letzten Studie lag das aumlltere J2EE noch erkennbar vor Java EE 5 Hier hat Java EE 5 deutlich aufgeholt

Moumlchte man eine bestehende J2EE-Anwendungen auf eine neuere Java EE Version migrieren so muss man die geplante Umstellung auf Wirtschaftlichkeit und Risiken pruumlfen Denn in der Regel ist dies mit einem erheblichen zeitlichen und finanziellen Aufwand verbunden Daher erwarten wir dass J2EE gerade in bestehenden Projekten noch lange eine erkennbare Bedeutung fuumlr Unternehmen haben wird

WELCHEJAVAENTERPRISESTANDARDSVERWENDENSIEINIHRENAKTUELLENPROJEKTEN

100

80

60

40

20

0

JAVAEE6 JAVAEE5 J2EE

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG5

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 11: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

11

Java Micro Edition

(Java ME)

JVM-basierende

Skriptsprachen

Die Java Micro Edition (Java ME) fuumlr den Einsatz auf mobilen Endgeraumlten spielt ndash genauso wie in unseren fruumlheren Studien - eine geringe Rolle in der Entwicklung von Unternehmensanwendungen (siehe ABBILDUNG6) Hier gibt es keine signifikante Verschiebung gegenuumlber unserer letzten Studie

Seit 2007 treten vermehrt auch Skriptsprachen auf der Basis der Java Virtual Machine (JVM) in Erscheinung ABBILDUNG7 zeigt dass diese noch keine hohe Verbreitung in Projekten haben

Groovy hat ndash wie schon in unseren vergangenen Studien ndash die Nase vorne Bei den anderen Skriptsprachen gibt es einzelne Verschiebungen deren Signifikanz wir aufgrund der Teilnehmerzahl jedoch nicht einschaumltzen koumln-nen

Die Entwicklung in diesem Umfeld bleibt sicher spannend Interessant wird auch sein in welchen Bereichen sich diese Skriptsprachen bewaumlhren koumln-nen

Durch die enge Verknuumlpfung der Skriptsprachen mit Java werden der Einstieg und das Sammeln erster eigener Erfahrungen erleichtert So koumlnnen Unternehmen in aktuellen Projekten einzelne Teilbereiche mit Skriptsprachen realisieren ohne groszlige Risiken fuumlr das Gesamtprojekt einzu-gehen

Es empfiehlt sich geeignete Bereiche fuumlr die ersten Gehversuche zu identi-fizieren So koumlnnen beispielsweise Unit-Tests mit Skriptsprachen realisiert werden Auch der Einsatz in Prototypen oder als sogenannter Gluecode ist denkbar

Der Skript-Code kann gegebenenfalls recht einfach wieder entfernt werden Sollte sich die Skriptsprache im Projekt jedoch bewaumlhren kann deren Einsatz schrittweise ausdehnt werden

WIEHAumlUFIGVERWENDENSIEJAVAME

fuumlrdienaumlchsten12Monategeplant

teilweise

haumlufig

nie

ABBILDUNG6

3

90

7

0

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 12: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

12

Im Rahmen unserer Studie interessierten wir uns auch dafuumlr wie die befragten Experten den Einsatz dieser Technologien in den Unternehmen sehen Auf diese offen formulierte Frage wurden erwartungsgemaumlszlig ver-schiedenartigste Aspekte genannt jedoch bildeten sich zwei Themen heraus die immer wieder genannt werden

Zum einen wird der Wert der Innovation dargestellt So ist eine bdquoeffek-tivere und vereinfachte Entwicklungldquo moumlglich die zu einer bdquohoumlheren Produktivitaumltldquo bdquobesserer Wartbarkeitldquo und bdquokuumlrzeren Entwicklungszyklenldquo fuumlhrt insbesondere durch bdquovereinfachte Enterprise-Entwicklungldquo

Es gibt jedoch auch sehr viele Stimmen die von bdquoSchnick-Schnackldquo bdquoHypeldquo und bdquoTechnologie-Dschungelldquo sprechen Viele Technologien bdquohaben in der Fruumlhphase meist nicht das Zeug wirklich sinnvoll produktiv eingesetzt zu werdenldquo

Daher werden bdquoRobustheit und Zukunftssicherheit als notwendige Voraussetzungldquo fuumlr den Einsatz neuer Technologien gesehen Man darf sich im Projekt bdquonicht verzettelnldquo und den bdquoLernaufwand nicht unter-schaumltzenldquo Technologien bdquosind nur interessant wenn damit auch ein direkter Benefit fuumlr die Entwicklung moumlglich ist hellip erhoumlhte QualitaumltQuantitaumlt oder ver-ringerte ZeitKostenldquo

Bewertung

WIEHAumlUFIGVERWENDENSIESKRIPTSPRACHEN

50

40

30

20

10

0Groovy Jython JavaFX JRuby Scala Clojure andere

KERNAUSSAGENDESKAPITELS

Nachdem JDK 1 4 lt unserer letztenStudie noch einen erheblichen Anteil inUnternehmensprojektenhattehabensichdieneuerenJDKs5und6nundeutlichdurch-gesetzt

HatteinunsererletztenStudienochdasaumllterJ2EEdeutlichdieNasevornsoistnuneindeutlicherTrendhinzudenneuenJavaEEVersionen5und6erkennbar Nichtsdestotrotz hat das aumllter J2EE immer noch eineerkennbareBedeutunginProjekten

JavaMEspieltweiterhineineuntergeordneteRolle

BeidenJVM-basiertenSkriptsprachenfuumlhrtGroovy JedochspielendieseSkriptsprachennocheineuntergeordneteRolle

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG7

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 13: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

13

SOFTWARE-ENTWICKLUNGSWERKZEUGE4

ENG mit den Java-Technologien verbunden sind auch die Software-Entwicklungswerkzeuge In diesem Kapitel betrachten wir wie das typische Entwicklungsumfeld in Java-Projekten aussieht

ABBILDUNG8 zeigt dass praktisch alle Befragten Eclipse (oder eine darauf basierende IDE) als Entwicklungsumgebung einsetzen Damit wird das Ergebnis unserer vergangenen Studien nach der Eclipse heute der gel-tende Standard ist bestaumltigt

Interessant ist die Entwicklung bei NetBeans In unserer letzten Studie setzten etwa 30 diese IDE zumindest teilweise ein Inzwischen wird NebBeans von fast jedem zweiten Entwickler eingesetzt Die Verwendung von IntelliJ Idea hat sich dagegen im Vergleich zur letzten Studie nicht nen-nenswert veraumlndert

Bei den Build Tools hat Ant ndash wie in unserer letzten Studie - die houmlhere Verbreitung als das neuere Maven das in Version 1 immerhin seit Ende 2004 verfuumlgbar ist Gegenuumlber der letzten Umfrage hat sich die Verwendung damit nicht signifikant veraumlndert

Entwicklungsumgebung

Build Tools

WELCHEENTWICKLUNGSUMGEBUNGSETZENSIEEIN

100

80

60

40

20

0EclipseEclipse

basedNetbeans IntelliJIdea andere

WELCHESBUILD-TOOLSETZENSIEEIN

100

80

60

40

20

0

Ant Maven andere

ABBILDUNG8 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

ABBILDUNG9 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 14: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

14

Waumlhrend sich bei den Build-Tools keine nennenswerte Aumlnderung erkennen laumlsst verstaumlrkt sich bei den Systemen zur Quellcode-Verwaltung der Trend vom aumllteren CVS hin zum neueren Subversion erkennbar

Die Verwendung von Subversion ist in etwa gleich geblieben CVS hat jedoch etwa 15 Prozentpunkte verloren Das laumlsst sich wohl so deuten dass SVN-Systeme nun annaumlhernd flaumlchendeckend im Einsatz sind und die CVS-Installationen immer haumlufiger abgeschaltet werden

Werkzeuge zur Fehlerverfolgung (Bug Tracking) werden sehr haumlufig einge-setzt und haben sich im Projektalltag etabliert (ABBILDUNG11) Ein Arbeiten ohne diese Systeme ist ab einer gewissen Teamgroumlszlige nicht sinnvoll moumlglich

Technisch und fachlich ist eine Integrationsumgebung empfehlenswert um moumlgliche Kompilier- und Integrationsfehler fruumlhzeitig zu entdecken Der Einsatz einer Integrationsumgebung ist aber leider noch nicht so eta-bliert wie der Einsatz von Systemen zur Fehlerverfolgung

Quellcode-Verwaltung

WIEHAumlUFIGSETZENSIEWERKZEUGEFUumlRBUG-TRACKINGUNDCONTINUOSINTEGRATIONEIN

100

80

60

40

20

0Bug-Tracking ContinousIntegration

Fehlerverfolgung und

Integrationsumgebung

WELCHESWERKZEUGESETZENSIEZURVERSIONSKONTROLLEEIN

100

80

60

40

20

0Subversion CVS andere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG10

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG11

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 15: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

15

KERNAUSSAGENDESKAPITELS

NetBeanslegtdeutlichzuundwirdvon47derBefragtenzumindest teilweise verwendet Eclipse bleibt aber derStandardbeidenIDEs

AnthatdieNasebeidenBuild-ToolsweiterhinvornesistnochkeinTrendwechselzuMavenerkennbar

Bei der Quellcode-Verwaltung ist eine weitere deutlicheVerschiebungvonCVShinzumneuerenSubversionerkennbar

Bug-Tracking-Systemesind indenProjektenetabliert EineIntegrationsumgebungistjedochnochnichtinallenProjektenStandard

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 16: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

16

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 17: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

17

TECHNOLOGIENUNDFRAMEWORKS5

IN der Java-Welt gibt es eine Vielzahl von Frameworks die immer wieder-kehrende Aufgaben uumlbernehmen und Entwicklern das Leben erleichtern So abstrahiert man zB die Persistenzschicht mit einem Objekt Relationalen Mapper (ORM) und setzt AJAX Bibliotheken fuumlr die Gestaltung komfortabler Benutzeroberflaumlchen ein

Aus dem Projektalltag sind solche Frameworks nicht mehr wegzudenken Somit gehoumlren diese Technologien essentiell zum Bereich der Software-Entwicklung mit Java

ABBILDUNG12 zeigt dass bei der Entwicklung von Desktop-Anwendungen Swing haumlufiger als Eclipse RCP SWT eingesetzt wird

Bei Web-basierten Anwendungen (ABBILDUNG13) kommen haumlufig Spring Ajax und JSF zum Einsatz Aber auch Eigenentwicklungen werden relativ haumlufig verwendet Wicket und JBoss Seam sind nicht so stark vertreten

Beachtlich ist dass trotz des groszligen Angebots an Frameworks Eigenentwicklungen eine groszlige Rolle spielen Bei eigenentwickelten technischen Frameworks sollte kritisch analysiert werden ob der Einsatz eines bewaumlhrten Standard-Frameworks bei neuen Projekten nicht etwa doch Vorteile bietet Zum einen ist die Weiterentwicklung durch eine groszlige Community in der Regel innovativer und schneller es werden deutlich mehr Funktionen bereitgestellt Zum anderen gibt es auf dem Markt potentielle Dienstleister und Arbeitnehmer mit Know-how in diesen Technologien So entfallen entsprechende Einarbeitungskosten

Desktop-Anwendungen

Web-basierte

Anwendungen

MITWELCHENTECHNOLOGIENENTWICKELNSIEDESKTOP-ANWENDUNGEN

100

80

60

40

20

0Swing EclipseRCPSWT andere

ABBILDUNG12 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 18: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

18

Erstmalig haben wir in dieser Studie auch die Verbreitung der verschie-denen JSF-Frameworks untersucht (ABBILDUNG14) Apache MyFaces hat demnach die groumlszligte Verbreitung dicht gefolgt von RichFaces ICEfaces und GlassFish Mojarra

100806040200

AJAX

Spring

JSF

Eigen-Entwicklung

Struts

Wicket

JBossSeam

andere

MITWELCHENFRAMEWORKSENTWICKELNSIEWEB-ANWENDUNGEN

JSF-Frameworks

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG13

WELCHESJSF-FRAMEWORKVERWENDENSIE

50

40

30

20

10

0Apache

MyFacesRichFaces ICEfaces GlassFish

Mojarraandere

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG14

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 19: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

19

Rich Internet ApplicationsFuumlr die Entwicklung von Rich Internet Applications kommen meist her-koumlmmliches DHTML und AJAXJavascript zum Einsatz (ABBILDUNG15)Andere Technologien folgen mit deutlichem Abstand Im Vergleich zu den letzten beiden Erhebungen bleibt das Bild fast unveraumlndert

Dojo und jQuery werden von jeweils 22 der Befragten eingesetzt dicht gefolgt von Google Web Toolkit (GWT) mit 18 Weitere Frameworks sind Prototype ajax4jsf und eigene Entwicklungen

AJAX-Frameworks

WELCHESAJAX-FRAMEWORKVERWENDENSIE

Dojo

jQuey

GWT

Prototype

ajax4jsf

EigenesFramerwork

Anderes

ABBILDUNG15 haumlufig teilweise fuumlrdienaumlchsten12Monategeplant

WIEENTWICKELNSIERICHINTERNETAPPLICATIONS

100

80

60

40

20

0DHTMLAJAX

WebStart JavaApplets

FlashFlex

Silverlight andere

ABBILDUNG16

22

22

18

11

9

5

13

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 20: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

20

KERNAUSSAGENDESKAPITELS

SwingfuumlhrtbeiderEntwicklungvonDesktop-AnwendungenvorEclipseRCPSWT

Fuumlrweb-basierteAnwendungenwirdeineVielzahlunterschiedlicherFrameworksverwendet EsgibtkeinenklarenFavoriten

ApacheMyFacesdominiertalsJSF-ImplementierungdichtgefolgtvonRichFaces ICEfacesundGlassFishMojarra

FuumlrdieEntwicklungvonRichInternetClientswerdenmeistDHTMLundAJAXverwendet

DojoundjQuerywerdenamhaumlufigstenfuumlrAJAX-ImplementierungenverwendetdichtgefolgtvonGWT

DieMehrzahlderJavaEEAnwendungenwerdenineinemServlet-Containerdeployed Gegenuumlber

unsererletztenStudieistjedocheindeutlicherTrendhinzuApplicationServerzubeobachten

ContainerAls Container werden bei Server-Entwicklungen tendenziell eher Servlet-Container - wie beispielsweise Tomcat - statt vollwertiger Application Server eingesetzt Aber auch letztere werden haumlufig verwendet (ABBILDUNG 17)

Im Vergleich zur letzten Erhebung erkennen wir aber einen Trend hin zu den Application Servern Denn der Anteil der Experten die einen Application Server haumlufig einsetzen ist deutlich von etwa 35 auf nun 49 gestiegen Und etwa 7 der Befragten plant den Einsatz eines Application-Servers fuumlr die naumlchsten 12 Monate

Application Server sind mit Java EE 5 und 6 leichtgewichtiger geworden und scheinen sich damit auch immer mehr fuumlr den Einsatz in Projekten anzubieten Wir sind gespannt ob unsere zukuumlnftigen Studien den Trend hin zu den Application Server bestaumltigen

VERWENDETECONTAINER

100

80

60

40

20

0ServletContainer ApplcationServer

haumlufig teilweise fuumlrdienaumlchsten12Monategeplant ABBILDUNG17

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 21: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

21

AKTUELLETHEMENVONCIOSUNDSOFTWARE-AR-

CHITEKTEN6

SOA Business Process Management und Cloud Computing sind einige der groszligen Themen mit denen sich CIOs und Software-Architekten heute aus-einandersetzen muumlssen In diesem Kapitel analysieren wir welche Relevanz diese Themen in der tatsaumlchlichen Projektwelt haben

ABBILDUNG18 zeigt dass etwa ein Drittel der Firmen heute schon erste SOA-Projekte hinter sich haben bzw sich gerade im ersten Projekt befinden

Etwa 21 der Befragten haben REST im praktischen Einsatz das heiszligt sie sind im ersten Projekt oder haben sogar schon erste Projekte abgeschlos-sen Fuumlr die nahe Zukunft planen sogar weitere 35 den Einsatz von REST Damit liegt hier ein sehr starker Trend vor

Etwa um die 20 der Befragten haben OSGi Business Process Management (BPM) Rules Engines und Domain Specific Languages (DSL) im praktischen Einsatz Wenn auch nicht so stark wie bei REST so gibt auch hier ein hoher Anteil der Java-Experten an diese Technologien in naher Zukunft einsetzen zu wollen

Cloud Computing ist noch nicht so stark verbreitet 9 haben es schon im praktischen Einsatz Aber hier gibt es ein enormes Potential 18 der Studienteilnehmer planen den Einsatz in Kuumlrze

AKTUELLETHEMENVONCIOSUNDSOFTWARE-ARCHITEKTEN6

ABBILDUNG18

AKTUELLETHEMENVONCIOSUNDARCHITEKTEN

100

80

60

40

20

0 SOA REST OSGi BPM RulesEngines

DSL CloudComputing

keineBedeutung

wirplanendenEinsatzdemnaumlchst

wirsindimerstenProjekt

wirhabenersteProjekteabgeschlossen

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 22: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 23: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

23

OPENSOURCE7

BEI der Software-Entwicklung mit Java spielen Open Source Technologien eine sehr groszlige Rolle Die Verbreitung quelloffener Produkte in der Software-Entwicklung mit Java ist erheblich Und der Einfluss von Spring und Hibernate auf den neuen Java EE Standard zeigt dass Open Source Produkte auch beachtliche Innovationsschuumlbe ausloumlsen koumlnnen

Die Bedeutung und Qualitaumlt der eingesetzten Open Source Technologien wird von den befragten Experten entsprechend als sehr hoch eingeschaumltzt (vgl ABBILDUNG19 und ABBILDUNG20)

Open Source Produkte sind ndash dies belegen die Ergebnisse des Java-Trendbarometers eindeutig ndash inzwischen definitiv etabliert sie haben sich bewaumlhrt und bieten gerade bei neuen Projekten interessante Moumlglichkeiten

WIEWICHTIGSINDOPENSOURCEPRODUKTEFUumlRIHREPROJEKTE

unwichtig

gehtso

wichtig

ABBILDUNG19

71

92

WIESCHAumlTZENSIEDIEQUALITAumlTDERVONIHNENEINGESETZTENOPENSOURCELOumlSUNGENEIN

schlecht

akzeptabel

hoch

ABBILDUNG20

0

26

74

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 24: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

24

Um zu analysieren welche Open Source Produkte tatsaumlchlich im Projektalltag eingesetzt werden und sich dort bewaumlhrt haben fragten wir die Java-Experten nach den Technologien die sie tatsaumlchlich in ihren Projekten einsetzen

Bei der Frage nach bedeutenden Open Source Produkten wurden am haumlu-figsten EclipseHibernateSpring und ApacheTomcat genannt

Dies ist aber nur die Spitze der genannten Produkte Viele weitere wur-den von den Experten benannt Resultat ist nun ein Werkzeugkoffer von Produkten die von den befragten Experten besonders empfohlen werden

Im Folgenden finden Sie eine Liste der genannten Technologien Diese Liste ist auch auf unserer Homepage verfuumlgbar httpwwwexpesodewerkzeugkoffer hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

Profitieren Sie von den Empfehlungen der Experten und schlagen Sie auch auf den verlinkten Projektseiten nach Vielleicht entdecken Sie neben den vielen bekannten Produkten auch die eine oder andere Perle die Sie fuumlr Ihr naumlchstes Projekt evaluieren koumlnnten

Open Source Produkte

OPENSOURCEPRODUKT STICHWORT

Adobe Blaze DShttpopensourceadobecomwikidisplayblazedsBlazeDS Remoting und Web Messaging

Android SDKhttpdeveloperandroidcomsdk Android Entwicklungsplatform

AndroMDAhttpwwwandromdaorg Model Driven Architecture

Apache AntHttpantapacheorg Build Tool

Apache Axis2httpwsapacheorgaxis2 Web Services

Apache Commonshttpcommonsapacheorg Wiederverwendbare Java-Komponenten

Apache CXFhttpcxfapacheorg Open Source Service Framework

Apache Hadoophttphadoopapacheorg Skalierbare und verteilte Programme

Apache HTTP Serverhttphttpdapacheorg HTTP-Server

Apache Lucenehttpluceneapacheorg Suchmaschinen Technologie

Apache Mavenhttpmavenapacheorg Build Tool

Apache MyFaceshttpmyfacesapacheorg JSF Implementierung

Apache POIhttppoiapacheorg API fuumlr Microsoft Dokumente

Apache Strutshttpstrutsapacheorg Web Framework

Apache Tomcathttptomcatapacheorg Servlet Container

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 25: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

25

Apache Wickethttpwicketapacheorg Web Framework

Bean Scripting Frameworkhttpjakartaapacheorgbsf Skripting Language Support

BIRThttpwwweclipseorgbirt Business Intelligence und Reporting Tools

DataNucleushttpwwwdatanucleusorg Persistenz Framework

db4ohttpwwwdb4ocom Object Database

Droolshttpwwwjbossorgdrools

Business Rules Management Business Process Managment

EasyMockhttpeasymockorg Mockup Tool fuumlr Unittests

Eclipse Modeling Projecthttpwwweclipseorgmodeling Modellgetriebenen Softwareentwicklung

Eclipsehttpwwweclipseorg Entwicklungsumgebung und mehr

ExtGWThttpwwwextjscomproductsgwt Rich Internet Applications

FindBugshttpfindbugssourceforgenet Tool zur Fehlersuche

Githttpgit-scmcom Verteilte Versionskontrolle

GlassFishhttpsglassfishdevjavanet Application Server

Google Web Toolkithttpcodegooglecomwebtoolkit Rich Internet Applications

Grailshttpwwwgrailsorg Web Framework

Groovyhttpgroovycodehausorg JVM Skript Sprache

H2httpwwwh2databasecom Datenbank

Hibernatehttpwwwhibernateorg Persistenz- und ORM-Framework

Hudsonhttphudson-ciorg Continuous Integration

ICEfaceshttpwwwicefacesorg JSF Implementierung

iTexthttpwwwitextpdfcom Java PDF Generierung

Java Excel APIhttpjexcelapisourceforgenet API fuumlr Excel

Javahttpjavasuncom Platformunabhaumlngige Programmiersprache

JavaDBhttpdeveloperssuncomjavadb Datenbank

Jboss AShttpwwwjbossorgjbossas Application Server

jBPMhttpwwwjbossorgjbpm Business Process Management

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 26: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

26

Jettyhttpwwweclipseorgjetty Servlet-Container

JFreeCharthttpwwwjfreeorgjfreechart Grafiken und Diagramme

Junithttpwwwjunitorg Unit Tests

log4jhttploggingapacheorglog4j Logging

NetBeans DIEhttpwwwnetbeansorg Entwicklungsumgebung

Open CMS httpwwwopencmsorgde Content Management

Open Zimbrahttpwwwzimbracom eMail und Kalender Groupware

OpenLoghttpwwwopenntforgprojectspmtnsfProjectLookupOpenLog

Error und Event-Logging

OpenRuleshttpwwwopenrulescom Business Rules Management

Oracle SQL Developerhttpwwworaclecomtechnologyproductsdatabasesql_developer

Tool zur Datenbankentwicklung

PMDhttppmdsourceforgenet Code Qualitaumlt

PostgreSQLhttpwwwpostgresqlorg Datenbank

PrettyFaces httpcodegooglecompprettyfaces JSF Erweiterung fuumlr bdquopretty URLsldquo

RichFaceshttpwwwjbossorgrichfaces JSF Komponentenbibliothek

Seamhttpseamframeworkorg Framework fuumlr Java EE Anwendungen

SLF4Jhttpwwwslf4jorg Logging Fassade

Springhttpwwwspringsourceorg Java Application Platform

SQuirreLhttpsquirrel-sqlsourceforgenet Universal SQL Client

TestNGhttpwwwtestngorg Testing Framework

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 27: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

27

SOFTWARE-ENTWICKLUNGSPROZESS8

IN diesem Kapitel bewerten wir die Zufriedenheit der Java-Experten mit den Software-Entwicklungsprozessen Dabei haben wir gezielt nach der Realitaumlt in den Projekten gefragt Es ging nicht darum welche Prozesse ein-gesetzt werden sondern um die Frage wie zufrieden die Java-Experten mit den Gegebenheiten in den Projekten sind

Des Weiteren analysieren wir die Bedeutung neuer Technologien fuumlr und die Innovationskraft in den Unternehmen Denn die Java Technologien sind einer staumlndigen Innovation unterworfen Sei es die Weiterentwicklung des Sprachstandards selbst oder aber auch die Entstehung neuer Frameworks Produkte und Industriestandards

Zur Analyse der Software-Entwicklungsprozesse betrachten wir gezielt die zentralen Phasen Anforderungsanalyse Entwicklerdokumentation und Qualitaumltssicherung

Die Anforderungsanalyse ist die Basis jedes Software-Projekts Ohne ein belastbares Verstaumlndnis des Kundenwunsches entstehen erheb-liche Risiken bezuumlglich des Projektergebnisses Und eine ordentliche Entwicklerdokumentation traumlgt wesentlich zum Investitionsschutz bei denn nur so kann die langfristige Wartung und Weiterentwicklung des Systems sichergestellt werden

Die Ergebnisse der Umfrage uumlberraschen Die befragten Experten sind in diesen wichtigen Punkten mit den tatsaumlchlichen Projektgegebenheiten aumluszligerst unzufrieden 63 ndash 71 der Befragten bescheinigen den Projekten hier einen deutlichen Mangel Das Verbesserungspotential ist erheblich hier lauern enorme Risiken

Zufriedenheit mit Software-

Entwicklungsprozessen

SOFTWARE-ENTWICKLUNGSPROZESSUNDINNOVATION8

WIEGUTISTDERSOFTWARE-ENTWICKLUNGSPROZESS

100

80

60

40

20

0Anforderungsanalyse Entwicklerdokumentation Testund

Qualitaumltssicherung

ABBILDUNG21 genaurichtig zuviel zuwenig

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 28: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

28

Wie schnell werden neue Technologien in Projekten eingesetzt ABBILDUNG22zeigt dass 47 der Befragten neue Java-Versionen zeitnah bis schnell einsetzen Der Umstieg auf neue Java EE Versionen geschieht dann doch schon mit deutlicher Verzoumlgerung Noch zoumlgerlicher ist der Umstieg auf die neuen JVM-basierten Skriptsprachen

Hier sind die Unternehmen gefordert Zum einen duumlrfen Sie nicht jedem Hype nachgehen und muumlssen eine konsequente technologische Strategie umsetzen Es ist auch verstaumlndlich dass zB in der Produktentwicklung kein staumlndiger Technologiewechsel stattfinden kann

Zum anderen muumlssen sich Unternehmen aber auch mit neuen Technologien und Moumlglichkeiten auseinandersetzen und diese sinnvoll und schrittweise in bestehenden Projekten einfuumlhren Auf lange Sicht amortisieren sich die Kosten durch Produktivitaumltssteigerung verbesserte Testbarkeit und Flexibilitaumlt Aber auch die Motivation der Mitarbeiter und ihre Bindung ans Unternehmen kann durch die Innovationskraft des Arbeitgebers erhoumlht werden Hier sind die Unternehmen gefragt eine langfristige Strategie zu entwickeln

Einsatz neuer Technologien

WIESCHNELLSETZENSIENORMALERWEISENEUETECHNOLOGIENEIN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-basierte

Skriptsprachen

schnellzeitnah verzoumlgert garnichtsehrspaumlt ABBILDUNG22

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 29: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

29

Nutzen neuer

Sprachmerkmale

Bedeutung neuer

Technologien fuumlr

Unternehmen

Analog zum Einsatz neuer Technologien in Unternehmen (s o) schaumltzen die Java-Experten auch die Bedeutung neuer Java-Technologien fuumlr Unternehmen ein (ABBILDUNG23) eine mittlere bis hohe Bedeutung wird von der Mehrheit der Befragten neuen Java und Java EE Versionen beige-messen Bei JVM-basierten Skriptsprachen sieht die Mehrheit der Befragten eine geringere oder gar keine Bedeutung fuumlr Unternehmen

In ABBILDUNG24 ist dargestellt wie haumlufig neue Merkmale der Java-Sprache verwendet werden Die neuen Sprachmerkmale der Java SE 6 haben im Vergleich zur vergangenen Studie an Bedeutung gewonnen Die Erweiterungen der Java SE 5 betreffen den Entwickleralltag jedoch mehr als die Erweiterungen der Nachfolgeversion Java SE 6 Und dies obwohl Java SE 6 inzwischen eine houmlhere Verbreitung hat (vergleiche ABBILDUNG 4)

Im Vergleich zu unserer vergangenen Studie spielen die neuen Merkmale der Java EE 5 nun eine etwas staumlrkere Rolle Die neuere Version Java EE 6 wird dagegen noch nicht so haumlufig verwendet hat aber Potential

NUTZENSIEDIENEUENSPRACHMERKMALE

100

80

60

40

20

0

JavaSE6 JavaSE5 JavaEE6 JavaEE5

WELCHEBEDEUTUNGHATDASERSCHEINENNEUERTECHNOLOGIENFUumlRUNTERNEHMEN

100

80

60

40

20

0neueJavaVersionen neueJavaEEVersionen JVM-SkriptSprachen

ABBILDUNG24

weiszlignicht

nein

fuumlrdienaumlchsten12Monategeplant

ja

ABBILDUNG21 hoch mittel gering keine

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 30: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

30

Interessant ist auch wie die Java-Experten die Bedeutung der beliebten Open Source Frameworks Spring und Hibernate einschaumltzen Diese Kombination ist haumlufig im Einsatz und hat auch entscheidend die Java Persistence API (JPA) und Java EE 5 bzw 6 gepraumlgt

Trotz der nun existierenden Java EE Standards denken 46 der Befragten (siehe ABBILDUNG25) nicht dass Spring und Hibernate nun an Bedeutung verlieren wird Nur 26 der Befragten sehen eine geringere Bedeutung die-ser Technologien fuumlr die Zukunft

Im Vergleich zur letzten Studie deutet sich hier ein Trendwechsel in der Bewertung der Experten an immer weniger Experten (-11) glauben dass es keinen Bedeutungsverlust fuumlr Spring und Hibernate geben wird Daruumlber hinaus sieht ein steigender Anteil der Experten (+8) eine schwindende Bedeutung dieser Technologiekombination

Zu Spring und Hibernate gibt es mit dem neuen Java EE Standard also eine ernsthafte Alternative die im Projektalltag auch genutzt wird

Spring und Hibernate

ABBILDUNG25

WIRDDIEBELIEBTEKOMBINATIONAUSSPRINGUNDHIBERNATEDURCHDENJAVAEESTANDARDANBEDEUTUNGVERLIEREN

weiszlignicht

nein

ja

26

46

28

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 31: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

31

Welches sind die bdquoheiszligenldquo Technologien der naumlchsten zwoumllf Monate Wir fragten unsere Java-Experten welche Technologien sie in den letzten zwoumllf Monaten in ihren Projekten neu einsetzten bzw in den naumlchsten zwoumllf Monaten produktiv einsetzen moumlchten

Einige wenige Technologien wurden besonders haumlufig genannt und stellten sich als Trend heraus Das heiszligt diese Technologien gewinnen an Bedeutung und kommen aktuell in immer mehr Projekten zum Einsatz

Sehr haumlufig wurden hier das GoogleWebToolkit(GWT)ApacheWicket und JSF20genannt Diese Technologien wurden lt den Aussagen der Java-Experten in den letzten Monaten in vielen Projekten erstmalig ein-gesetzt bzw sollen in den naumlchsten Monat zum ersten Mal in konkreten Projekten zum Einsatz kommen

Auf den weiteren Raumlngen folgen Spring30 generell der erstmalige Einsatz von ApplicationServer wie zB Glassfish GroovyScala und OSGi

Technologietrends

KERNAUSSAGENDESKAPITELS

DiemeistenExpertensehendeutlichesVerbesserungspotentialindenSoftware-Entwicklungsprozessen

SpringundHibernateverliereninderBewertungderExpertenetwasanBedeutung

HohesPotentialwirdGoogleWebToolkitApacheWicketundJSF2zugetraut

DerTrendhinzuApplicationServernwirdbestaumltigt

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 32: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

TRENDS UND ENTWICKLUNGEN IN DEN JAVA-TECHNOLOGIEN MAI 2010

32

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 33: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

MAI 2010 JAVA-TRENDBAROMETER expeso GmbH

33

FAZIT9

DASJAVA-TRENDBAROMETER liefert interessante Erkenntnisse Trotz aller Vielfalt in der Java-Welt haben sich bestimmte Technologien Frameworks und Open Source Produkte herauskristallisiert bewaumlhrt und im Projektalltag etabliert

Technologiewechsel sind zu beobachten so setzen sich JDK 5 und 6 bzw Java EE 5 und 6 im Vergleich zu den vergangenen Studien immer mehr durch und kommen im Projektalltag an

Groumlszligere Bedeutung fuumlr Unternehmen wird der deutlich erkennbare Trend hin zu Application Servern haben Verzichtete man in der Vergangenheit aufgrund der Komplexitaumlt in vielen Projekten oft auf den Einsatz des vollen J2EE Stacks so gibt es mit dem neuen Java EE Standard einen deutlichen Trend von den einfachen Servlet Containern hin zu Application Servern

In einzelnen Entwicklungsbereichen gibt es Favoriten So dominiert zB Apache MyFaces als JSF-Implementierung und Dojo und jQuery bei den verwendeten AJAX-Bibliotheken Aber fast uumlberall zeigt es sich dass auch die Alternativen umfangreich eingesetzt werden

Aktuell stark beachtete neue Technologien sind Google Web Tookit Apache Wicket und JSF 2 Diese Technologien haben sich in Unternehmensprojekten schon bewaumlhrt und werden immer haumlufiger eingesetzt

Bei der Auseinandersetzung mit neuen Technologien sind Verbesserungsmoumlglichkeiten erkennbar Unternehmen sollten hier systematisch und stetig die eigene Innovationskraft ausbauen um sich im Markt zu differenzieren und wettbewerbsfaumlhig zu bleiben Auch im Entwicklungsprozess wird es weiterhin Optimierungspotential geben

Bei allen Detailergebnissen zeigt das Java-Trendbarometer auch in welchen Bereichen eine externe Unterstuumltzung durch ausgewaumlhlte und erfahrene Experten hilfreich ist ndash sei es in der Software-Entwicklung oder in der Technologie- oder Prozess-Beratung Der Aufwand hierfuumlr duumlrfte sich zuumlgig amortisieren da in vielen IT-Projekten zum Teil erhebliche Wirtschaftlichkeitsreserven vorhanden sind Fachlich wie betriebswirtschaftlich rechnet sich der Einsatz erfahrener Java-Experten ndash zum Beispiel von expeso

Wir hoffen Ihnen interessante Trends und Entwicklungen gezeigt zu haben die Sie auch fuumlr Ihre praktische Arbeit nutzen koumlnnen Wir werden dieses Trendbarometer auch zukuumlnf-tig und regelmaumlszligig erstellen

Registrieren Sie sich unter httpwwwexpesodejava-trendbarometer und Sie erhalten auch in Zukunft immer die aktuellen Ergebnisse zugesandt

Haben Sie Anregungen Tipps Kritik oder auch Fragestellungen die Sie gerne in zukuumlnftigen Studien analysiert sehen moumlchten senden Sie uns bitte eine E-Mail an trendexpesode

Wir freuen uns auf Ihr Feedback

Markus RothGeschaumlftsfuumlhrer expeso GmbH

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode

Page 34: Java Trendbarometer 2009 › wp-content › uploads › 2010 › 05 › Java-Trendbarome… · Wir identifizieren mit der vorliegenden Studie innovative Technologien, über die nicht

expeso GmbHWeinheimer Str 68D-68309 Mannheim

Telefon +49 (621) 7249344-0Telefax +49 (621) 7249344-6

E-Mail infoexpesode Internet httpwwwexpesode