SlideShare une entreprise Scribd logo
1  sur  38
Du RIA pour mon SI : Microsoft
      Silverlight vs Adobe Flex

                       David Alia
                   Djamel Zouaoui
Introduction

L’évolution des applications web
Une évolution naturelle…
Modèle classique d’application web
Modèle web 1.x
Modèle Full Ajax
Modèle RIA
L’évolution des applications web




              Modèle classique                                                                 Modèle 100%
                                                       Modèle « web 1.x »                                                          Modèle RIA
              d’application web                                                                   Ajax


              • Navigation page à page          • Ajout de comportements             • Rafraichissement partiel de la     • IHM vectorielles
              • Rechargement complet de la      asynchrones                          page en cours                        • Graphismes riches, animations
              page (effet « page blanche »      • Quelques composants riches         • Les échanges asynchrones           • Fluidité
              accompagné d’une attente)                                              donnent une impression de            • Ergonomie similaire à celle du
              • Eléments graphiques simples                                          fluidité                             client lourd
                                                                                     • La navigation se fait de plus en   • Démocratisé sur le web mais
Expérience                                                                           plus au sein de la même page         moins dans les SI
utilisateur



                • HTML, ASP/JSP : facile à écrire mais une horreur à faire évoluer   • Utilisation de librairies (ex :    • Paradigmes de
                • Componentisation faible                                            yahoo UI) mais maintenabilité        développement proches du
                • Mélange IHM & code métier                                          Javascript complexe                  client lourd
                •…                                                                   • CSS mais gestion multi-            • Langages puissants et outillés
 Expérience                                                                          navigateur
développeur
L’évolution des applications web




              Modèle classique                               Modèle 100%
                                        Modèle « web 1.x »                 Modèle RIA
              d’application web                                 Ajax




Expérience
utilisateur




 Expérience
développeur
Les enjeux de la RIA

• Selection naturelle… Darwin… mais encore ?

• L’ergonomie n’est plus une option, elle fait partie
  intégrante des critères de valorisation d’une application

• La productivité et la pérennité des développements dans
  la création d’interfaces riches


                       Réconcilier les deux mondes
                                    ou
       Comment produire des applications “aussi agréables à utiliser
                           qu’à construire”
Tour d’horizon de la RIA
Expérience
                                                  Les concepts RIA
utilisateur




   • Des interfaces novatrices
          – Plus intuitives et adaptives
          – Adaptées aux gestes métiers
          – Disposant d’un meilleur look & feel


   • Les avantages des deux mondes
          – Du client lourd
              • Fluidité
              • Vectoriel
          – Du web
              • Distribution de l’applicatif côté serveur
              • Diffusion maximale

                      Le navigateur se fait oublier au profit de l’application
Expérience
                                              Les concepts RIA
développeur


 • Multi-plateformes
       – Coté client : plugin navigateur
       – Coté serveur : pas d’adhérence à la technologie serveur




 • Paradigmes de développement
       – La partie graphique n’est pas générée côté serveur mais distribuée
       – L’exécution est totalement déléguée au plugin navigateur
              • Plus de gestion de sessions
              • Plus de problématique d’état à conserver…


       – Architecture orientée services
Les acteurs




Et aussi…
            GWT       HTML 5
Zoom sur les technologies

Microsoft Silverlight et Adobe Flex
La plateforme
L’industrialisation des développements
Du code : Flex

var auteurs =                                                            E4X
<auteurs>
<auteur>
  <nom>Pennac</nom>
  <prenom>Daniel</prenom>
  <genre>M</genre>
</auteur>
<auteur>
  <nom>Barbery</nom>
  <prenom>Muriel</prenom>
  <genre>F</genre>
</auteur>
</auteurs>;                                                                      API Flash
                                 <mx:Script>
                                       <![CDATA[
document.write(auteurs.auteur.(genre == ”M").nom);
                                             protected var cam:Camera;

                                            public function init():void {
                                                   cam = Camera.getCamera();
                                                   videoBox.attachCamera(cam);
                                            }
                                     ]]>
                                </mx:Script>
Du code : Silverlight
Du code : Silverlight




private void txtFilter_TextChanged(object sender, TextChangedEventArgs e)                         C#
    {
      <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" />
       if (authors != null)                                                                         Xaml
       {
              <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5"
          datagridAuthors.ItemsSource = from author in authors
      Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower())
                <data:DataGrid.Columns>
                       select author;
       }          <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/>
    }             <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/>
                  <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/>
                </data:DataGrid.Columns>
              </data:DataGrid>
Du code : Silverlight




private void txtFilter_TextChanged(object sender, TextChangedEventArgs e)                         C#
    {
      <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" />
       if (authors != null)                                                                         Xaml
       {
              <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5"
          datagridAuthors.ItemsSource = from author in authors
      Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower())
                <data:DataGrid.Columns>
                       select author;
       }          <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/>
    }             <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/>
                  <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/>
                </data:DataGrid.Columns>
              </data:DataGrid>
