Royaume du Maroc Université Mohammed Premier Ecole Nationale des Sciences Appliquées Oujda Filière génie informatique

Mémoire Présenté en vue d’obtenir Le diplôme d’Ingénieur d’Etat

Spécialité : Génie Informatique Option : Qualité Logiciel N° GI 2010 / 5

Sujet :

Capitalisation des composants SharePoint SQLI Et participation au projet Axa B² 2nd Release

Présenté par : M. Mohammed BENABDALLAH M. Mohammadi LAGRINI

Encadré par : Mlle. Fatna ELMQAMI (SQLI) M. Anas BOURHLEM (SQLI) M. Jamal BERRICH Année Universitaire 2009/10

Page 2 sur 74

Remerciements
En préambule à ce mémoire, nous souhaitons adresser nos remerciements les plus sincères aux personnes qui nous ont apporté leur aide et qui ont contribué à l'élaboration de ce mémoire ainsi qu’à la réussite de cette formidable dernière année à l’Ecole Nationale des Sciences Appliquées – Oujda-. Nous tenons à remercier sincèrement Mlle. Fatna Elmqami, Mr. Anas Bourhlem, qui se sont toujours montrés à l'écoute et très disponible tout au long de notre stage, ainsi pour l'inspiration, l'aide et le temps qu'ils ont bien voulu nous consacrer et sans leur aide ce mémoire n'aurait jamais vu le jour. Nos remerciements s’adressent également à Mr Toumi Bouchentouf, Chef département informatique à l’ENSAO, Mr Jamal Berrich pour la grande patience dont ils ont fait preuve malgré leurs charges académiques et professionnelles. Monsieur, Rachid Rami, Directeur SQLI Oujda qui nous a permis de réaliser ce stage à l’agence SQLI Oujda, Mr, Yassir Boughrara chef de projet, de son soutien, encouragement et de sa sympathie. Nous exprimons notre gratitude à tous les consultants et internautes rencontrés lors des recherches effectuées et qui ont accepté de répondre à nos questions. Nous n'oublions pas nos parents pour leur contribution, leur soutien et leur patience.

Page 3 sur 74

Sommaire
Remerciements .................................................................................................................. 3 Résumé .............................................................................................................................. 6 Abstract ............................................................................................................................. 7
‫8 ................................................................................................................................ ﻤﻠﺨﺹ‬

Introduction générale ........................................................................................................ 9 Partie 1. Contexte général des projets : CAP SQLI MOSS et AXA B² 2nd Release ... 10

Chapitre 1. Présentation de l’organisme d’accueil : SQLI Oujda ............................ 10 1.1 1.2 Chapitre2. 2.1 2.2 Partie 2. Présentation de l’agence SQLI Oujda ....................................................... 10 Contexte du stage ...................................................................................... 12 Outils et méthodes ................................................................................. 16 Outils SQLI CMMI ................................................................................... 16 Microsoft Office SharePoint Server 2007 (Moss 2007) ........................... 18 CAPI MOSS : Projet de capitalisations des Composants SQLI MOSS ....... 29

Introduction ................................................................................................................. 29 Chapitre1. 1.1 Chapitre2. 2.1 2.2 2.3 Engagement sur le projet CAPI MOSS ................................................. 29 Présentation de la capitalisation ................................................................ 29 Mise en œuvre du projet CAPI MOSS .................................................. 29 Environnement technique.......................................................................... 29 Généralisation des composants SQLI MOSS ........................................... 30 Bilan du projet ........................................................................................... 36 Le projet « AXA B² 2nd Release » ................................................................ 37

Conclusion du projet ................................................................................................... 36 Partie 3.

Introduction ................................................................................................................. 37 Chapitre1. 1.1 1.2 Chapitre2. 2.1 2.2 2.3 2.4 AXA B² : Etude fonctionnelle ............................................................... 37 Présentation de l’existant AXA B² 1st Release.......................................... 37 Présentation de Axa B² 2nd Release........................................................... 42 AXA B² 2nd Release : Mise en œuvre.................................................... 43 Architecture du projet ............................................................................... 43 Organisation du projet AXA B² 2nd Release ............................................. 44 Réalisation du Projet AXA B² 2nd Release................................................ 46 Bilan du projet AXA B² ............................................................................ 57

Conclusion et perspectives .......................................................................................... 59 Liste des figures .............................................................................................................. 61

Page 4 sur 74

Liste des tableaux ............................................................................................................ 62 Partie 4. Annexes ........................................................................................................ 63 Méthodologie de développement .......................................................... 64 Etapes de construction du portail .............................................................. 64 Les développements WSS et MOSS 2007 ................................................ 65 Glossaire des attributs ............................................................................... 67 Structure pour les pages de publications ................................................... 69 Organisation des fichiers, sites et features ............................................ 71 Organisations des fichiers ......................................................................... 71 Organisation des sites, des pages et des listes ........................................... 72 Références MOSS ................................................................................. 74 Références internationales ........................................................................ 74 Références SQLI : ..................................................................................... 74

Chapitre1. 1.1 1.2 1.3 1.4 Chapitre2. 2.1 2.2 Chapitre3. 3.1 3.2 -

Page 5 sur 74

Résumé
Notre stage s’est déroulé au sein du Groupe SQLI, à l’agence d’Oujda, au pôle ingénierie, dont l’activité principale est la conception et la réalisation d’applications Web. Afin de construire une nouvelle équipe sous la technologie Microsoft Office SharePoint Server (MOSS) SQLI nous a accompagnés durant un cursus de formation et de montée en compétences sur SharePoint, qui est de plus en plus sollicité pour des grands projets.

Dans un premier temps nous avons eu pour mission de capitaliser les composants MOSS créé sur différents projets dont l’agence a contribuer, l’objectif était d’une part, de nous familiariser avec la technologie et l’approche SQLI des projets MOSS, et d’autre part avoir une collection de composants prêt-a-utiliser dans un nouveau projet MOSS, muni d’une documentation technique et fonctionnel les composant capitalisé touche les fonctionnalités les plus utilisée : menu, multilinguisme, lecteur flash, pages d’erreurs personnalisée …. Ensuite nous avons intégré une nouvelle équipe pour le premier projet MOSS chiffré, géré et produit à l’agence SQLI Oujda, il s’agit de « Axa B Square Site Agent, 2nd Release », un projet d’envergure qui étend la première version du produit. La solution utilise les fonctionnalités MOSS pour créer une « usine à site » pour les agents bancaire d’Axa Belgique, la procédure pour créer un site, l’administrer, lui attribuer un nom de domaine, personnaliser l’affichage et les langues disponibles, tout est automatisé avec SharePoint. Des enjeux importants, Axa est un client important lié avec SQLI par de nombreux projets (Axa.fr, Axa en claire, Axa Mexique) la satisfaction client, la qualité de la solution et un taux d’erreur minimale sont des obligations à satisfaire, par ailleurs au niveau de l’agence SQLI Oujda, nous avions l’obligation de fidéliser les agences « inshore » pour plus de confiance et montrer que l’équipe MOSS Oujda est opérationnelle. Tout au long de notre stage nous avons suivi la démarche Skills, le « CMMI made by SQLI », nous avons assisté a une évaluation CMMI niveau 3, et pris le rôle d’Ingénieur Concepteur Développeur Testeur, et ça a été au delà de nos attente aussi bien sur le plan technique que sur le plan relationnel

Mots clés : SQLI, MOSS, .NET, WSS, CMMI, C#, Microsoft.

Page 6 sur 74

Abstract
Our training course took place within the Group SQLI, in the Oujda agency, whose main activity is the conception and the realization of Web applications. In order to set up a new Microsoft Office SharePoint Server (MOSS) developer team, SQLI accompanied us during a programme of course and formation to rise in skills on Microsoft .NET Framework and specially SharePoint, which is increasingly used for large projects. Our mission at was to capitalize MOSS components created on various projects the agency of contributed, Our aim was, on one hand, to familiarize us with the technology and the SQLI approach of the MOSS projects, and on the other hand to have a set of components ready-to-use for possible use in any MOSS project, provided with a technical and functional documentation. The capitalized component we worked on are most used features: menu, multilingual sites, flash reader, custom errors pages. Then we integrated a new team for the first MOSS project, managed and produced at SQLI Oujda agency, the project is " Axa B Square Site Agent, 2nd Release ", a large-scale project which extends the first version of the product. The solution uses the MOSS features to create a "site factory" for the banking agents of Axa Belgium, the procedure to create a site, administer it, attribute it a domain name, personalize the display, the available languages, are with SharePoint. Axa is an important customer bounded with SQLI by numerous projects (Axa.fr,”Axa en claire”, “Axa Mexico”, “Axa retraite” …). The customer satisfaction, the quality of the solution and a minimum error rates are obligations. Besides that at the level of the SQLI Oujda agency, we had the requirements to develop loyalty of inshore agencies for more trust and to show that the Oujda MOSS team is operational and ready. Throughout our training course we followed the Skills approach "CMMI made by SQLI", we witness CMMI evaluation level 3 , and taken engineer's role as Designer Developer and Tester, and that was beyond our expectation as well on the technical plan as on the relational one.

Keywords: SQLI, MOSS, .NET, WSS, CMMI, C#, Microsoft.

Page 7 sur 74

‫ﻤﻠﺨﺹ‬
‫ﻓﻲ ﺍﻃﺎﺭ ﻣﺴﺎﺭ ﺗﻜﻮﻳﻦ ﻣﻬﻨﺪﺱ ﺩﻭﻟﺔ ﻓﻲ ﺍﻻﻋﻼﻣﻴﺎﺕ ، ﻳﺪﺧﻞ ﻣﺸﺮﻭﻉ ﺍﻟﺘﺨﺮﺝ ﺍﻟﺬﻱ ﺍﻧﺠﺰﻧﺎﻩ‬ ‫ﺑﻮﺟﺪﺓ، ﺍﻟﺘﻲ ﺭﺍﻓﻘﺘﻨﺎ ﻃﻴﻠﺔ ﺍﻟﻔﺘﺮﺓ ﺍﻟﺘﺪﺭﻳﺒﻴﺔ‬

‫ﻓﻲ ﻓﺮﻉ ﺍﻟﺸﺮﻛﺔ ﺍﻟﻤﺘﻌﺪﺩﺓ ﺍﻟﺠﻨﺴﻴﺎﺕ ‪SQLI‬‬ ‫ﻟﺘﻌﺰﻳﺰ ﺇﻣﻜﺎﻧﻴﺎﺗﻨﺎ ﻋﻠﻰ ﻣﺴﺘﻮﻯ ﺗﻜﻨﻮﻟﻮﺟﻴﺎ ‪ MOSS‬ﻣﻦ ﺍﺟﻞ ﻭﻟﻮﺝ ﻓﺮﻳﻖ ﻋﻤﻞ ﺟﺪﻳﺪ.‬

‫ﻓﻲ ﺍﻟﻨﺼﻒ ﺍﻻﻭﻝ ﻣﻦ ﻓﺘﺮﺓ ﺍﻟﺘﺪﺭﻳﺐ، ﻛﻠﻔﻨﺎ ﺑﻤﻬﻤﺔ ﺗﻌﻤﻴﻢ ﻣﺮﻛﺒﺎﺕ ﺍﻟﺘﻲ ﻃﻮﺭﺕ ﻓﻲ‬ ‫ﺇﻃﺎﺭ ﺍﻟﻤﺸﺎﺭﻳﻊ ﺍﻟﻤﺘﻌﺪﺩﺓ ﺍﻟﺘﻲ ﺷﺎﺭﻙ ﻓﻴﻬﺎ ﻓﺮﻉ ﺍﻟﺸﺮﻛﺔ، ﺑﻬﺪﻑ ﺍﻟﺘﺄﻗﻠﻢ ﻣﻊ ﻫﺬﻩ‬ ‫ﺍﻟﺘﻜﻨﻮﻟﻮﺟﻴﺎ ﻭ ﻣﻘﺎﺭﺑﺔ ‪ SQLI‬ﺑﺎﻟﻨﺴﺒﺔ ﻟﻤﺸﺎﺭﻳﻊ، ﻣﻦ ﺟﻬﺔ ﺃﺧﺮﻯ ﺗﺤﺼﻴﻞ ﻣﺠﻤﻮﻋﺔ ﻣﻦ‬ ‫ﺍﻟﻤﺮﻛﺒﺎﺕ ﺍﻟﺠﺎﻫﺰﺓ ﻟﻺﺳﺘﻌﻤﺎﻝ ﻭ ﺍﻟﻤﻼﺋﻤﺔ ﻟﻤﺨﺘﻠﻒ ﺍﻟﻤﺸﺎﺭﻳﻊ .‬ ‫ﻭ ﻓﻲ ﻣﺎ ﺗﺒﻘﻰ ﻣﻦ ﺍﻟﻔﺘﺮﺓ ﺍﻟﺘﺪﺭﻳﺒﻴﺔ ﻭ ﺇﻟﻰ ﻭ ﻗﺘﻨﺎ ﺍﻟﺤﺎﻟﻲ ﺃﺩﻣﺠﻨﺎ ﻓﻲ ﻓﺮﻳﻖ ﻋﻤﻞ ﺟﺪﻳﺪ ﻹﻧﺠﺎﺯ‬ ‫ﻣﺸﺮﻭﻉ ﺟﺪﻳﺪ ﻟﺸﺮﻛﺔ ﺍﻟﺘﺄﻣﻴﻨﺎﺕ‪ AXA‬ﺑﺒﻠﺠﻴﻜﺎ ﺍﻟﺬﻱ ﻳﻜﻤﻞ ﺍﻟﻨﺴﺨﺔ ﺍﻷﻭﻟﻰ.‬ ‫:‪AXA, SQLI, MOSS‬‬ ‫ا تا‬

