Archive

Archives pour 05/2009

EDA in the Cloud

Je viens de lire un article qui vaut le détour si vous êtes intéressés par les architectures orientées évènements (EDA) et le Cloud Computing.

Simon Davies a réalisé un POC permettant l’intégration et la communication entre :
- une application s’exécutant dans l’App Engine de Google
- une application s’exécutant dans Windows Azure
- une application de type console s’exécutant derrière un firewall

Le middleware a été réalisé avec le composant « Service Bus » de la plateforme .NET Services.

L’article en question.

La famille JSF-AJAX s’enrichit

Nous savions déjà que JSF est une plateforme majeure (au sens d’importance comme de maturité) pour faire des applications WEB 2.0 utilisant AJAX. Jusqu’à présent, nous avions deux bibliothèques populaires de composants JSF pour le faire IceFaces de la société IceSoft et RichFaces de JBoss. Et bien cette famille pourrait bien s’enrichir d’un troisième larron :  OpenFaces.

OpenFaces est donc une riche bibliothèque de composants JSF riches couplée à une solution de requêtage Ajax (la double utilisation du mot riche a été faite à dessein :-) ). On y trouve des champs de saisie avec assistance, saisie de date, courbes, camembert, grille de présentation de données, etc… On y trouve aussi – plus original – un composant Agenda qui permet de placer des items sur un calendrier un peu à la manière de Google Agenda.

intro1

OpenFaces arrive aussi munie d’une gestion d’événements JavaScript (que l’on peut piloter à l’aide de tags spécifiques). Ces tags peuvent être utilisés aussi bien sur les composants JSF standards que sur les composants d’OpenFaces.  Ils permettent d’invoquer des méthodes du backing bean, de demander le rafraichissement partiel de la page, …

Bien qu’étant déjà assez riche, OpenFaces n’est pas aussi fournie que ses conccurentes. Comme elles, OpenFaces est compatible avec Facelet et Seam.  C’est aussi un produit OpenSource. Un très bon point : OpenFaces sait fonctionner avec d’autres librairies de composants, RichFaces entre autres !

Il reste bien sûr du chemin pour qu’OpenFaces devienne aussi célèbre que RichFaces ou IceFaces. Sa présence confirme cependant la vitalité actuelle de la norme JSF.

Categories: Java EE Tags: ,

Java a-t-il sa place dans un processus décisionnel ?

En relation avec mon billet précédent, je parlerai de la mise en place des solutions open sources dans un processus décisionnel.  L’accent sera particulièrement mis sur l’exploitation des technologies Java.

Tout d’abord, commençant par la couche de persistance. JOLAP (Java On-Line Analytical Processing) est une API Java qui permet la création, le stockage, l’accès et la gestion de données dans un processus OLAP. Hyperion, IBM, et Oracle ont initié le développement de JOLAP (JSR 69), dans la perspective d’être un équivalent de JDBC dans le monde OLAP. En effet, comme JDBC, JOLAP crée une connexion, à laquelle des requêtes décisionnelles (écrites en MDX, un langage de requête pour les bases de données multidimensionnelles) sont attachées. L’exécution d’une requête peuple un curseur qui permet de parcourir une vue multidimensionnelle ou un cube de données.

Au niveau de la couche présentation, JPivot est une librairie de tags JSP, qui permet de construire et d’afficher des tables OLAP et des graphiques à des fins de reporting. Les utilisateurs peuvent ainsi réaliser des opérations OLAP comme drill-down, roll-up, etc. (voir la figure ci-dessous).image

Pour plus d’informations, je vous oriente vers mon site personnel où vous trouverez comment configurer MySQL, Tomcat, Mondrian, JPivot et XMLA.

L’inconvénient majeur de ces solutions open sources, selon moi, est leur difficulté de configuration, de mise en œuvre et  leur scalabilité réduite (calculs très couteux). Cela explique peut-être leur faible utilisation et pénétration dans le marché.  Néanmoins, l’émergence du cloud computing pourra leur donner un nouveau souffle.  On commence déjà à parler du décisionnel “as a service”.  Il suffit juste de chercher « cloud computing and OLAP » dans votre moteur de recherche favori.

Categories: Java EE Tags: , , , ,

Visual Studio 2010 en beta 1

La beta 1 de Visual Studio 2010 est disponible depuis le milieu de semaine. Une présentation générale est également disponible.

Les enjeux importants de cette version sont à deux niveaux:

  1. l’IDE en tant que tel avec tout ce qu’il peut apporter pour le développeur (modèles de projets Azure par exemple, support natif de JQuery,…)
  2. Mais n’oublions pas que derrière cette interface, il y a une nouvelle version de .NET avec la programmation parallèle et le support de P-LINQ, Entity Framework 4.0,…

Je suis en train d’installer cette beta 1 sur une machine virtuelle et ferai part de mes premiers retours.

Categories: .NET, Outillage Tags: , ,

3 événements techniques Objet Direct – Spring – HP en juin

hp-logox-u-21954-33logo-springsource2« Spring pour accélérer les développements, oui ! Mais quelle stratégie de mise en oeuvre, quels choix d’architectures ?« .

SpringSource, Objet Direct et son client HP conjuguent leurs expertises et leurs retours d’expériences pour présenter des solutions et des architectures éprouvées en termes de performance, de qualité et de productivité.

