Scub Foundation. Socle technique Java Open Source http://www.scub-foundation.org



Documents pareils
1 JBoss Entreprise Middleware

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

L Intégration Continue & Agilité

Serveur de travail collaboratif Michaël Hoste -

Expert technique J2EE

Assurances & Mutuelles, Industrie, Santé, Énergie, Transport, Médias / Multimédias, Télécoms, Services

J2EE in practice. Olivier Liechti Patrik Fuhrer. Department of Informatics. Computer Science Master Course - SH 2004/05

JOnAS Day 5.1. Outils de développements

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É JAVA - J2EE. 27 ans - 5 ans d'expérience

GECKO Software. Introduction à MOBIDICK. Modular But Integrated Application Framework

Introduction à la plateforme J2EE

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Glassfish dans le milieu médical. Sun Aquarium Paris 26 Juin 2009 Jacky Renno

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É JAVA. 32 ans - 6 ans d'expérience

THÉMATIQUES. Comprendre les frameworks productifs. Découvrir leurs usages. Synthèse

31 ans - 8 ans d'expérience

Consultant MOE/Référent technique JAVA/J2EE JSF, RICH FACES

Java pour le Web. Cours Java - F. Michel

Introduction MOSS 2007

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

Projet de développement

Président d Inotekk Gestion de la société, développement du portefeuille clients, gestion et réalisation des projets informatiques

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement

CQP Développeur Nouvelles Technologies (DNT)

Refonte front-office / back-office - Architecture & Conception -

les techniques d'extraction, les formulaires et intégration dans un site WEB

et Groupe Eyrolles, 2006, ISBN :

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

Direction des Technologies de l Information. Présentation OCDE. Contribution du Parlement européen. L utilisation de l OPEN SOURCE au PE

GWT à l'épreuve du feu. by Sami Jaber (DNG Consulting)

Stratégie de sécurité grâce au logiciel libre. Frédéric Raynal Cédric Blancher

Point sur les solutions de développement d apps pour les périphériques mobiles

Chef de projet / Architecte JEE 15 ans d expérience

FreeAnalysis. Schema Designer. Cubes

GESTION DE L AUTOMATISATION DES TESTS DES SYSTÉMES ERP EN UTILISANT DES OUTILS COREJET. Tetiana KUSHCHYNSKA

LICENCE PROFESSIONNELLE SYSTEMES INFORMATIQUES & LOGICIELS

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

Applications distribuées: le retour du client "riche"

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique

Notre Catalogue des Formations IT / 2015

Laurent JOLIN. Compétences. Expériences professionnelles. Architecte technique. 15, rue Jean Favier Toulouse

OFFRES DE STAGE 2014 / 2015

Qu'est-ce que le BPM?

Catalogue des Formations

Lancelot Bertrand Expert Java J2ee

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

Les nouvelles architectures des SI : Etat de l Art

Usine de développement : étude comparative

Burckel Thomas. Formation. Compétences

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

> + Consultant / Architecte JEE Indépendant. Fabien GUIBERT 34 ans, 11 ans d expérience d expérience COMPETENCES / DOMAINES METIERS

Mettez les évolutions technologiques au service de vos objectifs métier

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Un serveur d'archivage

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

Prise en main du BusinessObjects XI R2 Service Pack 2/ Productivity Pack

Business & High Technology

IBM Rational Application Developer pour WebSphere Software V8.5 accélère le développement d'applications de haute qualité.

Celui qui vous parle. Yann Vigara

SOA Open Source Intégration des services et business process dans une architecture SOA Open Source. Bruno Georges JBoss, a Division of Red Hat

Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE

Mercredi 15 Janvier 2014

Architecture de la plateforme SBC

Développer avec les technologies ESRI. ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Messagerie asynchrone et Services Web

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Présentation de l'architecture QlikView. Livre blanc sur la technologie QlikView. Date de publication : octobre

Systèmes de gestion de code source

INF2015 Développement de logiciels dans un environnement Agile Examen final hiver 2015

ACCORD-CADRE DE TECHNIQUES DE L'INFORMATION ET DE LA COMMUNICATION. PROCEDURE ADAPTEE En application des articles 28 et 76 du Code des Marchés Publics

Séminaire EOLE Dijon 23/24 novembre Architecture Envole/EoleSSO

Configuration Interface for MEssage ROuting

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Chapitre 1 : Introduction aux bases de données

SITools2, un système d'accès aux données scientifiques web 2.0

2.1 Liferay en un clin d'oeil Forces, faiblesses, opportunités et menaces Résumé de notre évaluation... 5

ManageEngine IT360 : Gestion de l'informatique de l'entreprise

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

Master Data Management en Open Source C est le Bon Moment

Présentation de SOFI 2.0