‫47 ‪Page 8 sur‬‬

Introduction générale
L’objectif de notre stage de fin d’études d’ingénieur est tout d’abord apprendre à appliquer dans le cadre d’un projet en entreprise les connaissances acquises au cours de notre scolarité. Mais aussi de réaliser la transition vers la vie active en acquérir une expérience professionnelle. Nous avons donc effectué le choix de ce stage avec une attention et une réflexion particulières pour nous permettre d’atteindre ces objectifs.

C’est le groupe SQLI qui nous a semblé répondre le mieux aux critères ainsi déterminés en termes d’activité de l’entreprise, de reconnaissance de qualité de son travail, de taille, mais aussi de culture. Nous avons donc souhaité réaliser un stage de cinq mois au sein du département ingénierie de l’agence SQLI Oujda. Notre travail s'est divisé en deux phases : La première phase réalisée consiste à la capitalisation de composants créés sur différents projets avec La technologie Microsoft Office SharePoint Server (MOSS), l’objectif étant d’une part la construction d’une Framworks SQLI MOSS, composé de différentes briques réutilisables et prêtes à être déployé directement ou modifié facilement pour s’intégrer aux nouveaux projets, et d’autre part de se familiariser avec la plateforme .NET et MOSS. La deuxième phase sur laquelle nous avons travaillé est le projet « Axa B square 2nd release », dans lequel nous avons intégré l'équipe MOSS, c’est le premier projet réalisé complètement à Oujda avec cette technologie (chiffrages, estimations, et pilotage). La première version du produit est actuellement en phase de recette client, mais la direction a décidé de se lancer dans la deuxième version du produit pour montrer au client la capacité de SQLI à relever le défi, à s’adapter au changement d’exigences, le premier lot de livraison est prévu pour mi-juillet.

Nous allons commencer, dans un premier lieu, par présenter le contexte de notre stage ainsi que les projets sur lequel nous avons intervenu. Nous allons donner une partie à la présentation de la plateforme Microsot Office SharePoint Server. Finalement, nous conclurons notre mémoire par une synthèse et des perspectives projetées à la suite de la mise en œuvre de notre projet.

Page 9 sur 74

Partie 1. Contexte général des projets : CAP SQLI MOSS et AXA B² 2nd Release
Chapitre 1. Présentation de l’organisme d’accueil : SQLI Oujda
1.1 Présentation de l’agence SQLI Oujda

SQLI est une société de services qui intervient dans le domaine du conseil et de l’intégration des applications e-business. Ses principaux axes de développement sont une offre de solutions sectorielles et une approche qualité totale avec la démarche CMMI. Le groupe est composé de plus de 2000 collaborateurs. Ses agences sont implantées principalement en France mais aussi à l’étranger (Suisse, Maroc, Luxembourg, Pays-Bas, Belgique et Canada) et, travaillent essentiellement pour des grands comptes. Créée en 1990, SQLI est spécialisée dans la conception et la mise en œuvre de systèmes d’informations reposant sur les nouvelles technologies. Chaque jour, elle accompagne ses clients dans l'alignement de leur système d'informations à la stratégie de l'entreprise : du conseil en amont au transfert de compétences en aval, en passant par la réalisation et l’intégration des applications. 1.1.1 - Les métiers de SQLI

SQLI propose ainsi une large gamme de compétences, qui va du conseil en urbanisation des systèmes d’information à la maîtrise d’œuvre de projets utilisant des technologies complexes. Ces compétences sont organisées en 5 pôles principaux : Le conseil (conseil fonctionnel, organisationnel, technologique) L’ingénierie (intégration et mise en œuvre) Le studio (design, ergonomie, éditorial, conception HTML) La formation, le transfert de compétences Les secteurs d’activités couverts par le groupe sont les suivants :

Figure 1 Secteurs d'activités couverts par SQLI

Page 10 sur 74

1.1.2 -

SQLI en chiffre

Depuis sa création, SQLI assoit son développement sur une expertise technologique de pointe et sur sa politique intense de veille et Recherche et Développement. En 2005, SQLI devient la 1ère SSII française à obtenir la certification CMMI niveau 3. En mai 2010, l’agence SQLI Oujda à effectué un « Go CMMI » afin de tester, en interne la maturité des processus CMMI, l’agence a été évalué a un respect des processus a 88%.

Figure 2 Chiffre d’affaires SQLI

En 2009, plus que 2000 collaborateurs en France et à l’étranger

Figure 3 SQLI dans le monde

Page 11 sur 74

1.2 -

Contexte du stage

1.2.1 - Description du sujet

Le sujet de notre stage se divise en deux parties : La capitalisation des composants créés sur différents projets (renault.com, Axa.be, Comprendre avec Axa, Axa en claire …) avec La technologie Microsoft Office SharePoint Server (MOSS), l’objectif étant la réutilisation possible de ces composants (UserControls, WebPart, WebControls, ToolParts …) sur de nouveaux projets de l’agence et ainsi gagner en charge et en temps. Le deuxième projet sur lequel nous avons travaillé est le projet « Axa B² (square) 2nd release », dans lequel nous avons intégrer l'équipe MOSS, il s’agit d’un projet réel pour Axa Belgique, dans sa deuxième version étend les fonctionnalités de la première. Afin d’accomplir les tâches qui nous étaient affecté nous avons suivit des formations sur les technologies utilisés, le déroulement du cursus de formation est expliqué en détail dans la partie suivante. 1.2.2 - Déroulement du stage a) Formations

Dès la première semaine de notre stage nous avons commencé un cursus de formation pour appréhender l’approche SQLI du Web et de l’ingénierie. Chaque formation se termine par un test pour vérifier si l’ensemble des objectifs de la formation est atteint. Ci-dessous les formations que nous avons suivies à SQLI Oujda a.i ) XHTML, CSS et accessibilité Web Objectifs : Produire et présenter des pages avec le respect des dernières normes de codage Décrire une mise en page Web via le langage (X)HTML/CSS2 Produire et présenter des pages avec le respect des dernières normes de codage Faire une présentation Web uniquement par CSS Maîtriser les subtilités du HTML et du XHTML Initiation théorique à l'accessibilité du XHTML Initiation théorique à l'accessibilité Durée :

Page 12 sur 74

Une semaine avec une demi-journée pour le test d’évaluation.

a.ii )

Fondamentaux développement Microsoft .NET Framework

Cette formation était notre fenêtre sur le monde de Microsoft et le Framework .NET. La formation a été animé par un expert technique de l’agence SQLI Rabat, dans le cadre du passage de compétences inter-agences. Objectifs : Identifier les différents éléments de la plate-forme .NET 3.5 Comprendre les concepts de la programmation objet avec C# Concevoir des applications Windows WPF et des sites Web avec ASP.NET et Silverlight Maîtriser les notions de composants et de services Web Gérer l'accès aux données avec ADO.NET 3.5,XML, et Linq Utiliser Visual Studio .NET 2008 pour améliorer la productivité Durée : Une semaine avec une journée pour les tests d’évaluation, QCM et application de « gestion de projet » englobant accès aux données avec Linq, authentification, Ajax …

a.iii ) Développements avec Microsoft SharePoint Server C’est notre première expérience avec Microsoft SharePoint 2007. Cette formation nous a permis d’une part d’avoir une vision sur la plateforme SharePoint et s’habituer avec l’administration SharePoint pour entamer enfin la parie développement de composants. Objectifs : Acquérir les compétences et connaissances pour mettre en œuvre Microsoft Office SharePoint Server 2007 (MOSS 2007) Le langage CAML Le développement de Web Parts Le modèle objet WSS3.0 Les événements Les Workflow Lecture et intégration des fichiers de normes de développement C# et MOSS 2007

Page 13 sur 74

Mise en place d’une application web et d’une collection de site sur la VM de formation "Provisionnement de listes par Feature. Développement de la WebPart sous Visual Studio et STSDEV basé sur le dossier de spécifications et de conception fourni. Packaging des développements et du contenu Durée : Huit jours de formation dont deux jours pour réaliser un mini-projet, objectif : respects des normes de codage, libération de ressource packaging et déploiement, API Objet SharePoint … a.iv ) Formation Ingénieur Concepteur Développeur (ICD) Skills

Nous avons intégrer le projet « Axa B² 2nd release » en tant que stagiaire, mais avec un rôle d’ICD débutant, cela impliquas de notre part le respect de la démarche CMMI que SQLI adopte sur ces projet, c’est dans ce contexte que nous avons suivi cette formation. Objectifs : Processus de vérification : présentation des pratiques (plan de vérification, cartographie de test) et des outils (TCM, Mantis) Planification et suivi des projets : Cycle de vie des projets, usage de SDP (règles d'imputation, de RAF), estimation des charges Gestion de configuration Gestion des exigences Durée : Deux jours de formation, test sous forme de QCM.

b)

Capitalisation MOSS

Le premier bénéficiaire d’une capitalisation technique, c’est d’abord celui qui capitalise, car rien de tel que la capitalisation pour se former, pour transformer en connaissance l’expérience que l’on a accumulé. La capitalisation est ou pourrait devenir un des piliers de l’autoformation. Il y a de nombreuses raisons à cela. C’est dans cette philosophie que nous étions inscrits pour capitaliser des composants MOSS (Feature, UserControl, WebControl, WebPart …) créé sur différents projets, tout en accumulant une expérience enrichissante sur le développement MOSS.

Page 14 sur 74

Nous nous somme limité au composants les plus utilisés et créé par Mlle. Fatna Elmqami ou Mr. Anas Bourhlem, cela nous a permis d’avoir un interlocuteur pour comprendre les besoins fonctionnels du composant et du contexte dans lequel il a été créé, car il est évident que la capitalisation est bien plus utile lorsqu’elle se fait en équipe. Non seulement à cause des possibilités de débats, à cause des voix et opinions multiples qui apparaissent mais surtout parce que l’on se voit obligé d’exprimer. Et exprimer c’est se former. Cette phase de capitalisation MOSS, autoformation a duré depuis la fin du mois février au 20 mais 2010.

c)

Le projet « Axa B² (square) 2nd Release »

C’est le deuxième volet de notre stage, nous travaillons sur ce projet depuis le 24 mai, le projet est encor en cours de construction. Le projet consiste à développez la deuxième version d’une solution existante. La première version de la solution est en cours de recette client, cela dis afin d’avancer et de montrer au client la capacité de SQLI a travailler en parallèle, l’équipe SQLI MOSS Oujda commenceras les développements sur la deuxième versions, en parallèle avec la correction des anomalies de la première version, des merges (fusions) entres les deux versions sont prévus à intervalles régulier afin d’éviter que les deux versions divergent. d) d.i ) Enjeux du stage Enjeux pour l’entreprise

SharePoint connaît un grand succès auprès des entreprises, on peut trouver plusieurs raisons à ce succès ; le large spectre de possibilités qu'il offre, la faciliter de déployer des portails qui couvrent une partie importante des besoins avec de simples paramétrages, l'évolutivité que permet la plateforme ou encore le fait que la version de base soit disponible gratuitement pour les entreprises qui possèdent Windows Server. En effet, de part son implantation dans le monde Office, MOSS est de plus en plus demandé au sein des entreprises. Développer ses connaissances autours de cet outil est donc un atout indéniable pour le SQLI.

