s t a t i s t i c s a u s t r i a june 2009 1 frederick rennert june 2009 © statistics austria i n...

22
S T A T I S T I C S A U S T R I A June 2009 1 www.statistik.at Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“ Current development status

Upload: flora-clark

Post on 12-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 1www.statistik.at

Frederick Rennert

June 2009© STATISTICS AUSTRIA

i n f o r m a t i o n

Moving

„e-Quest-New“Current development status

Page 2: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 2

Overview

e-Quest „new“ – development status e-Quest „new“ – questionnaire execution alternatives Demonstration

Page 3: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 3

Proposal for e-Quest New

When creating the „new“ e-Quest, it must– integrate even better with eQuest/Web

• using the same programming language (Java)• using the same generator• using the same questionnaire database• using the same authorization database• using identical XML schemata

– be even simpler to use• without needing a local database• with all unused or little-used functions stripped away

– obtain software, metadata and data online• only what is needed when it is needed

but must offer comparable questionnaire function and flexibility to e-Quest „classic“

– plus the goodies which eQuest/Web offers (PDF conversion, XML schema-based import/export, etc.)

and the whole system must be migrated step by step, in an organic manner.

Page 4: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 4

e-Quest New - startup

Investigation of technical options Creation of a prototype on the basis of those findings Survey of e-Quest „classic“ users

– what functions are used

– what preferences they have

– how they compare e-Quest and eQuest/Web

Decision to go ahead – taken August 2008

Page 5: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 5

Repository (file or database based)

structural metadata ClassificationsQuestionnaire data

Application framework (RCP)

generalfunctions

XMLprocessing

PersistencyFramework

baseGUIBase

PDFfunct.

Classificationhandling

Application coordination,logging,

authorization,navigation

Questionnaire framework

Questtype

A

Questtype

B Commonfunctions for

Survey C

QuestC1

QuestC2

QuestC3

Com

mun

icat

ion*

* Software download/update, download of structural metadata, classifications and questionnaires, questionnaire upload (report or import into the open Web questionnaire)

e-Quest New: Architecture based on eclipse RCP (schematic)

Page 6: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 6

Eclipse Rich Client Platform (RCP)

Eclipse provides the Eclipse Rich Client Platform (RCP) for developing general purpose applications. The following components constitute the rich client platform:– Equinox OSGi – a standard bundling framework

– Core platform – boot Eclipse, run plug-ins

– Standard Widget Toolkit (SWT) – a portable widget toolkit

– JFace – viewer classes to bring model view controller programming to SWT, file buffers, text handling, text editors

– Eclipse Workbench – views, editors, perspectives, wizards

from en.wikipedia.org

Page 7: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 7

e-Quest New – architecture

Further investigation of technical options and some prototyping led to alternative scenarios and architectural changes: – Generate Java code for questionnaires instead of dynamic XML

interpretation.

If the questionnaire is interpreted dynamically from the XML definition, all behaviour must be embedded in the XML and the scripts. In the long run, however, we want to get rid of the VB scripts and move to direct Java code.

Furthermore, real-time interpretation is not an option for a Web application, so the online alternative would always differ from the local one.

Page 8: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 8

Questionnaire creation – e-Quest New

--- Support plugins ---

Generated SWT structure Script code (Java currently generated from VBScript)

Classifica-tion plugins

GUI handling (SWT)

Error handling

Data representation

Script frameworkSWT frameworkQuestionnaire

framework

e-QuestMetadata Manager

e-Quest NewSWT Generator

e-Quest NewScript Translator

QuestionnaireXML

Page 9: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 9

Repository (file or database based)

structural metadata ClassificationsQuestionnaire data

Application framework (RCP)

generalfunctions

XMLprocessing

PersistencyFramework

baseGUIBase

PDFfunct.

Classificationhandling

Applicationcoordination,

logging,authorization,

navigation

Com

mun

icat

ion*

* Software download/update, download of structural metadata, classifications and questionnaires, questionnaire upload (report or import into the open Web questionnaire)

e-Quest New: Architecture based on eclipse RCP (schematic)

Generated SWT structure Script code (Java currently generated from VBScript)

Classifica-tion

plugins

GUI handling (SWT)

Error handling

Data representation

Script frameworkSWT framework

Page 10: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 10

Original e-Quest New scenario

Login with eQuest/Web user ID and password– check the central DB for questionnaires for this user

– download questionnaires with initial data as XML

– download all plugins required for these questionnaires: questionnaire definition XML, help system, classifications (as XML), control and validation software for the questionnaire types

Break online connection Present questionnaires in tree When questionnaire is opened, interpret the XML definition and

create questionnaire dynamically. During filling in, control and validate. Open online connection for user to send the filled in

questionnaire as XML to the eQuest/Web database.

Page 11: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 11

Current e-Quest New scenario – eclipse RCP version

Start e-Quest– download updates to the software

Login with eQuest/Web user ID and password– check the central DB for questionnaires for this user– download questionnaires with initial data as XML– download all plugins required for these questionnaires: generated

questionnaire structure (Java), help system, classifications (as XML and Java), generated and/or hand-coded control and validation software for the questionnaire types

Break online connection Present questionnaires in tree When questionnaire is opened, run its code and create SWT

questionnaire in eclipse RCP editor dynamically. During filling in, interact with control and validation code. Open online connection for user to send the filled in

questionnaire as XML to the eQuest/Web database.

Page 12: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 12

e-Quest New - alternatives

Further investigation of technical options and some prototyping led to alternative scenarios and architectural changes:– Generate Java code for questionnaires instead of dynamic XML

