French only for now


Vidéos des projets internes 2014

Comme les années précédentes (2009, 2010, 2011, 2012, 2013), les vidéos YouTube des projets internes de la promotion 2014-2015 des étudiants de la LPCSD (licence professionnelle Conception des Solutions Décisionnelles) du département STID (STatistique et Informatique Décisionnelle) de l'IUT (Institut Universitaire de Technologie) de Vannes de l'UBS (Université de Bretagne-Sud) sont en ligne.

Voici une vidéos populaire :

Read more...

Subversion, Sonar, Jenkins, PHP et SAS BI Server

Voici, pour les projets internes de la Licence Professionnelle Conception des Solutions Décisionnelles, un exemple de configuration d'un workspace Eclipse pour gérér la qualté du portail PHP à l'aide d'un serveur Jenkins pour l'intégration continue et d'un serveur SonarQube pour l'analyse de la qualité du code.

Read more...

AnkhSVN - Client Subversion pour Visual Studio

Sur le serveur UBSRDS3, j'ai installé le plugin open-source SVN pour MicroSoft Visual Studio 2010 AnkhSVN - Subversion Support for Visual Studio. Un exemple de configuration d'un projet Visual Studio est ensuite donné.

Read more...

Vidéos des projets 2014 SAP BusinessObjects XI

Comme les années précédentes (2008, 2009, 2010, 2011, 2012, 2013) les vidéos YouTube des projets BusinessObjects de la promotion 2014-2015 des étudiants en formation initiale de la LPCSD (licence professionnelle Conception des Solutions Décisionnelles) du département STID (STatistique et Informatique Décisionnelle) de l'IUT (Institut Universitaire de Technologie) de Vannes de l'UBS (Université de Bretagne-Sud) sont en ligne.

Voici une vidéo populaire :

Read more...

Roles XP et SCRUM pour le développement agile

Ce billet traite des rôles pour les développement agiles et des outils informatiques utilisables pour les projets agiles. Notamment, voici quelques rôles pour les développements agiles :