C’est dans ce contexte que la direction du groupe SQLI à décider de se pencher sur cette technologie afin de satisfaire les demandes des clients. L’agence SQLI Oujda n’en fait pas exception et a décider donc de monter une équipe dédié à MOSS. L’agence ayant déjà participé sur des projets MOSS, mais le projet « Axa B² 2nd release

Page 15 sur 74

» à la particularité d’être complètement gérer par l’équipe SQLI Oujda, suivi, chiffrage, planning, validation …

d.ii )

Enjeux personnels

Nous concernons, les enjeux de ce stage étaient multiples. Premièrement, intégrer le service ingénierie d’une grande SSII telle que SQLI nous donner une vision concrète du déroulement d’un projet informatique en entreprise, de faire face aux défis de qualité, coût, délais. En effet comme précisé ci-dessus nous avons intégrer le projet AXA B² 2nd Release en tant que Ingénieur Concepteur Développeur (ICD). Deuxièmement, cette expérience nous a permis d’appliquer la des processus CMMI niveau trois, tel que la gestion de configuration, des processus de vérification … D’autre part, l’environnement .NET qu’on nous a proposer d’y travailler dès le début de notre stage nous était complètement nouveau, le défit soulevé, couplé a la complexité des besoins clients, respect des délais, nous a permis de plonger dans le milieux professionnel, dans une expérience riche aussi bien sur le plan technique que sur le plan relationnel.

Chapitre2.
2.1 -

Outils et méthodes

Outils SQLI CMMI

2.1.1 - Test Case Manager (TCM) C’est un logiciel de gestion de plans de test qui fournit aux équipes projet une interface commune et un référentiel pour mettre en œuvre et valider des plans de test. Il formalise les cas de tests et les tests, permet de gérer et classer les plans de tests, gérer et exécuter les scénarios, générer des statistiques sur les exécutions de scénarios, associer les exigences aux cas de tests. Nous avons utilisé TCM sur le projet « AXA B² 2nd Release » afin de formaliser les tests, TCM permet au chef de projet de vérifier que le développeur a bien compris la fonctionnalité à développer.

2.1.2 - Mantis C’est l’application de recensement des anomalies pour toutes les campagnes de tests. Elle permet lors de la phase de recette de remonter les anomalies, de les attribuer à un intervenant et de les traiter. Un reporting permet de suivre en temps réel l’évolution de ces anomalies.

Page 16 sur 74

En effet nous avons utilisé également Mantis pour remonter des anomalies de spécifications fonctionnelles, techniques au niveau de la construction du projet, ainsi que dans les compagnes de tests.

2.1.3 - SDP (Suivi de projet) C’est l’application de suivi de la consommation des charges et des restes à faire sur le projet. Cette application permet le suivi de l’activité de l'équipe sur un projet et le suivi de l'évolution des charges. Elle permet d’avoir un reporting hebdomadaire (par phase ou par intervenant) et d’évaluer les risques de chacune des tâches. A travers cette application le chef de projet attribue à chaque intervenant une tâche et un délai pour sa réalisation.

2.1.4 - People CMM Au regard de SQLI, les collaborateurs sont la première richesse du groupe. Ainsi, celui-ci a, dès l’origine, fondé sa performance sur la qualité relative à la politique de ressources humaines. Aujourd’hui, et depuis déjà plusieurs mois, SQLI franchit une nouvelle étape avec l’adoption de People-CMM, un programme unique de management qui vise une qualité totale dans la gestion des ressources humaines et la pleine satisfaction des collaborateurs. Au travers de People-CMM, SQLI offre à ses salariés la possibilité de gérer pro-activement leur carrière. Démarche d’amélioration continue, People-CMM tend à parfaire La communication et les échanges Le suivi individuel des collaborateurs et la gestion des carrières La formation et le développement personnel L’intégration des jeunes recrues La politique de rémunération La reconnaissance des performances Le déploiement de People-CMM est un projet stratégique à l’échelle du groupe. Inscrit dans la droite ligne de CMMI, People-CMM représente un investissement considérable et mobilise l’ensemble des collaborateurs. L’ambition pour SQLI est d’être la première SSII européenne agréée People-CMM niveau 5. Au travers de ces pratiques, les collaborateurs peuvent, par des entretiens avec leurs relais RH , faire des points périodiques sur leurs activités des derniers temps et sur les objectifs qu’ils souhaitent se fixer, en corrélation avec les objectifs du groupe.

Page 17 sur 74

2.2 -

Microsoft Office SharePoint Server 2007 (Moss 2007)

2.2.1 - Introduction a) Qu’est ce que SharePoint ?

Microsoft Office SharePoint Server 2007 est l'outil de portail et de travail collaboratif de Microsoft. Il permet aux organisations de créer tout un éventail de solutions d’entreprise. Office SharePoint Server 2007 est construit sur les bases de Microsoft Windows SharePoint Services 3.0 (WSS 3.0) et ASP.NET version 2.0, et offre une infrastructure de solutions extensible qui permet aux organisations de créer des solutions spécifiques rapidement et efficacement. Il est basé sur le Framework .NET 3.5. Office SharePoint Server 2007 a été conçu pour offrir des avantages stratégiques aux organisations. Il permet en effet aux organisations de créer de nombreuses applications, telles que des solutions de portail, d’aide à la décision et de gestion de contenu. Office SharePoint Server 2007 offre de nouvelles fonctionnalités grâce à la plateforme Windows SharePoint Services sur laquelle il est basé. Office SharePoint Server 2007 est conçu pour aider à créer une large gamme de solutions, rapidement et efficacement. Il utilise les fonctionnalités telles que les masters pages, qui permettent de créer des portails de publication de contenu, en centralisant la création du contenu, et il contient des fonctionnalités permettant de mettre en œuvre des outils collaboratifs, des outils de portail, un moteur de recherche d'entreprise, des outils de gestion documentaire, de publication de formulaires et de création de portail décisionnel.

Page 18 sur 74

Figure 4 Les zones de fonctionnalités de MOSS

b)

Les avantages de SharePoint Le but premier de SharePoint est de faciliter le travail d’équipe en réseau et la première chose à savoir est qu’utiliser SharePoint revient à utiliser Internet. Agendas, Documents, liste des tâches, etc., tout est accessible via des sites Web. On ajoute à cela d’autres atouts importants : Une facilité accrue pour trouver une information ; Un partage d’informations avec d’autre utilisateur ; Un suivi de l’information complet (délais, validation, etc.) ; Une authenticité dans l’information (dernière version du document par (dernière exemple). Partager un document via SharePoint permet de contrôler l’authenticité du document entre utilisateurs, afin que chaque personne utilisant ce document puisse inscrire des remarques visibles par les autres mais aussi afin de gérer les tâches ainsi que les délais pour un projet. En comparaison, l’utilisation de mail est nettement moins avantageuse, en partie à cause de problèmes de réceptions ou d’erreur de destinataire par exemple. Un document partagé via mail à d’autres utilisateurs n’assure donc pas l’authenticité de celui utilisateurs celui‐ci.

Page 19 sur 74

Figure 5 Partage de document via e‐mail (multiple copie) e‐

Comme le montre l’image ci dessus, le manager créé un document et le partage, ci‐dessus, via mail, à deux autres utilisateurs (A et B). Dans ce cas de figure, les deux utilisateurs peuvent le modifier entre eux sans que le manager ne soit au courant, et réciproquement : il y a donc un problème d’authenticité et de version du document. Autre point négatif, les commentaires ou annotations sont difficilement partageables à l’inverse de l’utilisation d’un espace commun sous SharePoint.

Figure 6 Partage de document via SharePoint (unique copie)

Dans un espace de travail sous SharePoint, un même document peut être , accessible par différents utilisateurs. La version, les commentaires, les validations sont visibles par tous ; cela assure l’authenticité du document. En utili utilisant cet espace de travail un seul et unique document existe alors qu’un partage par mail peut entrainer une multiplication des documents avec autant de versions différentes. SharePoint présente des compatibilités accru avec les packs Microsoft Office à pa de partir la version 2003, vous pouvez cependant utiliser des versions plus anciennes ou des applications qui n’appartiennent pas à Microsoft, vous perdriez cependant divers avantages apportés par la suite Office 2003 ou ultérieure.

Page 20 sur 74

c)

Fonctionnalités MOSS 2007 dispose de plusieurs fonctionnalités ce qui permet de créer plusieurs types de solutions :

c.i )

Collaboration Cette fonctionnalité permet aux travailleurs de l’information d’utiliser les dernières technologies en vue d’un travail en équipe, quel que soit le lieu où se trouvent les collaborateurs. Accès de n'importe quel endroit : Intégration & synchronisation Outlook, Rester informé grâce aux alertes et aux flux RSS. Communautés et Communication : Wikis & blogs, E-mail et discussions, Personnes et groupes. Conception de Workflow, d'interface utilisateurs et de vues de données via SharePoint Designer.

Portail Cette fonctionnalité de portail permet aux utilisateurs d’accéder à des informations pertinentes au moment où ils en ont besoin. Site portail : Modèles pour intranet, Extranet, Internet. Recherche de personnes et d'expertise : Recherche spécifique pour la recherche de personne, Support de réseau social. Mon site : Page publique améliorée. Gestion des profils : Evolutivité, schéma flexible, synchronisation LDAP. c.iii ) Recherche

c.ii )

Cette fonctionnalité permet aux travailleurs de l’information de rechercher des données stockées à divers emplacements de l’entreprise.

Page 21 sur 74

Moteur de recherche d'Entreprise : Intranet, Extranet, Internet Contenu non-Web : documents Office et autres formats, Collaborateurs, etc. Recherche dans les applications métiers (ERP, CRM, Bases de données . . ). Sécurité omniprésente. Moteur de ranking : Collaboration étroite avec Microsoft Research et Windows Live

c.iv )

Gestion de contenu

Des fonctionnalités de gestion de contenu (dont les fonctionnalités de gestion de contenu Web, les fonctionnalités de gestion des documents et les fonctionnalités de gestion des enregistrements) qui optimisent les processus de publication et de protection des informations. Gestion documentaire : Librairies documentaires évolutives, Sécurité et suivi. Workflow et approbation : Workflows prêts à l'emploi en série, en parallèles, multi-étapes, Intégrés avec l'e-mail et les applications poste de travail de la version 2007 de Microsoft Office, Personnalisable grâce à SharePoint Designer (basés sur Windows Workflow Foundation). Stratégie et conformité : Audit contrôlé en central, expiration et stratégies de rétention, Archivage, rétention et conformité, Contenu e-mail en tant qu'enregistrements. Web Content Management : Conçu pour la publication sur des sites Internet, Capacités d'édition Web et sous Word, Nouveaux outils de déploiement et de publication. c.v ) Processus métier

Page 22 sur 74

Des fonctionnalités de formulaires qui collectent les informations de l’entreprise selon un processus rationalisé et efficace. Atteindre plus d'utilisateurs par les formulaires : Formulaires InfoPath accessibles par le navigateur (Cross-navigateur et crossplate-forme), Connexion de données, Intranet, Extranet, Internet. Automatisation des processus métier basés sur des formulaires : Formulaires dans Outlook, incluant la promotion des propriétés, Workflow, archivage, gestion des droits numériques.

c.vi )

Décisionnel

Des fonctionnalités d’aide à la décision qui permettent aux décideurs d’évaluer les informations concernant l’entreprise et de prendre des décisions en toute connaissance de cause.

Services Excel : Partager des feuilles de calcul par le biais de navigateurs Internet, Feuilles de calcul interactives au sein de SharePoint, Publier uniquement ce que vous voulez, contrôler les versions, Utiliser les modèles Excel par accès programmatique depuis des applications personnalisées. Dashboards et composants Web : Filtrage commun ("slicing") entre Web parts, KPIs, classeurs Excel et rapports SQL 2005 Reporting Services. Site Web de centre de rapport : Site Web prêt-à-l'emploi, optimisé pour l'accès aux rapports et à la gestion, Gestion cohérente de rapports, feuilles de calcul et connexion de données, Intégré avec les Reporting Services SQL Server 2005. Librairies de connexion de données et catalogue de données métier : Stockage centralisé de connexions de données importantes.

Page 23 sur 74

En outre, Office SharePoint Server 2007 offre de nombreuses fonctions permettant de gérer les processus d’entreprise associés à ces principaux types de solutions.

Forces
Forte intégration avec Office 2007 Couverture des besoins (Intra / Extra / Internet) Personnalisation facilitée Maturité des technologies (WSS 3.0, ASP.NET 2.0, API SharePoint) Sécurité renforcée

