Bienvenue sur Développement Agile

Référence sur le développement logiciel Agile. Nous traitons de conception, de programmation, de pratiques de génie logiciel, d'essais et d'autres sujets connexes.

Appliquer les principes du « 5 S » dans votre code: Ordonner

Publié par David Beaumier, Jean-Francois Gilbert le jeudi 19 février 2015 à 13:32

Un de mes derniers billet présentait comment la méthode 5 S  peut s’appliquer au développement logiciel autant que dans un environnement de travail "physique".  Aujourd’hui, mon collègue Jean-François Gilbert et moi avons pensé donner suite à ce billet en vous proposant quelques outils et références fort utiles pour celui ou celle qui souhaite rendre sa base de code 5 S.

Notre objectif n’est pas ici de dresser une liste exhaustive des outils disponibles, mais bien de démonter comment chacun des concepts 5 S peuvent être mis en œuvre en tirant profit des facilités à notre disposition. Aujourd'hui, nous débutons la série avec le premier concept : ordonner (ou Seiri, en japonais). Cette première opération nous demande de supprimer l’inutile.

Retirer le code mort

Heureusement, plusieurs outils permettent maintenant d’identifier en temps réel si un bout de code est utilisé ou non. Il devient ainsi facile de prendre l’habitude de valider si une partie du code qu’on touche pourrait être éliminée.

Voici un exemple où Resharper est configuré de façon à fournir un indicateur visuel qui permet de voir en un clin d’œil les parties inutiles du code source. On peut d'ailleurs établir un parallèle entre ce type d'indicateurs et le management visuel, fortement utilisé en Lean management.

Resharper Indicateurvisuel Codemort

Identifier le code dupliqué

À bien des égards, le code dupliqué est pire que le code mort. Surtout si l'ensemble de ces rejetons n'évolue pas au même rythme. On risque de se retrouver avec des variantes du code de base qui peuvent être difficiles à réconcilier à terme. Et que dire du risque de bogues si on oublie de modifier une de ces copies!

Plusieurs IDE, tel que RubyMine, offrent des fonctionnalités pour identifier les parties de code qui se retrouvent dupliquées.

Rubymine Analyserduplication

Les utilisateurs de Visual Studio ne sont pas en reste avec la fonctionnalité Code Clone Detection.

VS Code Clone Detection

Voilà quelques exemple d'outils qui devraient vous permettre de mette en application la règle des scouts : « laisser le campement plus propre en partant qu’à l’arrivée ».

Et vous, avez-vous des outils préférés pour garder votre code ordonné? N'hésitez pas à partager vos coups de coeur en nous laissant un commentaire ci-dessous.

Mise à jour

Voici les liens pour consulter les autres articles.

D'autres billets qui pourraient vous intéresser

Le professionnalisme en développement logiciel illustré!

Publié par Anis Berejeb le jeudi 29 janvier 2015 à 16:50

Bonjour! c'est mon premier billet sur developpementagile.com et j'en suis honoré!

J'ai quelque chose à vous raconter! Mettons que vous allez voir un menuisier pour qu'il vous construise une armoire, et que vous lui demandiez ceci :

Profdevlogiciel BD1

Que croyez-vous que le menuisier va penser de vous? ..

Profdevlogiciel BD2

Ok.. et si nous inversions la question, que penseriez vous si le menuisier AVAIT accepté de vous livrer cette armoire?

Profdevlogiciel BD3

Quand vous allez voir n'importe quel professionnel, vous supposez qu'il agira en tant que tel. d'ailleurs généralement, son attitude  professionnelle est principalement la raison pour laquelle vous l'auriez choisi.

Le métier de développeur est une profession. il ne doit y avoir aucune différence en terme d'attitude professionnelle entre un professionnel du logiciel et un professionnel de la santé par exemple.

En tant que professionnels du développement logiciel, nous sommes supposés avoir la meme attitude, agir de la même façon et livrer du travail de qualité digne de notre métier.

