Tuxitecte

Smile : Séminaire Opensource GED sur Paris

Pour information au cours de mes recherches :

Si vous êtes sur Paris le 6 décembre 2007 et que vous ne savez pas trop quoi faire, vous pouvez aller à un séminaire "GED-OpenSource" organisé par la société de services en informatique Smile.

Pour vous inscrire à l'évènement : http://www.smile.fr/actualites/nos-evenements/ged-decembre-2007

Pour information, La Société Smile organise et fournit une très bonne communication sur l'ensemble du périmètre GED-Open Source. On peut retrouver plusieurs points d'entrée comme :
Pour les participants, un retour de la présentation serait la bienvenue pour l'habitant du Sud de la France que je suis!
Bonne Visite en tout cas!
Lire la suite...

Annonce : Alfresco 2.9

Annonce (qui date de quelques jours) de la naissance de la prochaine version de la solution c'est à dire la 2.9 en version "community"

On peut retrouver des informations sur cette nouvelle version
  • Sur le forum anglophone ici
  • Sur le forum francophone ici
Et Finalement pour récupérer les installations :
  • Sur Sourceforge ici
Il est à noter qu'il s'agit d'une version "dev" et non final. Néanmoins cela donne pas mal de pistes et d'idées sur les futures fonctionnalités d'Alfresco et sur son orientation tournée résolument vers le 2.0.

Impressionant quand même...
Lire la suite...

ECM : Définitions et Débats (4)

Alors l'ECM ?
Comme on a pu le voir dans les définitions précédentes, on s'aperçoit qu'il n'y a pas de consensus sur la définition réelle de l'ECM.

Alors l'ECM est
  1. une nouvelle marque de fabrique du service marketing ou un discours des commerciaux ?
  2. Ou s'agit il réellement d'une nouvelle problématique et donc d'une nouvelle approche de la gestion de contenu?
Pour ma part, il n'y a pas LA VERITE! L'ECM est effectivement un mélange des 2 genres...
  • D'une part il s'agit d'un joli coup commercial de la part des grands éditeurs qui sont capables de mettre en avant un ensemble d'outils, de système, de services... dans un tout "cohérent".
  • D'autre part il s'agit d'une réalité car comme vu ici, il est nécessaire dans notre société de l'information et de la communication de pouvoir gérer/de manager les contenus, les informations, les données.
Donc comment définir l'ECM finalement ?
En fait bizarrement j'ai l'impression que l'on ne peut pas... L'ECM est quelque chose de vraiment très (trop ?) large fonctionnellement et qui s'incruste dans l'ensemble du système d'information afin de gérer les données essentiellement non structurées ou semi structurées.

L'ECM est (selon moi) un terme "parapluie" qui comprend en fait des briques déjà existantes comme le BPM, WCM, RM etc.... Il s'agit de l'agglomération, de l'association ou de la convergence d'un ensemble de briques de haut niveau en un tout cohérent afin de gérer le cycle de vie de l'informations (non structurés ou semi-structurés) qu'une entreprise possède.

Pour résumé quand on parle d'ECM :
  • en problématique, on parle de la gestion (donc du management, des bonnes pratiques etc...) du cycle de vie de l'informations au sein des entreprises.
  • en fonctionnel, on parle du management, des bonnes pratiques, de la gestion, des respects de normes... de l'ensemble des documents d'une entreprise.
  • en technologie, on parle de l'association de briques technologiques déjà existantes (BPM, WCM, RM, IM...) en un tout commun.
  • en architecture, on parle d'un ensemble de services (versionning, recherche, workflow, sécurité, stockage...).
En final je dirais avant tout ceci :

L'ECM est avant tout ce que l'on veut qu'il soit.

Il s'agit d'un concept "récent" avant tout qui n'est pas encore standardisé (loin de là) dans l'ensemble de ces composants constitutifs et dans son implémentation.

En attendant cette éventualité, définissons ensemble (2 personnes au minimum :o) ) ce que l'on appelle ECM afin d'éviter les malentendus.

Dans le prochain article, je présenterai les divergences qu'il existe entre l'approche ECM Solution Commercial et ECM Solution OpenSource de mon point de vue.
Lire la suite...

