Catégories
Revue académique

Technical decision-making in startups and its impact on growth and technical debt

On sait peu de choses des facteurs de réussite des startups sur le champ du logiciel, car le domaine est peu étudié. Cependant, Carl Hultberg, étudiant en management industriel nous livre une excellente synthèse du peu que nous savons. Les généralités sont simples et intuitives : 📈 satisfaire ses utilisateurs et 📉 juguler la dette […]

Catégories
Revue académique

Analyses of Regular Expression Usage in Software Development

Les expressions régulières (Regex) sont massivement utilisées, mais très peu testées car difficilement testables, donc d’une fiabilité douteuse. Cette conclusion est celle de la thèse (2021) de Peipei Wang, une doctorante en informatique de Caroline du Nord. Je conseille aux non-chercheurs la lecture des chapitres 1, 3, 4, 5. Vous y apprendrez que :-Dans la […]

Catégories
Revue académique

Recovery, redemption, and extreme programming

Extreme Programming peut (aussi) redresser des projets en perdition à condition de ne pas avoir une approche dogmatique et d’accepter des sacrifices. C’est l’essence du témoignage déjà ancien de Peter Schuh. Le paysage a peu changé, d’après mon expérience en ESN ou en tant que freelance. Ce papier est toujours actuel. https://ieeexplore.ieee.org/document/965800

Catégories
Revue académique

Sustainable Software Development through Overlapping Pair Rotation

Ce papier de Todd Sedano et al. offre un nouveau regard sur le turnover en développement. La recherche l’a présenté dans les années 2000 comme une odeur, un signal d’alarme que le code va mal et repousse les développeurs, qui préfèrent partir, plutôt que de subir plus longtemps. Ce papier va plus loin : si […]

Catégories
Revue académique

Iterative and Incremental Development: A Brief History

Je pensais avant cet article que la maturité de notre profession avait été atteinte dans les années 70. Il n’en est rien. En 1958, on savait faire de bons logiciels, avec une méthode proche d’eXtrem Programming.Le programme Mercury en témoigne. 63 ans de perdus, on continue ou on change nos pratiques ? https://www.cs.umd.edu/~basili/publications/journals/J90.pdf

Catégories
Revue académique

Incremental development – grow, not build, software

Aurions-nous perdu 50 ans à cause d’une métaphore foireuse ?J’ai beaucoup lu sur l’âge sombre des années 1970-2000, je n’ai trouvé aucune autre explication qu’une mauvaise interprétation des textes des années 60 pour expliquer la vague Waterfall.Quand on voit la puissance des métaphores en politique, il est légitime de se poser la question. Et si […]

Catégories
Revue académique

How soon will we learn these software engineering lessons?

Ce papier de 1979 constate que depuis 1961, le secteur du logiciel est incapable de réussir ses produits. En cause : délais déraisonnables, violation de la loi de Brooks, empilement de spécifications, management toxique, gestion de projet monobloc. En 2021 ? Rien n’a changé. Source : https://lnkd.in/dKz3Aag

Catégories
Revue académique

Factors Limiting Industrial Adoption of Test Driven Development: A

🇸🇪 TDD est bénéfique pour la qualité, j’en ai déjà parlé ici. Quels sont donc les facteurs qui limitent son adoption en entreprise ? Il y en a 7 selon 3 chercheurs suédois. 🐌 Sa lenteur en temps de développement initial. A nuancer, car TDD est plus rapide si l’on prend en compte le temps […]

Catégories
Revue académique

TDD est facile à enseigner

🎓 Enseigner TDD au étudiants dès le premier cours sur les tests donne des résultats encourageants ! C’est même moins difficile que de l’enseigner à des développeurs habitués à une démarche Test-Last. 🇺🇸 L’étude vient des U.S.A et compare deux groupes d’étudiants, l’un suivant la logique TDD, l’autre une démarche Test-Last plus classique. Ces étudiants […]

Catégories
Revue académique

Two Meta-Analysises

🔍 Les Méta-Analyses, plus haut niveau de preuves en science, sont assez rares en qualité logicielle. J’en ai une sur l’efficacité de TDD et l’autre sur le Pair Programming. Analysons-les ensemble. ⚠️ Ces deux analyses se rejoignent sur l’absence de standardisation des concepts étudiés et de la manière de les étudier, ce qui rend compliquée […]