Christophe Le Bot

  • Navigation rapide
Pratique de la conception numérique

Derniers commentaires

  • Test d’interface : paiement d’amendes en ligne
    • Herbaux Jean-Marie | J’ai été coupé a 15h56. Je ne parviens pas confirmer mon payement par C B via le payement.en ligne par Internet. J’entre bien les quatre groupes de chiffres et les deux...
    • Rovellotti Olivier | Ce site est un véritable cauchemar UX Excellent article http://www.natural-solutions.e u/
    • Julien | Pour info, mon e-numero etait sur le cote gauche, ecrit verticalement, sans aucun label.
  • Agence web ou SSII : que choisir ?
    • Rovellotti Olivier | La limite n’est plus aussi claire qu’avant effectivement et les différence de prix sont du l’ordre du *10. Généralement les équipes dans les agences sont plus...
  • Une excellente thèse sur Simile Exhibit
    • Olivier Rossel | Bonjour. Malgre les annees, avez vous toujours en memoire vos usages d’Exhibit? Je serais ravi d’en discuter avec vous. Cordialement, Olivier Rossel.
 

Archives de la catégorie
Gestion de projets

Le développement agile transforme le monde des affaires

Agile Development sur CNN Money

Etrange surprise que de voir le développement agile à la 18e place du classement Business 2.0 de CNN Money. Alors que la plupart des équipes informatiques ne comprennent pas encore pourquoi, ni comment de telles méthodes de gestion de projets apportent des résultats, voilà qu’elles deviennent un des 50 piliers de la profonde transformation du monde des affaires.

C’est oublier un peu vite qu’un bon business man est avant tout visionnaire…

Source : Scrum – Méthodes agiles

Définition de la créativité

Une définition de la créativité par Sir Ken Robinson :

La créativité est la capacité de pouvoir apporter de nouvelles idées qui ont de la valeur.

Source : L’école tue la créativité… selon Ken Robinson – Gwix.net

Entreprise 2.0 et management

C’est Christian Fauré qui a la bonne petite phrase du jour :

Avec l’entreprise 2.0 c’est le management qui fait confiance aux salariés, et non le management qui demande la confiance aux salariés.

Source : L’Entreprise 2.0

“Web 2.0″, Ajax, interfaces riches et prospective

J’ai toujours détesté le terme « web 2.0 ». Il ne signifie rien. Il englobe ce que chacun veut y mettre et ne sert qu’à convaincre les clients crédules de la nécessité d’une refonte de leurs services en ligne.

Les acteurs du web n’ont pas attendu la vague du « web 2.0 » (à quand le ressac ?) pour créer des communautés ou des applications en ligne (on remarquera au passage que les web applications sont devenues des SaaS, softwares as a service, c’est plus « tendance »).

Et que dire du contenu généré par les utilisateurs (le fameux User Generated Content si cher au « web 2.0 ») ? N’est-ce pas la fonction première du web que de permettre la diffusion rapide, massive et économique de contenu ? Depuis 1990 (et la première page web), les utilisateurs mettent en ligne du contenu.

J’ai eu la chance de concevoir des services « à la sauce web 2.0 » dès 1998 : sites communautaires, applications en ligne, outils de travail collaboratif… Et je n’étais pas le seul ! Mais il faut bien avouer que deux choses ont freiné leur expansion : les connexions bas débit et l’inviolabilité de la sphère privée.

Tout le monde peut comprendre qu’avec un modem RTC qui charge une page web en 55 secondes, il est impossible d’avoir des services tels que YouTube. Quant à la sphère privée, il a fallu une bonne dizaine d’années pour que l’internaute s’habitue à publier (donc rendre public) quelques bribes de sa vie personnelle (avec les excès que l’on connait aujourd’hui…).

Finalement, pour moi, le « web 2.0 », c’est :

  • un coup marketing de maître !
  • la généralisation du haut débit
  • l’ouverture de la sphère privée

C’est tout. Enfin presque… J’ai oublié le seul point réellement nouveau dans le « web 2.0 » : Ajax (Asynchronous JavaScript and XML), rendu possible grâce à l’implémentation de XMLHttpRequest dans Internet Explorer (merci Microsoft !).

Ajax change tout, à commencer par la notion de page web. Comme le fait très souvent remarquer Frédéric Cavazza, peut-on encore utiliser le terme de page web, alors que le contenu et la forme évoluent par petites touches au sein d’une seule page ? Netvibes en est un bon exemple.

Nous en sommes à l’ère des single page applications (SPA). Ses effets révolutionnent notre manière de voir et de concevoir le web. Les ergonomes sont obligés de revoir toutes leurs préconisations. Ajax change nos méthodes de production, les éditeurs de code HTML (comme Dreamweaver) ont disparu et font place à des environnements de développement lourd. Ajax bouscule les habitudes chèrement acquises des internautes (on ne touche plus au bouton « Page précédente » du navigateur pourtant si pratique !). Ajax perturbe l’économie du web en faussant la mesure d’audience.

Ajax finira peut-être par tuer le web, en imitant toujours mieux le comportement des applications classiques. Il rendra inutile le navigateur web et favorisera l’émergence des RIA (Rich Internet Applications), puis des RDA (Rich Desktop Applications). Finalement, Ajax entraînera un retour aux sources de l’informatique grand public : un système d’exploitation, des applications locales, des interfaces riches.

A la différence que tous leurs éléments intrinsèques seront connectés à internet et dépendront de lui : WebOS, RDA, Widgets, SaaS. Le web sera, quelques temps encore, un protocole d’échanges de données entre machines, avant de disparaître…

Comparatif de 4 CMS PHP sur 190 critères

Stéphane Bordage nous propose une analyse complète de 4 solutions de gestion de contenu open source fonctionnant avec PHP :

A chacun de faire sa synthèse en fonction de ses besoins. Un très bon support de décision qui me fait découvrir encore une fois les vertus d’un Drupal que je sous-estimais.

Mise à jour : le dossier complet est disponible dans le numéro 720 du magazine Décision Informatique, paru le 21 mai 2007.

Mise à jour : suite aux réactions (étonnamment violentes) de la communauté Spip à propos des résultats, Stéphane Bordage a pris la sage décision de supprimer Spip de ce comparatif.

Quand faire intervenir le designer ?

De l’article consacré aux difficultés de Dell, diffusé par Le Monde (Fragilisé, Dell se cherche un nouveau modèle, 3 mai 2007), je n’ai retenu qu’une phrase. Non pas que les objectifs de Michael Dell, de retour dans la galère le navire ne m’intéressent pas, mais parce qu’il y est question de design :

Des designers ont été recrutés et désormais un produit sera dessiné avant d’être conçu. Avant c’était le contraire.

Cet aveu est étonnant à double-titre :

  • Il me semblait que les machines Dell étaient réputées pour leur conception aboutie (fiabilité, silence, manipulation, installation, service clients). J’ai dû louper un épisode…
  • Je croyais que les grandes entreprises, américaines de surcroît, avaient compris depuis longtemps le rôle du designer. J’ai rêvé trop vite…

La situation

Comment en est-on arrivé là ? Le problème vient de l’incompréhension du mot design et du rôle du designer. Le design est trop souvent perçu comme synonyme exclusif d’apparence (ou d’aspect, de forme, d’esthétique, si vous préférez). D’où la tentation de limiter le coût du design à un peu de saupoudrage visuel, juste avant la mise en production.

Les responsables

A qui la faute ?

  • Aux designers, certainement, qui n’ont pas su expliquer leur métier, il est vrai très changeant (je suis bien placé pour le savoir, puisque j’ai géré et animé pendant 8 ans une association de promotion du design).
  • Aux managers parce qu’ils ne sont pas sensibilisés, ni formés aux atouts du design (le design devrait faire partie du programme MBA !).
  • Aux institutions et autres organismes de développement économique parce qu’ils n’ont pas les outils pour mesurer et expliquer l’efficacité du design (quoique sur ce point, les évolutions sont perceptibles ces derniers temps).
  • A notre système éducatif qui peine à sortir d’une ingénierie entièrement dévouée aux prouesses technologiques (condition nécessaire mais pas suffisante, pour reprendre le vocabulaire des « têtes bien pensantes »).

La réalité

« Bon finalement, le designer sert à quoi ? » Voici la définition qu’en donne l’École nationale supérieure de création industrielle (ENSCI – Les Ateliers) :

Au sein de l’équipe de conception, le designer veille à la cohérence structurelle du produit. Les solutions qu’il retient sont non seulement de nature à garantir le bon aspect de l’objet produit mais surtout sa parfaite organisation interne et la pertinence de son rapport à l’utilisateur.

Verner Panton disait :

Le travail du designer est de coordonner à tous les niveaux de production, d’étudier et de répondre aux exigences du consommateur, de dépasser les bases objectives et de trouver une cohésion claire et délibérée entre les facteurs pratiques et esthétiques.

La pratique

« C’est bien beau ces discours, mais moi, quand dois-je faire intervenir le designer ? » Tout au long du projet, et en particulier au début, quand les grandes orientations doivent être définies. Imaginez juste un instant un produit Apple dessiné après avoir été conçu…

Launchpad, un bon exemple de service collaboratif

Launchpad

Canonical, éditeur des solutions Ubuntu, nous propose Launchpad (version 1.0 beta), un service dédié aux développeurs open source, similaire à SourceForge.

Après une visite rapide, cet outil me laisse une impression très positive. Tout a été pensé pour faciliter le travail quotidien des développeurs et les fonctionnalités sont riches (code repositories, gestion de versions via CVS et Subversion, bugs tracker, support, gestion des traductions, etc.).

