4 septembre 2017

DEVELOPPEMENT ET COUCHES INTERMEDIAIRES

ANNUAIRE D ENTREPRISE

Les annuaires d’entreprise, également appelés Annuaires électroniques correspondent à un type de base de données spécialisées destinées à contenir de façon hiérarchique des éléments d’organisation de l’entreprise.
La plupart du temps, on y stocke des personnes (utilisateurs) et/ou des ressources (imprimantes, etc.). Cependant l’usage d’un annuaire d’entreprise ne se limite pas à des recherches textuelles, on peut également l’utiliser pour constituer des carnets d’adresses, pour authentifier les utilisateurs, pour définir la politique de sécurité de l’entreprise, etc.
Il existe un standard utilisé dans la plupart des annuaires d’entreprise pour effectuer des requêtes (protocole LDAP).
Dans l’univers de l’open source, la solution OpenLDAP dispose de la plus grande notoriété même si des outils comme 389 Directory Server disposent d’un beau périmètre fonctionnel.

BASE DE DONNEES

Les bases de données sont devenues des éléments incontournables du paysage informatique. Elles permettent de stocker un lot d’informations dans une structure définie par avance. Les technologies actuelles permettent d'organiser et de structurer la base de données de manière à pouvoir facilement manipuler le contenu et stocker efficacement de très grandes quantités d'informations.
Les bases de données, comme MySQL ou PostgreSQL, sont de type relationnel utilisant le langage SQL pour l’interrogation de leurs données.
Depuis 2009, une nouvelle mouvance – le NoSQL – est apparue. Elle propose une alternative au SQL et au modèle relationnel afin de permettre un haut niveau de scalabilité (extensibilité).
Désormais, les plus grands SGBD sont open source comme MySQL et PostgreSQL.

BIG DATA

L’émergence du phénomène Big Data est intrinsèquement lié au fait que l’information et la capacité à la traiter est devenue l’un des facteurs clé dans le succès d’une entreprise.
Soumise à de tels enjeux de volumétrie et d’hétérogénéité, les technologies utilisées jusqu’alors n’ont pas tardé à montrer leurs limites et il a été nécessaire de réinventer un certain nombre d’outils pour qu’ils puissent s’adapter à ces nouvelles contraintes: stockage et traitement de données qui doit désormais être distribué, collecte de données hétérogènes et multi-sources, restitution des données.
Il est intéressant de noter que l’essentiel des briques fondamentales de la mouvance Big Data sont open source et structuré autour de Hadoop. Plus encore : certains acteurs historiquement hostiles à l’open source comme Microsoft sont aujourd’hui en train d’abandonner leurs solutions propriétaires pour se rallier dérrière la bannière Hadoop.

BPM

Demande de congés, validation de documents, dématérialisation de la relation client : les processus sont au cœur du système d’informations des entreprises et collectivités.
Les solutions de BPM (Business Process Management) offrent une approche moderne en affranchissant en grande partie les utilisateurs des contraintes techniques pour modéliser, déployer et optimiser leurs processus.
Les solutions de BPM permettent la modélisation graphique des processus, la génération et l’adaptation des formulaires, et le suivi web des demandes.
Dans l’univers de l’open source, des solutions de qualité existent comme Bonita, produit phare du secteur BPM open source.

OUTILS DE DEVELOPPEMENT

Cette section présente les outils utiles aux développements d’applications, web notamment.
On y trouve des outils de gestion de projet comme Redmine ou Maven, des outils d’automatisation comme Ant ou Phing, des environnements de développement comme Eclipse, des gestionnaires de tickets comme MantisBT, des outils de gestion de source comme Subversion ou Git, et des solutions de collaboration et d’ingénierie logicielle comme Tuleap.
Comme on le voit, l’open source offre également d’excellentes briques de développement pour bâtir des projets ambitieux dans des conditions optimales.

TESTS ET INTEGRATION CONTINUE

