Klaus Schultz  Reverse- & Software-Engineering


 

CT Arrington: Enterprise Java with UML, Wiley 2001

Der Titel trifft zu: nicht nur die Verwendung von EJB’s wird in diesem Buch erörtert, sondern auch andere Möglichkeiten wie
- Einsatz von RMI in klassischer Client/Server-Manier
- Einsatz von JDBC

Als Möglichkeiten für die User-Interface-Technologie werden Swing und Java Servlets vorgestellt, sowie XML als Schnittstelle zu anderen Systemen.

Das Buch spannt den Bogen von der Anforderungsanalyse bis zur Implementierung in Java. Für jede Phase werden nicht nur die Inhalte vorgestellt, sondern auch die Ziele und das Vorgehen. Diese Bandbreite ist gleichzeitig die grösste Schwäche des Buches, denn weder wird eine der Technologien in ausreichender Tiefe vorgestellt, noch die Methodik. Als durchgängiges Beispiel wird eine Zeiterfassungs-Applikation verwendet (die Mitarbeiter eines SW-Hauses erfassen damit, wieviel Stunden sie für welchen Kunden gearbeitet haben). Es ist ein sehr sehr einfaches Beispiel - auch wenn wahr ist, dass in einem Lehrbuch kein komplexes Beispiel gemacht werden kann, sind doch in anderen Büchern, z.B. Monson-Haefel, siehe oben, aufwendigere Beispiele. Immerhin kann am  Zeiterfassungs-Beispiel schon erläutert werden, daß feingranulare EntityBeans keinen Sinn machen (die TimeCard eines Mitarbeiters besteht aus vielen TimeEntries. Die TimeEntry-Klasse darf kein EntityBean werden)
Um einen Eindruck von der Bandbreite des Buches zu geben, ein Blick ins Inhaltsverzeichnis, wieviel Seiten für welches Thema aufgewendet werden:

Thema
Seiten
1
Einleitung
16
2
Anforderungsanalyse mit UML
23
3
Anforderungsanalyse für die Zeiterfassungs-Applikation
34
4
Einführung in die Objektorientierte Analyse mit UML
34
5
Analyse-Modell für die Zeiterfassungs-Applikation
28
6a
Beschreibung der System-Anforderungen für die Technologie-Auswahl
10
6b
System-Anforderungen für die Zeiterfassungs-Applikation
8
7
Evaluierung der Technologien für die Boundary-Klassen
29
8
Evaluierung der Technologien für die Control- und Entity-Klassen
27
9
Software-Architektur
26
10
Kurze Einführung ins Design
9
11
Design der  Zeiterfassungs-Applikation
72

Also wirklich nur ein Einführungs-Buch. Die CD enthält lediglich die Beispiele.

In der Analyse benutzt CT Arrington folgende Stereotypen:

bulletEntity Object (Terminologie der Fachabteilung benutzen)
bulletBoundary Object (beschreibt die Information und die Services, die angeboten werden, enthält aber noch keine UserInterface- Design Details, bzw. bei einem SystemInterface die Protokoll-Details)
bulletControl Objects (typischerweise eines pro use case)
bulletLifecycle Objects (create, find or destroy entity objects) typischerweise eines pro entity object.

Was mir gefällt, die die praktische Art des Autors (Vorgehensempfehlungen ohne grosses Brimborium), und die explizite Diskussion, welche Technologie die jeweils geeignete ist. Ein paar nützliche Checklisten habe ich herausgezogen.
Die offizielle WebPage des Buches: http://www.wiley.com/Corporate/Website/Objects/Products/0,9049,37040,00.html