Nous nous inspirons des méthodes Agile pour organiser et gérer les phases de conception et développement de certains projets Web complexes, aux nombreuses fonctionnalités et impliquant un découpage en lots.
Les méthodes Agile: des démarches à forte valeur ajoutée
Nous pensons que l’utilisation de l’Open Source induit implicitement la prise en compte et l’application des méthodes Agiles dans le cadre de l’organisation des projets Web.
Notre expérience de dix ans sur le terrain dans ce métier nous permet d’aborder cette question de façon pratique, au-delà des seuls aspects théoriques de ces méthodes.
L’objectif est double: il s’agit de pallier aux coûts souvent élevés des travaux de développements des fonctionnalités spécifiques en permettant leur rationalisation, et de livrer au client un produit final correspondant exactement à ses attentes.
Dans un contexte de fortes exigences en termes de délais et de coûts, notre souci est de veiller à la satisfaction des besoins des clients quant à la qualité des produits livrés, tout en permettant un bon rapport service/prix de l’ensemble du projet.
Les projets Web réalisés avec des technologies Open Source
Nous privilégions toujours l'adage de l'Open Source dans le cadre des projets Web menés : à savoir, utiliser l’ensemble des modules Drupal mis à disposition par la communauté de développeurs pour mettre en place de façon efficace et rapide plus de 80% des fonctionnalités générales du site, et consacrer l'essentiel de notre temps de travail au développement des 20% de fonctionnalités spécifiques restantes, telles que spécifiées par le client.
Cette démarche permet au client d'allouer l'essentiel de son budget à la conception et au développement des fonctionnalités spécifiques de son site Internet.
L’état d’esprit et les principes des méthodes Agiles
Ces méthodes Agile peuvent s'appliquer à différents types de projets. Elles sont notamment adaptées à des projets de taille importante, dont le périmètre fonctionnel peut être amené à évoluer dans le temps, et pour lesquels il est préconisé un découpage en lots et une démarche de travail progressive.
Les méthodes Agile se caractérisent par la participation active du client au projet, permettant ainsi une grande réactivité à ses demandes tout au long de la vie du projet.
Elles permettent des cycles courts de développement par fonctionnalités ou groupes de fonctionnalités, leur intégration continue et itérative à l'ensemble du projet, et la livraison de premières versions dans des délais restreints.
Ces méthodes sont itératives dans le sens où elles sont basées sur des adaptations systématiques du produit aux changements de besoins détectés par l'utilisateur lors de la phase de conception-réalisation du logiciel.
Plus que l’application stricto sensu de ces principes d’organisation de projets Web, nous nous intéressons surtout à la philosophie de ces méthodes. L’objectif est en effet, de veiller en priorité à la satisfaction des besoins du client, en même temps que la maîtrise de son budget à chaque étape du projet.
La mise en pratique des méthodes Agile dans les projets Web : pour quels bénéfices attendus ?
Synodes s’inspire des méthodes Agile pour organiser et gérer les phases de conception et développement de certains projets Web.
Les clients ont plusieurs exigences simultanément : la qualité des produits livrés (développés avec un code propre), l’adéquation des fonctionnalités développées avec celles préalablement définies dans le cahier des charges, et la prise en compte de contraintes budgétaires fortes.
Afin de répondre à leurs attentes, nous proposons deux types de démarches de développements de sites Web en Open Source, lesquelles peuvent être entreprises séparément ou ensemble.
L’accompagnement des clients dans la rédaction du cahier des charges de leur site Internet
L’objectif est d’orienter les clients vers les meilleurs choix de fonctionnalités possibles, compte tenu des modules fonctionnels déjà développés sous Drupal par l’ensemble de la communauté.
Si un cahier des charges est déjà rédigé, notre travail consistera à assister nos clients dans l’adaptation de ce cahier des charges aux fonctionnalités déjà présentes sur le marché, pour lui éviter de trop longs développements, coûteux en temps et en argent.
L’application des méthodes Agiles tout au long de la vie du projet
L'objectif est de proposer aux clients une démarche progressive, comportant des cycles courts et leur permettant des validations successives des produits livrés aux différentes étapes de conception et développement du site Internet.
Cette démarche est surtout adaptée à de gros projets nécessitant beaucoup de moyens et ressources, et impliquant un découpage en lots.
Les principaux bénéfices de l’application de ces méthodologies
Ces méthodes appliquées concrètement aux projets Web, présentent les avantages suivants :
- La possibilité donnée à l’utilisateur final de valider les livrables, correspondant aux fonctionnalités requises, aux différentes étapes du projet de développement, évitant ainsi les mauvais effets de surprise en fin du projet qui peuvent parfois être lourds de conséquences,
- Une meilleure qualité des fonctionnalités spécifiques ainsi développées,
- La maîtrise du coût de développement de ces fonctionnalités, et un meilleur prix de revient de l’ensemble du projet,
- Une réelle mise à profit des avantages offerts par les modules développés en Open Source, dont leur mise à disposition sur le marché en code ouvert.