lundi 7 décembre 2009

Le SI dans les nuages


Les nouveaux smartphones débarquent sur le marché : ces fêtes de Noël devraient consacrer leur succès.
Les netbooks portent le marché de l'industrie informatique en ces temps de crise.
Bientôt vont arriver sur le marché les tablettes (ou smartbooks) : à mi chemin entre les smartphones et les netbooks.
Le point commun de tous ces appareils est leur connectivité à internet omniprésente, via wifi ou réseau 3G.

Parallèlement, Google est en train de préparer l'OS du futur : un OS dédié à ces nouveaux matériels et à leur mode de fonctionnement : très lèger, sans logiciel (ou très peu) installé sur la machine.
Nous entrons doucement dans l'ère post windows/mac.

Les avantages ?
Regardez les logiciels Google (Mail, Calendar, Apps, Wave) : les versions s'enchaînent, s'enrichissent de manière transparente pour nous, utilisateurs. Des millions de postes clients sont instantanément à jour. Nous y accédons, quel que soit le poste de travail utilisé : au travail, à la maison, dans un web café, à l'aéroport, sur notre PC, portable, téléphone, tablette.

Mais les logiciels existants aujourd'hui n'ont pas été conçus pour ce modèle.
Il est temps de concevoir de nouveaux logiciels pour les faire fonctionner nativement dans ce mode :
  • Utilisation de langages et frameworks adaptés : PHP + Symfony, Ruby + Rails, .Net + ASP, Java + ??? (là, je sèche ;-)
  • Conception systématique en MVC (Modèle / Vue / Controller), les vues étant dispersées entre pages web standards, pages pour terminaux mobiles et services web, la logique métier doit rester unique
  • Penser aux performances dés la conception : votre application sera peut être utilisée par des centaines de milliers d'utilisateurs
  • Concevoir les fonctions en mode collaboratif dés le départ : utilisation de composants de workflow
  • Penser au mode déconnecté : il peut arriver qu'un utilisateur soit déconnecté momentanément du réseau : il doit pouvoir continuer à travailler, la synchronisation se faisant automatiquement lorsque le réseau est à nouveau disponible
De même, le process de développement doit également être adapté : les cycles de développement en V, avec des phases interminables de spécifications, peuvent être oubliés.
Les processus agiles semblent les mieux adaptés au développement de ces nouveaux logiciels :
  • Itérations / livraisons fréquentes (outillées afin de limiter la perte de temps et les risques d'erreurs)
  • Conception des tests / des jeux de tests avant le développement
  • Interactions permanentes avec les utilisateurs
Le trio gagnant selon moi :
  • logiciel conçu nativement pour le web, avec une plate-forme de développement adaptée
  • Industrialisation du développement à base de framework MVC et scripts d'automatisation
  • Process de développement / déploiement agile

Aucun commentaire:

Enregistrer un commentaire