Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Aski Onlinefragebogen

Kopien: 1
Fachhochschule Zittau/Görlitz Fachbereich Informatik Denny Israel, Daniel Winter Christian Schäfer, Michael Kohlsche Dozent: Lars Rönisch.

Ähnliche Präsentationen


Präsentation zum Thema: "Aski Onlinefragebogen"—  Präsentation transkript:

1 Aski Onlinefragebogen
Fachhochschule Zittau/Görlitz Fachbereich Informatik Denny Israel, Daniel Winter Christian Schäfer, Michael Kohlsche Dozent: Lars Rönisch

2 Aski - Einleitung Web-Anwendung zur Durchführung einer Befragung
Befragung zum Thema Kinder mir Downsyndrom Erstellt von René Hofmann Umsetzung des Systems mit Grails Web-Framework Basiert auf Sprache Groovy

3 Aski - Anforderungen Aufüllung des Fragebogens Auswertung Sonstiges
Online Durch Passwort zu schützen Auswertung Durch angemeldete Manager (Passwortschutz) Mittels Diagrammen Sonstiges -Versandt von Einladungen Einladungen als PDF-Dokument

4 Aski - System Nutzung der von Grails vorgegebenen Projektstruktur
MVC-Pattern Datenmodell durch Domain-Klassen Logik durch Controller Oberfläche durch Grails- Server-Pages (vgl. JSP) Programmierung in Groovy, Unterstützt durch Java

5 Aski - Workflow Umfrageausführung als Web-Flow
Grails Web-Flow System, basiert auf Spring Web Flow Festlegung Start-, End- und Zwischenstates Web Flow System kontrolliert Ablauf, ein „Mittenrein“- Springen ist somit unmöglich → sichert Datenkonsistenz Eingabenkontrolle beim Absenden einer Maske Speicherung der Ergebnisse am Ende des Flows

6 Aski - Workflow States der Umfrageausführung
Start – Begrüßungsseite, evtl. Eingabemöglichkeit für Ticket-Passwort Zwischenstates - Eingabeseiten für jede Kategorie (1- 6) Ende – Abschlusseite

7 Aski - Mail Nutzung der Java-Mail-API Versandt über SMTP
Daten für SMTP werden in der Konfiguration gespeichert und sind im Admin-Bereich einstellbar Nutzung für das Versenden von Einladungen Einladungstext ist ebenfalls in der Konfig. einstellbar Nutzung auch für Versandt zurückgesetzter Passwörter der Manager

8 PDF-Erzeugung I PDF-Erzeugung mit iText
mächtiges Open-Source Framework für Java um PDF- Dateien zu erstellen und zu erweitern ausgelagert in extra Klasse PDF erhält kurzen Text, URL und ein Ticket

9 PDF-Erzeugung II neues Dokument wir erstellt
Document document = new Document(); Ränder werden gesetzt document.setMargins(75, 75, 75, 75); Paragraphen werden hinzugefügt Paragraph paragraph = new Paragraph(); Font font = new Font(); Schriftgröße, Style font.setSize(14); font.setStyle(Font.BOLD); paragraph.setFont(font); paragraph.add(subject); document.add(paragraph); Dokument wird geschlossen document.close();

10 PDF-Erzeugung III PDF-Datei wird nicht auf die Festplatte geschrieben
als Byte-Array weiter gegeben und verarbeitet ByteArrayOutputStream output = new ByteArrayOutputStream(); PdfWriter.getInstance(document, output); ... return output.toByteArray(); übernimmt die Änderungen und füllt Stream gibt Stream als Byte-Array zurück

11 PDF-Erzeugung IV

12 Chart-Erzeugung I Chart-Erzeugung mit JFreeChart
sehr populäres Open-Source Framework für Java um Diagramme zu erstellen für jede Frage kann ein BarChart erzeugt werden zeigen die Antworten in % an

13 Chart-Erzeugung II DataSet wird erzeugt
DefaultCategoryDataset dataset = new DefaultCategoryDataset(); for(String key : keySet) { double value = values.get(key) / allValues * 100; dataset.addValue(value, key, ""); } DataSet wird gefüllt

14 Chart-Erzeugung III Chart wird erzeugt
CategoryDataset dataset = createDataSet(values); JFreeChart chart = ChartFactory.createBarChart( "" +question, // chart title "", // domain axis label "%", // range axis label dataset, // data PlotOrientation.VERTICAL, // orientation true, // include legend true, // tooltips false // URLs ); setzen das DataSet

15 Chart-Erzeugung IV

16 Fehlermeldungen I Fehlermeldungen wichtig für den User
um zu erkennen was er falsch gemacht hat! und wie er es richtig machen kann! falsche Fehlermeldungen verwirren nur

17 Fehlermeldungen II Standard-Fehlermeldungen von Grails
treffen allgemeine Aussagen über die Fehler sind ungeeignet für den normalen Nutzer zu spezifisch zu viele Informationen

18 Fehlermeldungen III Fehlermeldungen angepasst
anlegen eines neuen Verwalters oder Login Problem: Anpassung der Fehlermeldungen im Workflow

19 Mockups I Erste Entwürfe als HTML von allen Team-Mitgliedern

20 Mockups II

21 Mockups III Zusammenfassung aller Ideen
> 3 Mockups als Inspiration / Anregung

22 Oberfläche Standard Grails Layout Anpassung der Grails Styles mit CSS

23 AskI Oberfläche Navi Progressbar Frage-abschnitte I18n-buttons

24 Aufbau der GSPs I Grundlayout für alle GSPs in main.gsp
Definition von immer sichtbaren Bereichen CSS-Includes, Locale-Auswahl, Kopf- und Fußzeilen Die eigentlichen Inhalte werden zur Laufzeit mit <g:layoutBody /> eingefügt GSPs die nicht auf main.gsp basieren > startUmfrage > endUmfrage

25 Aufbau der GSPs II Folgender Markup steht im Bodytag eines gewöhnlichen HTML-Grundgerüsts: SubmitButton  veranlasst action Möglichst wenig hart gecodete Texte Verwenden von messages für i18n Kapseln von markup mit taglib  Wird erstellt mit „grails create-tag-lib“

26 Einfühung einer TagLib
Kapselt Markup Verbessert Lesbarkeit Steigerung der Wiederverwendbarkeit Verhinderung von duplicated Code >Taglib für ProgressBar >Current step und vorhergende steps werden gefärbt >Andere steps sind weiß

27 Einsatz von Ajax I Problem:
Abhängig von Auswahl eines Listen-Items soll andere Liste gefüllt werden Klick zum Aktualisieren der zweiten Liste dem Nutzer möglichst ersparen

28 Einsatz von Ajax II Lösung: Einsatz von Ajax
Füllen der 2. Liste bei onChange()-Event Gute Unterstützung durch Grails  einfache Umsetzung Unstützte JavaScript Bibliotheken: Prototype Dojo Yahoo UI Library (YUI)

29 Einsatz von Ajax III Zu implementierende Teile: In GSP:
In UmfrageController: Ander libs: dojo yahoo ui

30 Aski - Demo DEMO – Aski 0.9

31 VIELEN DANK FÜR IHRE AUFMERKSAMKEIT
ENDE VIELEN DANK FÜR IHRE AUFMERKSAMKEIT


Herunterladen ppt "Aski Onlinefragebogen"

Ähnliche Präsentationen


Google-Anzeigen