Business et contrôle d'accès Web

Outil de Demande de Backup Système

Etude de cas : PGE JEE V2

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version septembre 2006

Construction et déploiement d applications Java avec Maven, Archiva, Groovy et Jenkins

Processus. Intégration et Tests Nat. Approuvé par : Patrick Atlan Fonction : Directeur Général V isa :

Compte Rendu d intégration d application

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

COMPÉTENCES TECHNIQUES

1. Considérations sur le développement rapide d'application et les méthodes agiles

Gérez efficacement vos flux d entreprises.

OmniVista 2700 Application complémentaires pour l OmniVista 2500 Network Management

Stages ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr

Transcription:

Scub Foundation Socle technique Java Open Source http://www.scub-foundation.org

Présentation de Scub

Présentation de Scub Scub est une société de service en informatique qui a pour but de fournir du conseil et de développer des applications spécifiques afin de résoudre les problèmes les plus importants et les plus pressants de ses clients.

Présentation de Scub Nos services sont centrés sur : Le conseil. Le développement d'applications. L'intégration de systèmes. Le décisionnel. Nous sommes spécialisé dans l'open source, les technologies Java et les architectures orientées services (SOA).

Présentation de Scub Crée en 2003. Basée à Angouleme. Une équipe de neuf personnes passionnées. Forte croissance / 0 turnover. Membre du groupe Arrow Financial Consulting (60 personnes / Paris / Londres / Tunis).

Plan de la présentation

Plan de la présentation Qu'est ce qu'un socle technique? Architecture des applications Ce qu'offre notre socle technique Infrastructure Notre offre de service

Avant-propos...

Un problème réccurent à gérer... Le changement. Il faut partir du principe que le changement est quelque chose de normal. Le changement peut survenir au niveau des besoins utilisateurs, des technologies, des règles métiers ou des organisations.

Comment gérer le changement? Le développement doit etre incrémental pour gérer les incertitudes. Scrum Le développement doit etre industrialisé pour gérer la complexité. Scub Foundation

Qu'est ce qu'un socle technique?

Définition Un socle technique est un ensemble de frameworks, de conventions, d'outils et de procédures qui structurent les développeurs et leurs développements. Pour simplifier, c'est une plateforme qui permet l'industrialisation des projets de développement informatique.

Objectifs Ne pas réinventer la roue! On intègre les meilleurs produits Avoir des modèles de projets. Avoir des taches automatisées. Gérer automatiquent des librairies. Gérer les différents environnements (Test / Développement / Pré prod / Production ). Développement SOA. Une documentation complète.

Architecture des applications

Architecture Orienté Service L'architecture logicielle que nous avons choisi a pour but de produire des ilots de services indépendants et pouvant etre utilisés par n'importe quelle technologie.

Vers la SOA

Couche base de données

Couche base de données Gère le stockage des données. (select, update, insert et delete seulement) HSQLdb en développement. PostgreSQL (ou autre) en production. Indépendance totale vis à vis de la base de données.

Couche modèle

Couche modèle Représente les données persistantes de l'application avec des objets Java simples. Utilisation d'hibernate pour gérer le mapping Objet / Relationnel. Non intrusif / Indépendance.

Source couche modèle

Couche d'accès aux données

Couche d'accès aux données Abstrait et encapsule l'accès aux données. Utilisation d'hibernate et Spring. Découplage entre interfaces et implémentations mais aussi séparation du code métier et du code technique.

Source couche d'accès aux données

Source couche d'accès aux données

Source couche d'accès aux données

Couche service

Couche service Contient la logique métier de l'application. Elle utilise la couche DAO pour accéder aux données. Elle est testée grace à JUnit et Eclemma. Couche indépendante des technologies sousjacentes.

Source couche service

Source couche service

Source couche service

Source couche service

Source couche service

Exécution des tests

Exécution des tests

Noyau Nous venons de réaliser un ilot de service. A l'aide des taches du socle, nous pouvons déployer de manière autonome ces services sous la forme d'un war.

Avantages d'un noyau service Centralisation de la logique métier. Réutilisation du code. Qualité plus facile a gérer. Simplification de la programmation pour les développeurs d'interfaces utilisateurs. Interfaces Java + DTO = Indépendance des technologies.

Applications clientes

Applications clientes Les services sont utilisables par toutes applications clients. Nos modèles de projet permettent de développer facilement des applications GWT, Struts, Spring MVC, Service. Bien entendu, n'importe quelle technologie peut etre utilisée.

Ce qu'offre notre socle technique

Définition Un socle technique est un ensemble de frameworks, de conventions, d'outils et de procédures qui structurent les développeurs et leurs développements. Pour simplifier, c'est une plateforme qui permet l'industrialisation des projets de développement informatique.

