La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Stage portabilité HSLV2. 2 Plan  Présentation de SII  SII en France  SII à Rennes  Mon environnement  Présentation du stage  Objectifs  Problématiques.

Présentations similaires


Présentation au sujet: "Stage portabilité HSLV2. 2 Plan  Présentation de SII  SII en France  SII à Rennes  Mon environnement  Présentation du stage  Objectifs  Problématiques."— Transcription de la présentation:

1 Stage portabilité HSLV2

2 2 Plan  Présentation de SII  SII en France  SII à Rennes  Mon environnement  Présentation du stage  Objectifs  Problématiques de portabilité  Hot Spot Locator V2  Déroulement du stage  Documentation  Choix de développement  Aperçu du Framework Qt  Intégration continue  Développement Stage portabilité HSLV2 - Jonathan CourtoisLundi 14 septembre 2009  Retour d’expérience  Design architectural  Interface graphique  Avantage de Qt  Déploiement  Qt Creator  Conclusion  Questions

3 Présentation de SII SII en France SII à Rennes Mon environnement

4 SII en France  Société de conseil et d’ingénierie informatique  Forte indépendance de chaque agence  Création : 1 avril 1979  Capital : 40 million d’euros  Chiffre d’affaires : € (+18%) au 31 mars 2009  Répartition : 10 agences et 10 bureaux en France  Effectifs : 2200 employés Stage portabilité HSLV2 - Jonathan Courtois4Lundi 14 septembre 2009 Présentation de SII

5 SII en France  Depuis 1991, SII a mis en place un système d’assurance qualité.  Dans les 5 premières sociétés de services françaises à être certifiée ISO 9001  La 2 ème à faire certifier son activité d’assistance technique, dès Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois5 L’engagement qualité  La gestion des processus est basée sur le modèle CMMi (5 niveaux)  Aix en Provence, Nantes, Rennes, Toulouse : niveau 3  Sophia Antipolis : niveau 2

6 SII à Rennes  Création : 1997  Effectifs 2009 : 450 collaborateurs  Clients : France Télécom, Thalès, Thomson, Alcatel, Ouest-France, … Stage portabilité HSLV2 - Jonathan Courtois6Lundi 14 septembre 2009 L’agence de Rennes Les pôles de compétences L’ingénierie industrielle et l’électronique L’ingénierie logicielle et système d’information Les réseauxLes télécoms

7 SII à Rennes  L’assistance technique  Mode d’intervention souple et de mise en service rapide (chez le client).  Le forfait  Mode d’intervention généralement externalisé (dans les locaux de SII). Stage portabilité HSLV2 - Jonathan Courtois7Lundi 14 septembre 2009 Les différentes prestations La répartition Types de prestationsSecteurs d’activités

8 Mon environnement  Personnes dédiées à l’encadrement des projets  1 Directeur technique forfait, 4 Directeurs de projets, 10 Chefs de projets, 2 Administrateurs systèmes et réseaux  Moyens  Plateformes : 820 M² Dédiés à Rennes  Locaux à Brest, Lannion, Caen et Le Mans  Locaux : Sécurisés  Suivi des faits techniques, bugs : Bug Tracker, Mantis, Bugzilla, …  Gestionnaires de Configuration : CVS, Sourcesafe, SubVersion, …  Licences : Visual Studio, Rational Rose, Caliber RM, CVI,...  Systèmes : Windows, Linux, Solaris, Mac  Qualité  ISO 9001 v2000  CMMi niveau 3 Stage portabilité HSLV2 - Jonathan Courtois8Lundi 14 septembre 2009 Le plateau forfait

9 Mon environnement  Client principal : France Télécom  Applications autour de la connexion Internet  Home Software Suite (particuliers)  Business Everywhere Software Suite (entreprises)  Effectifs: 29 personnes en 2 équipes  Front office (7) n Travaillent directement chez le client n Une partie développement d’anticipation  Back office (22) n Travaillent à l’agence SII Rennes n Point de vue production des applications n Equipes de 4-5 personnes Stage portabilité HSLV2 - Jonathan Courtois9Lundi 14 septembre 2009 Le pôle CIM

10 Présentation du stage Objectifs Problématiques de portabilité Hot Spot Locator V2

11 Objectifs  Analyse sur les problématiques de portabilité avec réalisation d'un document  Migration d’un projet existant (HSLV2)  Framework MFC (Windows) -> Application portable  Mise à jour des documents existants  Mise en place d’un serveur pour la plateforme d'intégration continue  Hudson  Réalisation de tests sur Windows et Mac OS X  Déploiement sur les différents systèmes d’exploitation  Etude de portabilité incluant les difficultés rencontrés et un retour d’expérience Stage portabilité HSLV2 - Jonathan Courtois11Lundi 14 septembre 2009 Missions

12 Problématiques de portabilité Stage portabilité HSLV2 - Jonathan Courtois12Lundi 14 septembre 2009 Langages et interfaces graphiques portables Environnements de développement

13 Problématiques de portabilité Stage portabilité HSLV2 - Jonathan Courtois13Lundi 14 septembre 2009 Outils de compilation

14 Problématiques de portabilité Stage portabilité HSLV2 - Jonathan Courtois14Lundi 14 septembre 2009 Réaliser le plus de code en commun possible -> Sinon OSAL

15 Problématiques de portabilité  Variables d’environnements  Dépendance de librairies  Dynamique ou statique  Installeurs Stage portabilité HSLV2 - Jonathan Courtois15Lundi 14 septembre 2009 Problématique de débogage Problématique de déploiement Certaines règles de codage à respecter (cf. Analyse portabilité)

