Open Source et innovation : le Libre comme méthodologie de
Transcription
Open Source et innovation : le Libre comme méthodologie de
IN’Tech - 12 janvier 2010 Open Source et innovation : le Libre comme méthodologie de développement La forge logicielle Codendi – Nicolas Guérin -Présentation de Codendi -Industrialiser les développements avec une forge -Retour d’expérience: les bénéfices du développement open-source Open Source et adoption de technologie Impact sur les métiers de recherche Thierry Jacquin Introduction à Codendi Codendi est la plateforme open-source de développement collaboratif de Xerox o développée dans son centre de recherche européen à Meylan C’est une « forge logicielle »: o Elle rassemble, les outils nécessaires aux équipes de développement logiciel: contrôle de version, trackers, outils de communication, et bien plus! Historique de Codendi 2001 – 2004 Expérimentation interne: appliquer les méthodes de l’open-source dans Xerox o o o Transparence, pérennité, référencement… pour favoriser la réutilisation et la collaboration au sein de l’entreprise Forge logicielle basée sur le code source de SourceForge (GPL v2) Mise à disposition de CodeX (qui deviendra Codendi) à toutes les équipes de développement de Xerox 2004 – 2008 Distribution et commercialisation o o Business model basé sur le support correctif et évolutif Premiers clients, situés dans la région Grenobloise 2009 - … Adoption d’une approche complètement opensource o • • Distribution de Codendi via le site communautaire codendi.org Projet Coclico: projet FUI visant à rapprocher les acteurs du domaine Lutèce d’or 2008 du « meilleur logiciel libre réalisé par un grand groupe » Les forges logicielles Historiquement, les forges logicielles fournissent les services: o o o Gestion du code source (via CVS/Subversion/Git…) Gestion des anomalies et des tâches Outils de communication: forums, listes de diffusion, wikis Avantages des forges Outil centralisé o Facilite la collaboration et la réutilisation o Rapidité de mise en œuvre des projets o Coût de déploiement et de maintenance faible o Evolution naturelle des forges: vers la gestion du cycle de vie des applications o ALM (Application Lifecycle Management) ALM ? Généré via wordles.net La gestion du cycle de vie des logiciels dans les forges (1/2) Les outils ALMs propriétaires sont en général complexes, morcelés et couteux L’approche proposée par les forges modernes permet une intégration naturelle des outils ALM Quelques exemples: o Standardisation des projets à l’aide de modèles Possibilités de paramétrage importantes, permettant de typer les projets: « Agile », « TMA », « CMMI », etc. o Gestion de configuration: les modifications de code source sont liées à une exigence, une tâche ou une anomalie, elles-mêmes associées à une version du logiciel Traçabilité : les exigences, tests, documents, tâches peuvent-être liés entre eux. La gestion du cycle de vie des logiciels dans les forges (2/2) o La forge permet en un lieu unique d’exprimer et de gérer les besoins (exigences, user stories…) • • Tracker d’exigences Backlog produit De documenter et de spécifier ces besoins • Wiki et gestion documentaire De les implémenter • Gestionnaire de version De les tester • Intégration continue et gestion de plan de test D’en assurer la maintenance • Tracker dédié au recueil et traitement des anomalies, aux demandes d’évolution… Et de surveiller ces différentes étapes • Tableau de bord, graphiques, notifications… Expérience acquise: quelques avantages du développement open-source Possibilité d’intégrer et d’adapter d’autres outils opensource pour élargir le spectre des fonctionnalités. Gestion de version : Subversion, Git, CVS, … • Wiki : PhpWiki • Intégration continue : Hudson • Messagerie instantanée : Openfire (serveur Jabber) • Gestion de plans de test : SalomeTMF, etc. • Utilisation de protocoles et standards ouverts • HTTP, XMPP, SOAP, LDAP… Contributions et modèle de co-développement Discussions avec l’utilisateur/client pour que les extensions développées soient suffisamment génériques pour être intégrées au produit •Tous les utilisateurs en bénéficient • La contribution est alors supportée pas l’éditeur (migrations, évolutions…) En savoir plus sur Codendi Télécharger et participer à Codendi: http://codendi.org Présentation, démonstrations, vidéos et informations commerciales: http://www.codendi.com Open Source et adoption de technologie Impact sur les métiers de recherche Thierry Jacquin XRCE Intech, Jan 2010 L’Open Source est résolument orienté vers le consommateur Maintenabilité Durabilité Sans perception d’engagement Contrepartie - investissement dans les talents Les défis pour les fournisseurs d’OS Qualité de l’objet distribué Rentabilité Offre de service sur une base techno Open Source (Biz) – Jboss / redhat / codendi /… o Valider des idées préliminaires (sélection) – Alpha works / apache o Etablir une communauté (mutualisation) – Python / Eclipse … o Surfer la vague… mais guetter la suivante o L’adoption EST la vague Les défis introduits par l’OS pour les métiers de la recherche La recherche doit créer ses vagues d’adoption Trois dimensions à considérer: Marché existant Nouveauté/innovation (idées préliminaires) Communautés préexistantes (domaines de recherche) Une première expérience a XRCE: Xeproc (http://www.xrce.xerox.com/Xeproc ) Backup Plateforme collaborative open-source de gestion de projet logiciel