ModelSphere, un outil de génie logiciel



Documents pareils
Projet de développement

BIRT (Business Intelligence and Reporting Tools)

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Manuel d utilisation du site web de l ONRN

Démo 2 Cas d utilisations. Partie théorique : Exercice 1: Professeur : Bruno Dufor. Démonstrateurs : Marouane Kessentini.

ESPACE COLLABORATIF SHAREPOINT

27 janvier Issam El Hachimi Ludovic Schmieder

Guide Utilisateur MANTIS. Sommaire. Objet du document :

Suite Messerli Gest (gestion de chantier) Prestations (imputations des heures) Procédure d'installation du programme ou d'une mise à jour

ONe Key ID Compte InfoCentre pour les entreprises Compte auprès du ministère de l Environnement (MEO)

1. Création du profil

Rapport financier électronique

Création d un formulaire de contact Procédure

Compte lecteur : Mode d emploi. Sommaire

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

Rapport de stage. Développement d un logiciel de vidéoconférence : Enjeux 3. Guillaume DOTT 2009

Préambule. Sommaire. Ouverture de votre Service Client. Configuration de La Solution Crypto. Activation. Paramètres PagesIMMO

Introduction aux concepts d ez Publish

FAA : Fonctions Automatiques de l Application. Les fonctions automatiques incluses dans vos applications développées avec

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

EXTRANET STUDENT. Qu'est ce que Claroline?

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits

Manuel du composant CKForms Version 1.3.2

Table des matières...2 Introduction...4 Terminologie...4

Scopia Desktop. Sommaire

IBM System i. DB2 Web Query for System i : le successeur de Query/400? Oui, mais bien plus!!!

Directives pour les fournisseurs concernant:

34BGuide de l utilisateur de la boutique en ligne. TAccueil de la boutique e-transco de la Côte-d Or

Introduction à Expression Web 2

Oracle Developer Suite 10g. Guide de l installation. Vista & Seven

Single User. Guide d Installation

Tutoriel code::blocks

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

Réussir. son site e-commerce. avecoscommerce

Identification du module

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

S10 - Automatisez la compilation et le déploiement de vos applications IBM i avec Arcad Pack for Rational

IBM Power Systems - IBM i IBM Rational

Manuel d utilisation. Logiciel (Device Monitor) Pour les systèmes d imagerie numérique. Configuration requise Description générale

FEN FICHE EMPLOIS NUISANCES

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Catalogue Formations Jalios

UNIVERSITÉ LAVAL. PLAN DE COURS PROGRAMME en GESTION du DÉVELOPPEMENT TOURISTIQUE. Titre et sigle du cours : Marketing touristique, MRK 20578

Alpha PRIMO 58 boulevard baron du Marais Roanne / / contact@alphaprimo.fr

claroline classroom online

CATALOGUE DE FORMATION INTERNET BUREAUTIQUE INFORMATIQUE..::NET-INOV.COM::..

Sophos Antivirus, guide d installation

CATALOGUE FORMATION 2015

La plate-forme d'outils collaboratifs de l'i.e.m.n.

S1 Boostez votre productivité avec la version 9 des solutions Rational pour IBM i

INTRODUCTION AUX TESTS DE PERFORMANCE ET DE CHARGE

OpenText Content Server v10 Cours (ex 223)

Présentation de l outil d administration de réseau Nagios

SYSTRAN 7 Guide de démarrage

Manuel d installation de Business Objects Web Intelligence Rich Client.

Connexions à un projet CVS via Eclipse en accès local et distant. 15 Mai 2007

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

Guide d installation TV sur ordinateur Internet 3G+

GUIDE D UTILISATION PARTICIPANT

Guide Tenrox R8.7 de configuration de Microsoft Reporting Services

Messagerie & Groupeware. augmentez l expertise de votre capital humain

Manuel d utilisation du web mail Zimbra 7.1

Guide de la documentation des produits BusinessObjects XI

F0RMAT I0N BUREAUTIQUE

Logiciels de gestion FAC. Analyste AgExpert. Guide de démarrage rapide 2014

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

Utilisation de la Plateforme Office365 et d Oultlook Web App

Présentation de SOFI 2.0

1. Entrez le code client dans le champ << Code client >> si requis. Le code client est optionnel, on peut donc entrer simplement le nom du client.

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

TP01: Installation de Windows Server 2012

The Grid 2: Manuel d utilisation

Vérifier la qualité de vos applications logicielle de manière continue

