De la nature du logiciel
Par Nicolas Chapin le dimanche 9 juillet 2006, 15:34 - Point de vue - Lien permanent
Suite à un article sur onStartups expliquant pourquoi les logiciels ne sont pas une comodité comme les harricots, je voudrais émettre quelques idées sur la nature des logiciels.
Personnellement j'ai tendance à considérer les logiciels comme un concentré d'intelligence. Un logiciel est avant tout une série d'opérations visant à reproduire automatiquement la résolution d'un problème. Cela implique entre autre de:
- Définir le problème à résoudre, ce qui n'est jamais aussi simple qu'il n'y parrait au premier abord sutrout quand vous avez une maîtrise d'ouvrage qui ne n'y arrive pas elle même.
- Résoudre le problème, ce qui est généralement simple pour les applications d'entreprise qui se résument à manipuler des enregistrement en base de données mais peut se révéler extrêmement complexe par pour la conception des sus-mentionnées bases de données.
- Trouver une solution pour exécuter la résolution du point ci-dessus de manière automatique avec le minimum d'interventions humaines. Ce qui peut se révéler assez sioux en fonction des contraintes imposées.
- Emballer le tout pour que cela soit facile à utiliser. Certainement la partie la plus difficiles si l'on considère les interfaces utilisateur de la pluspart des logiciels. Tout le monde n'a pas le talent des ingénieurs d'Apple.
Bien sûr une fois que l'on a réussi plus ou moins brilliament à réaliser toutes ces étapes, on peut graver le résultat sur un CD-ROM, le mettre en boîte et le vendre sur des étagères de supermaché à côté des harricots. Il faudra juste passer par quelques petites étapes suplémentaires comme:
- installer le logiciel
- le maintenir à jour
- le surveiller
- le faire évoluer
- etc.
Des opérations qui sont parfaitement maitrisées par tout le monde ...... Non je déconne. En fait peu de sociétés peuvent se vanter de maîtriser tout cela ITIL ou pas. Alors pour les particuliers, je n'en parles même pas. Contrairement aux haricots, un logiciel n'est pas un produit fini que l'on peut acheter sur étagère et s'attendre à ce qu'il marche sans sourciller quelque soit les conditions dans lesquelles on le fait évoluer. Ils nécessitent toujours une phase d'aptation ne serait-ce qu'une phase de paramétrage car ils sont aussi le résultat des choix opérés en fonction des contraintes qui leur sont imposées:
- Caractéristiques définitives et figées ou non lors de leur conception (embarqué/web 2.0)
- Leur conditions d'utilisation (temps réel/asynchrone)
- Leur importance (jeux/pilotage de métro)
- Leur architecture (client/serveur/web)
- Leur cible (particulier/entreprise)
- Leur technologie (liste trop longue)
- etc.
Donc, malgrès ce que certains commerciaux en mal d'inspiration peuvent vouloir faire croire, les logiciels ne sont pas des produits comme les autres. Ils sont des concentrés d'intelligence qu'il faut savoir choisir avec soin sous peine de dépenser une énergie démesurément absurde à lutter contre eux. Les personnes qui pensent pouvoir entrer dans une boutique et dire au vendeur fourguez moi un logiciel pour gérer mon entreprise pendant les 20 prochaines années sans que je n'ai à m'en préoccuper
se mettent le doigt dans l'oeil.

