mardi 18 mai 2010

Alfresco présente Activiti BPMN 2 : 1er moteur BPMN 2.0 open source sous licence Apache

En avril, dernier, lorsqu’on a parlé, dans ce blog, du départ de deux membres importants quittent l’équipe JBPM, nous avons annoncé que Tom Baeyens et Joram Barrez promettent, sur le blog de Joram Barrez, le lancement imminent d’un nouveau Moteur BPM basé sur la norme BPMN 2.0 sous la licence apache.

Une partie de l’annonce était « We’re building a new BPM platform that’s architected for new IT requirements. It will be Apache licensed and it will run BPMN 2.0 natively ! »

C’est annoncé !!,

C’est sous les couleurs de Alfresco, le Leader de l’ECM open source, que les deux “mousquetaires du BPM” proposent ce nouveau moteur, nommé Activiti.

Activiti va rendre le Business Process Management (BPM) une commodité.

il a au moins la particularité d’être le 1er moteur BPM (et en plus BPMN 2.0) open source sous licence Apache.

Activiti un moteur BPM

La première version alpha d’Activiti intègre les fonctionnalités suivantes :

- Activiti Engine – Fichier JAR contenant la machine virtuelle de processus et l’implémentation du langage de processus BPMN ;

- Activiti Probe – Console d’administration système permettant de commander le moteur Activiti ;

- Activiti Explorer – Application utilisateur permettant de gérer facilement les listes de tâches et d’exécuter les tâches de processus ;

- Activiti Modeler – Outil de modélisation des processus BPMN 2.0 via un navigateur, basé sur Ajax, destiné aux analystes métier.

Selon Tom Baeyens, « Activiti va véritablement bouleverser le paysage BPM », explique Tom Baeyens. « Avec sa licence Apache et sa richesse fonctionnelle,

A l’instar de l’approche de Micorsoft avec WPF 4.0 chez les développeurs .Net, l’équipe d’Activiti, va essayer de déclencher une large adoption de la technologie BPM chez les développeurs Java.

Activiti est ainsi à même de s’imposer comme l’implémentation standard du BPM et du BPMN.

Remarquons l’utilisation du moteur de modélisation web SIGNAVIO, pour la modélisation.

clip_image002

Il est prévisible que ce moteur de BPM, Activiti deviendra le moteur de gestion des processus métier par défaut d’Alfresco.

bravo pour cette initiative, à la sauce Apache, une licence business frendly …

étape suivante : tester et mettre à l’épreuve…

site web

http://www.activiti.org/

RichFaces 3.3.3 supporte JSF 2.0 : la version est disponible

L'équipe de RichFaces vient d'annoncer la sortie de la version 3.3.3 final de RichFaces.

Cette version est une étape importante pour l’équipe RichFaces et Jboss : RichFaces 3.3.3 amène un support (certes basic, mais suffisant) pour JSF 2.0.


Bien que cette version a stabilisé lees composants pour le support de la norme JSF 2.0, il n’est pas encore conseillée de passer en production en JSF 2.0, sauf si on souhaite être le premier.

Affaire à suivre …

Télécharger RichFaces 3.3.3 http://www.jboss.org/richfaces/download.html

vendredi 14 mai 2010

Séminaire web service et SOA par Sang Shin en Tunisie: Java Tech Days in Tunisia du 14 au 18 Juin 2010

Une très bonne nouvelle pour la communauté Java en Tunisie.

L’un des meilleurs experts JAVA Internationaux du moment, Sang Shin, sera en Tunisie (à Sfax) pour animer un Java Tech days sur les web services et SOA.

