Concept: Personnalisation du processus RUP
Ce document décrit la procédure générale de personnalisation du processus Rational Unified Process (RUP), dont l'objectif est de fournir des conseils appropriés et personnalisés sur le développement des logiciels.
Relations
Description principale

Introduction

L'infrastructure préfabriquée Rational Unified Process (RUP) représente des conseils portant sur un large éventail de principes en matière de génie logiciel. Elle est applicable aux projets de taille et de complexité variable, ainsi qu'à différents domaines et environnements de développement. Ainsi, aucun projet ou organisation unique ne bénéficiera de l'utilisation de tout le processus RUP. Appliquer tout le processus RUP conduira probablement à un environnement de projet inefficace, dans lequel les équipes devront batailler pour rester concentrées sur les tâches importantes et pour trouver les bonnes informations. C'est la raison pour laquelle nous recommandons de personnaliser le processus afin qu'il fournisse des conseils appropriés et personnalisés sur le développement des logiciels.  Ces conseils présentent un résumé de haut niveau du concept de personnalisation du processus RUP.

La personnalisation du processus peut se produire à deux niveaux :

  • Au niveau organisationnel, où les responsables de processus modifient, améliorent ou configurent un processus commun afin qu'il soit utilisé à l'échelle de l'organisation. Cette personnalisation prend en considération des questions telles que le domaine d'application, les pratiques en matière de réutilisation et les technologies de base maîtrisées par l'entreprise. Une organisation peut disposer de plusieurs processus utilisés dans toute l'organisation, dont chacun est adapté à un type différent de développement. Dans certains cas, la configuration de processus RUP classique prédéfinie sert de processus à l'échelle de l'organisation. 
  • Au niveau du projet, où les responsables de processus modifient, améliorent ou configurent un processus commun afin qu'il soit utilisé par un projet spécifique.  Lorsqu'il existe un processus à l'échelle de l'organisation, la personnalisation au niveau du projet consiste à affiner davantage ce processus pour un projet particulier. Elle prend en considération la taille du projet, la réutilisation des actifs de l'entreprise, le type de cycle de développement ("développement initial" ou évolution), etc.

Quel que soit le niveau de personnalisation du processus dans l'organisation, l'approche générale est la même (même si les objectifs sont différents).  Cette approche est la suivante :

  1. Identifiez la portée de l'effort de personnalisation.  Identifiez le contenu de méthode à ajouter ou préciser dans RUP.  Identifiez les actifs de méthode existantes pouvant être incluses (par exemple, les instructions, canevas ou exemples - entre autres - relatifs au projet ou à l'organisation).  Sélectionnez les processus, rôles, tâches, produits, conseils, etc. que vous souhaitez personnaliser.  Pour plus d'informations sur la définition de la portée de l'effort, voir Instructions : Personnalisation du processus RUP.
  2. Choisissez le niveau de personnalisation à effectuer. Il existe différents niveaux de personnalisation possibles, chacun comportant des "coûts" et des "avantages".  Pour plus d'informations sur les différents niveaux de personnalisation, voir la section Niveaux de personnalisation.
  3. Personnalisez le processus. Personnalisez les éléments identifiés du processus RUP selon le niveau choisi.
    Quel que soit ce niveau, la personnalisation du processus RUP comporte généralement quatre étapes clés (bien que certaines étapes soient facultatives en fonction du niveau) :
    1. Développez les éléments de méthode.  Il s'agit de développer un nouveau contenu et/ou de préciser un contenu existant.
    2. Configurez le contenu de méthode.  Il s'agit de choisir le contenu à inclure et le contenu à exclure, et d'introduire les vues appropriées relatives à ce contenu (par exemple, les vues reposant sur un rôle ou un domaine spécifique).La configuration du contenu de méthode consiste à bien définir la taille du processus afin qu'elle corresponde aux besoins spécifiques d'une organisation ou d'un projet particulier.
    3. Développez le processus de la configuration.  Il s'agit de sélectionner un type de cycle de développement (par exemple, choisir entre un cycle en cascade et un cycle itératif) et de définir un processus sur mesure adapté aux besoins exacts de l'organisation ou du  projet. Le processus résultant servira d'entrée directe à la planification du projet.    
    4. Rendez les processus disponibles.  Il s'agit de publier la configuration (et son processus) sous forme de site Web de processus et/ou d'exporter le processus vers un outil de planification de projet.

La fraction de processus que vous décidez de personnaliser et le niveau de personnalisation que vous décidez d'adopter dépendent tous deux d'un certain nombre de facteurs. Ces facteurs sont décrits dans les Instructions : Discriminants du processus.  Il est également bon de vous familiariser avec le processus, aussi bien en termes de contenu qu'en termes de support à la personnalisation. Pour plus d'informations, voir Présentation du processus RUP.