Faiblesses
Complexité du produit (infrastructure, administration, paramétrage XML) Basé sur SQL Server 2005 Coût Trop orienté Office 2007 / Internet Explorer ?

Opportunités
Brique centrale de la collaboration Office System 2007 Bon accueil du marché Outils de migration depuis SPS 2003

Menaces
Maturité Fonctionnement sous Windows Server 2008 Migration vers MOSS 20xx

Tableau 1 Analyse SWOT de Microsoft Office SharePoint Server

Description d'un SWOT. S-trength : Forces de la solution dans le contexte d'évaluation W-eakness : Faiblesses de la solution dans le contexte d'évaluation O-pportunities : Opportunités de la solution dans le contexte hors du périmètre de l'étude T-hreatening : Menaces sur la solution d) Fournisseur de services partagés d’Office SharePoint Server 2007

Le fournisseur de services partagés effectue des tâches lourdes pouvant être partagées entre différents sites et collections de sites, et même entre les membres d’une batterie de serveurs. Le fournisseur de services partagés est indépendant de toute solution ou de tout site Web spécifique, même si la fonctionnalité peut être configurée de manière différente pour des applications Web précises. Le fournisseur de services partagés d’Office SharePoint Server 2007 inclut : • • •

Des fonctionnalités de recherche au niveau de l’entreprise Des services Microsoft Office Excel® Des fonctionnalités de gestion des utilisateurs

Page 24 sur 74

e)

Intégration D’office SharePoint Server 2007 Dans L’entreprise

Office SharePoint Server 2007 fournit des solutions d’entreprise collaboratives. En règle générale, les solutions collaboratives appliquées à l’entreprise incluent des fonctionnalités issues d’autres produits. Il est donc important de comprendre la façon dont Office SharePoint Server 2007 s’intègre aux différents produits de l’entreprise. e.i ) Office SharePoint Server 2007 et les applications clientes Microsoft Office 2007

Office SharePoint Server 2007 fait partie de la suite de produits Microsoft Office 2007. Office 2007 inclut des applications clientes telles que Microsoft Office Word® 2007, Microsoft Office Excel2007 et Microsoft Office Outlook® 2007. Les applications clientes et Office SharePoint Server 2007 ont été conçus pour fonctionner ensemble de manière transparente • • •
Formats de fichier : Les applications Microsoft Office prennent en charge de

• •

nouveaux formats de fichier basés sur les normes ouvertes XML. Office Outlook 2007 : Office Outlook 2007 et Office SharePoint Server 2007 ont été conçus pour fonctionner ensemble afin de faciliter la collaboration. Excel Services : Une des nouvelles fonctions d’Office SharePoint Server 2007 est un service partagé appelé Excel Services. Excel Services permet à un administrateur de spécifier des emplacements approuvés pour les classeurs Office Excel 2007, afin que les travailleurs de l’information puissent visualiser des diagrammes, données et autres objets et y accéder directement à partir des pages Web d’Office SharePoint Server 2007. Office Forms Server 2007 : Un nouveau produit appelé Microsoft Office Forms Server 2007 est inclus dans la version 2007 de Microsoft Office. Ce nouveau produit offre des possibilités de gestion des formulaires côté serveur et est pleinement intégré à Office SharePoint Server 2007. Office SharePoint Designer 2007 : Microsoft Office SharePoint Designer 2007 est une nouvelle application qui remplace Microsoft Office FrontPage® 2003. Office Project Server 2007 : Microsoft Office Project Server 2007 peut être intégré à la plateforme centrale et aux composants avancés d’Office SharePoint Server 2007. Microsoft Office Access 2007 : Vous pouvez intégrer Microsoft Office SharePoint Server 2007 et Office Access 2007 de différentes façons. Vous pouvez déplacer une base de données depuis Office Access 2007 vers un site SharePoint ou créer des bases de données à partir de listes SharePoint en ouvrant une liste SharePoint dans Office Access 2007. Microsoft Office OneNote 2007 : Les utilisateurs peuvent partager des informations Microsoft Office OneNote® en lecture seule en publiant leurs notes sur Office SharePoint Server 2007.

Page 25 sur 74

f)

Office SharePoint Server 2007 et Windows Workflow Foundation

Avant la sortie d’Office SharePoint Server 2007, les flux de travail étaient souvent considérés comme l’élément manquant des solutions collaboratives. Office SharePoint Server 2007 est désormais étroitement intégré à Windows Workflow Foundation afin de fournir une puissante fonctionnalité de flux de travail pour les solutions collaboratives.

Flux de travail du routage de documents : Par défaut, les solutions Office

SharePoint Server 2007 incluent des flux de travail de routage et d’approbation de documents. Les travailleurs de l’information peuvent utiliser l’interface utilisateur Web pour les sites SharePoint afin de définir les flux de travail des documents. Flux de travail SharePoint Designer : Souvent, des flux de travail plus complexes que les flux de travail de routage d’approbation et de documents intégrés sont requis dans les solutions collaboratives. Grâce à Office SharePoint Designer 2007, les concepteurs et travailleurs de l’information peuvent créer des flux de travail personnalisés incluant divers types d’étapes, ainsi que la logique personnalisée. Flux de travail Visual Studio : Certaines solutions collaboratives nécessiteront des fonctions et une logique de flux de travail plus complexes que ce que vous pouvez créer via Office SharePoint Designer 2007.

g)

Architecture logique d’Office SharePoint Server 2007

Page 26 sur 74

Figure 7 : Architecture logique de MOSS

Les solutions Office SharePoint Server 2007 sont basées sur une hiérarchie de composants logiques, chacun d’entre eux fournissant une fonctionnalité spécifique.

g.i )

Unités logiques d’Office SharePoint Server 2007

Office SharePoint Server 2007 est constitué des unités logiques suivantes : • Batterie de serveurs : Cette unité de premier niveau se caractérise par plusieurs serveurs Web et d’applications qui sont logiquement regroupés et qui partagent une base de données de configuration commune. Application Web : Cette unité fournit une fonctionnalité de serveur Web. Une application Web Office SharePoint Server 2007 correspond à un site Web de services Internet (IIS). Collection de sites : Cette unité définit les paramètres et le contexte de regroupement de plusieurs sites et sous sites. Une collection de sites est semblable à un répertoire virtuel de premier niveau classique dans IIS, bien qu’il n’y ait aucun mappage IIS au répertoire virtuel. Site : Cette unité fournit un point d’entrée à une solution spécifique ou un ensemble de fonctionnalités. Un site est semblable à un sous-dossier de répertoire virtuel de premier niveau classique dans IIS, bien qu’il n’y ait aucun mappage IIS au répertoire virtuel.

Page 27 sur 74

Fonction : Cette unité fournit une fonctionnalité et des données spécifiques dans le cadre d’une solution plus large. Une fonction peut contenir des données, des métadonnées et une fonctionnalité.

Page 28 sur 74

Partie 2. CAPI MOSS : Projet Composants SQLI MOSS

de

capitalisations

des

Introduction
L’autoformation est devenue un objectif principal des pratiques chez SQLI. Elle inspire la manière de faire, les rythmes, etc. Elle guide également les mises en forme pour la diffusion. Car il ne s’agit pas seulement de partager l’acquis de l’expérience mais également la manière de cette acquisition, afin que les autres ne soient pas confrontés à un simple résultat et sa démonstration, mais soient stimulés à replonger dans leur propre cheminement, dans leur propre apprentissage. Donc il ne s’agit pas d’« enseigner », d’« instruire », sinon d’apporter à l’autoformation de tous.

Chapitre1. Engagement sur le projet CAPI MOSS
1.1 Présentation de la capitalisation

Capitaliser c’est s’auto-former soi-même. Mais c’est également collaborer directement à l’autoformation des autres. Dans la mesure où l’expérience est racontée et interprétée avec son vécu, elle permet à chacun de reprendre à son tour sa propre expérience et de la regarder avec des yeux nouveaux, avec un regard plus attentif sur certaines choses, elle lui permet donc d’améliorer sa propre autoformation. Et c’est dans cette logique là que SQLI nous a mis sur la capitalisation des composants MOSS, cela nous a permis, d’une part de construire un Framwork de composants SQLI MOSS, et d’autre part de nous mettre dans la situation réel de répondre à des exigences métiers en créant des composants MOSS.

Chapitre2. Mise en œuvre du projet CAPI MOSS
2.1 Environnement technique

Une des bonnes pratiques qui a fait ses preuves à SQLI est l’utilisation de machines virtuelles pour le développement, TMA, formation. Les avantages sont les suivants : Rationnaliser l'utilisation des serveurs physiques (surtout en TMA) Sauvegarder les environnements de développement pour les phases de garantie et de maintenance Disposer d'environnements prêts à l'emploi pour des démonstrations client, des pré-recettes... Composants traités

Page 29 sur 74

Cela est encor plus juste dans notre cas ou on travail sur la deuxième version d’une application, l’utilisation de machines virtuelles nous a permis de reprendre l’environnement exacte lors du développement de la première version. La machine virtuelle était préconfigurée avec : Microsoft Windows Server 2003 .NET Framwork 3.5 Visual Studio 2008 Team Suite Une instance Microsoft Office SharePoint Server 2007 SQL Server 2008 Internet Information Services 6 Un ensemble d’outils facilitant le développement SharePoint : o SharePoint Manager o CAML Viewer o STSADM o …

2.2 2.2.1 -

Généralisation des composants SQLI MOSS Le Webcontrole “Multilinguisme”

Ce Contrôle permet de basculer la langue (la culture) d’une page MOSS, (frontoffice et/ou back-office) Le composant ne permet pas de traduire la page en elle-même mais de basculer la langue actuelle de la session de l’utilisateur par celle choisis. Les libellés et le texte à traduire reste à la charge du développeur du site en utilisant les fichiers de ressources du Framework .NET.

2.2.2 -

Le UserControle “Menu”

SharePoint fournit une interface principale aux utilisateurs du site pour se déplacer sur les sites et les pages d’un site SharePoint. Microsoft SharePoint Server inclut un ensemble de fonctionnalités de navigation personnalisable et étendre pour aider les utilisateurs du votre site à s’orienter dans ses sites et pages. Ainsi nous utilisant ce composant natif SharePoint pour récupérer les éléments de navigations définis par l’administrateur, pour construire le menu visuel selon le besoin. Sur ce composant, nous générant un menu a partir de la navigation SharePoint natif, les classes CSS, les élément HTML à générer sur différents niveaux du menu, sont paramétrable ainsi que le nombre de niveaux de navigation.

2.2.3 - Gestion des pages d’erreurs Lorsqu’une adresse ou un lien est erroné ou si la page n’existe plus vous serrez redirigé vers une page 404.

Page 30 sur 74

Lorsqu’une erreur interne au serveur se produit (exception levé dans le code …) vous obtiendrez un code d’erreurs 500. Réaliser un composant par code d’erreur est fastidieux et non capitalisable, c’est pour cela, ce composant, à la base, utilisé pour gérer les erreurs de type 404 ou 500, a été étendu pour gérer toutes les sortes de codes http. Une liste SharePoint nommée « Pages d’erreurs » est crée dès le déploiement du composant, chaque ligne dans cette liste correspond à un code d’erreur à gérer.

Figure 8 Ajout d'un élément dans la liste des pages d'erreurs personnalisé

Ce composant permet donc même de gérer les redirections si le site est en construction, ou maintenance, il suffit d’entrer le code http correspondant au chargement de la page trouvée.

2.2.4 - User Controle « Page Rating »

L’avis de l’internaute est important, ce composant permet de récupérer l’avis de l’internaute sur une page, un bloc de page, et de l’enregistrer dans une liste SharePoint afin de d’avoir des statistiques. Une liste SharePoint nommée « PageRating » est crée dès le déploiement du composant.

Page 31 sur 74

Figure 9 Composant "PageRating"

2.2.5 - Web Part « Diaporama Large »

Cette Web part permet de générer un diaporama de photos existante sur le site.

Figure 10 Toolpart (Configuration de la Webpart) Diaporama Large

L’encart vous permet de choisir le dossier a partir du quel les images seront affichées dans le diaporama, les dossiers affichés appartiennent à la bibliothèque d’images Diaporama qui est créé automatiquement dès l’activation de la Feature qui déploie la WebPart Diaporama large 2.2.6 - WebPart « Lecteur de flux RSS »

Page 32 sur 74

L’encart Lecteur de flux RSS permet de lire un flux RSS et d’en afficher un nombre paramétrable d’actualités. L’encart affiche aussi un lien pour visiter la page source de chaque actualité (tel que spécifier dans le flux RSS), ainsi qu’un lien paramétrable permettant d’ouvrir le site dans un nouvelle page (anglet). Le rendu HTML est configuré par les classes CSS de chaque élément de l’encart.