Les avantages de chaque plateforme

    Microsoft Silverlight                          Adobe Flex
• Plateforme de                          • Flash Player 9 est déployé
  développement performante                dans 94% des navigateurs
   – Outillage pour le                      – Et compatible multi-
     développement : Visual Studio            plateformes
   – Outillage pour le design :
     Gamme Expression
                                         • Intégration avec les outils
                                           Adobe
• Capitalisation                            – Passerelle naturelle avec
   – Des connaissances                        Creative Suite
   – Des ressources et codes déjà           – Un seul code pour Flex / Air
     existants
                                         • Une orientation opensource
• Les Langages .NET                         – VM Flash, SDK
   – Technologie : rapidité de mise en        Flex, BlazeDS…
     œuvre via Linq, Generics…              – Publication des spécifications
   – Dynamique : Python, Ruby…                du format SWF, AMF et RTMP
Microsoft Silverlight vs Adobe Flex

                           Le match
Une grille de lecture…


                                 Silverlight     Flex
Contexte .net
Contexte Java
Productivité des devs
Ouverture au web
Performance
Courbe d’apprentissage
Disponibilité des ressources
...
Une grille de lecture…


                                 Silverlight     Flex
Contexte .net
Contexte Java
Productivité des devs
Ouverture au web
Performance
Courbe d’apprentissage
Disponibilité des ressources
...
Cas d’utilisation n°1

                                     • Enjeux
       • Roger d’Ubontaba               – Intégration dans les SI
       •   Directeur technique            des filiales : COM, .NET,
       •   Société Philippe Boris         Access, SQL Server…
                                        – Time to market
                                        – Budget alloué faible
• Contexte et objectifs
   – SI full Microsoft
   – Réalisation d’une
     application centralisée
     (multi-filiales) de reporting
     sur la logistique
   – Diffusion : 80 utilisateurs
     authentifiés                    Difficulté : ★
Cas d’utilisation n°1

• Notre réponse
  – Microsoft Silverlight
  – ASP.NET (oui, mais non)

• Notre argumentation
  – Pour les deux réponses :
      – Homogénéité des technologies du SI
      – Coût d’entrée faible
  – En faveur de Silverlight :
      – Du mouf-mouf pour pas cher
      – Meilleure productivité des développements / maintenance facilitée
Cas d’utilisation n°2

                                   • Enjeux
       • Désiré Sponsable             – Vaincre l’habitude de
       •   JEE Technical Leader         l’AS/400
       •   Bank Lehman Sisters        – Interface graphique
                                        dynamique et ergonomie
                                        avancée
• Contexte et objectifs               – Réutilisation de services
   – Equipe à forte culture             existants (GED, comptes,
     Java (anti-Kro$oft)                CRM…)
   – Réalisation d’une
     application dédiée au call-
     center
   – Diffusion : 50 utilisateurs
     authentifiés                  Difficulté : ★
Cas d’utilisation n°2

• Notre réponse
  – Adobe Flex
  – GWT (oui mais non)

• Notre argumentation
  – Pour les deux réponses :
     – Interaction Java avancée
     – Culture des développeurs
  – En faveur de Flex :
     – Du mouf-mouf pour pas cher
     – Meilleure productivité des développements / maintenance facilitée

                                              Ca ne vous
                                            rappelle rien ?
Cas d’utilisation n°3

                                   • Enjeux
       • Eddy Teurdetexte             – Connectivité avec les
       •   Chef de projet               services du Back Office
       •   Clémentine (Télécom)       – Ergonomie
                                      – Temps de réponse courts
• Contexte et objectifs
   – Back Office 100% PHP
   – Refonte de l’application
     vieillissante de gestion
     des abonnements
   – Diffusion : 50 utilisateurs
     authentifiés
                                   Difficulté : ★★
Cas d’utilisation n°3

• Notre réponse
  – Adobe Flex
  – Microsoft Silverlight

• Notre argumentation
  – Pour les deux réponses :
      – Connectivité immédiate aux services du Back Office
      – Performances et ergonomie équivalentes
      – Coût d’entrée sur la technologie
  – (Peut-être) en faveur de Flex :
      – Ouverture de l’application sur Internet : accessibilité à Mme Michu
  – (Peut-être) en faveur de Silverlight :
      – Disponibilité des compétences liées à la proximité technologie Microsoft