La personnalisation du processus ne représente qu'une partie de son implémentation pour un projet.  Une fois le processus personnalisé, le responsable de projet l'instancie et l'exécute pour le projet donné. Un processus "instancié" est un plan de projet/itération/activité applicable (il inclut les activités et produits réels d'un projet réel). Une telle instanciation rentre dans le cadre de la planification du projet. Pour plus d'informations sur la planification du projet, voir Tâche : Planifier les phases et les itérations et Tâche : Développer un plan d'itération.  

Les sections suivantes de ces conseils contiennent une description des différents niveaux de personnalisation disponibles pour le processus RUP, suivie d'une présentation de quelques scénarios courants de personnalisation qui reflètent ces différents niveaux.   

Pour plus d'informations sur la personnalisation du processus RUP, voir les pages suivantes :


Niveaux de personnalisation

Le tableau suivant répertorie les niveaux de personnalisation actuellement disponibles pour le processus RUP, du plus simple au plus complexe, chaque niveau incluant le précédent : 

Niveau 1 Détaillez le processus personnalisé, ainsi que tout actif de méthode personnalisé, dans un document externe qui renvoie à un processus sous-jacent.

Ce niveau est avantageux lorsque le processus que vous devez personnaliser ne peut être modifié pour une quelconque raison (il est strictement contrôlé à des fins de revue) ou lorsque vous n'avez pas accès au Rational Method Composer.  A ce niveau, la personnalisation ne concerne que la présentation du site Web et non son contenu sous-jacent.

Niveau 2 Personnalisez un site Web de processus existant à l'aide de My RUP et de documents externes.

Ce niveau est conçu pour une utilisation individuelle sur un exemplaire personnel du site Web de processus. Il n'est généralement pas recommandé dans le cas d'une personnalisation du processus pour l'ensemble d'un projet ou d'une organisation.  Cependant, il peut être un bon compromis lorsque vous souhaitez apporter des améliorations mineures à la présentation du site Web, mais que vous n'avez pas accès au Rational Method Composer.  A ce niveau, la personnalisation ne concerne que la présentation du site Web et non son contenu sous-jacent.

Niveau 3

Configurez un site Web de processus depuis un contenu de méthode existant à l'aide du Rational Method Composer.

Ce niveau est parfois appelé développement d'une Configuration de méthode

Niveau 4

Ajoutez des Conseils à l'infrastructure de méthode existante à l'aide du Rational Method Composer.

Ce niveau est parfois appelé développement de Plug-ins de méthode "légers".  Les plug-ins légers ajoutent uniquement des Conseils (par exemple, des Concepts, des Instructions, des Canevas, des Exemples, des Guides d'utilisation de l'outil). Les plug-ins légers constituent un mécanisme qui permet aux organisations de regrouper sous forme de package leurs actifs organisationnels, tels que les modèles de produit, les instructions, les exemples et autres actifs réutilisables pour un projet donné. La création de plug-ins légers est très peu onéreuse, et peut donc s'appliquer très facilement à des organisations de toutes tailles et figurer aisément au budget d'un projet unique. En outre, la création de plug-ins légers n'a aucune incidence sur les processus (Patterns de capacité et Processus de livraison) inclus dans une configuration, car aucun rôle, tâche ou produit n'est ajouté/précisé. 

Niveau 5

