FQTQ ShowCase Prototyp einer Applikation zur Beratungsunterstützung Überblick Applikation zur Beratungsunterstützung Analyse der Mandantensituation Web gestütztes Fragebogensystem mit Datenbankanbindung Umsetzung mit der Java 2 Enterprise Edition (J2EE) 18.12.2000 ©2000 Elmar Seestädt 2 Anforderungsprofil 1/3 Die Fragen/Antworten sind wiederverwendbar Es gibt ein Scoringsystem Es gibt Multiple-Choice Antworten Es gibt Mandanten 18.12.2000 ©2000 Elmar Seestädt 3 Anforderungsprofil 2/3 Es gibt 1 bis n Projekte pro Mandant Es gibt 1 bis n Fragebogentypen pro Projekt Ein Mitarbeiter beim Mandanten hat 0 bis n Fragebögen auszufüllen 18.12.2000 ©2000 Elmar Seestädt 4 Anforderungsprofil 3/3 Die Antworten werden in einer Datenbank gespeichert Die Applikation hat eine Weboberfläche haben Die Applikation ist vollständig über die Weboberfläche bedien- und administrierbar Es gibt einen Auswertungsmechanismus 18.12.2000 ©2000 Elmar Seestädt 5 Globales Design Method Provider (Name Lookup, etc. EJBContainer benutzt benutzt Entity-Beans Entity-Beans Entity-Beans Entity-Beans Datenbank Request Manager (Controller EJB seitig) Aufruf Business-Methoden Aufrufe weiterleiten Servlet Engine Session Manager (Controller Proxy) Aufruf Controller Funktionen Seitenaufrufe FrontComponent Request Web Browser 18.12.2000 Screen Flow Manager JSP/HTML JSP/HTML JSP/HTML JSP/HTML JSP/HTML JSP/HTML JSP/HTML JSP/HTML Serverseitig Clientseitig Response Legende: ©2000 Elmar Seestädt Servlets Entity Beans Webseiten Session Beans 6 Datenbank Relationales Datenbanksystem Abbildung der Objekte auf Datenbank CMP – für einfache Objekte BMP – für komplexe Objekte Ist: Cloudscape Einfach zu Handhaben / Vorinstalliert Nur eine Demoversion -> Einschränkungen In Java implementiert Langsam Ziel: Oracle 18.12.2000 Schwierig zu Handhaben / Extra zu installieren Sehr performant ©2000 Elmar Seestädt 7 Fragebogendesign Es gibt Fragen und Antworten Einer Antwort wird eine Score zugewiesen Eine Frage und viele Antworten mit Score bilden einen FA-Komplex Viele dieser Komplexe bilden mit zusätzlichen Statusinformationen eine Fragebogenvorlage Eine FB-Vorlage wird personalisiert und damit zum spezifischen Fragebogen 18.12.2000 ©2000 Elmar Seestädt 8 Entity Beans CMP Role User Question Answer Application Customer 18.12.2000 BMP QuestionaireTemplate DispensedQuestionaire ©2000 Elmar Seestädt 9 Session Beans RequestHandler Erhält alle Requests Leitet die Requests an die Entity Beans weiter bzw. reagiert selbstständig StaticMethodProvider 18.12.2000 Ist nur „Anbieter“ von Methoden Macht z.B. JNDI-Lookups Öffnet/schliesst Datenbankverbindungen ©2000 Elmar Seestädt 10 Helper Klassen AnswerWrapper.java Ordnet jeder Antwort eine Score zu QAMapping.java 18.12.2000 Ordnet jeder Frage die passenden Answer Wrapper zu ©2000 Elmar Seestädt 11 Servlets SessionManager Leitet alle Controller anfragen an die RequestHandler Session Bean weiter Bereitet Objekte vor Baut Objekte in von JSP‘s benutzbare Komponenten um ScreenFlowManager 18.12.2000 Bestimmt die nächste zu zeigende Seite ©2000 Elmar Seestädt 12 Webinterface Design Bereich für die globale Navigation Contentview Bereich für die lokale Navigation 18.12.2000 ©2000 Elmar Seestädt 13 Webinterface Design - Admin 18.12.2000 ©2000 Elmar Seestädt 14 Webinterface Design - User 18.12.2000 ©2000 Elmar Seestädt 15 Webinterface Komponenten FrontComponent Index.html Multiplexed alle Request zum ScreenFlowManager und zum RequestHandler FrameSet für die Darstellung Java ServerPages 18.12.2000 Managen die Navigation und visualisieren das Benutzerinterface dynamisch ©2000 Elmar Seestädt 16 ToDo-Liste Volle Administrierbarkeit Darstellung Exception Handling Sicherheitsmanagement Transaktionsmanagement Dokumentation Auswertungsmechanismus Datenbankmigration Debug-Code entfernen 18.12.2000 ©2000 Elmar Seestädt 17