View
159
Download
0
Category
Preview:
Citation preview
Page | 1
Q&A
UGIF IBM France, Bois Colombes
Octobre 3, 2012
i4GL et le Cloud
Bryn Jenkins
Page | 2
Genero – un travail en équipe
Page | 3
Genero – l’héritier naturel Profiter de votre éxpérience, protèger votre investissement
Page | 5
Média Finance Distrib. Gouvt. Energie Concessions Prod.
Une clientèle prestigieuse Large présence dans les industries clés
Page | 6
En France Large présence dans les industries clés
Page | 7
Institute of Social Security Services for Civil Servants Serving 10 million Mexican civil servants health needs
700 applications, 5-10,000 concurrent users www.issste.gob.mx
* Carnegie Mellon University - Capability Maturity Model – Guidelines fo Improving the Software Process www.sei.cmu.edu/cmm
(LOC/Hr - Lines of code per hour)
Observed productivity using CMM* Level 5
Language Productivity LOC/hr Error Rate
11,98
6,72
5,68
5,14
3,03 %
12,15 %
18,73 %
26,59 %
Pourquoi moderniser pour le Cloud? Adaptez -vous rapidement au changement
Page | 8
Avec https
Serveur Web
GAS
Genero
Desktop
Client
Genero
Web
Client
Serveur d’applications
Genero - une architecture faite pour le Cloud ‘Server centric’ et ‘thin-client’
GAS
Pare feu
Serveur de base de données
Page | 9
Modernisez En quelques jours/semaines
Page | 10
Modernisez En quelques semaines/mois
Page | 11
Modernisez En quelques semaines/mois
Page | 12
Modernisez Vers un client universel
Page | 13
Modernisez En quelques mois
Page | 14
Modernisez En quelques mois
Page | 15
Cloud is not just hosting
Your Ticket to the Cloud Definitions – what Cloud is not
Page | 16
Habituellement, chaque éditeur de logiciel
avance par petites touches pour rester en
tête de la competition. Afin de nous
demarquer et avec pour but de faire un
grand saut en avant, nous avons choisi
Genero pour nous positionner dans le Cloud.
John Driscoll,
PdG,
Bodyshop Management Systems.
Un grand saut en avant dans le Cloud… i4GL et le Cloud
Page | 17
Le Vice-President européen (Digital Agenda) Neelie Kroes:
La stratégie de l’Europe ”Stimulez le potential du Cloud en Europe”
Le Cloud computing change la donne
pour notre économie…
… afin d’arriver à la masse critique,
les lois doivent être unifiées en
Europe. En premier lieu, il est
important de changer les idées reçues
sur les risques liés au Cloud
computing.
Page | 18
Les problèmes clés
• Les lois nationales fragmentent le marché unique
• La jungle des standards
• Des problèmes contractuels freinent l’adoption du Cloud
• Résponsabilité des interruptions de service, indisponibilité, perte de données…
• Proprieté des données
Les solutions
• Un ‘label de confiance’ Européen pour les fournisseurs de
services Cloud
• Definir des standards pour l’interoperabilité, portabilité (2013)
• Des termes contractuels sécurisants et ‘fair-play’ pour les SLAs
La stratégie de l’Europe ”Stimulez le potential du Cloud en Europe”
Page | 19
Le Vice-President européen Neelie Kroes:
La stratégie de l’Europe ”Stimulez le potential du Cloud en Europe”
Devant faire partie de la stratégie
européenne, les gouvernements et les
industriels devraient investir 45 milliards
d’euros dans le Cloud computing jusqu’à
l’horizon 2020, afin de génerer 900 milliards
d’euros de PIB et 3,8 millions d’emplois à la
fin de la décade.
Page | 20
Cloud n’est pas simplement l’hébergement
Votre passeport pour le Cloud Definitions – ce qui n’est pas du Cloud
Page | 21
Le Cloud c’est l’hébergement plus:
• La virtualisation
• L’élasticité
• Le ‘self-service’
• La facturation en
temps-réel des
services
Votre passeport pour le Cloud Definitions – ce qui n’est pas du Cloud
Page | 22
Une tarification simple et prédictable
Gestion des utilisateurs
Disponibilité
Gestion de la base de données
La sécurité
Votre passeport pour le Cloud Les défis
Page | 23
La sécurité de vos données
We strive to keep the services up and running; however,
all online services suffer occasional disruptions and
outages, and Microsoft isn’t liable for any disruption or
loss you may suffer as a result. You should regularly
backup the content that you store on the services.
Having a regular backup plan and following it can help
you prevent loss of your content.
La confidentialité de vos données
We do not rent or sell personal information to third
parties, but we do communicate this information to
companies working on our behalf.
Le Cloud vu par les grands Microsoft Azure, SkyDrive SLA
Page | 24
La sécurité de vos données
Apple shall use reasonable skill and due care in providing the Service, but,
TO THE GREATEST EXTENT PERMISSIBLE BY APPLICABLE LAW,
APPLE DOES NOT GUARANTEE OR WARRANT THAT ANY CONTENT
YOU MAY STORE OR ACCESS THROUGH THE SERVICE WILL NOT BE
SUBJECT TO INADVERTENT DAMAGE, CORRUPTION, LOSS, OR
REMOVAL IN ACCORDANCE WITH THE TERMS OF THIS
AGREEMENT, AND APPLE SHALL NOT BE RESPONSIBLE SHOULD
SUCH DAMAGE, CORRUPTION, LOSS, OR REMOVAL OCCUR. It is
your responsibility to maintain appropriate alternate backup of your
information and data.
La confidentialité de vos données
You further understand and agree that this information may be transferred
to the United States and/or other countries for storage, processing and use
by Apple, its affiliates, and/or their service providers.
Le Cloud vu par les grands Apple iCloud SLA
Page | 25
Les indisponibilités du Cloud Prévoir 10 heures d’indisponibilté par an
Page | 26
Pas de risque
Faible coût
Protection de l’investissement , amélioration de l’image
Rapidité de dévéloppement et mise en oeuvre
Déploiement progressif
Agilité
Les atouts de Genero Adaptez–vous rapidement au changement
Page | 27
Q&A
Backup Genero
i4GL Language
Enhancements
Page | 28
Your Ticket to the Cloud Definitions – architecture
SaaS
Software Infrastructure as a Service Is: The Cloud – Virtualisation, elastic provisioning, utility billing
PaaS Platform as a Service Is: On-line applications development and deployment
Was: Development tool vendor
Software as a Service Is: On-line applications execution by end-users
Was: On-premise applications
Infrastructure as a Service Is: The Datacenter – Outsourced IT for applications
Was: In-house ‘IT shop’
PaaS
SIaaS
IaaS
Page | 29
Language Enhancements Multiple dialogs
A wizard with multiple dialogs
• New dialog clause
• All dialogs are active
• User clicks on any dialog
• More intuitive for user
• Widgets now superfluous
• Code shorter, faster
• Total code 33% shorter • dialog logic > 50%
shorter
Page | 30
Language Enhancements Multiple dialogs
A wizard with multiple dialogs – code snippet
FUNCTION wizard()
... defines
OPEN WINDOW formwizard WITH FORM "formwizard"
... init arrays
DIALOG ATTRIBUTES(UNBUFFERED) INPUT BY NAME currtable
DISPLAY ARRAY afields TO a.*
DISPLAY ARRAY cfields TO c.*
ON CHANGE currtable CALL on_change_currtable()
ON ACTION right CALL right(DIALOG)
ON ACTION allright CALL allright(DIALOG)
ON ACTION left CALL left(DIALOG)
ON ACTION allleft CALL allleft(DIALOG)
ON ACTION prevwiz DISPLAY "prevwiz" EXIT DIALOG
ON ACTION nextwiz DISPLAY "nextwiz" EXIT DIALOG
ON ACTION cancel EXIT DIALOG
AFTER DIALOG --we just show all chosen columns in the terminal
FOR i=1 TO cfields.getLength()
DISPLAY sfmt("table:%1,column:%2",cfields[i].ctable,cfields[i].ccol)
END FOR
END DIALOG CLOSE WINDOW formwizard
END FUNCTION
Page | 31
Drag ‘n’ drop an object, perform an action
Language enhancements Drag & drop
Page | 32
Drag order 3 @ 4kg, drop on truck 3 w/ 16kg remaining
Language enhancements Drag & drop
Page | 33
Truck 3’s limit reduced to 12Kg
Language enhancements Drag & drop
Page | 34
Continue to fill rest of trucks
Language enhancements Drag & drop
Page | 35
Reorganize orders between trucks
Language enhancements Drag & drop
Page | 36
Drag order 8 @ 6kg, drop on truck 2 w/ 4kg remaining
Language enhancements Drag & drop
Page | 37
Truck load exceeded, action forbidden
Language enhancements Drag & drop
Page | 38
Order dispatch app with drag‘n’drop
– code snippet
DEFINE dnd ui.DragDrop
...
DIALOG ...
DISPLAY ARRAY arr_source TO sr1.* ...
...
-- Detect start drag
ON DRAG_START(dnd) -- dnd is the D&D handler object
CALL dnd.setOperation("move") -- Move is the default operation
CALL dnd.addPossibleOperation("copy") -- User can toggle to copy if needed
CALL dnd.setMimeType("text/plain")
CALL dnd.setBuffer(arr_source[arr_curr()].ident)
...
END DISPLAY
...
DISPLAY ARRAY arr_target TO sr2.* ...
...
-- Detect mouse entering this list
ON DRAG_ENTER(dnd)
IF ok_to_drop THEN
CALL dnd.setOperation("move") -- allow drop here
ELSE
CALL dnd.setOperation(NULL) -- deny drop here
END IF
...
-- Detect drop event
ON DROP(dnd)
LET arr_target[dnd.getLocationRow()].ident == dnd.getBuffer()
...
END DISPLAY
…
Language enhancements Drag & drop
Page | 39
Flexible deployment Tree widget
Page | 40
Language enhancements Tree View
Page | 41
Language enhancements Rich text edit widget
Page | 42
Language enhancements Multiple selects
Page | 43
Language enhancements Table summaries
LAYOUT
GRID
{
<Table t >
f1 f2 f3
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
[f1 |f2 |f3 ]
}
end
attributes
TABLE t: DOUBLECLICK = none;
f1=formonly.f1;
f2=formonly.f2, AGGREGATE = SUM;
f3=formonly.f3, AGGREGATE = SUM;
instructions
screen record a(f1, f2, f3);
Page | 44
Call Java from 4 GL
Language enhancements Multiple selects
Recommended