Figure 11 WebPart « Lecteur de flux RSS »

Figure 12 Toolpart (Configuration de la Webpart ) Lecteur de flux RSS

La configuration de l’encart Lecteur de flux RSS est divisée en 3 catégories : Classes CSS : L’ensemble des classes CSS appliquées aux différents éléments de l’encart pour avoir un contrôle sur le rendu visuel.

Page 33 sur 74

Proxy : Configurer les paramètres du serveur Proxy (si besoin) Lecteur RSS: Configuration du flux RSS, source, nombre d’élément à afficher … 2.2.7 - WebPart « Podcast »

La WebPart Podcast permet de lire un fichier mp3 avec affichage d’une image personnalisée, un lien de téléchargement du fichier est optionnel aussi, voici un exemple de Podcast :

Le fichier mp3 à lire, l’image de fond, les couleurs du lecteur, sa taille, et d’autres paramètres sont configurable depuis l’anglet de modification de la WebPart..

Figure 13 WebPart "Podcast"

La configuration de l’encart Podcast est divisée en 3 catégories :

Styles : dans cette catégorie vous configurer l’aspect visuel du lecteur ainsi que du lien de téléchargement

Paramètres : contient les différents paramètres liés au lecteur, (taille, volume par défaut,
Figure 14 Toolpart (Configuration de la WebPart) "Podcast"

autoriser plein écran …) Configuration du Podcast : pour choisir le fichier mp3 à lire et l’image à afficher.

Page 34 sur 74

2.2.8 - Composant de marquage et référencement

SharePoint est une usine à site, pour référencer le site sur les moteurs de recherche, ce composant donne la main aux utilisateurs (utilisateurs du back office de SharePoint) de modifier les balises <meta> dans le rendu HTML généré de la page. A l’activation de cette fonctionnalité, elle ajoute un type de contenu de base qui hérite de type de contenu « page de publication » et qui a quatre colonnes personnalisées : « Meta Titre », « Meta Descriptions », « Meta mots Clefs » pour le référencement et « Conteneur JavaScript » pour le marquage. Ainsi en déployant ce composant (la démarche est détaillé dans le manuel utilisateur de ce composant, voir Annexes) l’utilisateur obtient la vue suivante :

La zone « Marquage » permet d’insérer du code JavaScript pour les statistiques (Google Analytics, Xiti …)

Page 35 sur 74

2.3 -

Bilan du projet

2.3.1 - Difficultés rencontrées La plus part du temps les problèmes étaient purement d’ordre technique, cela vient de la richesse du Framework .NET en plus de l’API SharePoint. Le travail avec Visual Studio 2008 augmente considérablement le temps de développement et de débogage et la mise au point des composants MOSS, par compte la grande difficulté rencontrée était d’ordre matériel. En effet l’environnement de développement SharePoint est très gourmand en mémoire et en quota processeur, ajoutée a cela le faite de travailler sur des machines virtuelles, quelques compilations de solutions duraient jusqu'à 5 minutes. D’autre part nous avons levé une alerte à ce niveau afin de changer de configuration matérielle avant d’entamer le second projet. L’autre défie était d’apporter une couche d’abstraction aux composants déjà évoqué, en effet nous avons essayé de rendre les composants aussi générique que possible et de respecter les normes de développements pour faciliter une maintenance ou une adaptation du composant.

2.3.2 - Compétences acquises Familiarisation avec l’environnement de développement SharePoint, respect des normes de codage standard, propre à SQLI et au projet, travail en équipe et utilisation de gestionnaire de sources. Du point de vue technique cela nous a permis de percevoir l’approche SQLI sur différents projets MOSS, de monter en compétence sur le langage C# et la plateforme .NET en générale.

Conclusion du projet
La capitalisation nous a permis de nous préparer techniquement pour le projet « Axa B² 2nd Release », de nombreux composants traités étaient issus de la première version
Page 36 sur 74

de la solution, nous étions donc familier avec les normes de codage, les moyens de livraisons et de tests ainsi que la logique de l’application.

Partie 3.
Introduction

Le projet « AXA B² 2nd Release »

Chapitre1. AXA B² : Etude fonctionnelle
1.1 Présentation de l’existant AXA B² 1st Release

1.1.1 - Fonctionnalités

L’application Site agent (SAG) a pour but de fournir : Une interface d’administration (Centrale d’Admin) pour la création et la gestion centralisée de tous les sites agents (demande de création, référencement de bannières, …). Un web site pour chaque agent, également hébergé dans cette application, avec sa propre interface d’administration (Site Agent BO).

Figure 15 Cartographie fonctionnelle de l’application SAG

Page 37 sur 74

Centrale d’administration (CAD) Avant la génération du site, AXA demande aux agents un certain nombre d’informations : cette étape est réalisée en dehors de l’application (demande de l’url du site souhaité...). Une fois la prise d’information réalisée, un administrateur AXA peut demander, via l’interface de l’application, la génération des sites internet (sites agents). Cette génération s’appuiera entre-autres sur des données d’AZIMUT. L’administrateur du site sera l’agent. Après la création du site, l’agent recevra une notification par mail avec l’adresse de son site sur un environnement dit « authoring » permettant de configurer son site : le site n’est pour le moment pas accessible des internautes. Il pourra alors modifier son site et visualiser les modifications en temps réel sur ce site de « configuration/administration ». Une fois satisfait de son site, il aura la possibilité de demander la mise en ligne de son site. Les administrateurs AXA ont alors la possibilité d’accepter la demande ou de la refuser. Une fois l’approbation donnée (acceptation de la mise en ligne), le site sera mis en ligne (sur la plateforme de production) et sera alors consultable par tout utilisateur internet. Une charte (=conditions générales d’utilisation) écrite par AXA contraindra les agents à respecter des règles quant à l’utilisation de leur site agent. L’agent aura l’obligation d’accepter les conditions générales d’utilisation s’il souhaite avoir un site en ligne. Aucun contrôle automatique ne sera fait sur le respect des conditions générales d’utilisation ; AXA aura la possibilité de fermer un site si l’agent n’a pas respecté ses engagements. L’administrateur peut aussi utiliser cette interface pour : mettre à disposition des sites agents de nouvelles bannières modifier les sélections de produits issus du catalogue centralisé (application WCC) pour les sites agents mettre à jour les conditions générales d’utilisation l’approbation de l’agent modifier les produits à mettre en avant modifier les produits « Découvrir aussi » demander la création d’un site agent, voir le statut de la demande mettre en ligne un site agent suite à la demande d’un agent fermer un site agent accéder à l’administration locale d’un site agent voir l’historique des modifications des agents accéder au suivi des statistiques d’un site agent par l’administrateur local gérer les pages communes aux sites agents (mentions légales, ...) ainsi que demander

a)

Page 38 sur 74

Figure 16 Tableau de bord Central Admin

b) Site agent Les sites agents sont créés sous la forme d’un portail « producteur », où l’on peut trouver des informations diverses telles que : les produits proposés par le(s) point(s) de vente les coordonnées du (des) point(s) de vente les points de vente les collaborateurs du (des) point(s) de vente les liens utiles les produits à découvrir les produits du moment des pages de contenu libres

Page 39 sur 74

Figure 17 Aperçu d’une page d’un site agent (fiche produit)

Chaque site aura son propre « back office » d’administration pour gérer plusieurs fonctionnalités telles que : choisir des produits optionnels à ajouter ou supprimer dans son site choisir les bannières parmi une sélection AXA ajouter et gérer les rubriques additionnelles gérer les informations des collaborateurs à afficher sur le site choisir les administrateurs gérer les liens utiles gérer les produits à découvrir et les produits du moment gérer les informations de l’agence créer des pages de contenus libres au sein des rubriques additionnelles demander la mise en ligne du site prévisualisation des pages de contenu libre lire et approuver les conditions générales d’utilisation du site accéder au suivi des statistiques contacter le support

Page 40 sur 74

Figure 18 Tableau de bord Back Office Site Agent

1.1.2 - Utilisateurs de l’application

Il s’agit de tout les agents bancaires d’Axa Belgique, actuellement 900 agents bancaires on déjà déposer leurs demandes de création de site, l’application peut gérer jusqu'à 25 000 site agent par serveur MOSS sans montée en charge, elle hérite de la puissance de la plateforme MOSS. Les utilisateurs de l’application se divisent en deux parties : Administrateurs Axa : les « super admin » de l’application ils ont le droit de tout faire. Administrateurs Locaux : appelé aussi producteur ou responsable d'agence. C'est la ou les personnes qui possèdent l'agence. Depuis la second release, ils peuvent être plusieurs. Les utilisateurs sont issus d’un annuaire Active Directory (méthode de connexion standard de SharePoint). Sur la solution différents groupes et rôles viennent enrichir ceux existant déjà sur SharePoint :
Administrateur (contrôle total)

Page 41 sur 74

Concepteur Web (conception) Collaborateur (contribution) o Lecteur (lecture)

1.2 -

Présentation de Axa B² 2nd Release

AZIMUT Agent AXA Plateforme Authoring Plateforme Production Frontoffice Producteur Administrateurs

Base d’informations AXA sur l’ensemble des données des agents bancaire ou intermédiaire en assurance AXA Les agents bancaire ou intermédiaire en assurance sont appelé « agents AXA ». Plateforme qui permettra aux agents de se connecter à l’administration. Ils prévisualiseront le site sur cette plateforme avant la mise en production. Plateforme de production où les sites agents déployés sont visibles des internautes. Page visible pour les internautes Dans ce document, les termes « Agent AXA », est synonyme de producteur dans le contexte AXA. Les termes « administrateurs locaux » seront utilisés pour désigner les représentants statutaires et/ou les mandataires principaux connus d’AXA, respectivement, d’un producteur et d’un point de vente. Les termes « administrateurs désignés » font référence aux collaborateurs (maximum 2) connus d’AXA d’un ou plusieurs points vente ayant été désignés administrateurs par l’un des administrateurs locaux

Tableau 2 Vocabulaire AXA B²

1.2.1 - Contexte du projet AXA B² 2nd Release Dans le cadre de la fidélisation de ses agents bancaires, AXA à décider de permettre a chacun de ses agents bancaires de créer un site, le permettant de communiquer avec ses clients et augmenter son audition. AXA ne peut créer individuellement un site par agent, en effet AXA compte actuellement plus de 900 agents bancaire, l’allocation de ressources et de temps afin de créer un site pour chacun est impossible, c’est ainsi que AXA a sollicité SQLI pour la mise en place d’une solution SharePoint sous forme de « usine à site », SQLI et AXA ayant déjà travaillé sur de nombreux projet SharePoint (Axa.de, Comprendre avec AXA, Axa en claire). La solution complète attendue par AXA Belgique comprend principalement 3 applications :

Page 42 sur 74

Site AXA.be : Site internet AXA Belgique ciblé principalement sur la partie « particulier ». Le périmètre pourra être étendu suite à des évolutions de l’application. Site des Agents : Site internet pour les agents bancaire AXA. L'applicatif est découpé en trois parties : Site internet, administration de l'agent, administration centralisé pour tous les sites agents AXA. Site WebContent Catalog : Cette application permet de référencer les informations AXA qui seront réutilisable par d'autres applicatifs. Il centralise ainsi les produits AXA qui seront dans un premier temps utilisé pour les sites AXA.be et les sites agents.

Chapitre2. AXA B² 2nd Release : Mise en œuvre
2.1 Architecture du projet

2.1.1 - Architecture logicielle a) Gestion des identités

Les besoins concernant les différents profils accédant au site central d’administration et aux sites web agent étant simples et concrets nous pouvons définir deux types d’utilisateurs et leur mode d’authentification : Utilisateur anonyme, correspondant aux internautes se connectant sur le site : ces utilisateurs n’auront nullement besoin de s’authentifier. Ils seront alors qualifiés au sein de la plateforme MOSS grâce à un « accès anonyme ». Utilisateur authentifié : Afin d’accéder à l’administration du site, les utilisateurs possédant des droits spécifiques devront s’authentifier sur la plateforme. Afin de rendre cette authentification le plus simple possible, son mode sera « intégré Windows » (NTLM ou Kerberos) qui permet d’utiliser le compte du poste client Windows pour se connecter à une application. Ce mode évite d’avoir à s’authentifier à nouveau à l’application et utilisera le domaine Active Directory existant chez Axa.

Les différents rôles des utilisateurs authentifiés seront détaillés dans les parties suivantes. La plateforme n’aura alors pas besoin d’une double authentification.

