QUALOSS a pour but de mesurer objectivement la robustesse et l’évolutivité (la capacité d’évolution) des logiciels libres. Une évaluation se basera sur la qualité du code mais aussi sur celle de la communauté associée aux logiciels libres évalués. Grâce à la plate-forme QUALOSS, les parties ardues et répétitives de l’évaluation seront automatisées. QUALOSS est un projet financé en partie par la commission européenne et par la région wallonne. Il implique 8 partenaires de 5 pays européens : la Belgique, l’Allemagne, l’Espagne, la France et les Pays-Bas. Le CETIC est le coordinateur de QUALOSS.
Développer une méthode objective pour juger de la robustesse et de l’évolutivité des logiciels libres.
Construire une plate-forme informatique pour faciliter l’application de la méthode d’évaluation.
Valider la méthode de façon empirique sur plus de 50 projets de logiciels libres.
Un premier prototype de la méthode QUALOSS sera élaboré pour septembre 2007. Les analyses et mesures plus avancées ainsi que la plate-forme QUALOSS se construiront par itération avec une première version planifiée pour le printemps 2008 et une seconde pour l’automne 2008.
La probabilité de réussite des projets de développement de logiciel est la mêmes que dans le jeu de pile ou face. En cas d’échec, les pertes financières s’additionnent en millions et quelque fois en milliards d’Euros, comme nous le montre « Why software fails » dans le IEEE Spectrum de septembre 2005. Bien que ces échecs ne soient pas seulement dûs à la technologie et soient souvent le résultat d’un manque de communication ou d’incompréhension entre les personnes impliquées, il est clair que de meilleurs logiciels diminueraient le temps à consacrer aux problèmes technologiques et ainsi, laisseraient plus de temps pour établir une meilleur communication entre les intervenants du projet.
Deux caractéristiques que l’on retrouve immanquablement dans les meilleurs logiciels sont une grande robustesse et évolutivité tant dans le produit logiciel que dans la communauté de développeurs et d’utilisateurs. Sans ces deux attributs, un logiciel perdra toute crédibilité et il n’aura jamais la chance de devenir une option viable sur le marché.
Un produit logiciel vit très rarement en isolation, il est souvent intégré à d’autres composantes logicielles pour obtenir un système complet. C’est là que les logiciels libres deviennent une solution attractive. En partageant son code source, une composante logicielle a une bien meilleure chance de s’intégrer et de communiquer correctement avec d’autres composantes pour former le système complet désiré. Les sources d’erreurs pourront être identifiées dans le code source mais elles ne seront jamais dues à l’ambiguïté ou au manque d’information comme c’est souvent le cas lors de l’utilisation de composantes propriétaires.
Pour créer un système robuste, un intégrateur devra sélectionner les composantes libres de bonne qualité avec une communauté active. Pour ce faire, il existe déjà plusieurs méthodes d’évaluation, notamment, QSOS sponsorisée par Atos Origin, OpenBRR poussée par Intel et O’Reilly et Open Source Maturity Model crée par CapGemini. Ces méthodes sont un premier pas dans la bonne direction, néanmoins, elle contiennent encore quelque points faibles :
Grâce à QUALOSS, l’évaluation d’un logiciel se fera plus en profondeur et de manière plus automatisée. De plus, les modèles de qualité proposés par QUALOSS seront validés empiriquement afin d’éliminer la subjectivité. En particulier, QUALOSS va appliquer le paradigme du Goal-Question-Metrics (GQM) pour systématiquement relier les objectifs recherchés par une évaluation aux formules mathématiques permettant de quantifier la prise en compte des objectifs par les projets de logiciels libres sélectionnés. Bien que le GQM puisse s’appliquer à n’importe quel but, dans le cadre de QUALOSS, nous nous limitons à des objectifs sur la robustesse et l’évolutivité d’un projet libre.
QUALOSS et l’Europe sont fortement liés sur deux aspects : la recherche et l’impact économique.
Premièrement, l’expertise requise pour QUALOSS n’existe pas au sein d’une seule organisation. Il est donc crucial de former une alliance stratégique entre les bon partenaires afin de garantir le succès du projet. Le CETIC a une expertise dans l’évaluation du code tandis que l’Université de Madrid a des outils comme Carnarvon permettant de mesurer l’activité de la communauté de développeurs. Le Fraunhofer IESE a inventé le paradigme GQM appliqué dans QUALOSS. PEPITe apporte son expertise en data mining. Les Facultés Universitaires de Namur mèneront la validation empirique des modèles de QUALOSS. Tout aussi important, AdaCore et Zea Partners relayeront les résultats de QUALOSS à leurs clients et publiques cibles. De plus, ils alimenteront QUALOSS de toute une série de données des projets libres auxquels ils participent.
Deuxièmement, QUALOSS aide l’Europe à garder sa dominance en développement de logiciels libres. L’étude récente de FLOSSWorld montre que plus de 70% des logiciels libres sont développés en Europe. Les projets de logiciels libres sont eux-mêmes les plus gros intégrateurs d’autres logiciels libres. QUALOSS permettra donc aux meneurs de projets libres d’être informés pour mieux sélectionner les logiciels libres avec qui collaborer.
Finalement, dans un monde de plus en plus orienté services informatisés où il est crucial d’arriver le premier sur le marché avec des services innovants et à haute valeur ajoutée, l’Europe s’est montrée efficace jusqu’à présent puisque les multinationales font confiance et donne priorité à l’Europe dans leurs investissement (39%) par rapport au reste du monde (étude de IBM rapportée dans le Financial Times Sept.17 2006). Pour continuer dans cette direction, la Belgique et l’Europe entière se doivent de poursuivre leur développement dans les logiciels libres et d’augmenter leur intégration dans les entreprises. Notons d’ailleurs que le 7eme programme cadre de recherche européenne sur base de NESSI a fortement concentré son intérêt sur le développement de plates-formes pour l’exécution de services informatiques.
Pour une intégration réussie, ces plates-formes seront majoritairement construites sur des composantes de logiciels libres et des standards ouverts afin de faciliter l’addition de nouvelles fonctionnalités aux services existants.
La première étape a été de définir les notions de robustesse et d’évolutivité dans le contexte du logiciel libre.
En parallèle, nous avons aussi recensé les sources et types de données enregistrées par les projets libres.
Finalement, nous avons établi un plan de collaboration avec FLOSSMETRICS et SQO-OSS avec une première initiative lors de FOSDEM 2007.
Jean-Christophe Deprez