Industrialisation des développements Android

Avec la croissance de la plateforme Android et l’annonce de Google sur le nombre de terminaux activés chaque jour, le nombre de projets Android a de bonnes chances de progresser également. Avec cette augmentation, la question de l’industrialisation des développements se pose donc. Pourquoi industrialiser ? Comment ? Des questions auxquelles nous allons répondre dans ce billet…
(Lire la suite…)

Maven: Mes plugins préférés

Ayant beaucoup utilisé Maven ces derniers temps, j’ai dû faire pas mal de recherches pour lui faire faire ce que je voulais. Cela m’a permis de découvrir une série de plugins intéressants que je vous livre ici. De façon générale, il s’agit de plugins méconnus mais qui m’ont fait pousser un « Oh la bonne idée super pratique » lorsque je l’ai découvert. Avec un peu de chance, vous aurez la même réaction.

Évidemment, de nombreux autres plugins sont disponibles, utiles et bien faits. J’ai voulu focaliser ici sur mes nouvelles découvertes et sur les anciens qui sont revenus en grâce. Si vous recherchez un plugin, les deux points de départ sont http://maven.apache.org/plugins/ et http://mojo.codehaus.org/. Ensuite, Google est votre ami.

(Lire la suite…)

Distribuer les tests JUnit avec Gridgain et Maven

Dans un précédent article, Meriem Berkane introduisait le build distribué et notamment la distribution des tests sur des agents. TestNG propose cette fonctionnalité de base, JUnit par contre ne le fait pas. Mais Gridgain vient combler ce manque depuis sa version 1.6. Dans cet article, je vais donc mettre en oeuvre Gridgain dans un build Maven afin de pouvoir, par la suite, l’utiliser sur le serveur d’intégration continue.
(Lire la suite…)

FitNesse, Maven, Hudson : pour une intégration continue des tests d’acceptance

Dans un projet d’entreprise, il est important de vérifier continuellement la non-régression du produit réalisé. Au même titre que les tests unitaires, les tests d’acceptance font partie intégrante du harnais de tests à mettre en place sur un projet. FitNesse est une des solutions à ce besoin.

FitNesse / Slim

FitNesse dormait jusqu’à Juillet 2008. Mais il suffit de voir le rythme des releases depuis cette date, pour se rendre compte qu’il s’est réveillé ! Avec une nouvelle version presque tous les mois entre Juillet 2008 et Juillet 2009, et l’arrivée de Slim, on obtient un produit qui a sensiblement changé.

Mais avec une évolution aussi soudaine, on ne peut malheureusement pas éviter les effets de bords. Notamment dans le monde des outils qui tournaient autour de la sphère FitNesse. Par exemple, je recherchais un plugin Maven pour FitNesse. Mais la plupart des liens que me renvoie mon moteur de recherche préféré, pointe sur des outils incompatibles avec les nouvelles versions de FitNesse.

Il faut creuser un peu avant de trouver les perles rares…

(Lire la suite…)

Trois pistes pour distribuer vos builds

L’objectif du build continu est de fournir aux développeurs un retour sur la qualité du code qu’ils viennent de commiter. Plus ce retour sera fait rapidement, plus il sera efficace. Dans leur présentation à l’Université du Système d’Information intitulée Les nouveaux défis de l’intégration continue, Jérôme Van Der Linden et Philippe Guicheney présentent le build distribué comme une solution aux problématiques de temps de build continu. Le but de cet article est d’approfondir cette notion de build distribué, en:

  • Présentant trois concepts de distribution du build
  • Positionnant les principaux outils d’intégration continue actuels par rapport à leurs implémentations du build distribué

(Lire la suite…)

Littérature Maven Française

Jusqu’à présent la littérature au sujet de Maven était essentiellement anglophone. Ceci limitait son adoption dans nos contrées gauloises et pouvait parfois entrainer une mauvaise utilisation ou des critiques injustifiées. Mais c’est aujourd’hui de l’histoire ancienne… ou presque ! Effectivement, d’ici la fin de l’année, deux ouvrages en Français arriveront sur nos étales : Apache Maven de Nicolas De Loof et Arnaud Héritier ainsi que la traduction du déjà connu Maven: The Definitive Guide de Sonatype.
(Lire la suite…)

Combien de temps doit prendre un build Maven ?

Suite à mon précédent post, La meilleure façon de rater son projet grâce à Maven2, un collègue m’a décrit la situation suivante « Une pratique sur notre projet est de lancer un build maven -mvn clean install- sur son poste local avant de faire un commit. Cette commande est super longue, et les développeurs disent ‘c’est normal c’est maven qui est long’, ça doit prendre combien de temps un build Maven ? ».
(Lire la suite…)

Environnement de développement Maven/Eclipse pour GWT 1.7

Développer, tester et exécuter des applications GWT est facile avec le plugin « GWT for Eclipse ».
Mais ce plugin n’est pas vraiment adapté pour Maven2, l’arborescence de dossiers qu’il requiert n’étant pas conforme au standard des applications web buildées avec Maven.

Aujourd’hui, nous allons nous concentrer sur le développement et l’exécution d’application GWT via Maven et Eclipse. Les tests seront couverts dans un autre article, à paraître prochainement.

(Lire la suite…)

Livre Blanc traduit en français : « Douze recommandations pour augmenter votre productivité avec une usine logicielle »

Bonjour,

Avec un plaisir certain, nous nous sommes replongés dans le livre blanc « Java Productivity Primer » pour le traduire en français. Cette version est une 1.1, mise au goût du jour par petites touches, réécrite parfois.
Nous espérons que vous y retrouverez le sel de la version anglaise. Pour rappel, ces 12 bonnes pratiques prônent usines de développement, automatisation des tâches, poste de travail mieux intégré : des principes issus de la vraie vie que nous mettons en oeuvre tous les jours chez nos clients. Au delà du gain de productivité pour les équipes, nous espérons aider les développeurs à vivre des journées plus passionnantes, et produire plus avec leurs têtes qu’avec leurs mains.
Ce livre blanc est noté « Primer » car il constitue pour de nombreuses équipes le B-A-BA du développement logiciel. Ces conseils sont connus des experts techniques ; cette vision intégrée pourra néanmoins les aider à communiquer leur connaissances et pourra les inspirer pour aller encore plus loin dans ces pratiques.
C’est la raison d’être de cette traduction : faciliter la diffusion de ces recommandations afin de lancer les discussions sur la productivité au sein des équipes de développement.

Pour télécharger le livre blanc : http://octo.com/com/com_Java-Productivity-Primer-livre-blanc-octo.html

Bonne lecture,

Les auteurs :

Arnaud « Maven » Héritier,
Benoît « Hitman » Lafontaine,
Guillaume « Plouf » Duquesnay,
Philippe « No Stress » Mougin.

Maven deploy avec 2 profiles

On a souvent besoin de plusieurs profils lors du développement d’une application. Prenons par exemple une application web qui a besoin de 2 profils :
- un profil auth, où l’authentification est activée. C’est la version de production
- un profil noauth, où l’authentification est désactivée. C’est la version par défaut, utile pour les développeurs.

L’objectif de cet article est d’illustrer comment gérer cette situation avec Maven.
(Lire la suite…)