Facebook : Les Groupes... Ecm... Open Source...


Au cours de mes voyages sur les routes de Facebook (que j'emprunte depuis un petit temps), j'ai rencontré quelques groupes qui peuvent interesser les éventuels lecteurs de mon blog.

Organisation :

Solution ECM
Have fun!
Lire la suite...

Alfresco : Tutoriaux by ECMArchitect

Dans le monde des blogs traitant l'ECM open-source, on peut en citer un en particulier (qui vaut le détour pour la qualité de ces informations) ECMArchitect.com. Ce blog concerne la solution en particulier la solution Alfresco.
L'auteur de ce blog : Jeff Potts est "Principle Architect" à Optaros et possède plus de 15 ans d'expérience dans le monde de la "gestion de contenus".

Sur ce site (En Anglais bien sur ;o) ), on peut retrouver un ensemble d'articles et de tutoriaux sur Alfresco.

Voici un listing des liens vers les posts concernant des tutoriaux Alfresco :

Enjoy!
Lire la suite...

Alfresco : Plus de site ?

Petite anecdote de ce matin...
En voulant me connecter sur le site d'Alfresco ou Alfresco.org voici les résultats obtenus :



Alfresco n'aurait il plus d'hébergeur ? En effet en regardant les e-mails de ce matin on constate que l'hébergeur a des problèmes.

Pour aller sur le site d'Alfresco.com, il faut suivre ce lien : http://88.208.218.102/
Pour consulter le Forum : http://217.174.252.22/

Par contre le wiki n'a pas l'air accessible.

+++++++ UPDATE ++++++++
Voir le commentaire de l'administrateur du Forum Alfresco France ICI pour plus d'informations.
Vive la réactivité du monde open source.... ;op
+++++++ UPDATE ++++++++
Lire la suite...

Nuxeo : Intégration des widgets


Une nouvelle webcast sur Nuxeo Theme a été publié aujourd'hui. On peut la retrouver ici. Cette webcast montre la capacité de Nuxeo a intégrer des widgets à la "Netvibes". Assez surprenant...

Pour information : L'un des grands avantages de Nuxeo 5 par rapport aux autres solutions concurrentes est sa capacité à personnaliser l'interface graphique directement dans l'application. Reprenant une partie des bonnes pratiques acquises avec Zope-CPS et son fameux CPS-Skins, on constate avec plaisir cette même facilité avec Nuxeo 5.

Nuxeo "Theme" ou "Tags" a été construit par un membre de la communauté OpenSource Nuxeo : Jean-Marc Orliaguet. Il a effectué de nombreuses webcasts retraçant ainsi l'évolution et l'utilisation de ce gestionnaire de thème.

On peut retrouver l'ensemble des webcasts à l'adresse suivante : http://www.medic.chalmers.se/~jmo/nuxeo5/

Mais je vous propose quelque morceaux choisis :
  1. Nuxeo 5 : Webcast Widgets à la "Netvibes"
  2. Nuxeo 5 : Webcast Gestion des styles
  3. Nuxeo 5 : Webcast Gestion des styles (2)
  4. Nuxeo 5 : Webcast Gestion des éléments et des thèmes
Parfois une bonne présentation vidéo est bien meilleure qu'un long discour!
Lire la suite...

Alfresco : FaceBook


L'annonce a été faite aujourd'hui sur le site Internet d'Alfresco :
Alfresco Launches First Enterprise Application for Facebook

Alfresco intègre désormais une composante "Social Network" et pas des moindres avec Facebook.
Après le wiki et le blog voici une nouvelle brique "open source" à la plateforme Alfresco démontrant une fois de plus l'ouverture de la solution aux produits extérieures.

Sur le wiki Alfresco, on peut trouver les principaux composants intégrable à Facebook comme :
  • La liste de Mes documents (visualisation et création)
  • Le Partage de documents avec ces amis. Ils peuvent être averti des modifications et upload de documents via notifications par les feeds.
  • Visualisation des documents de ces amis via une interface de reporting

