Les principes fondamentaux du Génie Logiciel |
|
| 1- Limitez les risques |
Une bonne connaissance des problèmes organisationnels et techniques
ainsi que leur prise en compte au plus tôt dans le processus d'informatisation
permet de limiter les risques d'échec. |
| 2- Jouez gagnant-gagnant avec les utilisateurs |
Une bonne conduite du changement passe par l'information et la participation
de tous les acteurs du processus d'informatisation.
|
| 3- Approfondissez les besoins |
Les besoins (voire les exigences) des utilisateurs doivent être connus dans
leur détail et bien compris des informaticiens afin de limiter les ajustements
répétitifs du logiciel, source fréquente de dépassement des délais.
|
| 4- Modélisez tous les aspects du logiciel à programmer |
Un logiciel est un produit complexe qui présente plusieurs aspects (données,
traitements, comportement dynamique, interface avec l'utilisateur, interaction avec d'autres logiciels...)
qui doivent faire l'objet d'une modélisation spécifique. La notation
UML propose toute une panoplie de modèles et diagrammes permettant de
couvrir la quasi totalité de ces aspects. Un manque de modélisation
entraînera des difficultés de programmation débouchant très souvent
sur des dysfonctionnements graves car liés à une mauvaise conception.
|
| 5- Prenez en compte les besoins concernant l'IHM |
La
partie IHM (Interface Homme-Machine d'un logiciel interactif joue un rôle majeur car c'est ce
que voit l'utilisateur (partie émergée de l'iceberg) et c'est ce qu'il manipule (ce avec quoi il interagit) . Sa conception
ne peut se faire qu'en collaboration avec les utilisateurs. Elle ne
doit pas être réservée au seul informaticien.
|
| 6- Concevez le logiciel en appliquant le principe d'ouverture/fermeture |
En conception orientée objet, le principe d'ouverture/fermeture précise qu'une
classe (ou un package) doit être à la fois ouverte aux évolutions (ou extensions) et fermée aux modifications.
L'idée est que, lorsqu'une classe a été recettée par le maître d'ouvrage
via des bêta-tests, il est dangereux de la modifier autrement que par extension
(dérivation par héritage) car toute modification intempestive peut entraîner
l'apparition de nouveaux bugs. En pratique, le principe d'ouverture/fermeture
fait bon usage de l'abstraction et du polymorphisme avec l'emploi
de design patterns appropriés.
|
| 7- Faites du développement durable |
Les opérations de maintenance d'un logiciel se poursuivent pendant toute sa durée de vie et coûtent souvent plus cher que son développement. Une bonne documentation s'appuyant sur les modèles construits lors de l'étape de conception liée à l'application du principe d'ouver-ture/fermeture sont les principaux facteurs de diminution des coûts de maintenance. |
|




