ISBN | 383480245X | |
Autor | Karl-Heinz Rau | |
Verlag | Vieweg und Teuber | |
Sprache | deutsch | |
Seiten | 342 | |
Erscheinungsjahr | 2007 | |
Extras | Webseite zum Buch |
Die Rahmenbedingungen in Softwareentwicklungsprozessen werden oftmals durch limitierte Zeit- und Geldressourcen bestimmt. Beides wirkt transitiv auf die QualitĂ€t des zu entwickelnden Systems ein, daher gilt es mit den gegebenen Bedingungen die bestmöglichen Ergebnisse zu erzielen. Dies kann jedoch nur durch eine optimierte Prozesskette gewĂ€hrleistet werden, die auf wechselnde Anforderungen und unvorhersehbare Risiken mittels konstruktiver Projektplanung mit der nötigen FlexibilitĂ€t innerhalb des Prozesses reagiert. Karl-Heinz Rau diskutiert in seinem Buch âObjektorientierte Softwareentwicklungâ eine iterativ-inkrementelle Vorgehensweise, aufbauend auf den Konzepten des RUP, die eben jene Risiken minimieren sol.
Das Buch unterteilt sich in 9 aufeinander aufbauende Kapitel, die in ihrer Anordnung die einzelnen Phasen des RUP widerspiegeln. Beginnend bei der Abgrenzung des Projekts hinsichtlich des fundamentalen GeschĂ€ftsprozesses und der sich daraus ergebenen initialen Anforderungsanalyse, ĂŒber die Spezifikation der Architektur und der grafischen Benutzungsschnittstelle, bis hin zur Ableitung effektiver Entwicklungsmuster und der Annotation des Quellcodes fĂŒr eine wartbare Implementierung.
Das Buch besticht durch eine sehr praxisorientierte Ausrichtung auf ein nachvollziehbares, fiktives Projekt. Dies kommt vor allem jenen Rezipienten zugute, die ein zukĂŒnftiges oder bestehendes Projekt zu (re-)strukturieren gedenken. Die angesprochenen Themen werden fundiert erlĂ€utert, ohne allzu theoretische Grundlagen oder Spezifikationen breitzutreten. Hier kommt dem Leser die Erfahrung des Autors zugute, der in diesem Fachgebiet seit ĂŒber 20 Jahren Studenten unterrichtet. Rau bezieht (wie in einem realen Projekt) relevante externe Artefakte des Auftraggebers ein, die zur Identifikation der Fachsprache, der Ableitung eines ersten Fachklassenmodells mit der UML (im Anhang wird diese detaillierter erlĂ€utert) und der grafischen/textuellen Beschreibung von AnwendungsfĂ€llen dienen. Insbesondere die Anwendung verschiedener UML-Diagramme (Klassen-, AktivitĂ€ts-, Kommunikationsdiagramm) ist zeitnah und mit dem Vormarsch der modellgetriebenen Entwicklung (der MDA wird ebenfalls ein eigenes Kapitel gewidmet) sehr sinnvoll.
Nach den spezifischen Analysen der Grundlagen, wechselt Rau den Fokus von der Modellierung bzw. Spezifizierung des Systems, hin zu den Alternativen, wie das Systems implementiert werden kann. Die Rede ist von den so genannten Entwicklungsmustern, ein eigentlich triviales und fĂŒr AnfĂ€nger dennoch stets komplex anmutendes Thema. Rau erklĂ€rt Sinn und Zweck der meisten GoF-Pattern. Durch UML-Klassendiagramme und Codefragmente wird das VerstĂ€ndnis zudem visuell gesteigert. AbschlieĂend werden die identifizierten AnwendungsfĂ€lle und OberflĂ€chenelemente beispielhaft implementiert.
Was leider nicht abgehandelt wird ist die keinesfalls einfache Phase des Testens. Testen wird von Entwicklern zumeist als kreativitÀtseinschrÀnkendes, lÀstiges QualitÀtssicherungskonzept angesehen, das wertvolle Ressourcen durch langweilige TÀtigkeiten bindet. TatsÀchlich ist das Testen in der heutigen Zeit, in der explosionsartig Softwaresysteme in immer mehr Bereiche des tÀglichen Lebens eindringen, wichtiger denn je, soll wirtschaftlicher oder (ungleich schlimmer) menschlicher Schaden vermieden werden. Insbesondere bei einem Lehrbuch, das eine ganzheitliche Sichtweise auf die Entwicklung komplexer Softwaresysteme bieten möchte, hÀtte ich eine stÀrkere Fokussierung auf den Testbereich erwartet.
Die Schreibe des Autoren ist gekonnt, nicht ermĂŒdend und tiefgrĂŒndig. Was mir persönlich nicht so gefĂ€llt bei BĂŒchern dieser Art, ist die seitenweise Auflistung ellenlangen Quellcodes. Da das Buch ĂŒber ein Online-Service verfĂŒgt, wĂ€re der Quellcode (aus meiner Sicht) dort besser aufgehoben.
Fazit: Es bleibt zu konstatieren, dass die âObjektorientietrte Softwareentwicklungâ ihrem Namen alle Ehre macht und eine ganzheitliche Sichtweise auf den viel verzahnten Prozess des Softwareengineerings nach modernsten Vorgehensmodellen liefert. Die funktionale, deduktive Kapiteleinteilung fĂŒhrt bei den Rezipienten zu einem gesteigerte VerstĂ€ndnis des Gesamtprozesses. Insbesondere fĂŒr Studenten eines informationstechnologischen Studienganges, in dem sowohl die Theorie als auch die Praxis des Softwareengineerings abgehandelt wird, ist das Buch aufgrund seiner stringenten Praxisausrichtung zum empfehlen.
geschrieben am 01.04.2009 | 544 Wörter | 3932 Zeichen
Kommentare zur Rezension (0)
Platz für Anregungen und Ergänzungen