2.1.2 - Architecture logique a) Rappel sur les architectures 4-tiers

Page 43 sur 74

L’architecture du site central d’administration et sites web agent basée sur MOSS 2007 et la technologie .NET est définie en 4 couches comme toute application .NET. L’utilisateur interagit avec l‘interface utilisateur (Couche de présentation). Chacune des trois couches interagit avec ses couches directes. Et la couche d’accès aux données (Data Layer) interagit avec la source de données, c'est-à-dire la base de données SQL Server sur laquelle sont stockées le contenu et la structure du site. Les couches sont des groupements logiques. Ils aident à différencier chaque type de tâche effectuée au sein de l’application :

Présentation: Les Web Forms ASPX permettent de développer l’interface graphique du site, en proposant une séparation du traitement et de la présentation. Ainsi, le formulaire représente la page Web et les traitements sont contenus dans une seconde page appelée Code Behind. Sous MOSS 2007, ce code peut être stocké dans le cache global du serveur, le GAC. Le traitement de ces formulaires sera développé dans le langage C#. La présentation peut se faire de manières différentes : En utilisant des pages de gabarit (relié à un Content Type) En utilisant des pages layouts En utilisant des pages de composants Web Part Il est intéressant de noter que les solutions MOSS (feature) peuvent encapsuler des Web Form, des User Control ou des Web Part. Service : Elle contient la logique applicative, réalisée par l’appel d’un ou plusieurs services métier. Pour externaliser les services du portail MOSS, il est possible de développer des Web Services chargés d’interconnecter le portail avec des applications externes. Métier : Elle contient la logique fonctionnelle du système. Sous MOSS, ce type de bibliothèque doit être stocké dans le GAC pour être utilisé par les couches de présentation et de service. Données : Elle contient toutes les classes les plus proches de la base de données afin d’interfacer le système d’information des données et de fournir une organisation de ces données. Les services de cette couche sont fournis par ADO.NET et par des classes utilitaires de la bibliothèque de classes de MOSS 2007.

2.2 -

Organisation du projet AXA B² 2nd Release

Le projet Axa B² 2nd Release est dirigé en grande partie à Oujda, l’équipe Oujda se compose d’un chef de projet technique d’un Ingénieur Concepteur Développeur et de nous deux en tant qu’Ingénieurs Concepteur Développeurs débutant, la cellule Paris se compose d’un expert technique MOSS et du Directeur de projet.

Page 44 sur 74

L’équipe Oujda s’est chargée de l’estimation des charges et du développement, l’équipe paris assure le conseil fonctionnel et technique. 2.2.1 - Organisation dans le temps

Ci-dessous le planning de nos tâches :

Figure 19 Planning Mohammadi Lagrini Axa B² 2nd Release

Page 45 sur 74

Figure 20 Planning Mohammed Benabdallah Axa B² 2nd Release

2.2.2 - Démarche Skills Sur le projet AXA B² 2nd Release nous avons mis en place des processus Skills afin de respecter la norme CMMI, (pour rappel l’agence Oujda a été validé en interne CMMI niveau 3 au cours de notre stage).

Vérification (VER) : par l’utilisation de TCM (Test Case Manager) : Remplir les cas de tests de la fonctionnalité à développez avant de commencer le développement, le chef de projet valide que l’ICD a bien compris ce qui est demandé. Utilisation d’une check liste« fiche de mise au point » à la fin du développement pour vérifier le développement (pense-bête) Gestion de Configuration (CM) : Utilisation d’un gestionnaire de configuration SVN pour les sources ainsi que pour les documents du projet. Partage d’un document centralisant les fichiers à utiliser pour chaque équipe à un instant donné (Version + Nom du fichier + emplacement). Partage via SVN et Google docs.
2.3 Réalisation du Projet AXA B² 2nd Release

2.3.1 - Environnement de développement a) Machine virtuelle de développement Système et composants Système d’exploitation Framework .NET
Windows Serveur 2003 SP1

-

Framework .NET 2.0 Framework .NET 3.0

Page 46 sur 74

Logiciels Bureautique Développement -

Framework .NET 3.5

Tableau 3 Système et composants de la machine virtuelle de développement sur Axa B²

Suite office 2003
Visual Studio 2008 Language C# MSDN (VS2008, .NET 2.0, C#) STSDEV 1.3 SQLI (*) Stramit Caml Viewer SharePoint Manager UltraEdit Newsid.exe SQL Serveur 2005 Standard Edition avec SP2 MOSS 2007 SP1 SharePoint Designer 2007 SP1 SDK SharePoint

Tableau 4 Logiciels de la machine virtuelle de développement sur Axa B²

b) Machine physique hébergeant la VM - 3Go RAM Disque dur - Non réseau. - Non Compressé - 40Go Processeur - 3Ghz
Tableau 5 Machine physique hébéreant la machine virtuelle de développement sur Axa B²

Page 47 sur 74

c)

Schéma d’architecture technique

Figure 21 Schéma d’architecture technique

Le premier déploiement sur un environnement AXA s’effectuera par une installation de plusieurs packages de solutions (wsp), d’une importation d’un fichier de contenu ainsi qu’une configuration liée à l’environnement. Une procédure décrivant les étapes du déploiement de la solution finale sera rédigée par SQLI à l’intention d’Axa afin de les accompagner dans le déploiement des applications sur leurs environnements.

Normes de développements Il est important de définir des règles qui devront être respectées pour l’ensemble des développements. Cela permet ainsi de produire un rendu suivant une certaine logique, et de permettre une reprise simple. Un grand nombre de bonnes pratiques ont été également listées suite à des retours d’expérience de nos équipes de développement. Ces bonnes pratiques permettent alors de présenter différents modèles de développement possible sur la plateforme et les préconisations concernant un modèle plutôt qu’un autre.

d)

Page 48 sur 74

Les normes de développements C# et SharePoint sont les mêmes que celles utilisées sur Axa.fr.

2.3.2 - Travail réalisé Limitation des droits sur la liste des collaborateurs Le site possède une interface permettant de gérer les collaborateurs de chaque point de vente de l’agence. L’agent (= producteur ou l’administrateur désignés) peut ainsi définir des collaborateurs pour chaque point de vente. Les informations des collaborateurs seront initialisées grâce à l’importation des données d’AZIMUT. Pour rappel, cette importation est effectuée à la création du site agent (il n’existe pas de synchronisation AZIMUT). L’interface de gestion de collaborateurs permettra aux producteurs et administrateurs désignés de modifier certaines données des collaborateurs. Ils ne pourront pas ajouter de nouveaux collaborateurs ou encore supprimer des collaborateurs importés d’AZIMUT. En cas de besoin, l’administrateur AXA (IT AXA) aura toutefois la possibilité de faire l’ajout, la suppression et la modification de toutes les données des collaborateurs. Pour ce faire, il devra se connecter sur l’administration locale du site agent et modifier les données dans les structures SharePoint. a)

b) Bannières L’agent peut choisir parmi les bannières disponibles : les bannières étant créées via la centrale d’administration Les bannières sont affectées par : Page d’accueil Par univers Par catégorie Grâce à la segmentation par groupes de site agent (2nd Release), AXA aura la possibilité de définir un catalogue spécifique par groupe. L’interface de l’administration locale affichera alors uniquement les bannières que l’administrateur AXA a choisies dans la centrale d’administration. Afin de proposer plusieurs campagnes promotionnelles aux mêmes moments, plusieurs bannières vont pouvoir être affichées sur la même page. L’agent dispose d’un bouton de prévisualisation pour voir les changements sur son site avant d’accepter la modification. Le travail réaliser se divise en deux parties :

Page 49 sur 74

Premièrement permettre à l’administrateur de choisir plusieurs bannières (alors qu’il ne peut actuellement en choisir qu’une seule)

3

Figure 22 Fonctionnalité - Selection de bannière

Du coté du rendu de l’internaute, une mise en place d'un système de rotation des bannières par affichage aléatoire sera mise en place : dans le cas où plusieurs bannières seront choisies, un choix aléatoire à chaque chargement de page permettra de définir la bannière à afficher : le changement se fera au chargement de la page et non toutes les x secondes.

Figure 23 Fonctionnalité - Affichage de bannière

Le cas « Pas de bannière » correspond uniquement aux zones univers.

Page 50 sur 74

c)

Activation / Désactivation de produit

L’administration centrale permet de définir les produits obligatoires et les produits optionnels que les agents auront à leur disposition. Une des nouvelles fonctionnalités à mettre en place dans la 2nd release correspond à la désactivation/activation de produits tout en intégrant les problématiques liées à une désactivation : en effet, désactiver un produit implique qu’il doit être remplacé si ce dernier est utilisé comme produit « Découvrir aussi ». L’interface de gestion du catalogue produit a donc été enrichie de cette notion d’activation. Grâce à la fonctionnalité de désactivation, l’administrateur AXA va pouvoir enlever certains produits sur l’ensemble des sites agents. Il pourra par la suite les réactiver et donc les rendre à nouveau disponible aux agents. L’activation et la désactivation dépendra des groupes de sites agents. Un groupe peut donc avoir le produit P1 de désactivé alors qu’un autre groupe aura le produit P1 de disponible.

Figure 24 Fonctionnalité - Activation /Désactivation de produits

Si le produit optionnel est décoché et qu’il n’y a pas de relations existantes avec les produits du moment, le produit « Découvrir aussi » ou les bannières, le produit pourra être décoché sans autre modification.

Page 51 sur 74

Si le produit optionnel est décoché et qu’il y a au moins une relation existante avec les produits du moment, le produit « Découvrir aussi » ou les bannières, une fenêtre de confirmation s’affiche :

Figure 25 Fonctionnalité - Activation /Désactivation de produits : Fenêtre de confirmation

Le clic sur ok affiche l’interface ci-dessous. Le clic sur Annuler annule l’action : le produit n’est alors pas décoché. Note : le message est paramétrable dans le fichier des libellés.

Figure 26 Fonctionnalité Activation/Désactivation de produits : Confirmation de suppression

d) Suppression/Remplacement des relations existantes du produit L’interface présentée dans ce chapitre est affiché lorsque l’administrateur AXA de la centrale d’administration clique sur la désactivation d’un produit et que le produit en

Page 52 sur 74

question possède des relations avec d’autres composants. (Figure 20 Fonctionalité Activation/Désactivation de produits : Confirmation de suppression Confirmation suppression) Les composants en relation sont : Les produits du moment Le produit « Découvrir aussi » Les bannières

Le clic sur le bouton « Désactiver » sera cliquable uniquement lorsqu’il n’existera plus de liens avec les zones promotionnelles Une information promotionnelles. javascript sera alors affichée : « Pour désactiver le produit, vous devez enlever les liens existants vers les zones promotionnelles ». Une fois la case à cocher des zones promotionnelles désélectionné et que l’administrateur AXA enregistre la zone sera alors cachée : cette interface n’agit enregistre, que sur la désactivation d’une relation. Tout comme la modification des données en masse (sur tous les sites agents), les modifications sont effectuées à une heure fixe (de préférence la nuit).

e) e.i )

Dynamique promotionnelle ue Vignettes (Stickers) Sur les produits, il sera possible d’ajouter des vignettes promotionnelles. Une vignette pourra s’afficher sur le visuel d’un produit afin de le démarquer des autres.

Figure 27 Fonctionnalité - Vignette (Sticker) : Fiche produit

Quelques exemples de vignettes : Salon Auto Concours Promo offre temporaire

Page 53 sur 74

Il sera possible d’ajouter par la suite d’autres vignettes grâce aux Web Catalog. Le format de l’image devra être « gif » ou « png » et bien sûr transparente. L’image se superposera à celle du produit.
Zone transparente Contenu du picto

Cadre transparent, utilisé juste pour symbolise l’image dans ce document.

3.2.3.2.e.i.1 L’administration des vignettes dans le WebCatalog Un nouvel accès depuis le dashboard sera mis en place. Il permettra donc d’administrer l’ensemble des vignettes promotionnelles. Grâce à cette solution, il sera alors possible de capitaliser sur les vignettes. Une fois le jeu de vignette construit, il de suffira d’associer le produit à une vignette sans télécharger à nouveau les images.

Figure 28 Fonctionnalité Vignettes (Stickers) : Administration

e.ii )

Les boutons de push promotionnel Le bouton de push promo promotionnel permet d’accéder directement à la page promotionnelle correspondante, ou à la fiche produit (cela sera défini par AXA), où encore à un site externe. Ce bouton s’ajoutera au dessus des autres liens déjà présents sur le produit.