Petit guide à l'usage des profs pour la rédaction de pages pour le site Drupal du département

Serveur de travail collaboratif Michaël Hoste -

POVERELLO KASONGO Lucien SIO 2, SISR SITUATION PROFESSIONNELLE OCS INVENTORY NG ET GLPI

Guide d utilisation du logiciel TdsTexto 1.0

CMS Open Source : état de l'art et méthodologie de choix

Créateur de sites Internet. Développeur de logiciels.

Quel ENT pour Paris 5?

DOCUMENTATION UTILISATEUR DU GUICHET VIRTUEL 2.0

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Environnements de développement (intégrés)

Guide de l utilisateur du Centre de gestion des licences en volume LICENCES EN VOLUME MICROSOFT

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Installation d OpenVPN

CP Upgrade Guide HOPEX V1R1 FR. Révisé le : 25 octobre Créé le : 16 juillet Auteur : Jérôme Horber

CONTACT EXPRESS 2011 ASPIRATEUR D S

Code Produit Nom Produit Dernière mise à jour. AM003 Alias Mobile On Demand Licence 1 mois 27/04/2015

L Intégration Continue & Agilité

Introduction à. Oracle Application Express

INTRODUCTION À LA GESTION DE PROJET AGILE (BACKLOG, TABLEAUX DE BORD, BURNDOWN, PLANIFICATION D ITERATIONS)

Netstorage et Netdrive pour accéder à ses données par Internet

An Phong Do. 567 croissant des Glaïeuls Laval (Québec) H7X 3H2 Cellulaire : anphongdo@gmail.com

Tableau comparatif des offres Visual Studio

Technique en informatique (Diplôme d études collégiales) Collège de Sherbrooke

Notes pour l utilisation d Expression Web

Transcription:

Ouverture ModelSphere, un outil de génie logiciel Marco Savard marco.savard@neosapiens.com Gino Pelletier gino.pelletier@neosapiens.com Département d informatique et de génie logiciel 6 octobre 2009 Page 1

Présentation Contexte Histoire d'une libération de code (D. Pascot) Statut Fonctionnalités de l'outil Architecture et réalisation d'un projet complexe en java Mise sur pied d'une communauté Discussion libre Page 2

Obtenir la présentation Sur JavaForge: www.javaforge.com Chercher le projet Open ModelSphere Onglet Documents Répertoire Présentations Sur mon site personnel: www.marco-savard.com/openmodelsphere/presentations Page 3

Open ModelSphere : Contexte Un outil libre de génie logiciel développé à Québec (le seul?) Licence GPL En tant qu'utilisateur, vous pouvez l'utiliser librement, le distribuer librement, dans vos cours et dans vos futurs emplois. En tant que développeur, vous pouvez apprendre en analysant le code source. Si vous découvrez des lacunes, vous pouvez librement modifier l'outil, et soumettre vos améliorations. Opportunités pour des projets de fin d études cet hiver. Page 4

Histoire d'une libération de code (D. Pascot) Années 1980: SystemOID (1982-1988) 1983: Lisa 1984: Macintosh Consoi-MCD: Équipe de professeurs et d'étudiants de l'université Laval Début années 1990: Environnement Développement Commun: Couche GUI multi-platforme en C Le premier outil graphique de génie logiciel devient un produit commercial 1998 : Projet de recherche de SILVERRUN sur les technologies Java et Swing. 2008: Grandite libère les sources de ModelSphere Page 5

Open ModelSphere : Statut Des dizaines de téléchargements par jour, à travers le monde. Une cinquantaine de membres actifs dans le projet JavaForge (Québec, Japon, Allemagne). Quatre développeurs internes. Enseigné en SIO, utilisé par des ministères et des compagnies internationales. Avantages pour notre firme de consultation : Développement d une expertise pour réaliser nos mandats plus efficacement et à moindre coût. Développement sur mesure pour un client ayant un besoin spécifique (Intel). Version 3.1 prévue le 3 novembre 2009 Page 6

Partie II Fonctionnalités de l'outil Page 7

Fonctionnalités de l'outil Les trois dimensions Dimension relationnelle Conceptuel, logique et physique Dimension objet relationnelle, objet et des processus UML 1.4 : diagrammes de classes, cas d utilisation, séquence, etc. Dimension des processus d affaires Processus, flux, ressources, swimlanes, diagramme hiérarchique Page 8

Les trois dimensions de la modélisation Processus (Fonction) Données (relationnel) Classes (UML) Page 9