Cas d’utilisation n°4

                                   • Enjeux
      • Jean Tourloupe               – Haute performance
      •   Architecte                 – Compatibilité avec 100%
      •   Ministère des finances       des internautes français
                                     – Bling-bling pour
                                       l’application de gestion de
• Contexte et objectifs                budget
   – Etendre la déclaration des      – Navigation assistée
     impôts à la gestion de
     budget en ligne
   – Diffusion sur le web
   – Pics d’utilisation pendant
     deux mois
                                   Difficulté : ★★★
Cas d’utilisation n°4

• Notre réponse
  – Adobe Flex



• Notre argumentation
  – Performances
      – Protocole de transfert Flex : format AMF natif
      – Back Office : on n’imagine pas une plateforme sous x86/Windows
  – Diffusion multi-plateformes : maturité des plugins navigateur
  – Intégration avec des applications Back Office hétérogènes
Cas d’utilisation n°5

                                  • Enjeux
       • Marc Héting                 – Mode 100% ASP
       •   Directeur                 – Temps de réponse faibles
       •   Editeur Dentaface
                                     – Ergonomie proche du
                                       client lourd
• Contexte et objectifs
   – Réalisation « from
     scratch » d’une
     application intégrée de
     gestion de clients pour
     dentistes
   – Diffusion sur le web
                                  Difficulté : ★★
Cas d’utilisation n°5

• Notre réponse
  – Microsoft Silverlight



• Notre argumentation
  –   Productivité des développements et maintenance facilitée
  –   Courbe d’apprentissage faible
  –   Disponibilité des compétences
  –   Simplicité de l’infrastructure nécessaire
  –   Environnements client maîtrisés
Conclusion
Ce qu’il faut retenir

• La RIA se dote de nouveaux paradigmes
   – Dépassez la phase transitoire actuelle

• Basculez !
   – La RIA, c’est une meilleure expérience utilisateur
   – La RIA, c’est une meilleure expérience développeur


• Silverlight et Flex sont matures
   – Cherchez votre cas d’utilisation plutôt qu’une comparaison grille
     ou passionnelle
   – Et industrialisez, les outils le permettent !

• Et ensuite… la mobilité ?
                                                     Crédits photo : http://gombinoscope.free.fr/
Questions ?

Contenu connexe

Tendances

eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOALilia Sfaxi
 
Les frameworks flashlike javascript
Les frameworks flashlike javascriptLes frameworks flashlike javascript
Les frameworks flashlike javascriptekito
 
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEIntroduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEMarouan OMEZZINE
 
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure ADIdentity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure ADMicrosoft
 
Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?Microsoft
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisésavec Power BI Visuals CLICréation de visuels personnalisésavec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLIDenys Chamberland
 
#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le webNormandie Web Xperts
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8davrous
 
Introduction au développement windows 8 modern ui avec html5 et javascript
Introduction au développement windows 8 modern ui avec html5 et javascriptIntroduction au développement windows 8 modern ui avec html5 et javascript
Introduction au développement windows 8 modern ui avec html5 et javascriptdavrous
 
Introduction au développement Windows 8 et Windows Phone 8
Introduction au développement Windows 8 et Windows Phone 8Introduction au développement Windows 8 et Windows Phone 8
Introduction au développement Windows 8 et Windows Phone 8Microsoft
 
Hello AngularJS - Back to the future
Hello AngularJS - Back to the futureHello AngularJS - Back to the future
Hello AngularJS - Back to the futureOuadie LAHDIOUI
 
Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)Chamseddine Ouerhani
 
Flex, une techno RIA incontournable pour les futures app web ?
Flex, une techno RIA incontournable pour les futures app web ?Flex, une techno RIA incontournable pour les futures app web ?
Flex, une techno RIA incontournable pour les futures app web ?GreenIvory
 
Développer son site internet et optimiser son référencement
Développer son site internet et optimiser son référencementDévelopper son site internet et optimiser son référencement
Développer son site internet et optimiser son référencementYoann Kassi-Vivier
 
Angluars js
Angluars jsAngluars js
Angluars jsRYMAA
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeMicrosoft
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Front end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeFront end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeOuadie LAHDIOUI
 
Comment intégrer Dynamics CRM 2011 dans son système d'information?
Comment intégrer Dynamics CRM 2011 dans son système d'information?Comment intégrer Dynamics CRM 2011 dans son système d'information?
Comment intégrer Dynamics CRM 2011 dans son système d'information?Microsoft
 

Tendances (19)

eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOA
 
Les frameworks flashlike javascript
Les frameworks flashlike javascriptLes frameworks flashlike javascript
Les frameworks flashlike javascript
 
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINEIntroduction aux Technologies Web élaborée par Marouan OMEZZINE
Introduction aux Technologies Web élaborée par Marouan OMEZZINE
 
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure ADIdentity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
Identity as a Service (IDaaS), un service prêt à l’usage avec Windows Azure AD
 
Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?Les données on-premise et dans le cloud. Quelles options ?
Les données on-premise et dans le cloud. Quelles options ?
 