Hormis les produits développés par Canonical, Launchpad héberge quelques projets essentiels, comme Zope ou Creative Commons. J’y mettrai peut-être aussi les projets que j’ai dans mes cartons…

Il n’y a qu’un truc que je n’ai pas trouvé : la liste des projets hébergés. Cette fonction m’est très utile dans SourceForge pour suivre l’actualité des projets open source et trouver des perles rares.
Mise à jour : si, si, on peut avoir la liste de tous les projets. Merci Christian pour ton oeil de lynx !

UDOD, User documentation oriented design

Allez, je me lance ! Ce soir, j’invente un nouveau concept : le UDOD (User documentation oriented design).

Après tout, chaque jour, les acteurs du web inventent de nouveaux « concepts », toujours révolutionnaires, avec leurs centaines de termes et abréviations à connaître par coeur pour rester « in » ! On recherche, on découvre, on apprend, on applique, on oublie et on recommence. C’est tout le charme d’internet ! En regardant de près (ou plutôt de loin si on veut prendre du recul), il y a peu de concepts réellement nouveaux, mais ça fait monter le « buzz » ! Le « web 2.0 » en est une caricature…

« Et UDOD, ça apporte quoi de neuf ? »

Evidemment, après avoir dit tout ce que je pense des « révolutionnaires du web », je vais avoir un peu de mal à vous convaincre d’utiliser UDOD… Mais comme je l’applique avec de bons résultats, je me dis qu’il y aura bien quelques intéressés !

Le principe de UDOD est simple : après avoir fait un brief rapide et fixer des objectifs assez larges pour votre nouvelle application (méthodologie Paper prototyping), vous commencez par écrire la documentation de l’utilisateur débutant (« User guide for beginners »). L’intérêt est de poser une fois pour toute une description claire, synthétique et compréhensible de votre application. On devrait donc y trouver au moins :

  • une définition de l’application ;
  • une présentation des notions fondamentales ;
  • une description des fonctions principales et de leur utilisation ;
  • une description de l’architecture et de son interaction avec d’autres sytèmes ;
  • des annexes pour les détails techniques ;
  • un glossaire ;
  • un index.

Une architecture claire, des notions définies

Certes, cela a un coût. La rédaction est longue et doit être faite par un spécialiste. Cependant, on découvre vite l’intérêt de cette méthode :

  • La définion de l’application facilite la compréhension des objectifs pour l’équipe de développement.
  • Les notions fondamentales sont exhaustives et définies.
  • La description des fonctions donnent l’étendue du travail (orienté tâches) de développement et de conception de l’interface.
  • La description de l’architecture pose les bases du noyau de l’application.
  • Les annexes précisent les contraintes pour les développeurs.
  • Le glossaire définit tous les éléments de l’application.
  • L’index permet de valider la cohérence des termes utilisés.

Entendons-nous bien, je n’ai pas dit qu’il fallait finir la documentation avant de faire autre chose, mais bien de commencer par elle. Les autres méthodes de conception viendront compléter UDOD sans accroc :

  • Design participatif ;
  • Méthodes agiles ;
  • User task oriented design pour la conception de l’interfaces ;
  • UML pour la modélisation de l’application ;
  • Object oriented programming et Aspect oriented programming pour le développement du code ;
  • Unit tests pour valider chaque brique fonctionnelle définie par UDOD ;
  • et j’en passe…

Des utilisateurs impliqués

L’équipe interne a maintenant de quoi travailler sereinement. Mais il y a mieux encore : UDOD implique très vite les futurs utilisateurs de votre application. Ils peuvent la découvrir avant même qu’elle ne soit codée. Et bien sûr y apporter rapidement des remarques, des contraintes, de nouveaux besoins. Dans le cadre d’une application métier, la qualité des échanges est nettement améliorée. On applique au mieux les méthodes de design participatif !

Une documentation de qualité

Au bout du compte, vous aurez optimisé tous les cycles de développement. Et je garde le meilleur pour la fin : vous avez une documentation utilisateur claire et complète au lancement de l’application ! C’est tellement rare…

Choisir des outils de test open source

OpensourceTesting

Inutile d’insister sur la nécessité des tests lors de développement applicatif, surtout dans le contexte de l’Extreme Programming où l’écriture des tests précède celle du code. Encore faut-il avoir de bons outils de test.

Opensourcetesting.org en répertorie une bonne quantité, avec actualité et forums en prime !

Vous aurez de quoi faire :

  • des tests unitaires
  • des tests de performances
  • des tests de bases de données
  • des tests de liens
  • des tests de sécurité
  • des tests unitaire en Ada, C/C++, HTML, Java, Javascript, .NET, Perl, PHP, Python, SQL, Tcl, XML, etc.

Tous n’y sont pas et certains ne sont plus à jour, mais la liste est longue et l’interface très efficace.