Avantages de l'outil Rétro-ingénierie Conception Comprendre rapidement un logiciel complexe (carte routière) Vues partielles d un logiciel Détecter des failles potentielles Génération des clés, des noms physiques, des règles référentielles Vérification d intégrité Génération de code Travail en équipe et en version Diagrammes et représentations multiples Comparaison/Intégration Versionnage, modification récente Page 10

Relationnelle : niveau conceptuel Page 11

Relationnelle : niveau logique Page 12

Relationnelle : niveau physique Page 13

Objet : Diagramme de classes UML Page 14

Objet : Diagramme de classes à la Java Page 15

Objet : Diagramme de classes à la Keys and Locks Page 16

Objet : Cas d utilisation Page 17

Objet : Cas de séquence Page 18

Processus d affaires : vue normale Page 19

Processus d affaires : vue hiérarchique Page 20

Cas types d utilisation Modélisation OO Conversion modèle de données Changement de formalismes Génération PK, FK, règles ref., noms physiques, DDL. Intégrité référentielle Gros modèles Voisinage, espace de travail, intégration, modifications récentes, versionnage. Page 21

Cas 1: Vérification d intégrité (1/3) Ce modèle de données contient plusieurs erreurs. Pouvez-vous les trouvez? 1. Cliquer Page 22

Cas 1: Vérification d intégrité (2/3) 1. Cliquer Ce modèle de données contient plusieurs erreurs. Pouvez-vous les trouvez? Les erreurs et avertissements sont indiqués par des préfixes devant les colonnes invalides. 3. Cliquer Page 23

Cas 1: Vérification d intégrité (3/3) Le rapport offre une ou plusieurs solutions pour chaque erreur. Il suffit de cliquer sur le lien pour appliquer la correction Page 24

Cas 2: Analyse des processus d affaires (1/2) Projet informatique est le processusracine Conception est un processus éclaté La durée et le coût cumulés du processus Conception. Des ressources associées à des processus feuilles Page 25

Cas 2: Analyse des processus d affaires (2/2) On peut associer une durée à un processus feuille et observer l impact sur le projet et les sous-projets. On peut associer un coût à une ressource, et observer l impact sur le coût total du projet. Page 26

Partie III Architecture et réalisation d un projet complexe Page 27

Architecture et réalisation d'un projet complexe Complexe? 494 KLOC en Java Environ 20 années-personnes Atouts graphiques Soutenu par un métamodèle interne Architecture en trois couches Les plugiciels Concepts OO Concepts des bases de données Métamodèle (catalogue) Undo/Redo (transactions ACIDes) (Pas encore multi-utilisateurs) Page 28

Atouts graphiques Multidiagramme Duplicats Styles graphiques Préfixes IU consistante Fenêtres redimensionnables; disposition graphique (layout) Internationalisation, localisation en français et anglais Page 29

Métamodèle : modélisation et génération GenMeta 274 fichiers; 24 KLOC en Java Page 30

Architecture en trois couches Plug-in GPL Plug-in Sms (GPL) 1287 classes (LGPL, 210 classes et commerciaux) Sms (LGPL) Jack (LGPL) 815 classes Page 31

Partie IV Mise sur pied d'une communauté Page 32

Mise sur pied d une communauté Site pour les utilisateurs www.modelsphere.org Novices Windows: autoextrwindows (setup.exe) Avancés: batch file Site pour les contributeurs www.javaforge.com Gestionnaire SVN, Wiki, Forum, Métriques Cinq niveaux de contributeurs Page 33

Cinq niveaux d utilisateurs Administrateur Développeur interne Développeur externe Documenteur Utilisateur Page 34

1er rôle : utilisateur Administrateur Développeur interne Développeur externe Documenteur Utilisateur Utilisateur novice ou avancé de ModelSphere Soumet des bogues, suggestions d amélioration de l application Visualise les problèmes et solutions soumis par les autres utilisateurs Participe aux forums de discussion Page 35

2e rôle : documenteur Administrateur Développeur interne Développeur externe Utilisateur avancé Créé et met à jour des documents pour les autres utilisateurs Accès en écriture aux documents, mais sans accès au code source Documenteur Utilisateur Page 36