Création de visuels personnalisés avec Power BI Visuals CLI
Création de visuels personnalisésavec Power BI Visuals CLICréation de visuels personnalisésavec Power BI Visuals CLI
Création de visuels personnalisés avec Power BI Visuals CLI
 
#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web#nwxtech6 Frédéric Bisson - SVG pour le web
#nwxtech6 Frédéric Bisson - SVG pour le web
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
 
Introduction au développement windows 8 modern ui avec html5 et javascript
Introduction au développement windows 8 modern ui avec html5 et javascriptIntroduction au développement windows 8 modern ui avec html5 et javascript
Introduction au développement windows 8 modern ui avec html5 et javascript
 
Introduction au développement Windows 8 et Windows Phone 8
Introduction au développement Windows 8 et Windows Phone 8Introduction au développement Windows 8 et Windows Phone 8
Introduction au développement Windows 8 et Windows Phone 8
 
Hello AngularJS - Back to the future
Hello AngularJS - Back to the futureHello AngularJS - Back to the future
Hello AngularJS - Back to the future
 
Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)Programmer en html5, css 3 et java script (70 480)
Programmer en html5, css 3 et java script (70 480)
 
Flex, une techno RIA incontournable pour les futures app web ?
Flex, une techno RIA incontournable pour les futures app web ?Flex, une techno RIA incontournable pour les futures app web ?
Flex, une techno RIA incontournable pour les futures app web ?
 
Développer son site internet et optimiser son référencement
Développer son site internet et optimiser son référencementDévelopper son site internet et optimiser son référencement
Développer son site internet et optimiser son référencement
 
Angluars js
Angluars jsAngluars js
Angluars js
 
Architectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythmeArchitectures et application hybrides selon vos termes et à votre propre rythme
Architectures et application hybrides selon vos termes et à votre propre rythme
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09
 
Front end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitéeFront end, une île qui mérite d'être visitée
Front end, une île qui mérite d'être visitée
 
Comment intégrer Dynamics CRM 2011 dans son système d'information?
Comment intégrer Dynamics CRM 2011 dans son système d'information?Comment intégrer Dynamics CRM 2011 dans son système d'information?
Comment intégrer Dynamics CRM 2011 dans son système d'information?
 

En vedette

Cartes postales pourquoi l'ump
Cartes postales  pourquoi l'ump  Cartes postales  pourquoi l'ump
Cartes postales pourquoi l'ump Alexandre Houpert
 
Plaquette Institutionnelle Exprom Facilities
Plaquette Institutionnelle Exprom FacilitiesPlaquette Institutionnelle Exprom Facilities
Plaquette Institutionnelle Exprom FacilitiesMouna Kettani
 
Vivre à la Réunion - L'attractivité de la Réunion
Vivre à la Réunion - L'attractivité de la RéunionVivre à la Réunion - L'attractivité de la Réunion
Vivre à la Réunion - L'attractivité de la RéunionJulie Province
 
Ppt phillipe jurain
Ppt phillipe jurain Ppt phillipe jurain
Ppt phillipe jurain Marion Jandin
 
Trimestriel Septembre 2014
Trimestriel Septembre 2014Trimestriel Septembre 2014
Trimestriel Septembre 2014Maison Africaine
 
Power point (carrière informatique) a rendre
 Power point (carrière informatique) a rendre  Power point (carrière informatique) a rendre
Power point (carrière informatique) a rendre yamakuzayan1
 
PRE transition
PRE transitionPRE transition
PRE transitionSimonBalle
 
retail-Articles de Paris
retail-Articles de Parisretail-Articles de Paris
retail-Articles de Parisap-slideshare
 
Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012RTAdmcSPAIN
 
EveryonePrint install guide 4.0 FR
EveryonePrint install guide 4.0 FREveryonePrint install guide 4.0 FR
EveryonePrint install guide 4.0 FREveryonePrint
 
S'ILS AVAIENT ÉTÉ PUBLICITAIRES
S'ILS AVAIENT ÉTÉ PUBLICITAIRESS'ILS AVAIENT ÉTÉ PUBLICITAIRES
S'ILS AVAIENT ÉTÉ PUBLICITAIRESMarsatwork
 
Mes vacances
Mes vacancesMes vacances
Mes vacancesJasmineFB
 
Model de qualité @ msdevmtl
Model de qualité @ msdevmtlModel de qualité @ msdevmtl
Model de qualité @ msdevmtlMSDEVMTL
 
Vers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnaliséeVers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnaliséeJo Anis
 