interpretation.

– Stand-alone SWT questionnaires for one-time (or infrequent) surveys.

The questionnaire module with the code of part of the supporting plug-ins can be used as a stand-alone SWT application, without the eclipse RCP framework.

This will be useful in cases where a single questionnaire has to be filled in and there is no need for the respondent to keep the questionnaire for a longer period.

Page 13: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 13

Repository (file or database based)

structural metadata ClassificationsQuestionnaire data

Application framework (RCP)

generalfunctions

XMLprocessing

PersistencyFramework

baseGUIBase

PDFfunct.

Classificationhandling

Applicationcoordination,

logging,authorization,

navigation

Com

mun

icat

ion*

* Software download/update, download of structural metadata, classifications and questionnaires, questionnaire upload (report or import into the open Web questionnaire)

e-Quest New: from RCP to stand-alone SWT

Generated SWT structure Script code (Java currently generated from VBScript)

Classifica-tion

plugins

GUI handling (SWT)

Error handling

Data representation

Script frameworkSWT framework

Page 14: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 14

generalfunctions

XMLprocessing

PersistencyFramework

baseGUIBase

PDFfunct.

Classificationhandling

Applicationcoordination,

logging,authorization,

navigation

Com

mun

icat

ion

e-Quest New: Stand-alone SWT architecture

Generated SWT structure Script code (Java currently generated from VBScript)

Classifica-tion

handling

GUI handling (SWT)

Error handling

Data representation

Script frameworkSWT framework

Page 15: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 15

e-Quest New - alternatives

Further investigation of technical options and some prototyping led to alternative scenarios and architectural changes: – Generate Java code for questionnaires instead of dynamic XML

interpretation.– Stand-alone SWT questionnaires for one-time (or infrequent)

surveys.– New implementation of eQuest/Web using Apache Wicket instead

of JSP.

We can reuse (the code of) most of the plugins for e-Quest New, just replacing the SWT generator by an XHTML generator. The framework for the translated scripts can be adapted to the request/response paradigm with minor changes.

The XHTML pages are created according to the Austrian e-government guidelines but can be formatted further using CSS.

The load on the Web server should also be reduced.

Page 16: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 16

Apache Wicket

Apache Wicket is a lightweight component-based web application framework for the Java programming language.

Wicket ... is closely patterned after stateful GUI frameworks such as Swing. Wicket applications are trees of components, which use listener delegates to react to HTTP requests against links and forms in the same way that Swing components react to mouse and keystroke events.

Wicket uses plain XHTML for templating (which enforces a clear separation of presentation and business logic and allows templates to be edited with conventional WYSIWYG design tools). Each component is bound to a named element in the XHTML and becomes responsible for rendering that element in the final output. The page is simply the top-level containing component and is paired with exactly one XHTML template. Reuseable parts of pages may be abstracted into components called panels, which can then be pulled whole into pages or other panels with a special tag.

from en.wikipedia.org

Page 17: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 17

Questionnaire creation – e-Quest New

--- Support plugins ---

Generated SWT structure Script code (Java currently generated from VBScript)

Classification handling

GUI handling (SWT)

Error handling

Data representation

Script frameworkSWT frameworkQuestionnaire

framework

e-QuestMetadata Manager

e-Quest NewSWT Generator

e-Quest NewScript Translator

QuestionnaireXML

Page 18: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 18

Questionnaire creation – e-Quest/Web New

--- Support plugins ---

Script code (Java currently generated from VBScript)

GUI handling (Apache Wicket)

Apache Wicket framework

Classification handling

Error handling

Data representation

Script frameworkQuestionnaire

framework

e-QuestMetadata Manager

Generated XHTML

e-Quest/Web NewWicket Generator

e-Quest NewScript Translator

QuestionnaireXML

Page 19: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 19

Questionnaire execution – e-Quest/Web New

--- Support plugins ---

Script code (Java currently generated from VBScript)

GUI handling (Apache Wicket)

Apache Wicket framework

Classification handling

Error handling

Data representation

Script framework

Generated XHTML

Web server

Respondent with Web browser

Page 20: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 20

e-Quest New – status June 2009

Questionnaire functionality (SWT) in internal test phase Apache Wicket framework under development:

– basic questionnaire functionality partly finished

– CSS for Austrian e-government guidelines

Respondent and user structure for RCP version under development

Questionnaire life cycle and synchronisation between local installations and central database being designed:– Questionnaire life cycle eQuest/Web and e-Quest New

– Synchronisation logic

– Web services

Probable first use for the Agricultural Structural Survey 2010.

Page 21: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 21

e-Quest New – Agricultural Structural Survey

Full survey (not a sample) starting October 2010, about 230.000 agrarian enterprises from about 2.300 communities.

No paper version, only electronic alternatives. Extremely large questionnaire with hundreds of questions. Danger of overloading the Statistics Austria Web servers. Solution:

– Install e-Quest New (RCP) with the community authorities: most respondents will require the help of the agricultural officer anyway, thus most questionnaires will be filled in off-line.

– Respondents can also fill in the Web questionnaires from home, either in eQuest/Web or using the stand-alone SWT version (to be discussed)

– Synchronisation of questionnaires between eQuest/Web and e-Quest is crucial.

Page 22: S T A T I S T I C S A U S T R I A June 2009 1  Frederick Rennert June 2009 © STATISTICS AUSTRIA i n f o r m a t i o n Moving „e-Quest-New“

S T A T I S T I C S A U S T R I AJune 2009 22

Wir bewegen I n f o r m a t i o n e n

Moving

i n f o r m a t i o n

www.statistik.at