Page 54 sur 74

Figure 29 Fonctionnalité - Boutons promotionnel (Accueil)

Le push promotionnel peut s’afficher sur plusieurs zones :

Figure 30 Fonctionnalité Bouton push promotionnel: Sur les produits du moment

Figure 31 Fonctionnalité Bouton push promotionnel : Sur la zone « Découvrez aussi »

Page 55 sur 74

Figure 32 Fonctionnalité Bouton push promotionnel : Sur la remontée des produits sur une MasterPage Catégorie

Figure 33 Fonctionnalité Bouton push promotionnel : Sous la zone description courte de la promo de la fiche produit

f)

Gestion des groupes et segmentation

Dans le cadre de la second release, la plateforme va permettre de segmenter les agents en donnant la possibilité de constituer des groupes d’agents. Il sera alors possible de mener des actions ciblées sur des groupes d’agents, comme par exemple mettre à la disposition de certains agents des bannières. Les différentes fonctionnalités liées à la segmentation des agents sont : Création, Modification et suppression de groupes de site agents Association de site agent à un groupe Importation des groupes et association de site agent Construction du catalogue produit spécifique au groupe de sites agents (produits obligatoires et optionnels, produits du moment, produit découvrir aussi) Affectation des produits du moment et des produits « découvrir aussi » par groupe d’agent

Page 56 sur 74

Construction de bannières par groupe d’agent Interdire pour certains groupes la contribution sur les pages de contenus libre, les liens utiles et les rubriques additionnelles. L’administrateur AXA a la possibilité de restreindre les droits des agents. Il peut ainsi supprimer certains droits de contribution. Dans le cas où le site agent est dans un groupe qui possède cette limitation sur la contribution, l’intégralité du bloc « Les liens utiles » sera invisible sur le site agent. Produits – Sélection ‘Obligatoire’ L’ensemble des produits sera saisi au sein du WebCatalog. Grâce à l’administration centrale, un écran permettra de définir le catalogue de produits obligatoires à afficher dans les sites agents ainsi que les produits optionnels. Ces produits seront alors disponibles dans tous les catalogues de produit de tous les sites agents créés. Ils seront affichés dans leur univers respectif. A la création d’un site agent, tous les produits obligatoires ou optionnels seront ajoutés dans le catalogue de l’agent permettant ainsi de les présenter aux internautes. Par la suite, l’agent pourra désélectionner ces produits optionnels et donc les cacher grâce à son administration locale. A tout moment, il pourra à nouveau rajouter les produits précédemment désélectionnés. Si un site est déjà en ligne et qu'un nouveau produit optionnel est créé, il sera alors déployé sur les sites déjà en ligne. La logique est donc de déployer au maximum la gamme de produits AXA (optionnel et obligatoire) sur tous les sites agents. g)

2.4 -

Bilan du projet AXA B²

2.4.1 - Difficultés rencontrées Une des difficultés majeures qu’on a relevée est (encore) la configuration matérielle, en effet, même avec des RAM de 4 GO (le système d’exploitation XP ne gère que 3.2 GO). D’autre part la 1st release de l’application n’est pas encor en production chez le client suite a des problèmes d’intégration chez le client ainsi que des anomalies non reproductible sur l’environnement d’intégration, de ce fait le client était beaucoup plus occupé par la mise en place de la 1st release que de nous accompagner pour éclaircir quelques besoins fonctionnel au niveau des exigences de la 2nd release. Sur le plan technique nous avons commencé le développement sans que les spécifications fonctionnelles ou techniques ne soient validées par le client, le risque de modifier des exigences et/ou en supprimé a été modifié et le chef de projet a prévu des taches de rework.

Page 57 sur 74

Compétences acquises Le travail en équipe, le besoin de capitaliser l’expérience, de partager ses problèmes ses succès furent les principaux gains lors de ce projet. Nous avons repris du code (beaucoup de code) existant, sur le plan technique, trouver que modifier, sans causer de régression était un grand défie a soulever, en effet toute modification ne doit dans aucun cas impacter la version précédente et toute opération doit être réversible ce qui, sur SharePoint nécessite des fois beaucoup plus de code. Nous avons aussi eu la chance de travailler dans un environnement complexe ou Web Service, .NET, SharePoint cohabite, nous avons aussi utiliser les outils SQLI pour la mise en œuvre de pratiques CMMI tel que TCM (Test Center Management) pour formaliser les compagnes de tests, SDP, pour la saisie journalière des taches réalisées et l’estimation du reste a faire, Mantis pour le suivi des anomalies et des évolutions.

2.4.2 -

Page 58 sur 74

Conclusion et perspectives
La conclusion sur le projet AXA B² 2nd Release ne peut être juste et finale, en effet le projet est encor en cours de construction. Néanmoins, de ce qui est notre avis jusqu'à maintenant on a relevé que AXA est un client exigent avec un département d’information solide, la qualité, le respect des délais sont primordial. Ce qui nous a le plus marquer sur ce projet c’est de voir une architecture complexe SharePoint, sur le plan technique nous avons travaillé avec différentes architectures et technologies au sein du même projet : communication par Web Service, composants web, contrôles JavaScript avancés, des pages ASP.NET, paterne DAO. Une vraie expérience riche en défis techniques que nous avons relevés grâce à l’encadrement de l’équipe MOSS. Tout d’abord, ce stage aura été d’une incroyable richesse, 2 projets, 2 étapes différentes, 2 visions différentes des choses, et beaucoup de sympathiques collaborateurs. Il reflète ainsi réellement les enjeux, problèmes qui occurrent ainsi que les implications personnelles qu’il faut faire au sein d’une SSII. Ainsi, ce qui nous était demandé en priorité c’est une capacité à réagir et à s’intégrer, connaître le sujet sous toutes ses coutures ; ceci correspond bien avec la réactivité énorme et la souplesse incroyable qu’il faut avoir dans ce milieu qu’est la SSII. Etre au service du client, c’est aussi et avant tout être à disposition des autres équipes de développement, rester l’esprit ouvert et coopératif. Il reste donc, dans les premiers temps, très peu de place pour l’ambition personnelle ; si l’on cherche le calme et la quiétude dans le travail, ce n’est pas ce genre de société dans lesquelles il faut aller. Par contre, si on recherche le mouvement et, il faut bien le dire, les ennuis (qui sont d’ailleurs bien plus porteur en terme de connaissance et de technicité), c’est typiquement ce genre de société qu’il faut choisir. Et c’est ce que nous avons choisi. Notre premier projet nous a permis de revoir le langage C# et la plateforme .NET et d'approfondir les connaissances acquises durant les formations au sein de SQLI. C’est le faite de capitaliser des composants existant, d’essayer de comprendre les spécifications fonctionnelles et techniques qui nous ont obligé à aller vers les autres pour poser des questions et ainsi à nous intégrer petit à petit au sein de l’agence. C'était une première à ce niveau pour nous en C#, ASP.NET. Le second projet, « Axa B² 2nd Release » nous a donné une vision totalement différente des choses. C'est également à cette époque que nous avons pu voir l'organisation d'un projet à SQLI et la mise en place des processus CMMI, sur le projet sur lequel nous travaillons mais aussi sur les différents projets voisins. Tout cela nous a permis de faire nos armes. Nous travaillons toujours sur ce projet, bien que de temps en temps nous basculons sur la correction des anomalies de la première version du produit. C’est un peut tôt pour donner un constat sur ce projet, mais on pense qu’on est sur la bonne voie.

Page 59 sur 74

L'intérêt de notre stage est clair : il a assuré la transition de notre formation vers notre métier d'aujourd'hui : Ingénieur Concepteur Développeur et Testeur.

Page 60 sur 74

Liste des figures
Figure 1 Secteurs d'activités couverts par SQLI ............................................................. 10 Figure 2 Chiffre d’affaires SQLI..................................................................................... 11 Figure 3 SQLI dans le monde ......................................................................................... 11 Figure 4 Les zones de fonctionnalités de MOSS ........................................................... 19 Figure 5 Partage de document via e‐mail (multiple copie) ............................................. 20 Figure 6 Partage de document via SharePoint (unique copie) ....................................... 20 Figure 7 : Architecture logique de MOSS....................................................................... 27 Figure 8 Ajout d'un élément dans la liste des pages d'erreurs personnalisé................... 31 Figure 9 Composant "PageRating" ................................................................................. 32 Figure 10 Toolpart (Configuration de la Webpart) Diaporama Large ........................... 32 Figure 11 WebPart « Lecteur de flux RSS » .................................................................. 33 Figure 12 Toolpart (Configuration de la Webpart ) Lecteur de flux RSS ...................... 33 Figure 13 WebPart "Podcast".......................................................................................... 34 Figure 14 Toolpart (Configuration de la WebPart) "Podcast" ........................................ 34 Figure 15 Cartographie fonctionnelle de l’application SAG .......................................... 37 Figure 16 Tableau de bord Central Admin ..................................................................... 39 Figure 17 Aperçu d’une page d’un site agent (fiche produit) ........................................ 40 Figure 18 Tableau de bord Back Office Site Agent ........................................................ 41 Figure 19 Planning Mohammadi Lagrini Axa B² 2nd Release ....................................... 45 Figure 20 Planning Mohammed Benabdallah Axa B² 2nd Release ................................ 46 Figure 21 Schéma d’architecture technique .................................................................... 48 Figure 22 Fonctionnalité - Selection de bannière ........................................................... 50 Figure 23 Fonctionnalité - Affichage de bannière .......................................................... 50 Figure 24 Fonctionnalité - Activation /Désactivation de produits .................................. 51 Figure 25 Fonctionnalité - Activation /Désactivation de produits : Fenêtre de confirmation .................................................................................................................... 52 Figure 26 Fonctionnalité Activation/Désactivation de produits : Confirmation de suppression ...................................................................................................................... 52 Figure 27 Fonctionnalité - Vignette (Sticker) : Fiche produit......................................... 53 Figure 28 Fonctionnalité Vignettes (Stickers) : Administration ..................................... 54 Figure 29 Fonctionnalité - Boutons promotionnel (Accueil) .......................................... 55 Figure 30 Fonctionnalité Bouton push promotionnel: Sur les produits du moment ...... 55 Figure 31 Fonctionnalité Bouton push promotionnel : Sur la zone « Découvrez aussi » ......................................................................................................................................... 55 Figure 32 Fonctionnalité Bouton push promotionnel : Sur la remontée des produits sur une MasterPage Catégorie............................................................................................... 56 Figure 33 Fonctionnalité Bouton push promotionnel : Sous la zone description courte de la promo de la fiche produit ............................................................................................ 56 Figure 34 : Conception d'une WebPart ........................................................................... 66 Figure 35 : Exemple d’intégration d’une web part dans une page de publication .......... 67 Figure 36 : Affichage des types de publication Sharepoint ............................................ 70 Figure 37 : Organisation des sites, des pages et des listes ............................................. 73

Page 61 sur 74

Liste des tableaux
Tableau 1 Analyse SWOT de Microsoft Office SharePoint Server ................................ 24 Tableau 2 Vocabulaire AXA B² ...................................................................................... 42 Tableau 3 Système et composants de la machine virtuelle de développement sur Axa B² ......................................................................................................................................... 47 Tableau 4 Logiciels de la machine virtuelle de développement sur Axa B² ................... 47 Tableau 5 Machine physique hébéreant la machine virtuelle de développement sur Axa B² ..................................................................................................................................... 47 Tableau 6 : Les types de champs Sharepoint ................................................................. 69 Tableau 7 : Types de champs de publication Sharepoint ................................................ 70 Tableau 8 : Organisation des fichiers de la Central Administration ............................... 71 Tableau 9 : Organisation des fichiers des sites agents .................................................... 72

Page 62 sur 74

Partie 4.

Annexes

Page 63 sur 74

Chapitre1. Méthodologie de développement
1.1 Etapes de construction du portail On peut segmenter le modèle de développement du portail SharePoint selon les étapes suivantes :

1

Créer la Structure du Site/ Navigation

2

Création des master pages

3

Développer des Content Types

4

Créer des pages “palier”

5 Développer le contenu des surfaces des pages

1. Définition de la structure, création des conteneurs, modèles, sous sous-sites, etc. 2. Intégration des master pages, c’est dire les parties communes à tous les c’est-à-dire gabarits. Les master pages sont la plupart du temps commune à une collection de site, ou propre à chaque sous sous-sites (zones) 3. Catégorisation des contenus de tout le site (exemple : Page d’article, Page d’actualité, etc.). On peut comparer cette étape à l’injection du modèle métier. 4. Intégration des layouts, c’est à dire des mises en pages liées à des Content Types. Le layout est le fichier de présentation au format ASPX lié à un type de publication.

