Copyright © IBS 2006
Copyright © IBS 2006
Nieuwbouw Vereenvoudigd en versnelt Java ontwikkeling
Huub Cleutjens
• • • •
IBS en Java Keuzes: taal / architectuur Productiviteit / arbeidsdeling IBS Java Development Accelerator – Persistence – UI – Persistence + UI • Samenvatting
Copyright © IBS 2006
Inhoud
• • • •
2.500 medewerkers waarvan 180 in Nederland 5.000 klanten in 40 landen Wereldwijd marktleider in supply chain De Nederlandse nr. 1 in bedrijfssoftware voor middelgrote bedrijven • Java, Lotus Domino en RPG ontwikkeling • Modernisering en integratie • IBM Premier Partner
Copyright © IBS 2006
IBS
1995 Start Java ontwikkeling met San Francisco frameworks 2000 Eerste J2EE Webapplicatie 2003 Start Vegas framework 2005 Vegas Framework ingezet bij klant 2006 Vegas Framework >> IBS JDA 2006 IBS JDA UI op basis van Ajax technologie 2007 ±200 klanten werken met onze Java webapplicaties (o.a. TimeConnect, e-Billing, e-Transaction)
Copyright © IBS 2006
IBS en Java
• • • • • • • • •
Java PHP .NET Ruby on Rails Python … RPG / RPG-CGI COBOL / COBOL-CGI …
Copyright © IBS 2006
Keuze taal
• • • • • • • • •
modern veilig robuust platform onafhankelijk flexibel en open de facto standaard op HBO en Universiteit de facto standaard voor Applicatie Servers strategische keuze van IBM …
Copyright © IBS 2006
Waarom Java?
Fat Client client’s worden geïnstalleerd op pc’s geavanceerde UI hoge beheerskosten
Smart Client Fat Client met geautomatiseerd beheer
Thin Client zero-install minimale beheerskosten minder geavanceerde UI
Rich Thin Client Thin client met geavanceerde UI dankzij AJAX
Copyright © IBS 2006
Client Server architectuur
zero install lage beheerskosten webapplicatie integratie met websites/portals geavanceerde user interface
Copyright © IBS 2006
Waarom Rich Thin Client?
Integrated Development Environment Eisen: Code Assist Refactoring (Remote) Debugging Team Support …
IDE’s: Eclipse, Netbeans, IntelliJ IDEA, JBuilder, JDeveloper
Copyright © IBS 2006
Keuze IDE?
• Open framework • Een van de beste zoniet dé beste IDE van dit moment • Zeer complete versies gratis beschikbaar: – Eclipse 3.2 + Callisto (downloadable) – WDS-client (Onderdeel van WDS )
• Met WDS-client één IDE voor: – legacy (RPG, CL, COBOL etc), – gemoderniseerde legacy(HATS) én – nieuwbouw Java, J2EE, XML, HTML etc.
Copyright © IBS 2006
Waarom Eclipse?
Ja, maar niet vanzelf: Leg requirements vooraf vast Stel performance-eisen vooraf vast Kies datacentrische benadering Beperk aantal koppelingen Vermijd onbewaakte koppelingen Reduceer technologische complexiteit
Copyright © IBS 2006
Productief met Java ?
• Onthutsende aantal verschillende technologieën. – Java, Ant Build Script, JUnit, Java Logging API, Java Servlet Technology, JSP, TL, JSF, EJB, XML, DTD, XSD, HTML, SQL, CSS, JavaScript, XSL, FO, WSDL, UDDI, SOAP, JMS, JavaMail API, JDBC, et cetera, – Tenminste één IDE, één J2EE server implementatie, één DBMS en één versiebeheer systeem, – aantal frameworks, tools en implementaties van standaarden, zoals: Struts, Spring, Hibernate, Log4J, FOP, Xalan, Xerces, Axis, et cetera.
• Open standaarden. – Onvolledige, foutieve of (onderling) afwijkende implementaties.
• Ontstellende hoeveelheid te schrijven code.
Copyright © IBS 2006
J2EE Complexiteit
Steile Leercurve Oppervlakkige kennis van elke technologie Veel tijdsverlies door gebrekkige implementatie van open standaarden Veel code schrijven voor weinig functionaliteit
Copyright © IBS 2006
Gevolg: lage productiviteit
Welk niveau? Project: samenwerkende specialisten management complexiteit neemt toe meer code, meer (losse) koppelingen
Onderneming: zelfbouw ontwikkeltools flexibel Uiteindelijk hoge productiviteit mogelijk initieel duur
Industrie: extern ontw. tools snel productief extra afhankelijkheden
Copyright © IBS 2006
Reduceer complexiteit middels arbeidsdeling:
• Tool voor het vereenvoudigen en versnellen van Java ontwikkeling • Initieel ontwikkeld voor eigen gebruik • Alle nieuwe Java producten worden nu ontwikkeld met JDA • JDA applicaties draaien inmiddels op meer dan 200 locaties • JDA wordt steeds vaker ingezet voor het bouwen van webapplicaties bij klanten
Copyright © IBS 2006
IBS Java Development Accelerator
• JDA Persistence – code generator – schermt ontwikkelaars af van persistentie technologieën en open standaarden – complete persistence layer inclusief automatisch aanmaken of converteren van database.
• JDA UI – framework – schermt ontwikkelaars of van UI technologieën en open standaarden – drastische reductie in te schrijven code.
• JDA UI + Persistence – verder reductie in hoeveel te schrijven code (tot 95%)
Copyright © IBS 2006
Overzicht JDA
Ontwikkelen met JDA
Copyright © IBS 2006
• Code generator en model editor. • Relaties, Indexen, Finders, Object Query Language, Overerving, Dependent Objects, et cetera. • Automatisch creëren/converteren database. • Nagenoeg geen losse onbewaakte koppelingen. • Ontwikkelaar blijft binnen Java Domein en heeft zo maximaal profijt van IDE voorzieningen zoals bijvoorbeeld code assist. • Ontwikkelaar wordt afgeschermd van persistentie technologieën en open standaarden. • Applicatie wordt afgeschermd van persistentie technologieën en open standaarden.
Copyright © IBS 2006
JDA Persistence
• • • • • • •
• •
UI Framework. Rich Thin Client (AJAX) Component based, event driven. Taalonafhankelijkheid, validatie, foutafhandeling, extendable, skinnable. Sterke reductie hoeveelheid te schrijven code. Sterke reductie losse onbewaakte koppelingen. Ontwikkelaar blijft binnen Java Domein en heeft zo maximaal profijt van IDE voorzieningen zoals bijvoorbeeld code assist. Ontwikkelaar wordt afgeschermd van UI technologieën en open standaarden. Applicatie wordt afgeschermd van UI technologieën en open standaarden.
Copyright © IBS 2006
JDA UI
and Component Based Webapplication Framework
Copyright © IBS 2006
Event driven
• Integratie middels interfaces • Verdere reductie te schrijven code • Verdere reductie hoeveelheid losse koppelingen • Verdere vereenvoudiging onderhoud
Copyright © IBS 2006
Symbiose JDA Persistence + UI
Multi platform, multi database webapplicaties Enkele regels code complete geavanceerde onderhoudsfuncties Flexibel Afscherming van veranderende UI en persistence technologieën
Copyright © IBS 2006
IBS JDA
Vraag vrijblijvende demonstratie aan!
Copyright © IBS 2006
Interesse?