3e rôle : développeur externe Administrateur Développeur interne Développeur externe Documenteur Utilisateur Télécharge les sources sur un poste local et teste la version en cours de développement Souvent le premier à tester et à trouver les bogues. Peut modifier les sources localement, mais ne peut téléverser les modifications Propose des changements au logiciel à un developpeur interne pour révision de code Apprend l architecture de ModelSphere en étudiant le code source Développeurs externes: ministère neosapiens.com de la 2009 Santé (MSSS) Page 37 Visualise les sources existentes

Développeur externe Conditions d adhésion Connaissance de l outil en tant qu utilisateur Connaissance de Java et Eclipse Avoir été un utilisateur actif (avoir soumis des bogues, répondu à des questions, édité des wikis) et connu de la communauté Recommandé par un développeur interne Comment? Faire une demande par courriel à l administrateur C est l administrateur qui prend la décision finale Page 38

4e rôle : développeur interne Administrateur Développeur interne Développeur externe Documenteur Utilisateur Télécharge et visualise les sources existantes Créé et édite les sources du projet, et téléverse les changements Révise et accepte les demandes de modification du code soumis par les développeurs externes Doit démontrer une bonne connaissance de l architecture de ModelSphere pour être admis Développeurs internes: Grandite, neosapiens Page 39

Développeur interne Conditions d adhésion Connaissance de l architecture Connaissance de Java, Swing, métamodelling Avoir lu et compris le Developer s Guidelines Avoir été un développeur externe actif (avoir corrigé et soumis des modifications aux sources) et connu de la communauté Recommandés par une majorité de développeurs internes Comment? Faire une demande par courriel à l administrateur C est l administrateur qui prend la décision finale Page 40

5e rôle : administrateur Administrateur Développeur interne Développeur externe Documenteur Gère le projet Supervise les activités Définit les politiques Accepte les nouveaux membres Assigne des rôles aux membres Administrateur du projet: Grandite Utilisateur Page 41

1re étape : se connecter à JavaForge 1. Aller à www.javaforge.com 2. Cliquer 3. Cliquer Page 42

2e étape : inscription à JavaForge 3. Soumettre 1. Remplir 2. Remplir Page 43

3e étape : trouver le projet Open ModelSphere 1. Cliquer 2. Remplir Page 44

Écran utilisateur Un utilisateur n a normalement pas les onglets reliés aux sources (Builds, SCM Repository, Membres). Page 45

Écran développeur Pour devenir développeur, il faut d abord être utilisateur, puis faire une demande d adhésion à l administrateur du projet Page 46

Obtenir les sources 2. Cliquer droit 1. Choisir un répertoire 3. Nouveau répertoire Page 47

Obtenir les sources 1. Sélection 2. Checkout Menus disponibles lorsque Tortoise est installé dans Windows Explorer Page 48

Obtenir les sources 1. URL Javaforge 2. Répertoire nouvellement créé 3. Page 49

Obtenir les sources : succès 1. Page 50

Obtenir les sources : échec Si vous obtenez cette erreur, vérifiez si vous vous êtes branché sur Javaforge à titre de développeur, et non comme simple utilisateur. Page 51

Obtenir les sources 1. Workspace Page 52

Obtenir les sources 1. Démarrer Page 53

Obtenir les sources 1. Choisir Page 54

Obtenir les sources 1. Retrouver notre workspace Page 55

Obtenir les sources 1. Ajouter les projets Page 56

Obtenir les sources 1. Ajouter les projets Page 57

Obtenir les sources 1. Parcourir 2. Retrouver org.modelsphere.jack 3. Page 58

Obtenir les sources 1. Entrer org.modelsphere.jack 2. Suivant Page 59

Obtenir les sources 1. Terminer Ajouter sms et plug-ins Page 60

Obtenir les sources 1. Démarrer ModelSphere Page 61

Partie V : Améliorations prévues avec 3.1 Refonte de l IU (Windows Vista) Modélisation de données Look and feel, grillage, diagramme de voisinage, correcteur d orthographe Clés de substitution, régles référentielles, diagramme de domaine, multiplicités spécifiques Modélisation de classes UML Rétro-ingénierie Java, énumérations, classes utilitaires, classes associations neosapiens.com ፫፩፩፲ Page ፯፫

Partie V : Améliorations possibles avec 3.2 Plugiciel de disposition graphique (projet) Plugiciel de rapports HTML (projet) Plugiciel d import de ebxml Plugiciel d import d autres outils Rétro-ingénierie de C# Améliorer le soutien de UML. neosapiens.com ፫፩፩፲ Page ፯፬

Partie V Questions et discussion neosapiens.com ፫፩፩፲ Page ፯፭