16 Hot Spot Locator V2 Stage portabilité HSLV2 - Jonathan Courtois16Lundi 14 septembre 2009 Recherche d’une adresse et liste des hot spots Orange à proximité

17 Hot Spot Locator V2 Stage portabilité HSLV2 - Jonathan Courtois17Lundi 14 septembre 2009 Affichage des hots spots Orange sur une carte

18 Déroulement du stage Documentation Choix de développement Aperçu du Framework Qt Intégration continue Développement

19 Documentation  Analyse de portabilité  Etude sur le développement multiplateforme n Langages, GUI, IDE, outils de compilation  Développement d’une application multiplateforme  Problèmes lors du portage d’une application non portable  Guide de règles de codage C++ (portable)  Rédaction d’une étude complète  Synthèse des problèmes rencontrés au cours du développement du plugin de HSLV2  Réflexion sur les problématiques de portabilités  Retour d’expérience sur un nouvel IDE: Qt Creator Stage portabilité HSLV2 - Jonathan Courtois19Lundi 14 septembre documents à réaliser

20 Choix de développement  Langage : C++  Framework et interface graphique : Qt  Environnement de développement : Qt Creator  Outil de compilation : Qmake  Compilateurs  Windows: Visual C  Mac OS X: Gcc Stage portabilité HSLV2 - Jonathan Courtois20Lundi 14 septembre 2009 Langage et outils utilisés

21 Aperçu du Framework Qt  1 ère version : 1995  Librairie : C++  Bindings : Java, Python, Ruby, Ada, C#, Pascal, Perl, PHP, Haskell, Lua, Dao, Tcl, Common Lisp, D  IDE : Qt Creator - Plugins: Visual Studio, Eclipse  Plateformes : Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois21 Présentation Développement rapide  Nouveau support : Symbian  Support : Windows 7, Mac OS X 10.6  Support étendu pour UNIX : Solaris 10, HP-UX and AIX 6  Amélioration des performances et ajout de fonctionnalités License LGPL Qt 4.6

22 Intégration continue Stage portabilité HSLV2 - Jonathan Courtois22Lundi 14 septembre 2009 Principe

23 Intégration continue  Serveur dédié à la compilation  Un job par sous projets  Un état des compilations et une récupération facile des binaires  Le résultat des tests unitaires automatisés  Beaucoup d’autres outils non étudiés Stage portabilité HSLV2 - Jonathan Courtois23Lundi 14 septembre 2009 Hudson

24 Développement  Module de gestion de requêtes  Envoi de requêtes  Téléchargement de fichiers  Partie géocodage  Géo codage d’une adresse postale  Calcul de distance entre 2 adresses  Calcul d’une zone de proximité autour d’une adresse  Partie cartographie  Affichage d’une carte  Gestion des marqueurs  Gestion des déplacements et du zoom  Partie sauvegarde des cartes  Sauvegarde en local de plusieurs images  Affichage des cartes sauvegardées  Gestion des déplacements et du zoom Stage portabilité HSLV2 - Jonathan Courtois24Lundi 14 septembre parties dans le projet

25 Retour d’expériences Design architectural Interface graphique Avantage de Qt Déploiement Qt Creator

26 Design architectural  Respect des couches  Pas de difficultés pour HSLV2  Interfaces indépendantes d’un framework (Qt) Stage portabilité HSLV2 - Jonathan Courtois26Lundi 14 septembre 2009 Architecture en couches Design pattern factory OSAL  Le framework Qt fait office de couche d’abstraction

27 Interface graphique Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois27 Difficultés d’une interface commune  Différences d’affichage  Textes (Polices, tailles, …)  Positions  Philosophie des utilisateurs Mac OS différente de celle de Windows

28 Interface graphique Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois28 Couche présentation  Idéalement une interface graphique pour chaque OS  Permet de respecter la philosophie des différentes plateformes

29 Avantage de Qt  Module d’envoi de requêtes : QNetwork  Lecture des fichiers de configuration : QSettings  Gestion de threads : QThread  Chargement des librairies dynamiques : QLibrary  Mini navigateur web : QWebKit Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois29 Développement rapide grâce aux classes de Qt

30 Déploiement  Librairies dynamiques  Installeur NSIS Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois30 Windows Mac OS X  Utilisation d’outils Mac OS  otool  install_name_tool  Installation par Drag & Drop  Autres installeurs  Iceberg, …

31 Qt Creator Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois31 Avantages Inconvénients  Encore jeune (sortie en mars 2009)  Fonctionnalités restreintes  Multi-OS  Fichiers de projets  Combinaison des fichiers projets et Cmake  Utilisation possible de macros spécifiques  Designer intégré  Debugger pour GCC et Visual  Gestion de configurations (SVN, Git, …)  Interface très intuitive

32 Conclusion

33 Lundi 14 septembre 2009Stage portabilité HSLV2 - Jonathan Courtois33 Technique Stage  Compétences scolaires : C++, UML, Qt  Phases de développement rapide  Compétences acquises : Intégration continue, tests unitaires, développement sous Mac OS X, problématiques de portabilité  Intégration au sein d’une grande équipe dans une société de service  Contact avec différents acteurs : architectes, développeurs, intégrateurs, …  Pensée une application multi-OS en amont  Architecture en couche primordiale (cas de plusieurs IHM)  Risques limités grâce à l’utilisation de Qt, Qmake et plusieurs compilateurs (gcc et visual compiler)

34 Questions


Télécharger ppt "Stage portabilité HSLV2. 2 Plan  Présentation de SII  SII en France  SII à Rennes  Mon environnement  Présentation du stage  Objectifs  Problématiques."

Présentations similaires


Annonces Google