JSP Develop Newsletter #2 vom 04.08.2001

Editorial

Liebe Leserinnen und Leser!  In dieser Ausgabe des Newsletters gibt es wieder
eine Reihe von spannenden Themen, die wir behandeln werden. Neben interessanten
Neuerscheinungen von Büchern gibt es in diesem Monat auch einige neue Publikationen
in der Knowledge Base.

Wir möchten unser Portal für JSP-Entwickler erweitern und bitten deshalb um rege
Teilnahme an unserer Plattform. Also ran an den Schreibtisch, seid kreativ und sendet
uns neue interessante Beiträge zu Themen aus den Bereichen JSP und J2EE.

Viel Spaß beim Newsletter!

Marc & Jörg


News

IBM hat die Version 4.0 seines Application Servers WebSphere vorgestellt. WebSphere
beinhaltet eine Reihe von Werkzeugen und Produkten, die unter dem Namen WebSphere
zusammengefasst sind. WebSphere ist in mehreren Editionen verfügbar: Die kostenlose
Developer Version mit voller Unterstützung der J2EE, XML und den WEB-Services UDDI,
WSDL und SOAP kann von der IBM WEB-Seite heruntergeladen werden. IBM bietet in
der neuen WebSphere Version eine Reihe von Connectoren für verschiedene proprietäre
Software-Systeme wie SAP, PeopleSoft, etc. an. Nachfolgend ein Überblick über die
Neuerungen der WebSphere Version 4.0.

Die neuen Features im Schnellüberblick:

# Volle WEB-Services Integration -- SOAP, UDDI, WSDL, XML, and J2EE™ 1.2
   (Java 2 Enterprise Edition Plattform) Zertifizierung

# JCA (Java Connectivity API) Unterstützung; CORBA und Activex Interoperabilität und
   erweiterter Datenbanksupport

# Message Beans & JMS Listener Support

# Enterprise Java Beans™ (EJB) Erweiterungen

# Internationalization mit Unterstützung bezüglich verschiedener Sprachen, Zeitzonen
   und Währungsproblemen

# Beans in denen die Geschäftslogik mit Regeln beschrieben werden können und somit
   ein dynamisches Update ohne Programmierung ermöglichen

# Performanz Erweiterungen -- dynamic reload von  EJBs, dynamic caching (muti-tier)
   und JNDI caching

# Ergänzungen bei den Konfigurationswerkzeugen und eine neue Version von Visual Age
   for Java und WebSphere Studio

Weitere Info's  findet man auf der IBM Homepage: www-4.ibm.com/software/webservers


Buch Neuerscheinungen

Für den Bereich Java 2 Enterprise Edition (J2EE) ist im Mai 2001 ein neues Buch
mit dem Titel Using Java 2 Enterprise Edition (ISBN: 0-7897-2503-7) im QUE-
Verlag erschienen. Der Autor Mark Wutka bespricht in dem Buch die Kern-
komponenten der J2EE. Wir haben das Buch bereits gelesen und sind der Meinung,
dass Leser, die sich mit der Thematik bereits beschäftigt haben, von dem Buch
profitieren werden. Das Buch ist für geübte J2EE-Entwickler klar mit Kaufen zu bewerten.
Die Kapitel beinhalten im einzelnen die J2EE Technologie und Enterprise APIs  wie
Enterprise Java Beans, Java Server Pages und Servlets, CORBA, JNDI und JMS.
Das Kapitel über XML, beschreibt wie XML-Dokumente mit XSLT in HTML-Dokumente
transformiert werden können. In dem Buch werden neben den Enterprise APIs auch grund-
legende Themen wie Netzwerke/Protokolle und Sicherheitsaspekte behandelt. Weiter-
führende Themen wie "Reflections" und "Introspection" zeigen spezielle Techniken für
die Anwendungsentwicklung im Rahmen der J2EE. Das letzte Kapitel des Buches
handelt von praktischen Beispiele, die das Werk insgesamt abrunden.