Une petite voix me dit au creu de l'oreille que l'opération est très bien mené. réseaux social est encore plus fort que le phénomène open-source (même s'il s'agit d'un dérivéLe phénomène selon moi) et par conséquence l'adoption d'Alfresco risque d'être plus important et plus rapide.

Alfresco n'est il pas entrain de faire la même chose qu'IBM avec Eclipse ? Rendre son produit ouvert aux autres (open-source) et le rendre le plus simple possible en y intégrant les derniers composants à la mode afin de construire le mythe de l'"entreprise 2.0"

Pour information :
Le groupe Alfresco User sur Facebook
Article Le Monde Informatique
Article 01net
Lire la suite...

ECM : Définitions et Débats (3)

Une définition pour tous les contôler... ou comment définir l'ECM...
Dans le monde des acteurs de l'ECM plusieurs définitions existent. Quelques extraits choisis :

Nuxeo :
L'ECM (pour Enterprise Content Management) désigne les solutions permettant de gérer d'une manière transversale l'ensemble des besoins d'une organisation en matière de gestion de documents et de processus. On peut également définir l'ECM comme la convergence appropriée de technologies distinctes aux enjeux distincts: la GED, la gestion de contenu web, le travail collaboratif, le workflow.
AIIM :
Enterprise Content Management (ECM) is the technologies used to capture, manage, store, preserve, and deliver content and documents related to organizational processes. ECM tools and strategies allow the management of an organization's unstructured information, wherever that information exists.
Gartner :

ECM has emerged after years of market consolidation. It is a strategic framework and technical architecture that supports all content types and formats over the entire content life cycle. ECM suites consist of applications that interoperate, but that can be used and sold separately. Gartner defines today's ECM suites as encompassing the following core components:

  • Document Management for check-in/check-out, version control, security and library services for business documents.
  • Document Imaging for capturing, transforming and managing paper documents.
  • Records Management for long-term archiving, automation of retention and compliance policies, and ensuring legal, regulatory and industry compliance.
  • Workflow for supporting business processes, routing content, assigning work tasks and states, and creating audit trails.
  • Web Content Management for automating the Webmaster function and managing dynamic content and user interaction.
  • Document-Centric Collaboration for document sharing and supporting project teams.
Forrester :
Enterprise content management (ECM) has grown into a major software category through the consolidation of different point solutions, including document management, Web content management, document imaging, records management, and digital asset management — and a close alignment with collaboration and business process management. But the software category represents only a portion of what ECM means to an enterprise.

In its totality, ECM must be a strategy for: 1) how to manage all unstructured information — images, Web content, rich media assets, and corporate records; 2) how to integrate the many content repositories within an enterprise; and 3) how to put content to use — by making it contextual within business processes and user experiences.

By doing this, ECM technologies and strategies help information and knowledge management professionals as well as business process and applications professionals take ownership and manage the company's unstructured information to reduce risk, boost productivity, and improve customer experiences.
BetterECM :
ECM is a management practice that provides for governance of an information management environment toward the goal of improving compliance, information reuse and sharing, and operational performance. ECM is a structured approach employing methods, policies, metrics, management practices and software tools to manage the lifecycle of information and to continuously optimize an organization’s collections of information and information management processes.

Uniformisation de l'information? Bien sûr, et même utilisation de cette uniformisation comme arme stratégique

Pour en savoir plus :
Redefining Enterprise Content Management
What is a good definition of ECM?
Lire la suite...

ECM : Définitions et Débats (2)

