étapes de la gestion de projet

Tout ce qui concerne la programmation.
Répondre
unix.deb
Messages : 2
Inscription : 15 juin 2024, 13:17
Status : Hors-ligne

Bonjour,

Je me perds parfois dans certaines étapes de la gestion de projet. Je comprends qu’il y a tout d’abord l’expression des besoins (la base). Ensuite, on analyse ces besoins pour identifier les prestataires et intervenants, ainsi que les spécifications matérielles et/ou fonctionnelles, ce qui conduit à l’élaboration du cahier des charges. Ensuite, vient la phase de conception, où l’on précise chaque section du projet et comment la réaliser en détail. Enfin, la phase d’implémentation permet de concrétiser la solution basée sur la conception. En résumé :

Expression des besoins
Cahier des charges découlant de l’analyse des besoins
Conception de la solution
Réalisation de la solution (avec un suivi pour garantir le respect du cahier des charges)
Cependant, lors de mes recherches sur la gestion de projet, j’ai souvent rencontré les notions de conception générale et détaillée. J’ai pensé que la conception générale pourrait être un autre nom pour le cahier des charges.

Ma compréhension des étapes de gestion de projet est-elle correcte ? La conception générale est-elle bien équivalente au cahier des charges ? Pourriez-vous partager un exemple concret incluant ces étapes afin que je puisse en avoir une meilleure vision pratique ?

Merci à tous pour votre aide !
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5632
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Bonjour,
Le cahier des charges, c'est ce qui défini ce qu doit faire le produit, à quelle norme il répond, ses performances ..... C'est un contrat entre le client et le fournisseur.
la conception générale, c'est la première étape de la conception. c'est là qu'on défini l'architecture globale de la solution technique.
En informatique, on va par exemple faire le choix entre:
- serveur + client "lourd"
- serveur + page de navigateur

Une fois qu'on a ça, on peut rédiger les spécifications pour la conception détaillée. On découpe chaque grosses parties issues de la conception générale en parties plus petites, et on rédige une spécification détaillée pour chacune d'elles.
Étape suivante, on réparti la réalisation de chacune de ces petites parties entre les équipes (par exemple le codage).
Ensuite on consolide tout les morceaux (phase d'intégration), et on fait les tests finaux pour s'assurer que le produit répond au cahier des charges.
Pour parler des tests, ils se font à chaque étapes . On teste individuellement chaque morceau avant de l'intégrer à l'ensemble.
Personnellement je suis fan de la "conception dirigée par les tests". On écrit d'abord les procédures de tests, et ensuite on réalise le produit afin qu'il passe les tests.

Ca c'est pour la partie technique. Mais la "gestion de projet" implique bien d'autres facettes. On parle de gestion QCD (Qualité, Couts, Délais). Cela inclus aussi la gestion des ressources (humaines et matérielles), car on ne travaille jamais à ressource infinies.
Avatar de l’utilisateur
zargos
Membre
Membre
Messages : 187
Inscription : 07 juil. 2023, 13:34
Status : Hors-ligne

la conception détaillée suis la conception fonctionnelle. D'où les spécifications fonctionnelles et détaillées.
Les tests devront d'ailleurs couvrir les deux aspects.
LA conception dirigée par les tests est une très mauvaise méthode malheureusement encore utilisée.
En effet elle comporte le biais cognitif ton parle @piratebab : on fait en sorte que la réalisation passe les tests.
Cette méthode est à l'origine d'un grand nombre de mauvaises conception de logiciel, car elle cache les vrais problèmes; notamment le fait qu'on va finir par modifier les spécifications pour que la conception passe les tests.

Autre point ce type de méthode ne réussi quasiment jamais ce que j’appelle le test du débile.
Ce test est simple dans sa définition, pas forcement dans sa réalisation.
C’est un test où l'on confie le logiciel à quelqu'un qui n'en connaît pas les spécifications, et on lui demande de faire tout et n'importe quoi avec. Et on regarde les résultats.
Par exemple, le test peut simplement être d'utiliser le clavier en écrasant plusieurs touches en même temps, y compris CTRL, ALT, etc... beaucoup d'applications n'y résistent pas. Ou alors de mettre des données qui ne correspondent pas aux attendus.
C'est d'ailleurs pour le dernier cas ce que fait l'injection SQL.
L'idée de ce tests est de voir si l'application a été conçue que pour ne prendre en compte que ce qu'elle est sensé avoir. trop souvent on teste des choses que l'on n'est pas sensé avoir. Mais il est plus faciled de déterminer l'attendu que l'inattendu.

La conception par les tests est défaillante le plus souvent dans ce genre de cas.
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5632
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Comme toute méthode de conception, elle est défaillante si mal réalisée. Le "idiot proof test" peut être en grande partie formalisé et intégré.
Il peut aussi étre intégré à la spécification fonctionnelle.
quelle que soit la méthode, bien spécifier un produit est quelque chose de complexe, et toujours imparfait.
sudo523
Messages : 2
Inscription : 17 sept. 2024, 10:51
Status : Hors-ligne

Bonjour,

Le cahier des charges est un terme assez général. Dans certains domaines comme la santé, il y a des standards à suivre.

Si aucun standard spécifique n'est imposé, vous commencerez par rédiger des SFG (Spécifications Fonctionnelles Générales), qui présentent les grandes lignes des exigences. Ensuite, vous rédigerez les SFD (Spécifications Fonctionnelles Détaillées), où vous décrivez plus précisément les solutions sans entrer dans les aspects techniques.

Enfin, vous passerez aux STD (Spécifications Techniques Détaillées), qui détaillent les algorithmes et les choix techniques.

En résumé, le cahier des charges pour le prestataire est constitué des SFG et SFD. Le prestataire devra ensuite produire les STD et l'exécutable associé.Cela s'applique presque à tous les projets, y compris un projet UX/UI design, par exemple. Pour t’aider dans ce domaine, voici un guide gratuit sur Figma
Répondre