Der Wrox-Verlag bringt in Kürze ein neues Buch mit dem Titel Professional EJB -
Enterprise Java Beans (ISBN: 1861005083) heraus. Das Buch wendet sich sowohl an
Einsteiger als auch an Fortgeschrittene Entwickler die J2EE-Anwendungen mit
EJBs realisieren möchten. In dem Buch werden neben der Theorie auch Design
Prinzipien und praktische Beispiele ("Case Studies") besprochen. Der heute in der
Praxis oft wiederzufindende Fall der Verknüpfung einer J2EE-Anwendung mit
einer COM-Anwendung ist ebenfalls Gegenstand dieses Buches. Das Buch bespricht
alle Aspekte der EJB Komponententechnologie und ist deshalb sehr gut für die
praktische Arbeit in diesem sehr umfangreichen Gebiet geeignet.


Buch Besprechung

Enterprise Java with UML
CT Arrington
ISBN: 0-471-38680-4

Im letzten Newsletter haben wir das Buch Enterprise Java with UML bei den
Buch Neuerscheinungen vorgestellt. Wir haben uns ein frisch aus der Drucker-
presse kommendes Exemplar schicken lassen und das Buch bereits studiert.
Der Rezension des Buches vorwegzunehmen: Das Buch ist nicht für "Source
Code Junkies" und Anhänger der Methode des "Extreme Programming" ge-
eignet. Entwickler, die behaupten der "Quellcode sei die Programmdokumentation"
(wie des öfteren schon gehört!) sollten ebenfalls lieber die Finger von diesem Buch
lassen.

Kapitel 1

Das erste Kapitel behandelt die Grundlagen wie mit der Unified Modeling
Language (UML) Java Anwendungen modeliert werden können. Dieses
Kapitel beschreibt typische Merkmale der objekt-orientierten Philosophie wie
Abstraktion, Kapselung, Beziehungstypen, Polymorphismus und Interfaces
(abstrakte Klassen). Im Rahmen dessen werden die verschiedenen Sichten
auf ein Modell erläutert (Kunden- und Entwicklersicht) und wie der Prozess
der Modellierung in der Praxis stattfindet.

Kapitel 2

Kapitel zwei beschreibt die erste Stufe der Modellierung eines Softwaresystems
und die Ermittlung von Anforderungen mit der UML. Das Hauptthema dieses Kapitel
sind "Use Cases", deren Hintergrund und wie "Use Cases" helfen können An-
forderungen zu definieren. In dem Kapitel wird beschrieben, dass "Use Cases"
nicht nur für die Definition der Anforderungen geeigent sind, sondern vielmehr
ein Medium für die Kommuikation zwischen Anwendungsentwickler und Benutzer
sein können. Das Kapitel beschreibt im einzelnen wie "Uses Cases" aufgebaut
sind und mit Aktivitätsdiagrammen graphisch beschrieben werden können.

Kapitel 3

Das dritte Kapitel zeigt die Definition von Anforderungen anhand eines konkreten
Beispiels, welches in dem Buch über alle Stufen der Modellierung hinweg weiter
verfeinert wird. Das schöne an dem Beispiel ist, dass der Leser einen Leitfaden
für die Entwicklung eigener "Use Cases" erhält. Neben dem Übergeordneten
"Use Case" Diagramm für die Beispielapplikation ("Timecard Application"),
werden die verschiedenen "Use Cases" für das Beispiel entwickelt und mit
Aktivitätsdiagrammen und verbal beschrieben. Das Ergebnis dieses Kapitels
ist ein Schema für die Realisierung von "Use Cases".

Kapitel 4

Kapitel vier handelt von der objekt-orientierten Analyse mit der UML. Die ver-
schiedenen Schritte im Analyseprozess werden allgemeingültig dargestellt.
Der Übergang von den "Use Cases" in die Analysephase hinein wird behandelt
und schafft die Basis für die weiteren Kapitel. Das Kapitel stellt sehr schön die
verschiedenen Objekttypen eines objekt-orientierten Softwaresystems wie Entity,
Boundary, Control und Lifecycle Objekte dar. Das Beschreiben des Verhaltens
von Objekten und die Abbildung mit Methoden runden das Kapitel ab. Die beiden
graphischen Methoden zum Beschreiben eines Analysemodells (Klassen- und
Sequenzdiagramme) werden anschaulich erklärt.

Kapitel 5