Développez un nouveau Processus de livraison (reposant dans l'idéal sur des Patterns de capacité disponibles) à l'aide du Rational Method Composer.

Ce niveau est parfois appelé développement d'un Processus de livraison

Niveau 6

Etendez l'infrastructure de méthode existante avec un nouveau contenu de méthode (par exemple, des Tâches, des Produits, des Rôles) à l'aide du Rational Method Composer.

Ce niveau est parfois appelé développement d'un plug-in "structurel".  Un plug-in structurel étend le processus RUP en ajoutant/précisant des Rôles, des Tâches et/ou des Produits

La création de plug-ins structurels tend à exiger plus de ressources que la création de plug-ins légers, car lorsque vous ajoutez un rôle, une tâche et/ou un produit, il se peut que vous ayez besoin d'ajouter des éléments de contenu et de créer/préciser des processus (Patterns de capacité et Processus de livraison) afin d'inclure ces nouveaux éléments de contenu de méthode.  Par exemple, si vous deviez ajouter un nouveau produit, vous auriez sans doute besoin d'ajouter un nouveau rôle pour représenter le responsable du produit et une nouvelle tâche pour réaliser ce produit.  Ensuite, vous auriez besoin d'ajouter la nouvelle tâche à un processus existant (ou éventuellement de créer un nouveau processus).

Les plug-ins structurels sont généralement développés dans les organisations sensibilisées au processus, où l'accent est mis sur l'utilisation de la synergie des processus entre les projets, particulièrement lorsque plusieurs projets sont développés dans le même domaine et avec la même technologie, ou dans des environnements de développement similaires. Un projet unique ne prend généralement pas en charge la création d'un plug-in structurel du processus RUP, à moins que le projet soit suffisamment gros pour justifier le coût de développement d'un plug-in dans le cadre du budget du projet. Un plug-in structurel est similaire à n'importe quel actif réutilisable dans le sens où l'on ne souhaite pas assumer les coûts découlant des opérations permettant de le rendre réutilisable, à moins de voir en lui un potentiel de réutilisation qui aille au-delà de la portée du projet.

En résumé, la création de nouveaux rôles, tâches, etc. dans un plug-in réutilisable n'est pas simple. En général, il vaut mieux commencer par réduire au minimum ce type de personnalisation, en se concentrant sur l'ajout de conseils (Niveau 4) et des éléments "manquants" d'un processus de livraison (Niveau 5), au lieu de tenter de redéfinir, remplacer ou renommer des tâches, rôles ou produits RUP. Cependant, il est très peu risqué d'ajouter de nouvelles tâches ou activités réservées à un processus de livraison ou un petit nombre de nouveaux patterns de capacités.


Il est recommandé de personnaliser le processus RUP à l'aide du Rational Method Composer (RMC).Avec le RMC, le site Web obtenu possède exactement les mêmes fonctionnalités et la même apparence que le site Web RUP classique.  De plus, vous pouvez instancier  un Processus de livraison en l'exportant depuis cet outil  vers un outil de gestion de projet (tel que Rational Portfolio Manager), où vous pouvez identifier des produits réels, attribuer des ressources réelles à des rôles, etc.  Pour plus d'informations sur l'exportation de processus de livraison, voir Guide d'utilisation de l'outil : Exportation de processus vers un outil de planification à l'aide du Rational Method Composer.

Il est également conseillé de consacrer du temps à l'étude des plug-ins existants avant de démarrer un projet de plug-in, afin d'éviter de « ré-inventer la roue ». La page developerWorks : plug-ins RUP créés par IBM contient une liste complète des plug-ins que vous pouvez télécharger et ajouter à votre configuration RUP.

Scénarios de personnalisation

Dans cette section, nous décrivons un ensemble de scénarios courants relatifs à la personnalisation du processus RUP. Chacun d'eux expliquent comment effectuer les étapes clés de personnalisation à chaque niveau différent.

Les scénarios sont les suivants :

Chacun de ces scénarios est décrit ci-dessous.


Personnalisation du processus RUP à l'aide d'un document externe

Lorsque vous personnalisez RUP à l'aide d'un document externe, effectuez les étapes clés de personnalisation comme suit :

  1. Développez les éléments de méthode (tels que les canevas, instructions et exemples) à l'aide d'un outil qui prend en charge le développement de ce contenu.
  2. Configurez le contenu de méthode.
  3. Pour développer le processus de la configuration, créez un document (ou une série de documents) qui décrit le contenu RUP à inclure dans le processus personnalisé, la manière dont s'y intègrent les éléments de méthode développés au cours de l'étape précédente, et sa position dans le cycle de vie général du processus. Ce document peut prendre la forme d'un fichier de traitement de texte, d'un tableur, d'un site Web, etc. Créez autant de documents que nécessaire pour offrir suffisamment de vues et couvrir les différents aspects du processus.
  4. Pour rendre le processus disponible, mettez simplement le document externe et le contenu référencé à disposition des utilisateurs finaux. Dans ce scénario, il n'y a rien d'autre à publier et rien qui ne puisse être exporté.

Par exemple, vous pourriez créer une série de pages HTML qui décrivent le processus instancié. Ces pages Web pourraient être rendues accessibles sur le site Web de l'organisation ou du projet et utilisées pour fournir les points d'entrée initiaux au site Web RUP sous-jacent (les pages HTML contiendraient des liens vers le site Web RUP pour plus de détails).


Personnalisation du processus RUP à l'aide de My RUP

Lorsque vous utilisez My RUP pour personnaliser le processus RUP, effectuez les étapes clés de personnalisation comme suit :

  1. Pour développer les éléments de méthode, utilisez un outil quelconque prenant en charge le développement de ce contenu (par exemple, fichiers de traitement de texte, tableurs, pages HTML, etc.).
  2. Pour configurer le contenu de méthode, ajoutez les éléments de méthode développés aux vues de processus existantes du site Web RUP, créez de nouvelles vues de processus et/ou supprimez des vues de processus existantes.  
  3. Pour développer le processus de la configuration, créez un document qui décrit le cycle de vie général du processus en renvoyant si nécessaire au site Web personnalisé. 
  4. Pour rendre le processus disponible, mettez simplement le site Web personnalisé et le contenu référencé à disposition des utilisateurs finaux.  Dans ce scénario, il n'y a rien d'autre à publier, car la personnalisation est effectuée sur le site Web publié, et rien qui ne puisse être exporté. 

Remarque : ce scénario est très semblable au scénario Personnalisation du processus RUP à l'aide d'un document externe, à une exception près ; dans notre cas, les documents externes font partie du site Web publié. 

Pour plus d'informations sur la personnalisation d'un site Web RUP à l'aide de My RUP, voir Guide d'utilisation de l'outil : Personnalisation du site Web RUP à l'aide de Personal Process View ou de My RUP.


Personnalisation du processus RUP grâce à la configuration du contenu existant

Lorsque vous utilisez le Rational Method Composer (RMC) pour configurer le contenu de méthode existant, effectuez les étapes clés de personnalisation comme suit :

  1. Dans la mesure où vous configurez un contenu existant, aucun développement d'élément de méthode n'est nécessaire.
  2. Pour configurer le contenu de méthode, créez une Configuration de méthode qui comprend les packages de contenu pertinents de l'infrastructure préfabriquée RUP (et tout plug-in de méthode inclus) et exclut les packages de contenu non pertinents, puis définissez les vues relatives à la configuration pour couvrir les perspectives des différentes parties prenantes.  Dans l'idéal, utilisez l'une des configurations prédéfinies dans le RMC comme point de départ pour la configuration.  Pour plus d'informations sur la création d'une configuration à l'aide du RMC, voir Guide d'utilisation de l'outil : Création d'une configuration de méthode à l'aide du Rational Method Composer.
  3. Dans la mesure où vous configurez un contenu existant, aucun développement de processus n'est nécessaire (vous pouvez utiliser l'un des Processus de livraison prédéfinis).  
  4. Pour rendre le processus disponible, publiez la configuration pour produire le site Web de processus et/ou exportez le processus de livraison vers un outil de planification de projet.  Pour plus d'informations, voir Guide d'utilisation de l'outil : Publication d'une configuration de méthode à l'aide du Rational Method Composer et Guide d'utilisation de l'outil : Exportation de processus vers un outil de planification à l'aide du Rational Method Composer.