Schéma général

Services offerts par le socle Des modèles de projet. Des taches (compilation, test, packaging, deploiement...). Une gestion automatique des librairies et des dépendances. L'intégration automatique des frameworks les plus populaires. La gestion des environnements (dev, test, pre prod, prod...).

Maven - Introduction Maven est un outil pour la gestion et l'automatisation de la production des projets logiciels. L'objectif de Maven est de simplifier le processus de fabrication d'un logiciel.

Schéma général

Maven - Fonctionnalités Permet de définir la configuration d'un projet dans un fichier XML qui peut lui meme hériter d'un autre fichier. Permet d'obliger les développeurs à utiliser une structure de projet et des taches communes. Permet de gérer les dépendances vers des projets externe (comme JUnit) ou interne.

Maven - Fichier projet

Maven - Structure de projets

Maven - Taches Le socle propose un ensemble de taches pour, par exemple : La compilation. Le lancement des tests. Le packaging. Le déploiement. L'initialisation de la base de données.

Maven - Référentiel Le but du référentiel est de rendre disponible les plugins, les librairies et les projets. Il existe généralement trois référentiels : Un sur le poste du développeur. Un sur Internet qui contient l'ensemble des librairies (maintenu par les équipes Maven). Un troisième référentiel au niveau de l'entreprise pour gérer sa configuration.

Maven - Schéma référentiel

Eclipse Une seule version d'eclipse est utilisée par l'ensemble des développeurs. Cette version est installée automatiquement sur chaque poste avec tous les plugins. note : Eclipse n'est pas obligatoire, nous avons aussi intégré d'autres IDE comme JDev.

Eclipse - Checkstyle Ce plugin permet de vérifier certaines règles lors de l'écriture du code. Par exemple, on peut vérifier : Que chaque méthode est commentée. Que l'on ne déclare pas de HashMap. Que l'on utilise pas "System.out.println"....

Exemple checkstyle

Eclipse - Eclemma Eclemma est un plugin qui permet de voir quel code métier est couvert par les tests unitaires. Le principe est simple : lors de l'exécution des tests unitaires, Eclemma vérifie quelles portions de code sont exécutées et quelles portions ne le sont pas.

Exemple eclemma

Infrastructure

Schéma général

Mantis Mantis est un système de suivi des bugs et demandes. Il permet aux développeurs et aux utilisateurs d'améliorer la qualité en assignant à chaque demande un numéro. Chaque demande peut ainsi etre tracée.

Exemple mantis

Artifactory Artifcatory est un référentiel Maven qui permet de gérer les plugins, librairies et projets.

Exemple artifcatory

Subversion SVN est un système de gestion de version. Il supporte les fonctionnalités de CVS avec en plus : Gestion des répertoires et des renommages. Commits atomiques.

Exemple subversion

Continuum Continuum est un outil d'intégration continue, il vérifie de manière automatique que les modifications de code source n'ont pas générées de régressions de l'application. Pour schématiser, tous les soirs, Continuum va récupérer les sources et va lancer les taches Maven pour constuire et tester le projet.

Exemple continuum

Notre offre de service

Scub Foundation Scub Foundation est utilisable tout de suite comme tout autre projet libre. Nous fournissons : Toutes les applications. Tous les modèles de projet. Toute la documentation et les tutoriaux. Tous les projets exemples. Un serveur Artifactory en ligne.

Formation Nous pouvons former vos équipes à l'utilisation du socle ainsi qu'aux diverses technologies que nous avons sélectionnées. Nous pouvons aussi former vos équipes pour qu'elles soient en mesure de modifier le socle technique.

Adaptation Nous pouvons paramétrer le socle afin qu'il réponde à vos besoins. Que ce soit pour intégrer des technologies (EJB3, JSF...), intégrer des outils (JDev...), intégrer des serveurs d'applications (Weblogic...) ou créer des modèles de projets particuliers.

Renforts Nous disposons d'équipes de développement et de chefs de projet qui peuvent participer a la realisation de vos projets ou de ceux de vos clients. Nos équipes peuvent intervenir à toutes les étapes du projet.

Conseil Nous pouvons vous aider à améliorer vos processus et vos méthodes grace à nos équipes de spécialistes.

Pour finir...

Pourquoi ne pas essayer? Vous pouvez bien entendu accéder a l'ensemble des éléments a l'adresse suivante http://www.scub-foundation.org Mais vous pouvez aussi nous commander une journée de présentation pendant laquelle notre directeur technique vous montrera l'ensemble du socle. note : remboursement possible par votre OPCA

Questions? Questions? Notre site web : http://www.scub.net Notre blog : http://www.scub.net/notre-blog Twitter : http://twitter.com/scub_france