In diesem Kapitel wird das Analyse Modell für die "Timecard" Applikation
auf Basis der "Use Cases", die im Kapitel 3 besprochen wurden, entwickelt.
Das Analysemodell beschreibt die zu implementierende Anwendung aus der
Sicht des Entwicklers und ist die Basis für die weiteren Schritte im Entwicklungs-
prozeß des Anwendungsbeispiels. Besonders hervorzuheben sind die Textstellen,
in denen aus den "Use Cases" konkrete Objekte und die Interaktionen zwischen
den Objekten identifiziert werden. Der Prozeß der Objektfindung ist mit Sicherheit
einer der intellektuellen Herausforderungen im Analysprozeß.

Kapitel 6

Kapitel sechs handelt von der Beschreibung der technologischen Anforderungen
eines Software Systems in Bezug auf das Analysemodell. Das Kapitel unterstützt
die Wahl einer bestimmten Technologie für ein konkretes Analysemodell. Die Rand-
bedingungen für die Wahl einer Technologie, die abhängig sind von der verfügbaren
Bandbreite, Anzahl und Typ des Benutzers, Komplexität der Benutzer- und System-
schnittstellen sowie Performanz und Skalabilität, werden im einzelnen erläutert.

Kapitel 7

In Kapitel sieben wird erläutert wie die Benutzer- und Systemschnittstellenklassen
(Boundary Classes) von der Technologieseite her gesehen umgesetzt werden können.
Im einzelnen wird auf Swing, Java Servlets und XML eingegangen. Im Zuge dessen
wird ein Schema für die Bewertung der technologischen Basis von "Boundary
Classes" entwickelt.

Kapitel 8

Kapitel acht beschreibt die Auswahl einer Technologie für "Control und Entity
Classes". Behandelt werden im einzelnen RMI, JDBC und EJBs.

Kapitel 9

Das neunte Kapitel erklärt die Ziele einer Software Architektur und wie diese erreicht
werden können. In dem Kapitel werden die in der Analysephase identifizierten Klassen
zu "Packages" gruppiert und deren Beziehungen untereinander definiert sowie graphisch
dargestellt.

Kapitel 10

In Kapitel zehn wird eine Einführung in das Design von Software Architekturen mit der UML
gegeben. Die Ziele des Designs im Hinblick auf die Implementierungsphase werden im
einzelnen erläutert. Neben grundlegenden Themen wie: "Was ist Design?" werden auch
Design Patterns und die Planung der Designphase besprochen.

Kapitel 11

Kapitel elf wendet die in Kapitel zehn definierten Design-Ziele an dem Anwendungsbeispiel
der "Timecard" Applikation an. Im Detail werden die in der Analysephase entwickelten
Klassen- und Sequenzdiagramme für die Business Logic der "Timecard" Applikation
verfeinert. Diese Methode ist typisch für die Vorgehensweise innerhalb der Designphase
(verfeinern des Analysemodells). Der letzte Teil des Kapitels schlägt die Brücke von der
Designphase zur Implementierung. Interessant ist, dass für die Umsetzung des Designs
Enterprise Java Beans verwendet werden.

Kapitel 12

In Kapitel zwölf wird eine Klassenbibliothek für HTML-Produktionen entworfen und realisiert.
Die Klassenbibliothek ist ein Framework für Entwickler, die im wesentlichen HTML Tags
kapselt. Neben den Design-Zielen werden auch Design Patterns erklärt und angewendet.
Der Abschluß des Kapitels beschreibt implementierungsspezifische Aspekte der Klassen-
bibliothek.

Kapitel 13

Kapitel dreizehn behandelt das Design und die Implementierung für die Benutzerschnittstelle
der "Timecard" Applikation (User Interface  Classes). Die zuvor in Kapitel zwölf entwickelte
Klassenbibliothek wird für die Realisierung der Benutzerschnittstelle verwendet.

Anhänge

Im Anhang A werden die unterschiedlichen Objektbeziehungen wie Generalisierung,
Assoziation, Aggregation und Komposition besprochen. Neben der graphischen
Darstellung wird auch die Umsetzung mit der Programmiersprache Java erläutert.
Anhang B verweist auf Standardwerke und nützliche Quellen zu dem Thema objekt-
orientierte Analyse und Design.

Fazit

