 |
| Nous développons aussi la confiance |
|
|
|
|
| |
|
Outils d'une forge :
Gestion de projet
|
|
Une forge fournit plusieurs type d’outils, dont des outils de gestion de projet, spécialement adaptés au cas de projets
collaboratifs, et des outils plus directement liés aux tâches de développement. Dans cette section, nous allons examiner
les outils liés à la gestion des projets, avant d’aborder les outils de développement dans la prochaine section.
La plupart des outils de gestion de projets fournis par une forge logicielle cherchent à améliorer la communication
entre les développeurs1 :
Publication et partage de documents
Cet outils permet de gérer l’ensemble des documents concernant le projet, depuis sa création jusqu’à
sa réalisation complète : descriptions, spécifications, architecture, APIs, documentation technique, etc…
La forge n’impose pas de format particulier pour ces documents, qui pourront être des fichiers DOC, PDF,
Visio, HTML, … ou tout autre type de document qu’un utilisateur souhaitera mettre à disposition
(image, son, etc.).
Ces documents sont organisés dans une arborescence, et peuvent être révisés et modifiés par les utilisateurs
(chaque utilisateur disposera de droits en lecture et/ou en écriture pour chaque document).
La révision et la publication de documents pourra être soumise à l’exécution d’un workflow, en général assez
simple (étapes de révision et de validation avant publication, par exemple). La plupart des documents pourront
être recherchés, à l’aide d’un moteur de recherche intégré à la forge.
Il faut noter que cette fonctionnalité de publication et de partage des documents ne s’applique pas au code
source du projet : d’autres outils sont dédiés à cette tâche (voir subversion, plus bas, dans la section
dédiée aux outils de développement).
Le système de publication se charge également de prévenir les utilisateurs lorsqu’un document qui les intéresse
est modifié (ou créé). Cette notification peut avoir lieu par email, messagerie instantanée ou flux RSS.
|
Notifications
Certains utilisateurs ont intérêt à être avertis dès qu’un événement particulier se produit, au sein de la forge,
par exemple, la publication d’un document sur un sujet donné, ou l’arrivée d’une nouvelle version d’un livrable.
Lorsque ces événements se produisent, la forge se charge d’envoyer une notification aux utilisateurs « abonnés ».
Cette notification peut se faire à l’aide d’un email, mais également à l’aide d’un message instantané, ou au
travers d’un flux RSS.
|
Forums
Cet outil, classique, n’a plus besoin d’être présenté. Dans le cadre d’une forge logicielle, les discussions
des forums sont liées à des parties du projets bien définies, ce qui permet à chaque utilisateur de se limiter
à ses zones d’intérêt et/ou de compétences, sans être noyé par l’ensemble de toutes les discussions prenant part
à propos de tous les aspects du projet.
|
Messagerie instantanée
Lorsqu’une discussion plus rapide est nécessaire entre utilisateurs distants, la messagerie instantanée,
peut être utilisée. En général, un système de type Jabber est utilisé.
|
TimeLine
Une forge peut offrir cet outil, qui permet de donner une représentation des événements liés à un projet
(qu’ils soient passés ou prévus dans le futur) de manière chronologique.
|
Suivi des incidents (bug tracking)
Ce type d’outil implémente un système de workflow entièrement dédié au suivi des incidents, depuis leur
déclaration jusqu’à leur résolution. C’est l’un des outils essentiels d’une forge logicielle. Il faut noter
que l’utilisation d’un tel outil n’est pas limitée au suivi des bugs logiciels, mais permet de suivre tout
type d’incident ou d’événement nécessitant l’intervention d’une séquence d’utilisateurs.
|
Workflow
Un outil de workflow, intégré à une forge logicielle, permet de créer des workflows spécifiques, pour un projet
donné. Ces workflows peuvent être soit initiés manuellement par un utilisateur, soit être déclenchés en réponse
à des événements particuliers (publication d’un document sur un sujet particulier, création d’un nouveau rapport
de bug, etc...).
|
1 : Pour simplifier la discussion, le terme de développeur est utilisé ici pour désigner l’ensemble des personnes impliquées dans le développement d’une application, depuis sa définition jusqu’à sa réalisation complète (architectes, chefs de projets, experts, consultants, MOE, MOA, utilisateurs finaux, etc.), et pas seulement les programmeurs.
|
|