En s'inspirant fortement du courant de l'artisanat logiciel ou "software craftsmanship" fondé par Bob. C. Martin, je vous présente la bande dessinée "les 9 principes du développeur agile professionnel".

Profdevlogiciel Recap

Téléchargez la bande dessinée gratuitement sur www.berejeb.com

Classique du développement logiciel: Head First Design Patterns

Publié par David Beaumier le mercredi 10 décembre 2014 à 13:06

J’ai remarqué récemment que le livre «Head First Design Patterns » a reçu une mise à jour pour souligner son 10ième anniversaire de publication. Premièrement, il faut savoir que ce n’est en aucun cas le livre le plus avancé sur le sujet, mais comme le dit cet internaute « Si tu ne comprends pas les Design Patterns après cela, c'est alors peine perdue ».

Couverture Head First Design Patterns

Il s’agit donc d’un livre tout indiqué pour le p’tit nouveau de votre équipe ou pour un collègue qui ne connait pas encore les patrons de conception et qui souhaite s’initier au sujet. Présenté dans le format ludique associé à la série Head First (approche néanmoins très sérieuse), c’est une lecture agréable et somme toute légère si on considère le sujet. Le livre propose tout d’abord une introduction au concept de « patrons de conception », sans prendre pour acquis que le lecteur est un programmeur OO ceinture noire. Les principes OO liés aux patrons sont présentés au fur et à mesure, de façon à ce que le lecteur possède les bases requises pour bien comprendre comment mettre en oeuvre le patron.

Un des aspects intéressants de ce livre est l’abondance d’illustrations. Celle qui suit est un exemple typique du style utilisé par l’auteur, qui, il faut l’avouer, est assez différent de celui retrouvé dans la majorité des livres traitant du même sujet.

Exemple Diagramme HFDP

Ce classique propose, pour son édition renouvelée, des exemples basés sur les nouveautés de Java 8. Ceci dit, il est tout aussi pertinent pour ceux qui développent sous d’autres plateformes, telle que .NET. Les exemples sont simples et faciles à comprendre.

 Il est impressionnant de voir que plus de 10 ans après sa parution, il se retrouve au #1 des ventes de sa catégorie (au début de décembre 2014). C’est vraiment ce qu’on appelle un incontournable!

Ranking HFDP

Version française

Une édition française de ce livre a déjà existée, avec le titre « Design patterns : Tête la première », mais elle était basée sur l’édition originale et n’était disponible qu’en e-book (PDF). L’éditeur ayant fermé ses portes depuis, elle ne semble plus disponible pour achat.

D’autres billets qui pourraient vous intéresser

Pour aller plus loin

Si vous souhaitez approfondir le sujet des patrons de conception, je vous recommande la formation Concepts orientés-objet avancés appliqués au développement agile présentée par mon collègue Félix-Antoine Bourbonnais.

Agile Tour 2014 - Une mise en production à chaque heure de la journée

Publié par Jean-Nicolas Viens le mardi 11 novembre 2014 à 00:00

Description

L’intégration continue c’est bien, mais le déploiement continu c’est mieux! Le gain est évident : une boucle de rétroaction encore plus rapide. Les dangers le sont également : les outils et tableaux de bords doivent être digne de confiance. La qualité doit également être au rendez-vous. Comment diminuer ces risques et aller chercher ce gain en rétroaction est le sujet que nous allons explorer.

  • Présentateur: Jean-Nicolas Viens
  • Niveau : Intermédiaire
  • Public cible : Développeurs et architectes

Contenu

Agile Tour 2014 - Architecture Agile et développement durable

Publié par Félix-Antoine Bourbonnais le mardi 11 novembre 2014 à 00:00

Description

Beaucoup d’équipes ont embrassé Scrum sans considérer l’architecture nécessaire pour soutenir un tel rythme et minimiser la dette technique. Comment adopter une architecture émergente, malléable et facile à changer? Bref, comment faire du développement logiciel durable? Principes SOLID, patrons de conception d’entreprise, architecture émergente et pilotée par le domaine (DDD) sont au menu.

Présentation

Archive