Personnalisation du processus RUP grâce à l'ajout de conseils aux éléments de méthode existants

Lorsque vous utilisez le Rational Method Composer (RMC) pour ajouter des Conseils aux éléments de méthode existants, effectuez les étapes clés de personnalisation comme suit :

  1. Créez un Plug-in de méthode pour contenir les conseils.  Le plug-in de méthode contiendra non seulement les conseils, mais aussi leurs associations avec les  éléments de méthode qu'ils prennent en charge.  Un plug-in qui ne contient que des conseils est parfois appelé plug-in "léger".  Pour plus d'informations sur l'utilisation de plug-ins, voir Guide d'utilisation de l'outil : Création d'une configuration de méthode à l'aide du Rational Method Composer et Guide d'utilisation de l'outil : Développement du contenu de méthode à l'aide du Rational Method Composer.
  2. Créez une Configuration de méthode qui contient le plug-in de méthode réalisé lors de l'étape précédente.  Dans l'idéal, utilisez comme point de départ l'une des configurations RMC prédéfinies qui contient les éléments de méthode nécessaires.  Si besoin est, précisez les vues de la configuration pour y intégrer les nouveaux conseils.  Pour plus d'informations sur l'utilisation des configurations, voir Guide d'utilisation de l'outil : Création d'une configuration de méthode à l'aide du Rational Method Composer.
  3. Dans la mesure où vous avez simplement ajouté des conseils aux éléments de méthode existants, aucun développement de processus n'est nécessaire (vous pouvez utiliser l'un des Processus de livraison prédéfinis).  
  4. Pour rendre le processus disponible, publiez la configuration pour produire le site Web de processus et/ou exportez le processus de livraison vers un outil de planification de projet.  Pour plus d'informations, voir Guide d'utilisation de l'outil : Publication d'une configuration de méthode à l'aide du Rational Method Composer et Guide d'utilisation de l'outil : Exportation de processus vers un outil de planification à l'aide du Rational Method Composer.

