Bien sûr, Agile favorise la communication en face à face et la plupart des projets open source ont des membres distribués et la distance ne simplifie pas la communication. Cela signifie-t-il que vous ne pouvez pas être Agile sur un projet OSS? Je ne pense pas. Tout d'abord, je dois dire que les outils modernes peuvent aider à réduire la surcharge de communication introduite par la distance: skype, téléphone, conférences téléphoniques, vidéo conférence, éditeurs collaboratifs et outils de révision, courrier, document écrit, (même voyage), etc. Si vous pouvez éviter la distance, faites-le. Mais ce n'est pas un problème de blocage. En second lieu, Agile n'est pas à mon avis de faire de la programmation en binôme ou des réunions stand-up ... Ce ne sont que des pratiques et la pratique ne sont pas une fin, ce sont juste des moyens. Agile est plus sur les principes: maximiser la valeur livrée tout en minimisant les déchets pour fournir le meilleur retour sur investissement (ok, la dernière partie peut ne pas s'appliquer à un projet OSS mais vous voulez toujours livrer un logiciel de travail précieux à vos utilisateurs ou Darwin vous fera disparaître). Les pratiques d'une méthodologie donnée sont un moyen d'atteindre cet objectif dans un contexte donné mais pour moi, Agile est encore plus une priorité continue, limitant Work In Process, (cycles courts et intervalles de temps), livraison incrémentale, boucles de rétroaction, haute qualité (perception et conceptuel), Stop-the-Line culture, la construction d'un mistake proof process, juste assez de spécifications, juste assez et juste à temps la documentation, etc, etc. En d'autres termes, ne pas faire de programmation en binôme ne signifie pas que vous ne pouvez pas être Agile.Pour revenir à la question, je considère Ubuntu comme un bon exemple (peut-être pas strictement un exemple de programmation mais de développement): cycles de publication de dates fixes (tous les 6 mois avec plusieurs itérations plus courtes pendant ces 6 mois), hiérarchisation stricte des priorités. choses à faire, pas de changement de date (la portée varie), logiciel de travail, et tout cela avec des contributeurs hautement distribués et beaucoup de technologies et de langues. Vérifiez Ubuntu Development, je suis assez sûr qu'il est possible de contacter "quelqu'un".
Un autre exemple que j'avais à l'esprit est Sonar. À un moment donné, ils livraient leur super logiciel tous les mois (bien qu'il semble que le rythme ne soit plus aussi régulier). Vous pouvez contacter l'équipe de développement pour discuter avec eux au SonarSource.
J'ai vu des développeurs et des gestionnaires utiliser Agile/scrum en remplacement complet des spécifications. Cela ne finit jamais bien. –
@David J'ai vu des développeurs et des managers utiliser des spécifications "précieuses" pour remplacer complètement les logiciels de travail. Cela ne finit jamais bien. Au fait, Agile! = Scrum et Agile! = Pas de spécification ou de documentation. –
@Pascal Je suis au courant. J'étais également sur un projet de télécommunication il y a quelques années qui a dépensé 250k + spécifications d'écriture pour un système qui n'a jamais été développé. Je ne pense pas que nous ayons besoin de spéculer sur toutes les lignes de code, mais une image bien définie de ce que nous essayons de faire permet de garder tout le monde sur la même longueur d'onde, en particulier dans une équipe géographiquement diversifiée. –