A chacun de ces rôles, sont dévolues des pratiques XP parmi treize, recommandations concrètes, chacune bénéfique en elle-même, sur la façon de conduire ou de réaliser un projet ; il est conseillé de les maitriser d'abord en les appliquant consciencieusement, puis de les adapter.

  1. Test unitaires (Unit Test, test codé par les programmeurs dans le même langage que celui utilisé pour le reste de l'application. Chaque classe du logiciel en développement possède un test unitaire correspondant qui exerce une ou plusieurs instances de la classe testée et en vérifie automatiquement le comportement au moyen d'assertions)
  2. Test de recettes (Acceptance Test, test permettant d'assurer de manière automatique et contractuelle la conformité du logiciel avec les exigences du client)
  3. Planification itérative (planning game, consiste à établir, au terme d'une séance de planification, un plan de livraison (release) et/ou un plan d'itération (sprint) comprenant un certain nombre de scénarios client. Ces plans sont revus à chaque itérations)
  4. Client sur site
  5. Programmation en binôme (pair programming, association de deux programmeurs sur une même machine pour l'écriture de code. Les binômes sont renouvelés régulièrement)
  6. Intégration continue (Continuous Integration, démarche consistant à intégrer aussi fréquemment que possible (au moins une fois par jour) les développements unitaires sous forme d'une application globale, prête au déploiement et susceptible de passer les tests de recette)
  7. Remaniement (refactoring, consiste à revenir sur le code en permanence pour le rendre plus simple et plus clair et faciliter ainsi l'ajout de nouveau code : cela permet de faire émerger la conception de manière progressive tout au long du développement)
  8. Livraisons fréquentes (Release, fourniture fréquente au client, pour utilisation immédiate d'une version du logiciel en état opérationnel et vérifiant tous les tests de recette exigés pour cette version)
  9. Conception simple (Simple Design, étape consistant à modéliser (ou plus généralement réfléchir à) ce qui doit être codé. Dans le cadre XP, conception et programmation sont indissociables : la conception ne produit par ailleurs pas nécessairement un autre "document" que le code source lui-même)
  10. Métaphore (Metaphor, c'est la description de haut niveau, en termes imagées et compréhensibles par toute l'équipe, non développeurs compris, de l'architecture technique et fonctionnelle du projet)
  11. Responsabilité collective du code
  12. Règles de codage
  13. Rythme durable

Read more...

SourceSup, Subversion, Maven, Jenkins et Sonar

Voici quelques infos sur SourceSup et le projet WA11Y - Accessibilité numérique du Web

Le projet vise à développer des composants permettant d'aider à la recette d'accessibilité numérique du web, selon le référentiel RGAA v2.2 voire 3.0 qui doit sortir bientôt.

Ce référentiel (cf http://www.references.modernisation.gouv.fr/rgaa-accessibilite) est dérivé du référentiel WCAG 2.0 du W3C (http://www.w3.org/TR/WCAG20/). Le RGAA présente 61 critères regroupés en 4 "principes", avec 3 niveaux d'exigence : A, AA et AAA. Chaque critère donne lieu à un certain nombre de tests proposés par le référentiel. Ces tests sont regroupés par thèmes (images, formulaires, tableaux, liens, multimédia, etc).

Pour le niveau A, nous avons 129 tests (mais certains thèmes, comme le multimedia, ne sont pas prioritaires). Les composants doivent mettre en œuvre certains de ces tests (prioritairement images, liens, tableaux, titres, formulaires).

Les promotions des années 2010-2011, 2011-2012, 2012-2013 et 2013-2014 se sont focalisées sur la production d'un logiciel de recette en accessibilité web qui effectue une série de tests propre à un référentiel.

La promotion 2014-2015 se focalise dans un logiciel de génération d'un site statique web, base de connaissance pour le programmeur afin de comprendre comment les tests se font et donc savoir comment corriger son application web pour qu'elle passe un test particulier d'un certain référentiel. L'objectif prioritaire était la génération automatique des pages d'accueil, référentiel et critères. Les objectifs secondaires sont :

  • Les éléments sont modifiables depuis un fichier XML.
  • Les éléments hors critères sont aussi modifiables depuis le programme. Les critères et tests sont modifiables depuis le programme.
  • Le site généré possède un nombre d'élément minimal, et est conforme aux bonnes pratiques d'accessibilité (html, css, javascript). Par minimal, on entend pas d'élément non utilisé dans ces fichiers.

Read more...

TDD, tests unitaires avec JUnit, EasyMock, Mockito et Eclipse

Le Test Driven Development (TDD) ou en français Développement Dirigé par les Tests (DDT) est une technique de développement de logiciel qui préconise d'écrire les tests unitaires avant d'écrire le code source d'un logiciel.

Le cycle préconisé par TDD comporte cinq étapes :

  1. écrire un premier test ;
  2. vérifier qu'il échoue (car le code qu'il teste n'existe pas), afin de vérifier que le test est valide ;
  3. écrire juste le code suffisant pour passer le test ;
  4. vérifier que le test passe ;
  5. puis refactoriser le code, c'est-à-dire l'améliorer tout en gardant les mêmes fonctionnalités.

Lors du refactoring, on peut s'aider de plugins Eclipse que sont Elipse-CS (CheckStyle), FindBugs, ECL-Emma basé sur la bibliothèque JaCoCo, pmd4eclipse et SonarQube qui contribuent à améliorer le code en traquant les "mauvaises pratiques".

En plus de la même distribution Eclipse munie de ces plugins, tous développeurs membre d'une équipe doit partager certains réglages du workspace. Read more...

Eclipse et Maven

Maven est un outil java de build :

  • Gestion de dépendances ;
  • Construction multi-module ;
  • Orienté plugin et évolutif (des plugin pour modifier le cycle de vie et de compilation, des plugins pour configurer un eclipse).

Plus besoin de créer un script pour construire votre application.

Le fichier POM représente le modèle du projet et décrit :

  • Le nom de projet ;
  • le type d'artefact ;
  • Structure du projet ;
  • Dépendances du projet.

Dans le cycle de vie ’par défaut’ d’un projet Maven, les phases les plus utilisées sont :

  • validate : vérifie les prérequis d’un projet maven
  • compile : compilation du code source
  • test : lancement des tests unitaires
  • package : assemble le code compilé en un livrable
  • install : partage le livrable pour d’autres projets sur le même ordinateur
  • deploy : publie le livrable pour d’autres projets dans un repository distant

Les phases s’exécutent de façon séquentielle de façon à ce qu’une phase dépende de la phase précédente.

m2eclipse édité par Sonatype permet le support de Maven dans l’IDE eclipse. Renommé en m2e, il est désormais géré par la fondation eclipse. Read more...

Gestion de son ordinateur personnel win7 x64

Voici une compilation d'utilitaires open-source ou gratuits pour les particuliers. Read more...

Installation de TeamLab

TeamLab est un bureau multifonctionnel dans le nuage développé par la société Ascensio System Ltd. Il inclut un jeu d'outils de collaboration et de gestion des documents, des projets et des relations avec les clients (GRC) complété par l'agenda et l'agrégateur de mail. TeamLab est écrit en ASP.NET. La plate-forme TeamLab est disponible en tant que service (SaaS) et en tant que logiciel open-source (code source et distribution binaire disponible). A la version 6.5 du code source teamlab.v6.5.46462.src.zip, correspond une distribution binaire allégée TeamLabServerExpress.exe (SQLite et un serveur web adhoc/TeamLab embarqués) et une version complète TeamLabServer.exe (MySQL, Microsft IIS étant des pré-requis) en plus du framework .Net 3.5. A la version 7.5.1 du code source TeamLabOfficeServer-CE-v7.5.1.zip, disponible depuis février 2014 , correspond la version complète TeamLabOfficeServer-CE-v7.5.1.exe (MySQL, Microsoft IIS étant des pré-requis) en plus du framework .Net 4.5.

Read more...

Recently Written

RSS Feed