Personnalisation du processus RUP grâce à la définition d'un nouveau processus de livraison

Lorsque vous utilisez le Rational Method Composer (RMC) pour définir un nouveau Processus de livraison, effectuez les étapes clés de personnalisation comme suit :

  1. Dans la mesure où vous créez un nouveau processus de livraison, vous avez besoin de créer un Plug-in de méthode pour contenir ce processus.  Pour plus d'informations, voir Création d'un plug-in de méthode à l'aide du Rational Method Composer.
  2. Pour configurer le processus, vous devez créer une Configuration de méthode qui inclut le plug-in réalisé lors de l'étape précédente, ainsi que tout autre plug-in nécessaire (par exemple, des plug-ins contenant les éléments de méthode auxquels se réfère le processus de livraison).  Dans l'idéal, vous pouvez utiliser une configuration prédéfinie comme point de départ (plus précisément, une configuration qui contient un processus de livraison proche de celui que vous souhaitez définir).  Pour plus d'informations, voir Guide d'utilisation de l'outil : Création d'une configuration de méthode à l'aide du Rational Method Composer.
  3. Pour développer le processus de la configuration, créez un nouveau processus de livraison, en partant idéalement d'un processus de livraison ou d'un Pattern de capacité existant.  Pour plus d'informations, voir Guide d'utilisation de l'outil : Développement de processus à l'aide du Rational Method Composer.
    Lors du développement du processus de livraison, si un contenu de méthode supplémentaire s'avère nécessaire, vous pouvez toujours l'ajouter à un plug-in de méthode que vous incluez ensuite dans la configuration.  Pour plus d'informations, voir Création d'un plug-in de méthode à l'aide du Rational Method Composer et Guide d'utilisation de l'outil : Développement du contenu de méthode à l'aide du Rational Method Composer.
  4. Pour rendre le processus disponible, publiez la configuration pour produire le site Web de processus et/ou exportez le processus de livraison vers un outil de planification de projet.  Pour plus d'informations, voir Guide d'utilisation de l'outil : Publication d'une configuration de méthode à l'aide du Rational Method Composer et Guide d'utilisation de l'outil : Exportation de processus vers un outil de planification à l'aide du Rational Method Composer
     

Personnalisation du processus RUP grâce à l'ajout d'un nouvel élément de méthode autre que des conseils

Lorsque vous utilisez le Rational Method Composer (RMC) pour ajouter un nouvel élément de méthode autre que des conseils (Rôle, Tâche ou Produit), effectuez les étapes clés de personnalisation comme suit :

  1. Créez un Plug-in de méthode pour contenir le nouvel élément de méthode et tout autre élément de méthode supplémentaire.  Par exemple, si vous ajoutez un produit, il se peut que vous ayez besoin d'ajouter un rôle pour représenter le responsable du produit, une nouvelle tâche pour créer ce produit, etc.  Pour plus d'informations, voir Création d'un plug-in de méthode à l'aide du Rational Method Composer.
  2. Pour configurer le contenu de méthode, créez une Configuration de méthode qui inclut le plug-in réalisé lors de l'étape précédente, ainsi que tout autre plug-in nécessaire (par exemple, des plug-ins contenant les éléments de méthode associés au nouvel élément).  Pour plus d'informations, voir Guide d'utilisation de l'outil : Création d'une configuration de méthode à l'aide du Rational Method Composer.
  3. Pour développer le processus de la configuration, créez un nouveau Processus de livraison, en partant idéalement d'un processus de livraison ou d'un Pattern de capacité existant.  Ajoutez au processus de livraison le nouvel élément de méthode ainsi que tout autre élément de méthode associé.  Pour plus d'informations, voir Guide d'utilisation de l'outil : Développement de processus à l'aide du Rational Method Composer.
  4. Pour rendre le processus disponible, publiez la configuration pour produire le site Web de processus et/ou exportez le processus de livraison vers un outil de planification de projet.  Pour plus d'informations, voir Guide d'utilisation de l'outil : Publication d'une configuration de méthode à l'aide du Rational Method Composer et Guide d'utilisation de l'outil : Exportation de processus vers un outil de planification à l'aide du Rational Method Composer.

Utilisation d'un plan de développement

Comme nous l'avons déjà dit, une façon de personnaliser le processus RUP consiste à placer des informations sur la personnalisation dans un document externe faisant référence au processus sous-jacent.  Le plan de développement  est un exemple de ce type de document.  Pour obtenir plus d'informations sur l'utilisation d"un plan de développement dans un processus de personnalisation, consultez la Tâche : Développer un plan de développement  ainsi que les conseils qui y sont associés.