Rac fnh-diesel-v6
Rac fnh-diesel-v6Rac fnh-diesel-v6
Rac fnh-diesel-v6RAC-F
 
Le Progressiste 2243
Le Progressiste 2243Le Progressiste 2243
Le Progressiste 2243Jo Anis
 
Programme 2009 Ecoterritoires
Programme 2009 EcoterritoiresProgramme 2009 Ecoterritoires
Programme 2009 Ecoterritoiresregionalpartner56
 

En vedette (20)

Cartes postales pourquoi l'ump
Cartes postales  pourquoi l'ump  Cartes postales  pourquoi l'ump
Cartes postales pourquoi l'ump
 
Plaquette Institutionnelle Exprom Facilities
Plaquette Institutionnelle Exprom FacilitiesPlaquette Institutionnelle Exprom Facilities
Plaquette Institutionnelle Exprom Facilities
 
Par#13
Par#13Par#13
Par#13
 
Vivre à la Réunion - L'attractivité de la Réunion
Vivre à la Réunion - L'attractivité de la RéunionVivre à la Réunion - L'attractivité de la Réunion
Vivre à la Réunion - L'attractivité de la Réunion
 
Ppt phillipe jurain
Ppt phillipe jurain Ppt phillipe jurain
Ppt phillipe jurain
 
Trimestriel Septembre 2014
Trimestriel Septembre 2014Trimestriel Septembre 2014
Trimestriel Septembre 2014
 
Power point (carrière informatique) a rendre
 Power point (carrière informatique) a rendre  Power point (carrière informatique) a rendre
Power point (carrière informatique) a rendre
 
PRE transition
PRE transitionPRE transition
PRE transition
 
Présentation2
Présentation2Présentation2
Présentation2
 
retail-Articles de Paris
retail-Articles de Parisretail-Articles de Paris
retail-Articles de Paris
 
Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012Valence entre futur et tradition. programme 4 jours 2012
Valence entre futur et tradition. programme 4 jours 2012
 
Services Smart City Marseille
Services Smart City MarseilleServices Smart City Marseille
Services Smart City Marseille
 
EveryonePrint install guide 4.0 FR
EveryonePrint install guide 4.0 FREveryonePrint install guide 4.0 FR
EveryonePrint install guide 4.0 FR
 
S'ILS AVAIENT ÉTÉ PUBLICITAIRES
S'ILS AVAIENT ÉTÉ PUBLICITAIRESS'ILS AVAIENT ÉTÉ PUBLICITAIRES
S'ILS AVAIENT ÉTÉ PUBLICITAIRES
 
Mes vacances
Mes vacancesMes vacances
Mes vacances
 
Model de qualité @ msdevmtl
Model de qualité @ msdevmtlModel de qualité @ msdevmtl
Model de qualité @ msdevmtl
 
Vers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnaliséeVers une Autonomie constitutionnalisée
Vers une Autonomie constitutionnalisée
 
Rac fnh-diesel-v6
Rac fnh-diesel-v6Rac fnh-diesel-v6
Rac fnh-diesel-v6
 
Le Progressiste 2243
Le Progressiste 2243Le Progressiste 2243
Le Progressiste 2243
 
Programme 2009 Ecoterritoires
Programme 2009 EcoterritoiresProgramme 2009 Ecoterritoires
Programme 2009 Ecoterritoires
 

Similaire à USI 2009 - Du RIA pour SI

La caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsLa caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsChristopheTricot
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Tugdual Grall
 
Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Nazih Heni
 
Html5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUGHtml5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUGJUG Toulouse
 
L'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsL'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsThomas Bassetto
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptKhalid Jebbari
 
Devforumfrancois Tonic
Devforumfrancois TonicDevforumfrancois Tonic
Devforumfrancois TonicGreenIvory
 
Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Francois Daoust
 
Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Microsoft Technet France
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologiewyggio
 
La production cartographique pour les SIG version Web
La production cartographique pour les SIG version WebLa production cartographique pour les SIG version Web
La production cartographique pour les SIG version WebEric Lacoursiere
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetupAspectize
 
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...CERTyou Formation
 
Les défis d’une application mobile multi-périphériques avec HTML5
Les défis d’une application mobile multi-périphériques avec HTML5Les défis d’une application mobile multi-périphériques avec HTML5
Les défis d’une application mobile multi-périphériques avec HTML5davrous
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!CARA_Lyon
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!CARA_Lyon
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFBoubker ABERWAG
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3Horacio Gonzalez
 

Similaire à USI 2009 - Du RIA pour SI (20)

RIA
RIARIA
RIA
 
La caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informationsLa caisse à outils de la visualisation d'informations
La caisse à outils de la visualisation d'informations
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)
 
Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"Asp.net Présentation de L'application "Organizer"
Asp.net Présentation de L'application "Organizer"
 
Html5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUGHtml5 par Florent Garin, au Toulouse JUG
Html5 par Florent Garin, au Toulouse JUG
 
L'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objetsL'Open Web en tant que pierre angulaire du développement multi-objets
L'Open Web en tant que pierre angulaire du développement multi-objets
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
 
Devforumfrancois Tonic
Devforumfrancois TonicDevforumfrancois Tonic
Devforumfrancois Tonic
 
Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?Le Web comme plateforme applicative - comment programme-t-on le Web?
Le Web comme plateforme applicative - comment programme-t-on le Web?
 
Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !Les dernières avancées HTML5 & CSS3 en action !
Les dernières avancées HTML5 & CSS3 en action !
 
HTML5 W3C Conference Euratechnologie
HTML5 W3C Conference EuratechnologieHTML5 W3C Conference Euratechnologie
HTML5 W3C Conference Euratechnologie
 
La production cartographique pour les SIG version Web
La production cartographique pour les SIG version WebLa production cartographique pour les SIG version Web
La production cartographique pour les SIG version Web
 
Retour d'experience projet AngularJS
Retour d'experience projet AngularJSRetour d'experience projet AngularJS
Retour d'experience projet AngularJS
 
Aspectize meetup
Aspectize meetupAspectize meetup
Aspectize meetup
 
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
Wpl53 g formation-developper-des-applications-pour-ibm-websphere-portal-8-0-a...
 
Les défis d’une application mobile multi-périphériques avec HTML5
Les défis d’une application mobile multi-périphériques avec HTML5Les défis d’une application mobile multi-périphériques avec HTML5
Les défis d’une application mobile multi-périphériques avec HTML5
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
HTML5... La révolution maintenant!
HTML5... La révolution maintenant!HTML5... La révolution maintenant!
HTML5... La révolution maintenant!
 
Formation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPFFormation d'architecte logiciel AFCEPF
Formation d'architecte logiciel AFCEPF
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
 

Plus de Djamel Zouaoui

Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Djamel Zouaoui
 
Datajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDatajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDjamel Zouaoui
 
Usi 2013 - NoSql les defis à relever
Usi 2013 -  NoSql les defis à releverUsi 2013 -  NoSql les defis à relever
Usi 2013 - NoSql les defis à releverDjamel Zouaoui
 
ParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheDjamel Zouaoui
 
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Djamel Zouaoui
 
Retour d'expérience TechLead
Retour d'expérience TechLeadRetour d'expérience TechLead
Retour d'expérience TechLeadDjamel Zouaoui
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésDjamel Zouaoui
 
USI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continueUSI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continueDjamel Zouaoui
 
USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !Djamel Zouaoui
 

Plus de Djamel Zouaoui (9)

Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming Paris Data Geek - Spark Streaming
Paris Data Geek - Spark Streaming
 
Datajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandationDatajob 2013 - Construire un système de recommandation
Datajob 2013 - Construire un système de recommandation
 
Usi 2013 - NoSql les defis à relever
Usi 2013 -  NoSql les defis à releverUsi 2013 -  NoSql les defis à relever
Usi 2013 - NoSql les defis à relever
 
ParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le grapheParisDataGeek - L amour est dans le graphe
ParisDataGeek - L amour est dans le graphe
 
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
Microsoft Tech days 2007 - Industrialisation des développements : Retours d'e...
 
Retour d'expérience TechLead
Retour d'expérience TechLeadRetour d'expérience TechLead
Retour d'expérience TechLead
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
 
USI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continueUSI Casablanca 2010 - Industrialisation et intégration continue
USI Casablanca 2010 - Industrialisation et intégration continue
 
USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !USI 2011 - De l offshore qui fonctionne !
USI 2011 - De l offshore qui fonctionne !
 

