Publikationen
Entwicklung Domänenspezifischer Software - Dargestellt am Beispiel des Prozessmanagements
von Dr. Manuel Götz - Technischer Leiter iTransparent GmbH

Die verfügbare Rechenleistung ist in den vergangenen Jahren in allen Bereichen exorbitant gestiegen. Dies trifft auf die Leistung von Servern ebenso zu wie auf die Leistung von Desktop Computern. Diese Entwicklung macht den Einsatz immer mächtigerer Software möglich. Ein Problem, welches mit der Schaffung immer komplexerer Software einhergeht, ist eine für Nutzer schwer überschaubare Anzahl an Nutzungsmöglichkeiten einer Software. Dabei werden häufig von einem Nutzer oder Nutzergruppen nur bestimmte Teilmengen dieser Möglichkeiten verwendet. Weitere angebotene, aber nicht benötigte Funktionalitäten erschweren die Übersicht und die Nutzbarkeit einer Software und werden somit nicht als Bereicherung empfunden.
Eine Anforderung von Nutzerseite, die in diesem Zusammenhang immer häufiger auftaucht, ist eine Abstimmung von Software auf bestimmte Domänen. Eine Domäne ist dabei ein Einsatzbereich, in dem sich die Anforderungen verschiedener Nutzer in hohem Maße ähneln; meist resultiert dies daraus, dass die Software von den Nutzern zu ähnlichem Zweck eingesetzt wird. Als Beispiel kann eine Software dienen, welche die Erstellung einer Steuererklärung unterstützt. Dabei können als Nutzergruppen beispielsweise Arbeitnehmer im Angestelltenverhältnis und Selbstständige unterschieden werden. Einige Bestandteile einer Steuererklärung müssen beide Nutzergruppen ausfüllen wie Angaben zu Name oder Familienstatus. Gerade Selbstständige müssen aber viele spezifische Angaben wie die Einkünfte aus Auslandsgeschäften machen. Um die Lohnsteuer zu berechnen, muss eine Software entsprechende Algorithmen beherrschen; die jeweils benötigten Algorithmen unterscheiden sich wegen der unterschiedlichen Angaben zwischen den Benutzergruppen. Eine reine Anpassung eines Eingabeformulars ist also nicht ausreichend, um beide Nutzergruppen mit einer passenden Software zu bedienen. Da beide Nutzergruppen spezifische Algorithmen und somit Funktionalität benötigen, kann aus einer bestehenden Software für eine Nutzergruppe auch nicht ohne Aufwand eine weitere Version dieser Software erstellt werden, welche an die Bedürfnisse der anderen Nutzergruppe angepasst wurde. Beide Nutzergruppen stehen in diesem Beispiel also für eine Domäne mit teilweise identischen, aber auch spezifischen Anforderungen. Die Software zur Erstellung der Steuererklärung muss also domänenspezifisch angepasst werden, um die Bedürfnisse der jeweiligen Nutzergruppe befriedigen zu können.
Allgemeiner ausgedrückt ist eine schlichte Abwandlung einer bestehenden Software nicht ausreichend, um verschiedene Domänen mit spezifischen Versionen dieser Software zu versorgen. Domänen können sich in einem Ausmaß unterscheiden, welches eine Neuerstellung einer Software in manchen Fällen kostengünstiger machen mag als eine Anpassung. Um gezielt domänenspezifisch anpassbare Software zu entwickeln, wird ein Vorgehensmodell benötigt, welches diesen Gedanken von der Analysephase an unterstützt. Ein solches Vorgehensmodell wird im Verlauf dieser Arbeit vorgestellt.
Demonstriert wird dieses Vorgehensmodell am Fallbeispiel des Prozessmanagements. Das Prozessmanagement unterstützt die Bearbeitung von Abläufen in vielen verschiedenen Domänen; weiterhin haben viele Domänen abweichende, spezielle Anforderungen an eine Software, welche das Prozessmanagement umsetzt. Somit eignet sich dieses Fallbeispiel gut zu Demonstrationszwecken.






