Articles Marqués ‘Java’
Par Grégory Levilain • 25 jan, 2010 • Catégorie: Agilité, Java, Productivité, Qualité, Test
1) Introduction
2) Développement “piloté par les tests” vs “assisté par les tests”
3) Tests unitaires “en isolation” ou “contextuels” ?
4) Gestion des données de tests et choix des outils
5) Conclusion
Développement piloté par les tests
L’engouement pour les techniques “Agiles”, et plus particulièrement l’”Extreme Programming” a conduit de nombreux informaticiens à se demander si les méthodes TDD — “Test Driven Design” ou “Test Driven Development” — ne seraient pas la solution pour enfin promouvoir les tests dans leurs projets. En effet, en substituant l’approche traditionnelle “Coder-Tester-Déboguer” par l’approche “Tester-Développer-Remanier”, le TDD place les tests au cœur du processus de développement.
Mais ce qui rend délicat son adoption, c’est qu’il s’agit avant tout d’une méthode de conception “Agile”, à laquelle l’équipe projet doit être formée. Cette méthode a pour objectif premier de réduire les cycles de livraison. En codant le strict minimum requis entre chaque cycle, on évite les incompréhensions et l’on peut s’adapter aux changements.
Le cycle de développement préconisé est le suivant :
écrire un test ;
vérifier que ce test échoue ;
écrire juste le code suffisant pour passer le test ;
vérifier que le test passe ;
remanier le code pour l’améliorer tout en gardant les mêmes fonctionnalités.
Aujourd’hui, le …
Par Grégory Levilain • 18 jan, 2010 • Catégorie: Agilité, Java, Productivité, Qualité, Test
Comment promouvoir les tests dans le processus de développement d’une application de gestion Java EE ? Quels outils mettre en place ? Comment sensibiliser les développeurs ? Le développement piloté par les tests (TDD) est-il incontournable pour obtenir une solution pérenne ?
Le choix d’une solution de test est délicat. La multitude d’outils disponibles sur le marché est impressionnante. L’une des forces du TDD est qu’il repose sur une méthodologie clairement définie et des objectifs précis. Et c’est cette méthodologie qui détermine les outils nécessaires.
Dans certains cas, le TDD peut s’avérer inapproprié. L’essentiel pour obtenir une solution pérenne est alors de commencer par déterminer la méthodologie et les objectifs que l’on souhaite atteindre.
A travers cette série de billets, je vous présenterai ma vision des choses en comparant le concept de “développement assisté par les tests” à celui du “développement piloté par les tests”.
1) Introduction
2) Développement “piloté par les tests” vs “assisté par les tests”
3) Tests unitaires “en isolation” ou “contextuels” ?
4) Gestion des données de tests et choix des outils
5) Conclusion
Par Nicolas Rougé • 21 oct, 2009 • Catégorie: Build, Java, Java EE, Qualité, news
Architecte et expert technique Java/JavaEE, je participe depuis plusieurs années à la mise en place et au développement de ces technologies sur un grand nombre de projets informatiques.
Confronté au quotidien à la réalisation d’applications, mon expérience du terrain m’a amené à mettre en place un certains nombre de pratiques ayant fait leurs preuves : tests unitaires, contrôle de la qualité, intégration continue, etc.
Mes thèmes de prédilection sont le monde de l’Open Source, la qualité logicielle, l’intégration continue et tout ce qui concerne l’automatisation des processus de développement, l’outillage du développeur, ainsi que les problématiques de conception et d’architecture des projets informatique. Ce blog est pour moi l’occasion de partager avec vous mon expérience et mon point de vue sur ces domaines.
En vous souhaitant bonne lecture…
Par Arnaud Buisine • 9 oct, 2009 • Catégorie: Java, Java EE, Performances, news
J’ai un peu tardé à l’annoncer sur ce blog, mais nous avons enfin trouvé une grande salle pour recevoir la soirée Terracotta que le Ch’ti JUG, Terracotta et ProxiAD vous proposent.
Cette soirée Terracotta dont je vous parlais déjà il y a quelques semaines et que nous avons été contraints de reporter est fixée au jeudi 15 octobre.
C’est grâce aux Formations en Informatique de l’Université Lille 1 que nous pouvons vous proposer une salle de 180 personnes.
Rendez vous vous est donc donné à 19 heures le 15 octobre, Amphithéâtre BACCHUS, bâtiment M5, Cité scientifique, Villeneuve d’Ascq (plan du campus ici).
Comme toujours, n’oubliez pas de vous inscrire ici.
Pour plus d”information rendez vous sur chtijug.org.
Par Arnaud Buisine • 21 sept, 2009 • Catégorie: Java, Java EE, Performances, news
Le Ch’ti JUG et ProxiAD reçoivent Terracotta le jeudi 1er Octobre pour une conférence exceptionnelle. Celle-ci sera animée par un architecte Terracotta de passage en France. C’est à ne pas manquer : il fera tout spécialement le détour par Lille.
Terracotta est une solution open source de cache de données distribué (data grid) qui flirte avec les ténors du marché tels que Oracle Coherence et Gigaspaces.
Détails et inscriptions ici : http://chtijug.org/terracotta-proxiad/
Comme pour les sessions précédentes du Ch’ti JUG (JPA et Hibernate, Maven 2, J2EE 6), les places sont limitées et, en l’occurrence pour cet événement, déjà prises d’assaut. Dépêchez vous de vous inscrire !!
Mise à jour du 29/09 :
La soirée du 1er octobre est reportée à une date encore à fixer pour cause d’indisponibilité de dernière minute de l’intervenant. Nous en profiterons pour vous proposer une salle plus grande et donc beaucoup plus de places. La nouvelle date devrait se situer dans les 2 ou 3 semaines à venir. Donc restez à l’écoute !
…
Par Arnaud Buisine • 2 sept, 2009 • Catégorie: Java, Java EE, Non classé, news
Cet été, les vaillants organisateurs du Ch’ti JUG ne sont pas restés inactifs sur leur transat à se chauffer sous le soleil (très généreux cette année) de Lille. Ils ont oeuvré pour maintenir le Ch’ti JUG sur la trajectoire du succès empruntée par les deux premières sessions sur J2EE 6 et Maven 2.
C’est donc en nous proposant de recevoir avec eux Emmanuel Bernard que le Ch’ti JUG à choisi de fêter la rentrée. Emmanuel est membre de l’équipe Hibernate, Core Developer chez Redhat/jBoss, développeur Hibernate Annotations et Hibernate EntityManager, membre des groupes d’experts EJB 3.0 et JSR-303. Autant dire qu’il aura des choses à nous dire sur JPA2, Bean Validation et Hibernate Search, les sujets retenus pour cette nouvelles soirée lilloise.
La date ? Le lundi 21 septembre.
Pour plus d’information, restez à l’écoute de chtijug.org et de ce blog, bien entendu.
Mise à jour : L’annonce définitive (avec l’adresse notamment) et le lien pour l’inscription sont ici.
Par Grégory Levilain • 27 mai, 2009 • Catégorie: Java, Java EE, Qualité
L’utilisation d’un outil d’analyse de code tel que Checkstyle, PMD ou FindBugs permet d’assurer un certain niveau de qualité sur un projet : l’outil garantit un code homogène et permet aux développeurs débutants d’acquérir progressivement une partie des bonnes pratiques de la programmation en Java. Mais le caractère optionnel d’un tel outil met en péril son adoption sur certains projets.
En effet, comme ce genre d’outils n’est nullement indispensable à la progression des développements, il est facile d’oublier de les installer. Du coup leur utilisation tient souvent de la bonne résolution de début de projet et finit par être délaissée au fur et à mesure que celui-ci prend de l’ampleur. Alors que les développements s’intensifient, de nouveaux développeurs arrivent, l’équipe se renouvelle, et Checkstyle n’est bientôt plus qu’un lointain souvenir. C’est en fait le lot de la plupart des outils liés à l’amélioration de la qualité et cela contribue à alourdir la dette technique des projets concernés (plus de détails sur la notion de dette technique ici).
C’est pourquoi, à mon sens, la mise en place de tout process qualité dépend en grande partie de la capacité …
Par Cédric Vidal • 29 avr, 2009 • Catégorie: Java, Productivité, Spring, news
Vaguement mentionné à SpringOne Americas 2009 en fin d’année dernière, Spring ROO avait depuis été évoqué ici et là mais sans jamais se montrer vraiment, laissant ainsi ses observateurs dans l’expectative. Ce n’est d’ailleurs pour ma part que Lundi lors de la keynote d’introduction à SpringOne Europe 2009 de Rod Johnson que j’ai découvert Spring ROO. Cette fois-ci, Ben Alex, son auteur, nous a fait une démonstration live de ROO nous permettant de nous faire une idée plus précise de ce mystérieux projet. Depuis Lundi, quelques détails sur ROO ont été mentionnés et je vais essayer de vous donner quelques informations supplémentaires.
Spring ROO est un genre de Grails ou Ruby on Rails pour le langage Java. Tout comme avec Grails, avec ROO, on a le choix de ne pas choisir, l’architecture est imposée: en gros Hibernate, Spring IoC et Spring MVC. La convention est préférée à la configuration, tout en restant configurable. Tout comme avec RoR et Grails, une interface en ligne de commande permet de contrôler le framework et le scaffolding tient une place de premier ordre dans le framework.
Stephan Schmidt, l’un des développeurs de Spring ROO a publié …
Par Cédric Vidal • 27 avr, 2009 • Catégorie: Java, Java EE, Spring, news
J’ai la chance de me rendre à SpringOne Europe 2009 cette année. Tous mes collègues sont jaloux :p Pleins de bonnes choses en perspective. Il y a trois “tracks” concurrentes, il va donc falloir faire un choix Voici les miens :
- Lundi 27 Avril
- Welcome Keynote par Rod Johnson himself évidemment: J’ai dévoré son livre J2EE development without EJB en intégralité mais je n’ai jamais eu l’occasion de le voir en personne. J’ai hate de voir le personnage emblématique derrière Spring !
- Performance Tuning for Apache Tomcat: Je connais bien les problématiques de performance sous Tomcat et sous JBoss mais je suis curieux de voir ce que les gens de SpringSource ont à dire sur le sujet. Ca devrait être intéressant vu qu’ils maintiennent eux-même Tomcat. Plusieurs des principaux commiters sont salariés de SpringSource comme le témoigne la page contributeurs de Ohloh.
- Working with Spring Web Flow 2: J’ai un peu regardé Spring Web Flow à l’époque de la version 1 mais n’ai jamais eu l’occasion de le mettre en oeuvre. Je me demande ce que la version 2 apporte. J’espère plus de simplicité et une configuration par annotations.
- …
Par Grégory Levilain • 27 avr, 2009 • Catégorie: news
Après 6 ans passés à évoluer dans le monde Java et Java EE, je suis depuis 3 ans responsable de l’industrialisation et des environnements de développement de ProxiAD Nord. Ce poste est né d’un besoin récurrent en SSII : assurer la maîtrise de ses développements, en termes de qualité et de productivité.
Vaste programme… et surtout un beau challenge parce qu’une application de qualité, c’est un peu comme une fricadelle : “tout le monde sait ce qu’y a d’dans, mais…”
Bref, le challenge est sur le long terme évidemment. Un process qualité peut facilement être perçu comme une contrainte si on tente de l’imposer de but en blanc. Et c’est généralement justifié car les actions visant à améliorer la qualité peuvent s’avérer pénibles et même paraître contre-productives.
Ma stratégie repose donc sur une approche plus globale dans laquelle le process qualité s’intègre à un ensemble d’outils et de services destinés d’une part à accroître effectivement la productivité sur le projet, d’autre part à fournir plus de confort aux membres de l’équipe. Dans ce contexte, les “actions qualité” retrouvent leur sens et leur plus-value. Cette méthode a l’énorme avantage de générer une demande plutôt qu’une contrainte.
Le thème de la qualité logicielle dans un …
|