USI 2009 - Du RIA pour SI

  • 1. Du RIA pour mon SI : Microsoft Silverlight vs Adobe Flex David Alia Djamel Zouaoui
  • 8. L’évolution des applications web Modèle classique Modèle 100% Modèle « web 1.x » Modèle RIA d’application web Ajax • Navigation page à page • Ajout de comportements • Rafraichissement partiel de la • IHM vectorielles • Rechargement complet de la asynchrones page en cours • Graphismes riches, animations page (effet « page blanche » • Quelques composants riches • Les échanges asynchrones • Fluidité accompagné d’une attente) donnent une impression de • Ergonomie similaire à celle du • Eléments graphiques simples fluidité client lourd • La navigation se fait de plus en • Démocratisé sur le web mais Expérience plus au sein de la même page moins dans les SI utilisateur • HTML, ASP/JSP : facile à écrire mais une horreur à faire évoluer • Utilisation de librairies (ex : • Paradigmes de • Componentisation faible yahoo UI) mais maintenabilité développement proches du • Mélange IHM & code métier Javascript complexe client lourd •… • CSS mais gestion multi- • Langages puissants et outillés Expérience navigateur développeur
  • 9. L’évolution des applications web Modèle classique Modèle 100% Modèle « web 1.x » Modèle RIA d’application web Ajax Expérience utilisateur Expérience développeur
  • 10. Les enjeux de la RIA • Selection naturelle… Darwin… mais encore ? • L’ergonomie n’est plus une option, elle fait partie intégrante des critères de valorisation d’une application • La productivité et la pérennité des développements dans la création d’interfaces riches Réconcilier les deux mondes ou Comment produire des applications “aussi agréables à utiliser qu’à construire”
  • 12. Expérience Les concepts RIA utilisateur • Des interfaces novatrices – Plus intuitives et adaptives – Adaptées aux gestes métiers – Disposant d’un meilleur look & feel • Les avantages des deux mondes – Du client lourd • Fluidité • Vectoriel – Du web • Distribution de l’applicatif côté serveur • Diffusion maximale Le navigateur se fait oublier au profit de l’application
  • 13. Expérience Les concepts RIA développeur • Multi-plateformes – Coté client : plugin navigateur – Coté serveur : pas d’adhérence à la technologie serveur • Paradigmes de développement – La partie graphique n’est pas générée côté serveur mais distribuée – L’exécution est totalement déléguée au plugin navigateur • Plus de gestion de sessions • Plus de problématique d’état à conserver… – Architecture orientée services
  • 15. Zoom sur les technologies Microsoft Silverlight et Adobe Flex
  • 18. Du code : Flex var auteurs = E4X <auteurs> <auteur> <nom>Pennac</nom> <prenom>Daniel</prenom> <genre>M</genre> </auteur> <auteur> <nom>Barbery</nom> <prenom>Muriel</prenom> <genre>F</genre> </auteur> </auteurs>; API Flash <mx:Script> <![CDATA[ document.write(auteurs.auteur.(genre == ”M").nom); protected var cam:Camera; public function init():void { cam = Camera.getCamera(); videoBox.attachCamera(cam); } ]]> </mx:Script>
  • 19. Du code : Silverlight
  • 20. Du code : Silverlight private void txtFilter_TextChanged(object sender, TextChangedEventArgs e) C# { <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" /> if (authors != null) Xaml { <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5" datagridAuthors.ItemsSource = from author in authors Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower()) <data:DataGrid.Columns> select author; } <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/> } <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/> <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/> </data:DataGrid.Columns> </data:DataGrid>
  • 21. Du code : Silverlight private void txtFilter_TextChanged(object sender, TextChangedEventArgs e) C# { <TextBox x:Name="txtFilter" TextChanged="txtFilter_TextChanged" /> if (authors != null) Xaml { <data:DataGrid x:Name="datagridAuthors" AutoGenerateColumns="False" Height="200" Margin="5" datagridAuthors.ItemsSource = from author in authors Width="500"> where author.Name.ToLower().Contains(txtFilter.Text.ToLower()) <data:DataGrid.Columns> select author; } <data:DataGridTextColumn Header="Nom" Binding="{Binding LastName}" CanUserSort="True"/> } <data:DataGridTextColumn Header="Prénom" Binding="{Binding Name}"/> <data:DataGridTextColumn Header="Genre" Binding="{Binding Genre}"/> </data:DataGrid.Columns> </data:DataGrid>
  • 22. Les avantages de chaque plateforme Microsoft Silverlight Adobe Flex • Plateforme de • Flash Player 9 est déployé développement performante dans 94% des navigateurs – Outillage pour le – Et compatible multi- développement : Visual Studio plateformes – Outillage pour le design : Gamme Expression • Intégration avec les outils Adobe • Capitalisation – Passerelle naturelle avec – Des connaissances Creative Suite – Des ressources et codes déjà – Un seul code pour Flex / Air existants • Une orientation opensource • Les Langages .NET – VM Flash, SDK – Technologie : rapidité de mise en Flex, BlazeDS… œuvre via Linq, Generics… – Publication des spécifications – Dynamique : Python, Ruby… du format SWF, AMF et RTMP
  • 23. Microsoft Silverlight vs Adobe Flex Le match
  • 24. Une grille de lecture… Silverlight Flex Contexte .net Contexte Java Productivité des devs Ouverture au web Performance Courbe d’apprentissage Disponibilité des ressources ...
  • 25. Une grille de lecture… Silverlight Flex Contexte .net Contexte Java Productivité des devs Ouverture au web Performance Courbe d’apprentissage Disponibilité des ressources ...
  • 26. Cas d’utilisation n°1 • Enjeux • Roger d’Ubontaba – Intégration dans les SI • Directeur technique des filiales : COM, .NET, • Société Philippe Boris Access, SQL Server… – Time to market – Budget alloué faible • Contexte et objectifs – SI full Microsoft – Réalisation d’une application centralisée (multi-filiales) de reporting sur la logistique – Diffusion : 80 utilisateurs authentifiés Difficulté : ★
  • 27. Cas d’utilisation n°1 • Notre réponse – Microsoft Silverlight – ASP.NET (oui, mais non) • Notre argumentation – Pour les deux réponses : – Homogénéité des technologies du SI – Coût d’entrée faible – En faveur de Silverlight : – Du mouf-mouf pour pas cher – Meilleure productivité des développements / maintenance facilitée
  • 28. Cas d’utilisation n°2 • Enjeux • Désiré Sponsable – Vaincre l’habitude de • JEE Technical Leader l’AS/400 • Bank Lehman Sisters – Interface graphique dynamique et ergonomie avancée • Contexte et objectifs – Réutilisation de services – Equipe à forte culture existants (GED, comptes, Java (anti-Kro$oft) CRM…) – Réalisation d’une application dédiée au call- center – Diffusion : 50 utilisateurs authentifiés Difficulté : ★
  • 29. Cas d’utilisation n°2 • Notre réponse – Adobe Flex – GWT (oui mais non) • Notre argumentation – Pour les deux réponses : – Interaction Java avancée – Culture des développeurs – En faveur de Flex : – Du mouf-mouf pour pas cher – Meilleure productivité des développements / maintenance facilitée Ca ne vous rappelle rien ?
  • 30. Cas d’utilisation n°3 • Enjeux • Eddy Teurdetexte – Connectivité avec les • Chef de projet services du Back Office • Clémentine (Télécom) – Ergonomie – Temps de réponse courts • Contexte et objectifs – Back Office 100% PHP – Refonte de l’application vieillissante de gestion des abonnements – Diffusion : 50 utilisateurs authentifiés Difficulté : ★★
  • 31. Cas d’utilisation n°3 • Notre réponse – Adobe Flex – Microsoft Silverlight • Notre argumentation – Pour les deux réponses : – Connectivité immédiate aux services du Back Office – Performances et ergonomie équivalentes – Coût d’entrée sur la technologie – (Peut-être) en faveur de Flex : – Ouverture de l’application sur Internet : accessibilité à Mme Michu – (Peut-être) en faveur de Silverlight : – Disponibilité des compétences liées à la proximité technologie Microsoft
  • 32. Cas d’utilisation n°4 • Enjeux • Jean Tourloupe – Haute performance • Architecte – Compatibilité avec 100% • Ministère des finances des internautes français – Bling-bling pour l’application de gestion de • Contexte et objectifs budget – Etendre la déclaration des – Navigation assistée impôts à la gestion de budget en ligne – Diffusion sur le web – Pics d’utilisation pendant deux mois Difficulté : ★★★
  • 33. Cas d’utilisation n°4 • Notre réponse – Adobe Flex • Notre argumentation – Performances – Protocole de transfert Flex : format AMF natif – Back Office : on n’imagine pas une plateforme sous x86/Windows – Diffusion multi-plateformes : maturité des plugins navigateur – Intégration avec des applications Back Office hétérogènes
  • 34. Cas d’utilisation n°5 • Enjeux • Marc Héting – Mode 100% ASP • Directeur – Temps de réponse faibles • Editeur Dentaface – Ergonomie proche du client lourd • Contexte et objectifs – Réalisation « from scratch » d’une application intégrée de gestion de clients pour dentistes – Diffusion sur le web Difficulté : ★★
  • 35. Cas d’utilisation n°5 • Notre réponse – Microsoft Silverlight • Notre argumentation – Productivité des développements et maintenance facilitée – Courbe d’apprentissage faible – Disponibilité des compétences – Simplicité de l’infrastructure nécessaire – Environnements client maîtrisés
  • 37. Ce qu’il faut retenir • La RIA se dote de nouveaux paradigmes – Dépassez la phase transitoire actuelle • Basculez ! – La RIA, c’est une meilleure expérience utilisateur – La RIA, c’est une meilleure expérience développeur • Silverlight et Flex sont matures – Cherchez votre cas d’utilisation plutôt qu’une comparaison grille ou passionnelle – Et industrialisez, les outils le permettent ! • Et ensuite… la mobilité ? Crédits photo : http://gombinoscope.free.fr/

Notes de l'éditeur

  1. Rappel des durées : 8-5-12-15 min