Sang Shin est un formateur JAVA hors paire et membre actif de la communauté Java EE (et passionné par-dessus tout http://www.javapassion.com ).

Les "Java Tech Days in Tunisia" du 14 au 18 Juin 2010  à l'hôtel Syphax de Sfax est sous l’égide de la S2L Jasmine Conseil France en partenariat avec le Technopole de SFAX.

Un séminaire de 5 jours intensifs

La première journée sera ouverte par M. Karim DJAAFAR, Java EE Evangelist et expert international. Karim va présenter la démarche agile de développement avec l'outillage associé.

Les quatre jours suivants d'immersion seront consacrés aux ateliers SOA et  des concepts fondamentaux qui recouvrent ce standard de développement basé sur les services Web et le fameux REST.

Les technologies sous jacentes BPEL, ESB seront décrites autour de cas métiers concrets pour rendre les workshops proche de vos besoins immédiat de maîtrise et de mise en œuvre d'une architecture SOA robuste et standardisée.

Le programme, très ambitieux, est disponible ici

Day2 : Introduction of the Course

Introduction of course material (0.5 hour)

Software installation (0.5 hour)

XML standards -  total 2 hours

XML Namespace (0.5 hour lecture)

XML Schema (1 hour lecture+ 1 hour lab)

XML Schema Design Pattern (0.5 hour lecture + 0.5 hour lab)

XPath (0.5 hour lecture + 0.5 hour lab)

XSLT (1 hour lecture + 1 hour lab)

Java APIs for XML parsing and transformation

JAXP/SAX/DOM (0.5 hour lecture + 0.5 hour lab)

StAX (0.5 hour lecture + 0.5 hour lab)

Day 3 : SOAP and WSDL standards

SOAP (0.5 hour lecture + 0.5 hour lab)

WSDL (0.5 hour lecture + 0.5 hour lab)

soapUI Basics  (0.5 hour lecture +  0.5 hour lab)

SAAJ (0.5 hour lecture + 0.5 hour lab)

JAX-WS - total 2 hours

JAX-WS basics (0.5 hour  lecture + 0.5 hour lab)

JAX-WS Handlers (0.5 hour  lecture + 0.5 hour lab)

JAXB basics (0.5 hour lecture + 0.5 hour lab)

JAXB 2.0 (1 hour lecture + 1 hour lab)

Day 4 : REST

REST (0.5 hour lecture)

JAX-RS (1 hour lecture + 1 hour lab)

WS-* Specifications

WS-Policy (0.5 hour lecture)

WS-Addressing (0.5 hour lecture + 0.5 hour lab)

WS-Routing (0.5 hour lecture)

Web Services Interoperability Technology (WSIT)

WSIT (0.75 hour lecture + 0.75 hour lab)

WS-I (0.5 hour lecture)

Management, performance, load testing

Web services performance (0.5 hour lecture + 0.5 hour lab)

Web services management (1 hour lecture + 1 hour lab)

Day 5 : SOA

SOA Concept (0.5 hour lecture)

BPEL (0.5 hour lecture + 0.5 lab)

Open ESB and JBI (1 hour lecture + 1 hour lab)

OpenESB: Intelligent Event Processor (0.5 hour lecture + 1 hour lab)

Enterprise Data Mashup (EDM) (0.5 hour lecture)

OpenSSO

OpenSSO Basics (1 hour lecture + 1 hour lab)

Formulaire en ligne

http://www.sfax-itctechnopark.com.tn/index.php?id=182

Sang Shin

Technology Architecture Consultant. He frequently gives talks on important Java technologies such as J2EE, EJB, JMS, J2ME, Web application frameworks such as Struts and JSF, and Web services technologies to worldwide developer audiences. Whenever he finds time, he also teaches one of the three software engineering courses ("Web Services programming using XML and Java programming language", "XML", "Distributed programming using Jini networking technology") in Brandeis university in Massachusetts. He currently teaches free online "J2EE programming with Passion!" and "Advanced J2EE programming with Passion!" courses to over 3000 worldwide Java developers. These courses can be taken through http://www.javapassion.com.

jeudi 13 mai 2010

JBPM 5 : une version majeure en préparation

L’équipe BPM de JBoss (RedHat) a annoncé le lancement du projet JBPM 5 : la prochaine génération de plateforme BPM.

La principale information, est que jBPM 5 sera basé sur l'expérience combinée de jBPM et de Drools Flow (ainsi que les projets en relation : RiftSaw et Overlord).

Un effort de capitaliser sur les avantages des deux solutions sera la principale direction du projet, si on considère que la compatibilité totale avec BPMN 2 est déjà acquise.

Aucune feuille de route n’a été présentée pour le moment.

lundi 10 mai 2010

Panorama de l’offre MDM en 2010 : Talend organise une matinale MDM à Paris

L’année 2010 est déjà considére comme l’année de la consolidation dans les offres MDM. Nous avons vue

  • début janvier, Talend lance son offre MDM en mode open source (basé sur les actifs de la société Amalto, rachetés il y a quelques mois),

  • début janvier 2010 Oracle acquiert Silver Creek Systems, spécialiste du nettoyage de données, pour renforcer son offre MDM

  • Informatica rachète Siperian, fin janvier 2010

  • IBM mettre la main sur IBM rachète Initiate Systems début février 2010,

  • Microsoft s’engage dans la démocratisation du MDM en l’intégrant dans suite de gestion de données SQL Server.

La crise de 2009 a accentué le besoin à la gestion de données de références

Rappelons que la crise de 2009, a accentué le besoin au respect des réglementations, à la gestion de la connaissance des clients, à l’optimisation des dépenses, à la consolidation des référentiels des clients, des lieux et des personnes..

Tous ces enjeux ont pour pré-requis la responsabilisation des métiers sur la gestion de l’information : maîtrise des référentiels, gouvernance de données, gestion de la qualité des données,... tous ces sujets t vers le concept du Master Data Management (MDM).

Talend organise une matinale MDM à Paris le 02 juin

C’est dans ce contexte que Talend organise, pour son public parisien, une matinale MDM le 2 juin. Il s’agit d’un zoom sur les solutions du marché du Master Data Management

La  matinale permettra de comparer directement toutes les offres (ou quasi) du marché : Microsoft, Talend, IBM, Informatica, Information Builders, OrchestraNetworks et Oracle . Découvrez pourquoi et comment engager ces initiatives lors de la Matinale du MDM, le 2 juin prochain à Paris :

  • - Les grands acteurs du marché rassemblés pour la première fois en France depuis la série de grandes annonces du début 2010 : lancement des offres de Microsoft et de Talend, acquisitions majeures chez IBM, Informatica, renforcement des offres d’information management d’Information Builders, d’OrchestraNetworks et d’Oracle

  • - Les retours d’expérience, mais aussi les bonnes pratiques

Pour s'inscrire à l'événement et à l'atelier Talend, c'est ici :

Espérons que l’année 2011 sera l’année des projets MDM. Mais ceci est un autre sujet …

mardi 4 mai 2010

Tuning JVM et GC (Garbage collector) : La permanent generation

Question : quelle est le rôle de la permanent permanent generation

Ce travail a été réalisé en collaboration avec Hamed KOUBAA, Architect SOA.

Permanent generation ?

Rappelons que la zone permanent generation définit une zone de mémoire qui accueille des objets permanents. Elle contient la définition des classes Java, qui sont chargées au démarrage de la JVM et au cours de l'exécution de l'application.

clip_image002

Il arrive parfois que cette zone soit trop petite et provoque un blocage de votre application. Dans ce cas le message de l'exception

OutOfMemoryException : PermGen space.

Il n'y a pas de collectes dans cette zone.

introduction

L’objectif de cet atelier est de sensibiliser au choix des espaces mémoires de la JVM, basée sur un GC générationnel. Nous avons appliques au JDK de SUN.

Le principe de l’atelier est simple : utiliser l’application java2D (inclus dans la jdk %java_home%/demo/jfc/Java2D) avec des paramètres différents de la JVM et interpréter les résultats obtenus.

pré requis

Les expérimentations de ce tutorial peuvent être réalisé sous Solaris, Linux et Windows : là où le JDK Hotspot de Sun fonctionne.

Il suffit d’Installer une JDK ultérieure à la version 5.0.

Les tests ont été réalisés avec JDK 1.0.0 build 17.

Noter que le JDK qui inclut des "démos" est nécessaire - la JRE n'est pas suffisante.

Configurer les variables d’environnement JAVA_HOME

- télécharger si besoin visualgc .

Maintenant vous êtes prêt pour démarrer l’atelier.

clip_image003

Une génération permanente trop petite

Pour cet exercice, on réinitialise la taille maximale du Heap à notre standard de 16 MB. Nous gardons la jeune génération à notre optimale 4 MB.

Et maintenant, nous introduisons perm gen tuning en le fixant à 1 Mb.

-XX:PermSize=1m -XX:MaxPermSize=1m -XX:NewSize=4m -XX:MaxNewSize=4m -Xms16m -Xmx16m

- agrandir la fenêtre du java2D et observer le résultat

Le log de l’application montre qu’il y a une exception outOfMemory PerGen

Interprétation

Comment pouvez-vous savoir quand la permanent generation est trop petite?

Si l'application ne démarre pas ou se bloque avec une exception mémoire

Pourquoi une permanent generation qui est trop petit un problème?

Si la génération permanente est trop faible il n'y aura pas assez de place pour la JVM pour charger les bocaux et classfiles qui composent l'application elle-même.

La génération permanente est spéciale parce qu'elle contient des données utilisées par la machine virtuelle pour décrire les objets qui ne disposent pas d'une équivalence au niveau du langage Java. Par exemple, les objets décrivant les classes et les méthodes sont stockées dans la génération permanente.

Une génération permanente ayant la bonne taille

Maintenant nous avons fixé la permanent generation à 17 Mo (au lieu de 1 Mo pour l'exercice précédent). Le Heap d'ensemble et la taille des nouvelle génération reste la même à 16 Mo et 4 Mo, respectivement.

-XX:PermSize=17m -XX:MaxPermSize=17m -XX:NewSize=4m -XX:MaxNewSize=4m -Xms16m -Xmx16m

Interprétation :

Comment connaissez-vous la permanent generation a une taille adéquate?

Lorsque vous trouvez que le programme s'exécute avec une marge confortable de l'espace gen Perm.

Puis-je laisser la JVM déterminer la bonne taille permanent generation?

Bien sûr, en fait, vous pouvez définir les valeurs maximales de la permanent generation et laisser la JVM déterminer la taille adéquate selon le besoin, mais toujours sans dépasser cette taille max.

Pourquoi le tuning de la permanent generation est important?

Le tuning de la permanent generation est important si le contrôle de la consommation mémoire globale est important et que vous voulez obtenir un gain de performances supplémentaires en éliminant le temps de redimensionnement de la permanent generation.

Architecte SOA & Professionnel Open Source Headline Animator

 
Khaled BEN DRISS
Cloud Computing, SOA et Web 2.0 : Des sujets techniques sur SOA et l'Open Source : de Java & .Net, PHP5, Symfony, à SaaS / PaaS en passant par Azure, google appengine, le BPM, la Modélisation et d'autres sujets du coté du serveur et cloud computing.