Voir le résumé
Il y a à peine trente ans, le logiciel était l'apanage des systèmes de gestion ou de communication des grandes entreprises. La micro-informatique, les ordinateurs embarqués et les réseaux ont centuplé ses applications, révolutionnant la bureautique, le design industriel ou artistique, les transports, et maintenant les objets du quotidien, du téléphone au stimulateur cardiaque en passant par tout l'audiovisuel, les jeux, et bien sûr Internet. On assiste en fait à la mise en place d'un nouveau système nerveux logiciel, avec lequel nous sommes sans cesse en contact. Or, le logiciel reste un objet mystérieux pour la plupart des gens. Il est purement immatériel, ne se voit pas, ne pèse rien. Pourtant, il produit des tas d'ennuis allant de l'inconfort des interfaces homme-machine mal conçus aux problèmes de sécurité des réseaux en passant par des crashs catastrophiques de fusées ou de satellites. La qualité du logiciel devient un des points faibles de notre société. Pour les spécialistes, ce n'est pas étonnant. Le logiciel est un objet purement intellectuel d'une très grande complexité, qui ne se laisse pas appréhender pas des approches naïves. Un logiciel est formé de millions d'ordres élémentaires à une machine ultra-rapide et quasi-infaillible mais parfaitement stupide, le microprocesseur. De minuscules erreurs peuvent avoir de grandes conséquences et on ne sait pas encore se protéger. Nous essaierons de mieux faire comprendre la nature profonde de l'objet logiciel, et nous présenterons les approches scientifiques modernes qui permettront de construire des logiciels plus sûrs et d'en assurer la correction.
Mot(s) clés libre(s) : algorithmique, bug, circuit intégré, langage de programmation, logiciel informatique, microélectronique, microprocesseur