L’intégration continue est un ensemble de pratiques visant à améliorer la qualité de livraison d’une application en vérifiant à chaque modification de code source, que le résultat des modifications n’entraine pas de régressions (c'est-à-dire d’anomalies supplémentaires liées à l’ajout de code).
Pour mettre en œuvre des plateformes d’intégration continue, il existe de nombreux outils open source de qualité tels que Continiuum ou Hudson. Autour des ces outils, on trouve également des solutions de rendu graphique (affichage des résultats).

ESB/ EAB

Les ESB (« Enterprise Service Bus ») permettent la communication entres applications qui ne proposent pas, à la base, de services ou d’interfaces prévus pour cela.
Les ESB sont souvent présentés comme des architectures nouvelles qui exploitent différentes techniques comme la transformation, le transfert et routage d’informations et les services Web.
Les ESB interviennent en tant que « médiateur » entre les clients et les fournisseurs de services (applications).
Dans l’univers de l’open source, des solutions de référence existent comme Talend ESB, Mule et Petals.

FRAMEWORKS ET BIBLIOTHEQUES POUR LE DEVELOPPEMENT WEB

Un framework permet de réduire les temps de développement des applications en répondant de façon efficace aux problèmes les plus courants rencontrés par les développeurs. Il inclut généralement de nombreuses fonctionnalités prêtes à l’emploi dont les implémentations sont bien rodées et utilisent des modèles de conceptions standard et bien implémentés. Le temps ainsi gagné sur les questions génériques pourra être mis à profit sur les parties spécifiques de l’application.
Les frameworks disponibles sont généralement de grande qualité. On en trouve pour tous les langages (Java, Php, Javascript, Python, Ruby, etc.) avec des approches parfois très différentes.
La plupart des applications modernes s’appuie sur des frameworks ou bibliothèques web.

FRAMEWORKS MOBILES CROSS-PLATEFORM

Les applications mobiles se sont multipliées ces dernières années avec l’avènement des smartphones. On trouve désormais de nombreux systèmes d’exploitation mobiles ce qui nécessitent la multiplication des développements.
Pour éviter cela, des frameworks mobiles open source cross-platform ont vu le jour permettant à partir d’un même code le portage sur X systèmes d’exploitation.
C’est le cas par exemple pour PhoneGap/Cordova qui fonctionne, entre autres, avec IPhone, Android, Blackberry, Symbian et Palm.
Dans l’univers de l’open source, 3 frameworks ressortent assez nettement : PhoneGap/Cordova comme évoqué précédemment, mais également Rhodes et Titanium. Ces frameworks emploient des techniques différentes pour amener à des résultats relativement proches.

PKI

Les solutions de type PKI permettent de sécuriser les relations électroniques (email par exemple) en garantissant confidentialité, authentification, intégrité et non-répudiation, que ce soit à travers des certificats de signature (d’e-mail ou d’accès web) ou de chiffrement (cryptage bi-clef).
En sécurisant la gestion des identités, les outils de PKI facilitent le développement des activités transactionnelles, qu’elles soient externes (relations contractuelles et commerciales) ou internes (responsabilisation des collaborateurs).
Parmi les solutions open source disponibles, on peut citer OpenSSL, OpenCA, OpenTrust ou encore EJBCA.

AUTHENTIFICATION FEDERATION ET GESTION DES IDENTITES

Dans cette catégorie, nous vous présentons différentes solutions d’authentification, de fédération et de gestion d’identité.
Il s’agit donc d’outils relativement proches mais avec des finalités parfois différentes. Ainsi par exemple, le système Shibboleth, permet l'authentification unique multi-domaines. Il est ainsi possible d’inclure des applications tierces dans son système de gestion d'identité fédéré afin que les utilisateurs s'identifiant sur leur système unique d'identification puissent avoir accès à l'application en question.
LinOTP est également présenté ; il s’agit d’une solution d’OTP permettant l’utilisation de mots de passe générés à un instant donné, valides pendant une courte durée et utilisables une seule fois.
D’autres solutions open source comme CAS, FederID, LemonLDAP, OpenAM sont présentées.

OUTILS DE TESTS DE CHARGE

Les outils de tests de charge, comme leur nom l’indique, sont des applications permettant de simuler une forte charge sur un service.
Cela peut être un site Web mais également une base de données, un annuaire LDAP, un webservice, etc. Les possibilités sont très nombreuses.
Une interface graphique est généralement disponible pour permettre la saisie des scénarios de tests : passage par telle page, clic sur tel menu, remplissage de tel formulaire, soumission, etc. Les scénarios en eux-mêmes peuvent être d'une grande complexité, avec des boucles, conditions, extraction et réutilisation de variables, chargement de variables depuis un fichier externe, etc.
En sortie des tests de charge, les applications proposent généralement de nombreux graphes et statistiques exportables sous la forme de rapports.
Parmi les outils open source, on peut citer JMeter, Tsung et aussi Funkload.

MOTEURS DE RECHERCHE

Les moteurs de recherche sont, comme les systèmes d’exploitation et les bases de données, des pierres angulaires de notre quotidien.
Ils permettent de retrouver et d’accéder à des ressources (au sens large : pages web, images, vidéos, fichiers, etc.) indexées avec un ensemble de mots clés.
Les moteurs de recherche sont généralement composés de deux services : l’indexation et la recherche.
Les moteurs de recherche se différencient généralement par leurs capacités d’indexation (format, rapidité, algorithme de pertinence) et leurs fonctions de traitements linguistiques (pluriels, conjugaisons, phonétique, etc.).
Dans l’univers de l’open source, le marché est dominé par les moteurs de recherche Lucene et Solr. On les retrouve très souvent associées aux meilleures applications web.

SERVEURS HTTP ET SERVEURS D APPLICATIONS

Dans cette rubrique, nous présentons les serveurs HTTP et les serveurs d’applications JEE open source du marché.
Les serveurs HTTP (également appelés daemon HTTP ou serveur Web) servent les requêtes (pages, images souvent) des internautes en respectant le protocole http.
Dans l’univers des serveurs HTTP, le serveur Apache domine très largement avec une notoriété exceptionnelle. Il n’est pas difficile de trouver des prestataires pour du conseil ou de l’intégration.
Concernant les serveurs d’applications, même si JBoss AS et Tomcat se partage la vedette, on voit de nombreux noms apparaitre comme Glassfish notamment.

MOM

Les Middleware Orientés Messages, ou « MOMs », sont des outils particulièrement précieux pour mettre en œuvre des échanges entre applications de toutes natures.
Un middleware permet à différentes applications d’échanger et d'interopérer. Un middleware permet aux applications d'interopérer y compris lorsqu'elles tournent sur des serveurs différents, interconnectés par un réseau. Le middleware est un outil de haut niveau, puisqu’il offre ses services aux applications, mais les échanges induits s’appuient sur toute une pile de protocoles réseau.
Un middleware est davantage qu'un simple protocole d'appel des services offerts par une application, et typiquement RPC, RMI ou bien SOAP, tous également synchrones, ne sont pas vraiment considérés comme des middlewares.

ETL ET AUTRES

L’ETL est souvent une brique du décisionnel même si on l’utilise parfois en dehors de ce cadre.
ETL signifie « Extract Transform Load ». Ce sont des outils qui permettent la réalisation de synchronisations massives d’informations d’une source de données vers une autre. Dans les faits, les ETL peuvent être utilisés dans des cas bien plus simples d’extraction, de transformation et/ou de chargement.
Les outils d’ETL disposent généralement de connecteurs permettant l’importation ou l’exportation de données dans les applications tierces. Les transformations peuvent être réalisées à partir de « plugins » existant ou via programmation.
Parmi les outils open source, on citera Talend ou Pentaho Data Integration (anciennement kettle).
Dans cette dernière rubrique de la dimension « Développement et couches intermédiaires » nous présentons d’autres outils open source qui peuvent trouver leur intérêt dans les entreprises même s’il était difficile d’en faire une catégorie à part entière.
Nous présentons notamment Drools (un moteur de règles étonnant) et ESIGate (permettant la construction à la volée de pages à partir de fragments issus de technologies différentes).

fr_FRFrançais
en_USEnglish fr_FRFrançais