Présentation de SOFI 2.0 Version 2.0.3 Présentation SOFI 2.0 1
Agenda Historique Utilisation de SOFI Pourquoi SOFI? 3 Grands Axes Développement Accompagnement et formation Communauté Architecture Les nouveautés Les fonctionnalités Bientôt avec SOFI 2
Historique Canevas d applications adapté aux besoins du gouvernement du Québec et de la communauté québécoise. 3
Historique SOFI en quelques chiffres 2003 L année de la naissance de SOFI, création d une première boîte à outils Java pour les développements internes à Nurun. 2004 Choix du nom officiel pour la boîte à outils, SOFI est baptisé. Signature du premier partenaire, le MELS fait confiance à SOFI pour développer leur PES Java. Sortie officielle de la première version offerte aux clients. 2006 Lancement de la communauté SOFI avec le Portail. SOFI finaliste au Octas. Développement de la version 2.0. 2007 Lancement de la version 2.0 Lancement du forum de discussion au Portail SOFI Présentation SOFI 2.0 4
Historique SOFI en quelques chiffres 659 Le nombre de classes abstraites qui ont été développées au cours des dernières années dans le canevas. 89 060 Le nombre de lignes de code incluant les commentaires Javadoc. 55 782 Le nombre de lignes de code sans les commentaires Javadoc. 200 et + Nombre d utilisateurs ayant fait la demande d accès au Portail SOFI. 40 et + Le nombre de systèmes développés avec SOFI. 10 et + Le nombre d organisations ayant fait confiance à SOFI. Présentation SOFI 2.0 5
Utilisation de SOFI Organisation Nombre Spécificité MELS * 20 et + 1er client SOFI, Projets (Ariane, Charlemagne, Socrate, Gduno, SOBEC, SYBEC, GSEC etc.) MCCCF * 4 PES complète d un système de mission avec SOFI : Projet Di@pason, Répertoire du patrimoine culturel du Québec MAMR * 10 et + Projet FIMR, Portrait municipal, Registre des droits d accès, K20 (Demande informatique), F02 (Sigat-partage), P03 (Services commun), MDEIE * 5 Multiple projets Intranet. Reddition des comptes (Régions), Comp@sation, Sésamm, Organismes et partenaires (A11), Pacte rural, etc. Communication avec le système Siebel (CRM). Investissement Québec 1 PES d envergure, diffusion des comptes clients et formulaire étape par étape. https://moncompte.investquebec.com Présentation SOFI 2.0 6
Utilisation de SOFI Organisation Nombre Spécificité SAQ 1 Plateforme de gestion du site de commerce électronique SAQ.com CSPQ 1 Projet ICAFI (Gestion des équipements de Télécommunication au gouvernement du Québec) Sogique 1 Projet SIPAD (Système d'information pour les personnes ayant une déficience) Contrôleur des finances 1 Projet extranet au gouvernement du Québec afin de s inscrire aux programmes de formation. Présentation SOFI 2.0 7
Pourquoi SOFI? Développement de système sans SOFI RESSOURCES ARCHITECTURE COMPOSANTS Présentation SOFI 2.0 8
Pourquoi SOFI? Développement de système avec SOFI RESSOURCES ARCHITECTURE COMPOSANTS Présentation SOFI 2.0 9
Patrons de conception Pourquoi SOFI? Systèmes Struts, Spring, Oracle ADF, etc. Java EE Architecture technologique (Serveur d applications, outil de développement, gestionnaire de sources, etc.) Présentation SOFI 2.0 10
Patrons de conception Pourquoi SOFI? Systèmes SOFI Struts, Spring, Oracle ADF, etc. Java EE Architecture technologique (Serveur d applications, outil de développement, gestionnaire de sources, etc.) Présentation SOFI 2.0 10
Pourquoi SOFI? Les raisons derrière la création Historique 4GL La complexité des multiples cadres d applications Présence de code redondant Différences au niveau des méthodes de programmation Se doter d'une boîte à outils 11
Pourquoi SOFI? SOFI est un cadre d applications fonctionnel plutôt que technique Expérience de dizaines de développement Réponds aux besoins utilisateurs Offre une normalisation aux développeurs et aux utilisateurs Réponds aux besoins non comblé par les cadres d applications techniques du marché 12
Pourquoi SOFI? Un infrastructure pour tous vos systèmes Service du référentiel Service des systèmes Service des paramètres systèmes Service des domaines de valeurs Service de sécurité Service de libellés Service d authentification Service de messages Service de journalisation Infrastructure Service d aide en ligne PES Système de mission Extranet Présentation SOFI 2.0 13
Pourquoi SOFI? Un infrastructure pour tous vos systèmes Service du référentiel Service des systèmes Service des paramètres systèmes Service des domaines de valeurs Service de sécurité Service de libellés Service d authentification Service de messages Service de journalisation Console de gestion de l infrastructure SOFI Service d aide en ligne PES Système de mission Extranet Présentation SOFI 2.0 13
3 grands axe Communauté Accompagnement SOFI Développement Présentation SOFI 2.0 14
Axe communauté (Portail SOFI) SOFI http://sofi.nurunquebec.com Blogues Documentation Nouvelles Formation Téléchargement Forum de discussions Commentaires Fil RSS Infrastructure Console SOFI Gabarit Sources Librairies Présentation SOFI 2.0 15
Axe communauté (Portail SOFI) SOFI http://sofi.nurunquebec.com Blogues Documentation Nouvelles Formation Téléchargement Forum de discussions Commentaires Fil RSS Infrastructure Console SOFI Gabarit Sources Librairies Présentation SOFI 2.0 15
Axe communauté (Portail SOFI) Le forum de discussions SOFI 16
Axe d accompagnement Plan de formation 17
Architecture SOFI = Architecture ouverte 18
Architecture SOFI = Support universel 19
SOFI + Spring = Encore plus d ouverture Architecture 20
Architecture de SOFI SOFI + Ant + Ivy = Facilité de développement!http://ant.apache.org, http://ant.apache.org/ivy Projet dévelopé avec SOFI http://svn.nurunquebec.com/ivy Répertoire des librairies SOFI EAR WAR JAR Publication Documentation Test unitaires 21
Oracle Support de OAS et JDeveloper 10.1.3.x Les nouveautés Pré-compilation des pages JSP dans les fichiers de déploiements Plusieurs améliorations dans l utilisation d ADF!Support des conditions IN dans les filtres de recherche!intégration de Spring pour le chargement des objets cache sur demande Au lieu d être chargé au lancement de l application.!optimisation des listes de navigations!classe JUnit de base pour faciliter les tests unitaires des services. 22
Les nouveautés Logiciel libre (Open Source) Spring et Hibernate!Implémentation de la logique d affaires Eclipse!Téléchargement via le Portail de l outil de développement configuré avec SOFI et d un gabarit de départ. Ant et Ivy!Intégration d un outil spécialisé dans la gestion des dépendances des libraires.!téléchargement possible des librairies de SOFI et des cadres d applications dépendants selon les besoins de votre application. Plusieurs configuration sont disponibles :» Exemple : Spring, Quartz, adf-1012 (version 10.1.2), JasperReports Permet de configurer un proxy s il y a lieu.» Nécessaire si on désire extraire SOFI du répertoire de Nurun. 23
Les nouveautés Une infrastructure orientée service améliorée Un console de gestion pour tous vos services horizontaux nécessaires au développement d un site Web de tout type. Offert dans une implémentation complète avec Oracle ADF ou une version partielle avec Spring et Hibernate en version Beta. 24
Les nouveautés Présentation SOFI 2.0 25
Amélioration de la sécurité Meilleure flexibilité dans les autorisations!rôle pour un client spécifique C est seulement la clé unique du client qui est conservé dans le dépôt des données de l infrastructure SOFI.!Rôle pour une période spécifique Spécification d une date de début et date de fin définissant la période d activation. Gestion des rôles améliorée!les rôles sont maintenant hiérarchique Permet de connaître qui est le supérieur d un utilisateur X!Possible d administrer les rôles selon un type utilisateur prédéfinis Ex. La liste des rôles offert à un utilisateur externe de seront pas nécessairement les mêmes à un utilisateur interne.!il est possible de spécifier un rôle pour la consultation seulement. Les nouveautés 26
Amélioration de la sécurité (suite) Personnalisation par utilisateur et par application Les nouveautés!un utilisateur peut être associé à une entité quelconque pour une application spécifique Ex. Une organisation, un département, etc. C est seulement la clé unique de cette entité qui est conservé dans le dépôt des données de l infrastructure SOFI!Il est possible de désactiver un utilisateur pour une application spécifique!associer un type d utilisateur pour un utilisateur et une application Un système utilisant ses nouvelles fonctionnalités de sécurité est déjà en production à travers la grande province 27
Les nouveautés Arbre de navigation 28
Les fonctionnalités SOFI = Solution idéale pour les développements Ajax Tous les composants de formulaires offrent des fonctionnalités Ajax Liste de valeurs Fenêtre flottante Ouverture et fermeture de zone spécifique Aide en ligne 29
Les fonctionnalités Évènement Ajax disponibles pour toutes les balises de formulaire Liste de valeurs 30
Les fonctionnalités Liste déroulante Boite à cocher 31
Les fonctionnalités Lien hypertexte Grande flexibilité d utilisation Exemple permettant d ouvrir ou de fermer une zone 32
Les fonctionnalités La barre de statut (message) Rafraichissement, selon un délai spécifique, d une zone (DIV) dans une page 33
Support de barre d onglet à deux niveaux Les fonctionnalités Message d avertissement lorsqu une transaction n est pas complétée 34
Les fonctionnalités Info-bulle et aide en ligne via un URL externe tel qu un gestionnaire de contenu (CMS) Sur service, onglet ou champ spécifique 35
Les fonctionnalités Aide en ligne Ajax 36
Les fonctionnalités Balise de contenu multilingue provenant d une source externe tel qu un gestionnaire de contenu 37
Les fonctionnalités Inclusion d une zone provenant d un site externe (Portlet) La zone Mon Profil des PES provient directement d un système commun 38
Les fonctionnalités Inclusion d une zone provenant d un site externe (Portlet) La zone Mon Profil des PES provient directement d un système commun 38
Les fonctionnalités Objectif de SOFI Offrir une qualité de plus en plus supérieure tout en améliorant la productivité Qualité Productivité 39
Bientôt avec SOFI Intégration des services Web Extension Spring bientôt disponible Nouveauté dans la console SOFI Importation et exportation du référentiel en XML Nouveau service pour diffuser des nouvelles Nouveauté Ajax Liste de suggestion (Google Suggest) Arbre de navigation Outil de génération Générer vos gabarits de couche de présentation en quelques minutes.!en tout respect de vos normes ou celle proposé par SOFI 40
Des questions? Merci! 41