3 sessions :

Ce sera la première fois que SpringSource participera à des événements publics en région Rhône-Alpes!

Pour vous inscrire, rendez-vous sur le site d’Objet Direct : inscription

.NET RIA Services

Ceux qui ont assisté à la formation en soirée sur Silverlight ont eu un avant gout de .NET RIA Services. Ce framework risque de grandement améliorer la productivité des développements d’applications RIA en .NET.

Quelles sont les réponses apportées par ce framework aux problèmes classiques d’applications RIA ?

- Je ne veux pas réécrire des classes de mon domaine (suivant le modèle Value Object)
- Je ne veux pas écrire le code technique de synchronisation des données entre les deux tiers pour de simples manipulations de données (CRUD)
- Je veux pas réécrire des classes Helper
- Je ne veux pas réécrire mes règles de validation décrites par annotations sur les classes de mon domaine
- Je ne veux pas réécrire mes requêtes LINQ
- Je veux pouvoir travailler simplement sur du CRUD ou des services
- Je veux pouvoir me baser sur le mécanisme d’authentification/autorisation défini sur le serveur

Je présenterai plus en détails ce framework dans le wiki ou dans un autre post et vous ferai part de mes premiers essais.

La preview est disponible sur le site de Microsoft. Cette version nécessite Silverlight 3 qui est en beta 1.

Gradle : alternative à Maven ?

Pour ceux qui comme moi sont allergiques au Xml verbeux de Ant et à la lourde infrastructure de Maven, une alternative commence à émerger.
Gradle se propose de réunir le meilleur de ces deux outils (et même plus) en simplifiant le tout grâce à un DSL (Domain-Specific Language) basé sur un script Groovy, donc très proche de la syntaxe Java :

•    Build par tâche à la Ant

createTask('hello') {
   println 'Bonjour Objet Direct!'
}
createTask('intro', dependsOn: 'hello') {
   println "Je suis Gradle"
}
>gradle -q intro Bonjour Objet Direct! Je suis Gradle

•    Build par convention à la Maven

Plugin Java (facultatif) offrant des tâches prédéfinies équivalentes aux phases de build Maven (clean, compile…) pour une même structure de projets.

•    Build multi-projets avec injection de configuration

subprojects {
   usePlugin('java')
   sourceCompatibility = 1.5
   targetCompatibility = 1.5
}

•    Gestion de dépendances basée sur Apache Ivy simplifiée / Support des infrastructures existantes de repository Maven ou Ivy (sans fichiers pom.xml ou ivy.xml)

dependencies {
   addMavenStyleRepo('myrepo', 'http://repo.objetdirect.com')
   compile "org.hibernate:hibernate:3.0.5"
}

Lire la suite…

Categories: Outillage Tags: , , , , ,

Web 2.0 OLAP: From Data Cubes to Tag Clouds

Pour les gens qui ne le savent pas, avant de rejoindre Objet Direct, je faisais de la recherche et je continue d’en faire quand j’ai un peu de temps. Ma toute dernière publication parue chez Springer porte sur le couplage Web 2.0 et OLAP (On-Line Analytical Processing).

Ce papier a le mérite d’être à l’intersection des cœurs de métier d’Objet Direct et Homsys car des technologies Java comme JOLAP et JSP-Servlets ont été utilisées pour réaliser de l’OLAP social.

Ci-dessous, le résumé du papier et pour plus d’informations, vous pouvez vous rendre sur le lien http://www.springerlink.com/content/u752130474k15336.

Increasingly, business projects are ephemeral. New Business Intelligence tools must support ad-lib data sources and quick perusal. Meanwhile, tag clouds are a popular community-driven visualization technique. Hence, we investigate tag-cloud views with support for OLAP operations such as roll-ups, slices, dices, clustering, and drill-downs. As a case study, we implemented an application where users can upload data and immediately navigate through its ad hoc dimensions. To support social networking, views can be easily shared and embedded in other Web sites. Algorithmically, our tag-cloud views are approximate range top-k queries over spontaneous data cubes. We present experimental evidence that iceberg cuboids provide adequate online approximations. We benchmark several browser-oblivious tag-cloud layout optimizations.

Dans un prochain billet, je mettrai l’accent sur l’utilisation des technologies Java dans un processus décisionnel.

Categories: Divers Tags: , , ,

Méthodes agiles : Kanban versus Scrum

Scrum tend à devenir une méthode incontournable pour les adeptes de l’agilité. D’autres méthodes existent cependant, et commencent à faire parler d’elles. Kanban figure en bonne place parmi celles-ci.

Henrik Kniberg, publie sur son blog un comparatif très didactique des 2 méthodes.

Vos avis/retour d’expérience nous intéressent …

XP Day 2009

Les XP Day France – le rendez-vous annuel des personnes qui pratiquent ou souhaitent découvrir les méthodes de développement agile – auront lieu cette année les 25 et 26 mai à Paris.

Objet Direct sera présent : Laurent Laslaz, Scrum Master et membre du Club Agile Rhône-Alpes (CARA) y sera. Gageons qu’il publiera ici quelques informations intéressantes…

Categories: Actualités, Méthodes Agiles Tags: ,