Page 64 sur 74

5. Développements spécifiques, sous la forme de Feature ou Web Parts pour enrichir le contenu des pages. Les développements WSS et MOSS 2007 SQLI développera les fonctionnalités dynamiques de l’environnement du site central d’admin et sites web agent par l’intermédiaire de la réalisation technique de features. Les features peuvent contenir : Des pages ASP.Net 3.5 en langage C# Des structures (définition de listes, structure de content Type) Des définitions de sites (création de sous-site, activation de features…) Des traitements liés aux évènements de SharePoint (exemple : traitement lors de l’ajout d’un document dans une liste). Des web parts (blocs fonctionnels réutilisables) 1.2.1 - Features Les features représentent le conteneur pour les extensions sur les plateformes SharePoint. En effet, les features peuvent contenir du code .NET sous forme de DLL et des pages ASP.net, des web parts, des définitions de listes, etc. tout en permettant leur intégration sous la forme de fichier Solutions de SharePoint. Le format d’une solution est un fichier *.WSP. Les features sont très fortement réutilisables pour d’autres sites SharePoint, versionnés, activables ou non, et également déployables de façon contrôlée et programmée entre les différents environnements (recette, production, etc.). SQLI se base sur l’outil STSDEV pour les squelettes des features et la génération/exécution des packages sur l’environnement de développement. Ainsi, des features seront réalisées afin d’être facilement déployable pour le site Axa Central Admin et les sites AXA Web Agent. 1.2.2 - Web Forms ASP.NET Ces pages sont totalement intégrées dans la plateforme MOSS, pour être encapsulées dans tous les processus de la plateforme : • • • • Communication transparente avec des listes MOSS Utilisation des master pages Intégration avec les stratégies de sécurité et de droits utilisateurs … 1.2 -

Page 65 sur 74

1.2.3 - Web Parts spécifiques Les Web Parts sont développées pour enrichir les pages .Net dans le but de réutiliser un bloc autonome sur le site et sur une ou plusieurs pages différentes. Les pages prévues pour héberger des web parts sont définies selon les besoins émis dans les spécifications avec toute une série de zones techniques permettant la manipulation graphique et automatisée de celle-ci. ci. Ces zones sont explicitées via le schéma suivant :

Figure 34 : Conception d'une WebPart

Les développeurs spécifient en outre toute une série de propriétés qui ser seront par la suite paramétrables graphiquement par les administrateurs de contenu. Par exemple, voici une web part qui permet l’intégration d’un module cartographie au sein d’un site. Les contributeurs ont ainsi la possibilité d’ajouter des points sur la car carte en choisissant des types de localisations, des types de puces…

Page 66 sur 74

Figure 35 : Exemple d’intégration d’une web part dans une page de publication

1.3 -

Glossaire des attributs

1.3.1 - Structure commune des attributs La structure de données dans MOSS peut être composée par une série de champs/attributs divers. Le tableau ci-dessous permet de présenter ces différents types qui seront utilisés tout au long de cette partie de structuration. Les structures de listes WSS ou encore des Content Types pourront être composés de ces champs.

Tous les types de champs disponibles sur SharePoint sont définis à l’adresse suivante : http://office.microsoft.com/fr-fr/help/HA100242781036.aspx

Libellé Une seule ligne de texte

Sigle LT

Description Ce type de colonne permet de présenter et d'afficher de petites quantités de texte non mis en forme sur une seule ligne, y compris : • Du texte uniquement, tel que des prénoms, des noms ou des noms de rubrique • Des combinaisons de texte et de chiffres telles que des adresses postales ou des numéros de compte

Page 67 sur 74

• Des nombres qui ne sont pas utilisés dans des calculs tels que des numéros d'identification d'employés, des numéros de téléphone, des codes postaux ou des numéros de pièce Plusieurs lignes de texte BT TE TEA Ce type de colonne permet de collecter et d'afficher du texte mis en forme ou du texte long et des valeurs sur plusieurs lignes par exemple, une description ou des commentaires sur un élément. Une colonne du type Plusieurs lignes de texte peut stocker 63 999 caractères. BT : Boite de texte simple TE : Zone de texte enrichi (gras, italique, alignement de texte) TEA : Zone de texte enrichi (images, tableaux, liens hypertextes) Ce type de colonne est utilisé pour permettre aux utilisateurs d’effectuer un choix dans une liste d'options. Il est idéal lorsqu’on souhaite guider les utilisateurs vers des données précises (limite ainsi les valeurs et présente des données cohérentes). LD : Liste déroulante à choix unique LC : Liste de plusieurs choix Ce type de colonne est utilisé pour stocker des valeurs numériques qui ne sont pas des valeurs monétaires. Ce type de colonne est utilisé pour stocker des valeurs monétaires. Ce type de colonne est utilisé pour stocker des dates de calendrier ou bien des dates et des heures. Le format de date varie en fonction des paramètres régionaux définis pour le site. Ce type de colonne est utilisé pour autoriser les utilisateurs à choisir des valeurs basées sur des informations déjà stockées sur le site. Ce type de colonne est utilisé pour stocker des données du type vrai/faux ou oui/non. Une colonne du type Oui/Non apparaît sous la forme d'une seule case à cocher. Ce type de colonne est utilisé pour fournir des listes de personnes, de distribution de courriers électroniques et de groupes utilisateurs MOSS. Ce type de colonne est utilisé pour stocker un lien hypertexte dans une page Web ou pour afficher un graphique.

Choix

LD LC

Nombre

NUM

Monétaire Date et heure

CUR DATE

Liste de choix

LKP

Oui/Non

CHK

Utilisateur/Groupe

USR

Lien hypertexte ou image

LNK IMG

Page 68 sur 74

Calculé

CAL

LNK : Lien hypertexte IMG : Image Ce type de colonne est utilisé pour afficher des informations basées uniquement sur les résultats d'un calcul.

Tableau 6 : Les types de champs Sharepoint

La liste des types se présente sous la forme suivante :

1.4 - Structure pour les pages de publications Les « Content Type » permettent une structuration des données plus complète. Un type de contenu est un groupe de paramètres réutilisables décrivant les comportements partagés pour un type de contenu spécifique. Des types de contenu peuvent être définis pour n'importe quel type d'élément dans MOSS 2007, que ce soit des documents, des éléments de liste et des dossiers. De plus, ce type offre un fonctionnement d’héritage. Quelques attributs plus riches (et uniquement sur les types de contenu héritant du type abstrait « Page ») composent cette structure. Une fois un Content Type lié à une mise en page (Layouts), l’administration est alors simplifiée amenant une véritable plus value de l’outil.

Libellé Contenu HTML complet avec mise en forme et contraintes pour la publication

Sigle PRTE

Image avec mise en forme

PIMG

Description Ce type de colonne permet à l’utilisateur de présenter du contenu grâce à une barre à outils riche. Grâce à ce type, il est possible d’uploader directement des images dans une bibliothèque d’images ou encore de faire des liens internes grâce à une représentation des pages du site selon l’arborescence. Ce type de colonne permet d’intégrer

Page 69 sur 74

et contraintes pour la publication Lien hypertexte avec mise en forme et contraintes pour la publication PLNK

Données des liens de synthèse

PSYN

facilement des images. Il est également possible d’uploader directement des images dans une bibliothèque d’images. Ce type de colonne permet d’intégrer facilement un lien hypertexte. Il est également possible de faire un lien interne grâce à une représentation des pages du site selon l’arborescence. Ce type de colonne permet d’intégrer facilement des liens hypertexte. Il est également possible de faire des liens internes grâce à une représentation des pages du site selon l’arborescence. De plus, il est possible de réorganiser l’ordre des liens via la barre d’outils.

Tableau 7 : Types de champs de publication Sharepoint

La liste des types se présente sous la forme suivante :

Figure 36 : Affichage des types de publication Sharepoint

Page 70 sur 74

Chapitre2. Organisation des fichiers, sites et features
2.1 Organisations des fichiers

2.1.1 - Feuilles de styles et images Tous les styles, les images et les flashs seront stockées dans une bibliothèque de style sur la plateforme. Administration centrale des sites agents URL /Style%20Library/AXA_CENTRALA DMIN/ Flash /Style%20Library/AXA_CENTRALA DMIN/images /Style%20Library/AXA_CENTRALA DMIN/ScriptJs /Style%20Library/AXA_CENTRALA DMIN/StylesCss /Style%20Library/AXA_CENTRALA DMIN/StylesXsl /Style%20Library/AXA_CENTRALA DMIN/TemplateMail /Style%20Library/AXA_CENTRALA DMIN/Xml Site web agent URL /Style%20Library/AXA_AGENTWE BSITE/ Flash /Style%20Library/AXA_AGENTWE BSITE /images /Style%20Library/AXA_AGENTWE BSITE /ScriptJs /Style%20Library/AXA_AGENTWE BSITE /StylesCss /Style%20Library/AXA_AGENTWE BSITE /StylesXsl /Style%20Library/AXA_AGENTWE BSITE /TemplateMail /Style%20Library/AXA_AGENTWE BSITE /Xml Description Composants flash Images des styles css Fichiers javascripts relatifs comportements des composants du site Fichiers css de styles Fichiers de personalisation XSL Fichier du modèle du mail en HTML autre fonctionnalité configuration. nécessitant une aux Description Composants flash Images des styles css Fichiers javascripts relatifs comportements des composants du site Fichiers css de styles Fichiers de personalisation XSL Fichier du modèle du mail en HTML autre fonctionnalité configuration. nécessitant une aux

Tableau 8 : Organisation des fichiers de la Central Administration

Page 71 sur 74

Tableau 9 : Organisation des fichiers des sites agents

2.1.2 - Fichiers de ressources Certains libellés sont susceptibles de changer dans l’interface du site central d’admin et sites web agent. Afin de permettre une mise à jour la plus simple, un fichier de ressources sera utilisé et stockera ces libellés. Le fichier modélisé sous la forme d’un fichier xml de ressource standard « .resx » est stocké dans le répertoire « App_GlobalResources » de tous les webfrontaux. Par exemple : « C:\Inetpub\wwwroot\wss\VirtualDirectories\axa_ centralAdmin.recette.axa.fr\App_GlobalResources ». « C:\Inetpub\wwwroot\wss\VirtualDirectories\axa_ agentWebSite.recette.axa.fr\App_GlobalResources ». Ce fichier ne doit pas être inclus dans la DLL car il est contenu dans le « ROOTFILES » de la solution puis déployé dans le « App_GlobalResources ». Son inclusion dans la DLL pourrait provoquer un doublon qu’il est important d’éviter. 2.2 Organisation des sites, des pages et des listes

Page 72 sur 74

Figure 37 : Organisation des sites, des pages et des listes

Page 73 sur 74

Chapitre3. Références MOSS
3.1 Références internationales

Microsoft (http://www.microsoft.com/ ) XBOX (http://www.xbox.com/ ) AMD (http://www.amd.com/ ) Dell Inc. ( http://dell.com ) BNP Paribas : UCB (http://www.cetelem-immo.fr/ ) AlfaRomeo (http://www.alfaromeo.pt/ ) Etihad Airways (http://www.etihadairways.com/ ) Egypt Air ( http://www.egyptair.com/ ) Abu Dhabi Judicial Department ( www.adjd.gov.ae ) Zain (http://www.jo.zain.com/ ) Washington State Department of Commerce (www.commerce.wa.gov ) Army Jobs ( http://www.armyjobs.mod.uk/ ) Chicago Public Schools (http://www.cps.edu/ ) Jet Support Services Inc. (JSSI) Aircraft Service Provider Streamlines Operations, (http://jetsupport.com/home/ ) Revue des études ( http://www.revue-d-etudes.fr/ )

3.2 -

Références SQLI :

Axa France (www.axa.fr en collaboration avec SQLI Oujda) Axa Belgique (www.axa.be Sujet de notre stage en collaboration avec SQLI Oujda)) Axa Mexique (http://www.axa.com.mx en cours de déploiement et de formation des utilisateurs) Renault (www.renault.com Solution créé en collaboration avec SQLI Oujda) Intranet ICADE (www.icade.fr en collaboration avec SQLI Oujda) Intranet ATARAXIA (www.ataraxia.fr ) Intranet Aéroports de Paris Philip Morris International (www.pmi.com ) Intranet Centre National d’Etudes Spatiales (C.N.E.S.) Réalisation du portail de capitalisation SQLI

Page 74 sur 74

Sign up to vote on this title
UsefulNot useful