2.6 KiB
title | date | tags | categories | mathjax | ||||
---|---|---|---|---|---|---|---|---|
Conduite de projet: introduction | 2024-09-16 |
|
|
true |
Les projets informatiques peuvent prendre plusieurs formes:
- Projet de développement logiciel pour livrer la première version utilisable du logiciel.
- Projet de tierce maintenance applicative pour en assurer la maintenance.
- Projet de mise en production pour assurer la production (exploitation).
Mener à bien ces différents projets est un long chemin, il est facile de se perde surtout si les contours sont flous. Et pour ça nous allons avoir besoin d'un peut de formalisme.
Projet de développement
- Tout part d'un utilisateur qui a un besoin, il peut ne pas en être conscient ou l'exprimer.
- Le propriétaire (ou le producteur) exprime ce besoin dans un cahier des charges.
- Le développeur va spécifier le besoin dans la réponse au cahier des charges
- Le propriétaire accepte la réponse.
- Le développeur réalise le développement et le livre.
- Le propriétaire mets à disposition le logiciel à l'utilisateur
Nous utilisons les termes de MOA pour Maître d'ouvrage (le propriétaire) et MOE pour Maître d'œuvre (le développeur).
Le cycle de développement se décompose en 3 phases:
- l'analyse: le MOE spécifie ce qu'il peut réaliser, mais aussi ce qu'il ne peut pas;
- la conception: le MOE organise son développement;
- le développement: le MOE développe les différents composants.
L'analyse
Le cahier des charge représente un peu la lettre au père noël du MOA au MOE. Ce dernier doit alors spécifier ce qu'il est capable de réaliser mais aussi le chiffrer. Le MOE peut refuser de aire telle ou telle spécification du budget et de ses capacités.
Au niveau du chiffrage, on évalue en jour/homme, c'est une tâche qui demande de l'expérience car semée de pièges. Par exemple, il est souvent pas possible de factoriser, en effet 2 jours/homme ne signifie pas 2 fois 1 jour/homme.
La conception
C'est l'écriture du code des différents composants de l'application, il y a alors plusieurs points de vies:
- application monolithique;
- composition en modules, ils permettent aussi de découper en tâche. Il faut aussi définir les différentes interactions entre les modules.
Il faut aussi choisir une architecture (3 tiers, en couche, par service).
Nous pouvons utiliser la méthode sur 6 artefacts: