NAPLES

NAPLES

New Agile Platform for a Lifelong Engineering of Software

La pression croissante du marché force les firmes de développement logiciel à améliorer la productivité de leurs équipes de développement ainsi que la qualité des solutions livrées à leurs clients. Le moyen principal pour atteindre ces améliorations est d’accroître les pratiques de réutilisation à travers des divers stades de développement de projets. le second moyen en importance est d’améliorer la communication entre les partie prenant tout au long du projet.

Domaine: Secteur numérique 

Fiche projet:

Equipe du projet : Jean-Christophe Deprez

Objectifs

Bien que largement prônée, la réutilisation bien orchestrée au sein de projets de développement logiciel est loin d’être une réalité. Pour la rendre effective, de nombreuses barrières doivent encore être levée. Tout d’abord, les techniques de réutilisation ne sont pas toujours bien connues dans l’industrie. Ensuite, l’application de techniques de réutilisation requière souvent un surcroit d’effort initial trop conséquent qui doit être abaissé. Enfin, les techniques de réutilisation doivent encore être incluses dans les processus de développement de nombreuses organisations.

Relativement à la communication entre les parties prenantes d’un projet, l’obstacles principal est le manque de visibilité de chaque participant sur le travail et les besoins des autres participants. Les modèles de référence des pratiques de développement tentent d’organiser le travail de chacun. Cependant en pratique, ceux-ci s’avèrent soit de trop haut niveau, sans fournir assez de guidance (ex. CMMI, ISO 12207), soit trop intrusif, dans le sens où trop de tâches de granularité trop fines sont imposées (ex. RUP).

L’objectif du projet NAPLES est d’améliorer cette situation en développant une plateforme qui :

  • facilite la réutilisation de matériel (artefacts) de la base de connaissance projet construite sur base de projets passés
  • encourager et faciliter la production de nouveau matériel réutilisable pour enrichir la base de connaissance
  • promouvoir un travail de développement logiciel orienté "workflow", dans le sens ou chaque partie-prenante doit être capable de sélectionner et personnaliser des séquences de tâches provenant de pratiques reconnues. Ce processus sera soutenu par un outillage adéquat en particulier au niveau des outils de génie logiciel et de l’environnement IT.
  • rendre réel la production et la consommation d’artefacts réutilisables en définissant des profils d’activité de réutilisation sous forme de template de workflow pour chacune des disciplines du cycle de développement
  • fournir un portal où toutes les parties prenantes d’un projet logiciel, incluant le client, pourront obtenir une vision précise du status du projet au niveau de détail requis. Le portail permettra aussi l’accès aisé à diverses opérations communes telles que l’introduction de requêtes et le rapport de bogues dans passer par des outils techniques complexes.

Résultats clefs

A ce stade, le projet NAPLES a permis au CETIC de développer

  • une expertise en audit des pratiques de réutilisation lors du cycle de vie complet de développement logiciel. Cela permet de déterminer les pratiques de réutilisation déjà en place dans une entreprises et celles que l’organisation souhaite promouvoir dans le future.
  • une implémentation des workflows qui suivent les processus de dévéloppement de logiciel de la norme ISO29110 (Profil d’Entrée). Ces workflows ont été implémentés dans l’environnement open source BONITA.
  • Un article scientifique accepté à la conférence EuroSPI sur comment gérer la variablité dans les workflows
  • certaines tâches des workflows interagissent avec les outils de gestion des exigences via le protocole définit par OSLC (Open Services for Lifecycle Collaboration)
  • Un prototype de portail (sur base de Liferay) qui pour le moment intègre les outils Redmine et Bonita ainsi que un protlet qui communique via OSLC vers HP Quality Centre pour obtenir des informations sur les exigences.

Pour aboutir dans la construction de la plateforme NAPLES, un partenariat industriel a été initié avec deux partenaires industriels ainsi que deux partenaires de recherche. Afin de garantir l’applicabilité industrielle, les exigences sont fournies directement par les partenaires industriels. La conception et le développement sont réalisée de manière commune en suivant un processus AGILE. Le résultat final sera validé dans plusieurs déploiement conséquent à commencer par les partenaires industriels et le CETIC.