A la base de tout : Le cycle de vie de l'information
En fait l'ECM est la réponse à la problématique de la gestion du cycle de vie de l'information (et dans notre cas l'information sous format électronique). En effet une information se crée, se modifie, évolue, change d'état, devient légale, est archivée, est recherchée, devient obsoléte, est supprimée... La force de l'ECM, tel qu'il est définit communément aujourd'hui, est bien entendu de comprendre et ainsi de gérer cette information tout au long de son cycle de vie.

Ainsi un ECM doit avoir une solution (c'est à dire une réponse à une question) pour :
  • Capturer/Créer/Intégrer/Saisir
  • Gérer/Traiter/Manipuler/Modifier
  • Stocker/Sauvegarder/Préserver/Conserver
  • Distribuer/Publier
DE L'INFORMATIONS!

Simple n'est il pas ? En tout cas à l'écrit... Mais appliqué au contexte de l'entreprise... ceci est une autre affaire...

Les gagnants seront ceux qui restructurent la manière dont l'information circule dans leur entreprise. Bill Gates
Lire la suite...

ECM : Définitions et Débats (1)

Tout d'abord un constat

On comprend mieux pourquoi l'ECM est important avec cette présentation de l'AIIM ou celle ci (présentation du blog de l'AIIM) ou encore ces quelques constats chiffrés pris au hasard.
  • 80% du contenu des entreprises est non structurée
  • 90 % des informations en entreprise est sous format électronique.
  • Doublement du nombre d’informations tous les 16 mois. (Tendance à se rapprocher à la Loi de Moore)
  • Une grande majorité de ces informations sont généralement dispersées à travers les postes de travail dans des répertoires locaux. Il y a alors création d’îlots d’informations.
  • L'Apparition et le développement croissant des contenus multimédias (images, voix, vidéo, « webinars »…) obligent les entreprises à adopter de nouvelles méthodes pour stocker, cataloguer, indexer et retrouver ces contenus.
  • Plus de 600 milliards d'e-mail sont échangées chaque année.
  • 200 millions de personnes appartiennent à des réseaux sociaux.
Maintenant le challenge si vous l'acceptez est de retrouver l'information pertinente dont vous avez besoin au sein de votre entreprise. Comment obtenir la connaissance ? (Non Google ne peut pas tout faire! ;o) )
Il y a deux sortes de connaissances : connaître le sujet soi-même ou savoir où nous pourrons trouver l'information. Samuel Johnson

PS : Existe t il encore un doute sur l'utilité de posséder un système de gestion de contenus ?
Lire la suite...

ECM : Définitions et Débats

Cela fait maintenant quelque mois que je me penche sur le sujet ECM et je dois dire qu'il n'est pas évident de trouver une définition claire et nette qui mette tout le monde d'accord. C'est un peu comme le Web2.0! Chaque personne possède sa propre définition.

Donc pourquoi pas faire ma propre définition ?
Il vaut mieux faire l'information que la recevoir; il vaut mieux être acteur que critique. Churchill

Simple n'est il pas ?

Pour cela je vais donc consacrer plusieurs posts sur la problématique ECM et essayer de les regrouper par la suite dans un seul document.

NB : Toutes les bonnes volontés pour m'aider sur le sujet sont les bienvenues!

Mais d'abord explorons un peu le phénomène ECM.

Au commencement l'ECM est avant tout la Gestion de Contenus d'Entreprise (traduction littérale par trop mauvaise) ! Comme dit dans un précédent post (posté il y a quelque temps dans un précédent blog...) il s'agit de gérer l'information (Toute l'information !! NON! Mais...) de l'entreprise. Et comme je l'avais remarqué à l'époque il existe une étrange similitude avec la définition d'un Système d'Information.

Affaire à suivre...

Lire la suite...

Alfresco : Roadmap

Après la conférence Alfresco à New York et avant celle de Paris, voici encore des nouvelles prometteuses sur les futures fonctionnalités d'Alfresco dans sa version 2.9 et 3.0.
On peut retrouver les informations sur le lien suivant : Roadmap

On constate ainsi le virage d'Alfresco vers le monde de "l'Entreprise 2.0" et des"réseaux sociaux". Pouvoir intégrer et gérer l'information de manière simple dans un contexte de plus en plus communiquant, voici l'un des challenge que tente de surmonter Alfresco!

Alfresco deviendrait t il le premier ECM Open Source Social Ready ? ;o)
Lire la suite...

La Recherche : Tout un Art!

Dans le monde du web, on peut tout trouver! Tout ?? NON!!!! Enfin presque…
En fait, il est vrai que l’on peut trouver l’information qui nous intéresse. Mais ce n’est pas là la question. La question réelle est de savoir en combien de temps on va la trouver ? On est tous amené à faire de nombreuses recherches sur des technologies particulières… Et l’une des problématiques est de pouvoir retrouver une information pertinente le plus rapidement possible.

Prenons un exemple, je cherche actuellement une introduction ou un cours sur une technologie particulière les JSF (Java Server Faces). Maintenant explorons ensemble les différentes méthodes de recherches que l’on peut employer.

La méthode Brute
Le premier réflexe est de taper “JSF” dans un moteur de recherche tel que Google. Et là on peut tomber sur tout et n’importe quoi!! Résultat : un total d’environ 7 990 000 pour JSF. Je pense qu’il est possible de faire mieux!

La méthode POWER Brute
Il existe des moteurs de recherche qui effectuent des recherches en demandant à d’autres moteurs de recherches d’effectuer la recherche. Résultat des courses, on peut avoir encore plus de mal!

La méthode brute mais réfléchie
Une des astuces pour avoir une information plus pertinente et de taper plusieurs autres termes tels que “cours”, “Java”, “J2EE”, “tutoriel”. Déjà là on est sur d’avoir une information plus pertinente. Résultat sur Google : un total d’environ 105 000 pour JSF java tutoriel cours Maintenant qu’est ce qui nous dit que ces liens que nous avons sont les plus pertinents ? On remarque qu’une grande partie sont des liens vers des forums généralistes entre autre… Ce n’est pas forcèment ce que l’on recherche mais on peut trouver déjà quelques belles perles.

La méthode détournée ou comment trouver l’information par les formats
Je tente actuellement de chercher des cours or un cours de prof par exemple peut être fait sous format Word (.doc) et être distribué sous format PDF (.pdf). Donc on fait une recherche brute avec un filtre sur les extensions. Sur google on tape -filetype:pdf par exemple. Parfois (malheureusement pas tout le temps) il arrive que l’on trouve de véritables trésors! Mais malheureusement il faut télécharger ou prévisualiser l’ensemble des fichiers ce qui peut être un peu long si on ne posséde pas une connexion rapide!

La méthode “Do you speak english ?”
Do you speak english ? En effet étendre une recherche à l’anglais surtout dans les technologies informatiques ca rend service! Dans ce cas là, une méthode brute ou réfléchie permet d’avoir une documentation de référence. Le seul “couac”… Pratiquer couramment l’anglais! Car les termes techniques sont parfois très barbares! Et les translateurs ou traducteurs ne sont pas forcèmment très bon…

La méthode “Marque-Page” ou “Favoris”
Tout le monde posséde des liens vers des sites de références… Dans le monde informatique ce n’est pas ce qui manque! Microsoft, Sun, 01net, Le monde informatique, ZDnet, JavaWorld, InfoQ, Clubic, Silicon… Or chacun de ces sites possèdent généralement un moteur de recherches (google????). Ainsi en tapant JSF sur un site comme “Sun” ou “Journaldunet” je pense trouver de l’informations pertinentes…

La méthode "Web Social"
Une nouvelle méthode est d’aller sur les sites de collaboration, d’échanges et de partage tel que Wikipedia, del.icio.us, technorati ou digg et d’effectuer une recherche brute. Et quasiement tout le temps, on peut avoir des liens de références possédant l’information pertinente que l’on recherche. Et oui c’est ça le social aussi ! Si en plus on rajoute le fait que l'on peut partager son information et la noter (par note ou tags) et bien l'information devient alors vraiment très pertinente.

La méthode "Web Social étendue"
Si vous avez lu mon billet sur OpenSearch, on peut imaginer bientôt un aggrégateur de recherche sur les sites de références. Ainsi en choisissant des profils de recherches qui interrogeront des sites de références et de web social avec recoupage des liens, on pourra ainsi avoir une information pertinente à coup sur! Vivement demain…

Je crois avoir fait un petit tour sur les méthodes que j’emploie ou employé, je peux donc présenter mon palmarès des méthodes de recherche. (Cela n’engage que moi bien évidemment)

  • 1er : Web Social
  • 1er : Web Social étendue
  • 3e : Méthode brute mais réflechie in english
  • 4e : Méthode par formats
  • 4e : Favoris
  • 6e : Web invisible Web invisible ? Mais j’en ai pas parlé ? En effet…
  • 7e : Méthode brute
Lire la suite...

AIIM : Petite présentation


Encore une découverte!! (enfin presque)

Il s'agit d'une présentation de l'AIIM (anciennement Association for Image and Information Managment) mais qui porte maintenant le nom d'ECM Association.
Son site Internet est le suivant : www.aiim.org

L'AIIM pour résumé est une association pour la promotion de l'utilisation de l'ECM dans le monde de l'économie en général (Industrie + Services...). Il regroupe en son sein pratiquement l'ensemble des grands acteurs économique du monde de l'ECM aussi bien propriétaire comme EMC, IBM... qu'open source comme Alfresco. Il s'agit un peu de la référence dans le monde de l'ECM un peu comme Gartner l'est pour le monde des études informatique et CMSWatch pour le monde de la gestion de contenu.

L'association publie chaque année des posters "éducatif" pour la compréhension et la promotion de l'ECM. Il publie aussi de nombreux documents sur les bonnes pratiques ainsi que des webinars sur des problématiques données. L'AIIM "offre" (payante bien sur!) aussi des cours et des certifications.

Maintenant la présentation :
Ps : Oxymoron = Expression qui se contredit toute seule


SlideShare


Sympathique n'est il pas ?
Lire la suite...

Alfresco : Quelques news


Alfresco a organisé le 7 novembre dernier une conférence à New York. Alfresco North American Community Conference 2007 a été la source de nombreuses informations que l'on peut retrouver dans la blogosphère :
  • 29 000 déploiements/installation d'Alfresco à travers le monde (source)
  • Nouveau benchmark d'Alfresco (source) : 100 millions d'objets traités (objectif d'un Milliard d'objets).
  • La prochaine version d'Alfresco implémentera des composants OpenSocial. (source)
  • Intégration avec Joomla (CMS), WordPress (Blog), et MediaWiki (Wiki). (source)
  • Et encore beaucoup de choses...
Vivement les prochaines versions !
Lire la suite...

Alfresco 2 / Nuxeo 5 : Comparatif Open Source avec QSOS et OSMM


Dans le monde de l'open source, il est utile de pouvoir comparer 2 solutions qui présentent un périmètre fonctionnel identique cela afin de choisir la solution qui conviendra le mieu à l'environnement existant.

Plusieurs méthodologies existent. (cf : méthode de qualification)

Pour illustrer un peu ces 2 approches, voici les liens vers la qualificiation OSMM et QSOS de 2 solutions open source d'ECM : Alfresco et Nuxeo.

Méthodologie QSOS

Méthodologie OSMM

  • Alfresco : Fiche (format .ppt)
  • Nuxeo : Fiche (format.ppt)

Méthodologie EOS

Pour retrouver plus de fiches d'évaluations :

Pour faire votre propre opinion :
Lire la suite...

jBoss Seam 2.0


Dans le monde ECM et de Nuxeo en particulier, j'ai découvert un framework qui m'a assez impressioné par sa puissance et par simplicité d'utilisation. Il s'agit du framework Jboss Seam.

Intégré dans la solution Nuxeo 5, ce framework permet de faire la liaison entre différents composants essentielles dans une architecture web J2EE "up to date" : EJB3, JSF, AJAX, Services Web et j'en passe!

Tout ca pour annoncer la nouvelle monture 2.0 (des chiffres à la mode!) qui vient juste d'être lancé par Jboss!

On peut noter en nouveauté le découplage avec JSF (et la future possibilité d'intégration avec GWT) et le support de Maven dans son architecture. Cela semble vraiment être une belle évolution! Encore un exemple de la puissance de l'opensource! ;)

Pour plus d'informations

Lire la suite...

Webcast : Alfresco


Voici la première vidéo d'une série sur les différentes solutions ECM Opensource qu'il existe sur le marché. Il s'agit ici de la solution Alfresco. Cette vidéo présente les principales caractéristiques de l'environnement ECM et de l'implémentation adoptée à travers la solution.



On peut aussi télécharger la vidéo par le lien suivant sur le site d'Alfresco: ici

Lire la suite...

REST vs W-*


Comme tout bon internaute que je suis, et comme tout bon tech’ informaticien, il m’arrive de lire à droite et à gauche des informations sur les technologies. Mes dernières lectures m’ont fait découvrir les principes d’une “architecture” REST contre les architectures basées sur les technologies des services Web.

Pour les personnes qui s’interesse un peu, j’ai découvert un article intéressant sur “l’architecture REST” et les spécification WS-* . Il s’agit d’un entretien avec un “ponte” des technologies des services travaillant chez IBM research dénommé : Sanjiva Weerawarana.

Vous pouvez consulter l’article ici. Très complet et très riche en informations (un peu trop pour moi parfois ) cela reste néanmoins très accessible pour celui ou celle qui s’interesse un peu.

En tout cas je pense que je vais m’interesser de plus près à ces nouveaux principes… REST (que je connais vraiment pas beaucoup) et WS-* (que je connais déjà un peu plus).
Si vous voulez plus d’information, je vous conseille de revenir prochainement sur ce blog quand j’aurai fais mes petites recherches.

Lire la suite...

Maven


Maven (Maven 2 pour la dernière version) est un projet de la fondation Apache.
Il s’agit d’un outil de gestion conçut pour suivre et faciliter l’évolution d’un projet java. Pour atteindre cet objectif, cet outil offre des fonctionnalités pour :
  • La Construction, compilation, assemblage
  • La génération de documentation
  • L’édition de rapports (qualité du projet…
  • La gestion des sources et des dépendances
  • Le déploiement
Ainsi il est possible de fournir des guides sur les meilleures pratiques de développement permettant de garantir une qualité projet améliorée. Maven se distingue des outils comme Ant par son approche déclarative basée sur le cycle de vie et non sur l’ensemble des tâches à exécuter.

Le POM
Le POM (Projet Object Model) est au centre d’un projet Maven. Il s’agit d’une façon de formaliser et de décrire déclarativement un projet java. Ainsi on peut retrouver les informations comme :

l’organisation du projet (nom du projet, contributeurs, license, organisation, mailling lists
l’organisation des sources (dépendances, répertoire sources, tests…

Le POM est un fichier sous format XML placé dans le répertoire racine du projet Java.

Archetype et structure de répertoire
Un archetype est un modèle qui sert à créer des objets du même type. Ainsi dans une entreprise, il est possible de formaliser les meilleures pratiques à travers des archetypes. Il permet un gain de temps important et permet de respecter des conventions.
En outre, Maven possède une structure de répertoire standardisée par défaut. Un répertoire pour les sources, un pour les ressources, les librairies, les tests unitaires…

Cycle de vie de projet
Comme dis précédemment, Maven 2 se repose essentiellement sur les phases d’un projet. Ainsi suivant chaque phase, il est possible de lancer une commande comme par exemple la compilation des sources du projet.
Les principales phases sont :
  • Génération des sources
  • Compilation des sources
  • Compilation des tests
  • Lancement des tests
  • Package du projet (format JAR, WAR…
  • Lancement des tests dans un environnement d’intégration
  • Installation du projet localement
  • Installation du projet dans l’environnement de production

Chaque phase est défini par un ensemble de plug-ins pour effectuer le travail demandé. Les plug-ins ou artefacts sont généralement des fichiers .jar.

Gestion des librairies et des dépendances
Une dépendances est une référence vers un artefact spécifique contenu dans un repository (Il s’agit d’un répertoire local ou distant contenant un ensemble d’artefact). Ainsi dans un projet, on a besoin de créer des liens avec des fichiers JAR (hibernate, struts… dans des versions données. Or comme chaque développeur le sait, il est parfois difficile de faire marcher une librairie car il manque toujours un fichier .jar!! C’est là que Maven rentre en jeu d’une manière géniale. Il suffit de lui dire quelle librairie on a besoin et il se chargera de récupérer automatiquement tous les fichiers nécessaires pour faire fonctionner cette version d’Hibernate! Plus précisémment, Maven cherchera dans les repository défini dans le POM pour récupérer l’ensemble des fichiers nécessaires. Gain de temps non négligeable!
De plus Maven offre la possibilité de gérer la porté des dépendances. En effet dans un produit en production, il n’est pas forcément utile de mettre les bibliotèques nécessaires aux tests unitaires ou à la gestion mémoire. Ainsi à chaque phase du projet, les dépendances possédent une portée.

  • compile: Une dépendance de portée compile est disponible dans toutes les phases. C’est la valeur par défaut.
  • provided: Une dépendance de portée provided est utilisée pour compiler l’application, mais ne sera pas déployée. Vous utiliserez cette portée quand vous attendez du JDK ou du serveur d’application qu’il vous mette le JAR à disposition. L’API servlet est un bon exemple.
  • runtime: Les dépendances de portées runtime ne sont pas nécessaires pour la compilation, uniquement pour l’exécution, comme les drivers JDBC (Java Database Connectivity).
  • test: Les dépendances de portées test sont uniquement nécessaires pour compiler et exécuter les tests (par exemple Junit).

Communication
Maven permet la génération automatique d’un site Web. Il intégre un certains nombre de rappport qui peuvent être obtenu individuellement. On distingue deux types de rapport.
Les rapports de bases comme les dépendances, la couverture des tests, liste des membres et organisation de projet
Les rapports optionnels dépendant d’une application tierce comme checkstyle, PMD ou Continuum.

Cette partie permet d’améliorer la communication interne au sein du projet, de suivre l’évolution du projet et de communiquer avec le client sur l’avancement.

On peut dire que Maven2 est devenu un outil indispensable dans tout projet java récent. Une standardisation poussée et une intégration des bonnes pratiques donne à Maven une importance majeure dans l’industrialisation du processus de développement. Maven (Maven 2 pour la dernière version) est un projet de la fondation Apache.

Pour en savoir plus :
Lire la suite...

Del.icio.us

Dans la rubrique des outils indispensables à tout bon informaticiens communicants et adeptes du partage d’informations, je cite l’outil del.icio.us!


Qu’est ce que del.icio.us ?

Les utilisateurs de navigateur internet savent pour la plupart qu’il est possible de sauvegarder et de marquer les URLs intéressantes. Le seul problème réside dans le fait qu’il est impossible d’accéder à ces “favoris”, “bookmarks” et autres “marques pages” depuis une autre machine que celle qui nous a servi à marquer les pages! Pour l’utilisateur nomade, il est donc assez contraignant de les transporter. L’idée a donc été de pouvoir les stocker sur la toile! Ainsi, un poste avec une connexion Internet peut accéder à l’ensemble de ces favoris. Mais cela ne s’arrête pas là!

En plus de cet aspect pratique, del.icio.us propose une bonne dose de “social web”. En effet avec l’avènement du phénomène Web 2.0 et l’ascension de l’utilisation des “Tags” (mot(s) spécifique(s) caractérisant un contenu web tel qu’une page, un blog, un site… ), il est possible de lier une URL avec un ou plusieurs Tags. Ainsi chaque inscrit au site peut partager (ou non) ces urls et donc ses tags liés. De ce fait on rend possible une recherche par tags sur l’ensemble des données des utilisateurs! Un mécanisme de classement par “poids” ou “popularité” des URL permet de donner en premier les URLs les plus “marquées”.

On peut noter aussi la présence dans le “web social” du site la possibilité de se lier avec d’autres personnes. Ainsi il est possible de partager entre utilisateurs les urls et même d’envoyer des urls à ces autres membres! Un mécanisme de hiérarchie par tag permet aussi de créer des “répertoires” catégorisées par thème. Une interface de recherche personnalisable intégrable également via un plugins sous Firefox) permet une gestion des Urls (et donc de la connaissance).

Pour moi il s'agit d'un outil indispensable actuellement pour tout bon “internaute”.
Il permet un gain de temps non négligeable pour effectuer une recherche plus rapide et précise. (voir article sur la recherche)

Pour aller plus loin :
Mes tags sur del.icio.us
Lire la suite...