next up previous contents index
Nächste Seite: 7.2 Das Framework-Konzept Aufwärts: 7. Realisierung und Anbindung Vorherige Seite: 7. Realisierung und Anbindung   Inhalt   Index

7.1 Einleitung

Die Implementierung von YACS erfolgt, bedingt durch den Anwendungsfall ENGCON, unter der Windows-Plattform. Durch die Programmiersprache Java ist allerdings eine weitestgehende Plattformunabhängigkeit gegeben (vgl. Middendorf et al., 2002). Das verwendete Java von ,,Sun Microsystems`` ist die Entwicklerversion der Java 2 Platform, Standard Edition in der Version 1.4.2 (J2SE 1.4.2 SDK). Selbiges ist in der genutzten Entwicklungsumgebung ,,Borland JBuilder 2005 Foundation`` enthalten.

Die benötigte intervallarithmetische Funktionalität liefert die Bibliothek IAMath7.1 von Timothy J. Hickey (vgl. Abschnitt 4.5.2). Intervallarithmetische Operationen werden standardmäßig von den wenigsten Programmiersprachen unterstützt. Die frei verfügbare IAMath-Bibliothek ermöglicht grundlegende intervallarithmetische Operationen und Funktionen und ist ebenso wie ENGCON vollständig in Java implementiert. Um YACS nicht auf eine bestimmte Bibliothek festzulegen, wurde im Entwurf eine entsprechende Kapselung vorgesehen.

Constraint-Lösungsstrategien werden für das YACS-Framework innerhalb einer XML-Datei definiert (vgl. Eckstein, 2000). Der dafür notwendige XML-Parser von YACS ist in der in Java enthaltenen Java API for XML Processing (JAXP)7.2 implementiert (vgl. Armstrong et al., 2005, S. 109 ff.) und nutzt das standardmäßig integrierte Document Object Model (DOM) von Sun (vgl. Armstrong et al., 2005, S. 181 ff.). Dies hat den Vorteil, dass keine separate XML-Bibliothek benötigt wird.

Der stringbasierte Parser von YACS für das Einlesen von Constraint-Ausdrücken wird über eine JLex/Java CUP Kombination realisiert. Während JLex7.3 für die lexikalische Analyse basierend auf regulären Ausdrücken zuständig ist, steht mit Java CUP7.4 ein Parsergenerator aufbauend auf den Eingaben von JLex zur Verfügung (vgl. Berk, 2000; Hudson, 1999). Beide Programme sind Open-Source und daher frei verfügbar.

Als Logging-Mechanismus kommt Log4J7.5 zum Einsatz. Der Open-Source Logger der ,,Apache Foundation`` ist leistungsfähiger als das im Standard-Java integrierte Logging und hat im Gegensatz dazu eine hohe Verbreitung gefunden (vgl. Schnelle, 2004; Gülcü, 2002). Dies begünstigt die Integration in das YACS-Framework, welches somit neben einer Integration in ENGCON auch für eine große Zahl anderer Systeme eine möglichst hohe Kompatibilität diesbezüglich bietet.



Fußnoten

...7.1
http://interval.sourceforge.net/interval/java/ia_math/README.html
...7.2
http://java.sun.com/webservices/jaxp/docs.html
...7.3
http://www.cs.princeton.edu/~appel/modern/java/JLex/
...7.4
http://www.cs.princeton.edu/~appel/modern/java/CUP/
...7.5
http://logging.apache.org/log4j/

next up previous contents index
Nächste Seite: 7.2 Das Framework-Konzept Aufwärts: 7. Realisierung und Anbindung Vorherige Seite: 7. Realisierung und Anbindung   Inhalt   Index