15.11.2012 Views

icegov2012 proceedings

icegov2012 proceedings

icegov2012 proceedings

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3. OUR APPROACH<br />

3.1. Descriptions<br />

In our approach (the architecture is presented on figure 1), we<br />

distinguish three types of stakeholders:<br />

Data collector who is responsible for entering data. He uses on<br />

his client station a web browser and enters data through HTML<br />

forms;<br />

Administrator who builds masks seized to be used by the data<br />

collector (forms of epidemiological data collection, record to<br />

establish the birth certificates etc..). It uses a layout editor<br />

WYSIWYG (What You See Is What You Get);<br />

Engineer who built widgets used in the mask editing tool.<br />

A widget describes how this entry will be made on a form<br />

(HTML) and how it will be controlled on the client side<br />

(JavaScript).<br />

In order to satisfy all criteria simultaneously, we chose a hybrid<br />

approach based on the following design choices: to ensure the<br />

readiness and robustness, we rely on a rapid and widespread<br />

media: the GSM network to ensure reliability and data<br />

completeness, we rely on standard forms (which check the data<br />

entered) to ensure the safety and versatility we rely on proxies<br />

(mandatory servers) in which can be adapted and specialize<br />

different treatments of the data entered.<br />

In this architecture, the administrator builds input masks<br />

according to its data needs and the available widgets. These entry<br />

forms are sent to proxies to generate two entities:<br />

the HTML form, generated by proxies on client machines,<br />

equivalent to the input mask set. These forms allow HTML in a<br />

browser input data by the data collector. Instrumented by Java<br />

Script scripts, they provide a upstream check of the validity of<br />

data; a format representation of the messages exchanged on the<br />

network. These message formats are used by proxies to set the<br />

construction of messages sent from clients to the server (data<br />

entered in the spread sheets). These messages should be as small<br />

as possible to limit the number of SMS sent and format of ASCII<br />

characters.<br />

For example, the administrator can define a mask form that will<br />

contain two fields: a person's sex and age. From this form and the<br />

definition of widgets, the following HTML code can be generated<br />

to the destination browser data collector:<br />

<br />

<br />

function validate()<br />

{<br />

if(document.form1.age.value99)<br />

{<br />

alert("age must be between 0 and 99 years");<br />

}<br />

}<br />

<br />

<br />

<br />

Age : <br />

Sexe : Homme<br />

Femme<br />

<br />

<br />

<br />

This generation is local and does not cost anything in terms of<br />

network. The message containing the mask (message sent via<br />

SMS) may contain: S, A. where A is the name given to the age<br />

fields and S is the name given to the Gender field. The description<br />

408<br />

of widgets is already known by proxies, the network cost is<br />

negligible (1 SMS) to send this mask.<br />

Figure 1. Our approach architecture.<br />

3.2. Implementation<br />

In the following, we present the field in which we chose to<br />

implement our approach and methodology that we used to<br />

implement it.<br />

3.2.1. Methodology<br />

We chose to use model Driven Architecture (MDA). These<br />

methods rely on the use of meta-models (Domain Specific<br />

Language or DSL), consistent with these models and DSL tools.<br />

DSLs are languages specific to a particular area. A DSL is a<br />

language and like all languages it has syntax. This syntax is<br />

divided into two parts: the set of domain elements (abstract<br />

syntax) and the representation (concrete syntax) that can be either<br />

graphical or textual, knowing that an element can have several<br />

different representations (corresponding to an abstract<br />

syntax several concrete syntax). These DSLs are used to build<br />

tools that allow entry of a conforming model in DSL.<br />

The engineer has at his disposal a tool to describe the widgets<br />

used in the masks. Each widget has a name and a description<br />

HTML and Java Script. All of these widgets from the abstract<br />

syntax.<br />

By giving the HTML and Java Script code verification, it gives a<br />

first concrete syntax that will be the HTML form with the<br />

verification code JavaScript. Once the DSL defined, description of<br />

new widgets is sent via SMS to proxies and a second concrete<br />

syntax is generated: the representation format masks. Finally the<br />

tool used by the administrator is automatically generated. When<br />

adding or editing a mask, this mask is sent to new proxies.<br />

Finally, when the data collector completes and submits a form, the<br />

proxies marshaling unmarshalling and the arguments for sending<br />

SMS to the server. In the following, we present the scope of our<br />

approach.<br />

3.2.2. Health Information System<br />

A health system is a set of organizations, institutions, resources<br />

and people whose main objective is to improve health [9]. Only<br />

accurate and reliable can help to develop a policy based on<br />

evidence that can lead the optimal management of health<br />

programs and, especially, to trigger actions that can improve wellbeing<br />

of the population. Thus, the performance of health systems<br />

depends critically on the performance of National Health

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!