Das Buch Enterprise Java with UML ist für Entwickler und Architekten interessant, die
mit der Unified Modeling Language (UML) professionell J2EE-Anwendungen realisieren
möchten. Bevor man dieses Buch in die Hand nimmt, sollte man die Philosophie/Methologie
der "drei Amigos" kennengelernt und verstanden haben. Ein Grundlegendes Verständnis für
das Themengebiet objekt-orientierte Analyse und Design wird bei den Lesern des Buches
vorausgesetzt. Besitzt man das nötige Grundlagenwissen erhält man durch das Buch neue
Anregungen und viele hilfreiche Tipps für die Praxis. Besonders gut ist es dem Autor gelungen
die anschaulichen UML Diagramme untermauert mit Source Code Beispielen darzustellen.
In dem Werk wird eine "Timecard" Anwendung realisiert, die der rote Faden des Buches ist
und ein komplettes Anwendungsbeispiel für die Modellierungsmethotik mit der UML darstellt.
Für an objekt-orientierter Analyse- und Designtechniken interessierte Leser sowie Entwickler
die professionelle J2EE-Anwendungen mit Enterprise Java Beans (EJBs) entwickeln möchten
ist das Buch ein guter Kauf.


Link des Monats

Hinter dem Link des Monats verbergen sich jede Menge Informationen zur Java 2 Enterprise
Edition. Die Seite The Serverside dot com ist ein Portal für J2EE Entwickler. Besonders
hervorzuheben sind die Sektionen Reviews, die Diskussionen zu Application Servern enthält
und Patterns, in der eine Reihe von nützlichen Design Patterns für J2EE-Anwendungsfälle
hinterlegt sind. Von der Sektion Patterns aus gesehen verzweigen Links zu weiteren Design
Patterns Quellen. In der Sektion Resources sind interessante Artikel zu neuen J2EE-Themen
wie zum Beispiel WEB-Services hinterlegt.

Auf gehts! Schaut vorbei:  www.theserverside.com


Frage des Monats

Wir haben uns überlegt in den nachfolgenden Newslettern jeweils eine Frage aus den
Bereichen WEB- und IT-Technologien zu stellen. Zu gewinnen gibt es noch nichts, weil
wir unsere Fragen als intellektuelle Herausforderung ansehen.

Also denkt nach und beantwortet uns die folgende Frage:

Wofür steht der Begriff NOISE in der IT-Technologie?

Die Antworten könnt Ihr an "joerg@jsp-develop.de" bzw. an "marc@jsp-develop.de"
senden. Wir sind gespannt, ob Ihr das Rätsel knacken könnt!

Wir werden im nächsten Newsletter das Rätsel auflösen und den Gewinner
bekanntgeben. Falls es keinen Gewinner gibt, lösen wir das Rätsel trotzdem
auf (-:


Neue Beiträge bei JSP Develop

WEB-Services (Grundlagen)
shark

Dieser Beitrag behandelt den neuen Hype im B2B Bereich die sogenannten WEB-Services.
Alles dreht sich zur Zeit um dieses Thema und der Artikel schafft die nötige Basis für eigene
Versuche mit der noch relativ jungen Technologie.

JSP meets Middleware (RMI)
shark

In diesem Teil der Middleware Serie wird RMI besprochen. Der Artikel erläutert wie verteilte
Anwendungen mit RMI geschrieben und mit einer Webseite verbunden werden können.

JSP meets Middleware (CORBA)
shark

Der Artikel über CORBA zeigt an einem konkreten Anwendungsbeispiel, das CORBA neben
Application Servern eine gute Alternative für professionelle E-Commerce Anwendungen ist.

JSP meets Middleware (Grundlagen)
shark

Der erste Artikel aus der Serie Middleware bespricht die Grundlagen zu dieser Thematik.

Bridging the Gap
shark

Bridging the Gap handelt von dem Java Native Interface (JNI). In dem Artikel wird
beschrieben wie man mit der Programmiersprache Java eine Windows DLL, die
in C++ geschrieben wurde anbindet und in einer JSP-Seite verwendet.



Anregungen, Kritik oder Vorschlaege an: webmaster@jsp-develop.de.

Wenn Sie unseren Newsletter nicht mehr erhalten möchten, können Sie ihn unter
www.jsp-develop.de/newletter abbestellen.

Newsletter (c) 2001 by www.jsp-develop.de  Alle Rechte vorbehalten.