Développement et déploiement sur Windows Azure
-
Upload
khaled-ben-driss -
Category
Documents
-
view
219 -
download
2
description
Transcript of Développement et déploiement sur Windows Azure
Rapport de stage d’été 2009
Développement et déploiement d’une application web dans le cloud de Microsoft
Windows Azure (MS PaaS version CTP)
Réalisé par Soumow ATITALLAH
Version 1.0.0
Auteur(s) Soumow ATITALLAH
Type projet Exploration (Early)
Stage Proposé par Khaled BEN DRISS
Statut encours de validation
Classification interne
Référence
Interne OXIA11, Rue Claude Bernard • 1002 Tunis Belvédère Tunisie
Tel. +216 71 28 27 00 • Fax +216 71 28 27 05Http://www.oxia-group.com
Stage d’été : 2009
Stage d’été 2009 :OXIA Http://www.oxia-group.com
ppa.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
SommaireIntroduction Générale 7
Introduction Générale 1
Chapitre I : Présentation du Cadre du Projet 2
Chapitre I : Présentation du Cadre du Projet 3
1. INTRODUCTION 3
2. PRÉSENTATION DE LA SOCIÉTÉ « OXIA » [5] 3
2.1. DESCRIPTION DE LA SOCIÉTÉ......................................................................................................3
2.2. DOMAINE D’ACTIVITÉ DE L’ENTREPRISE........................................................................................4
3. LA PLATEFORME WINDOWS AZURE 4
3.1. Description.........................................................................................................................4
3.2. Windows Azure...................................................................................................................7
3.3. Live Services......................................................................................................................8
3.4. .NET Services.....................................................................................................................8
3.5. SQL Azure..........................................................................................................................8
3.6. Microsoft Sharepoint Services / Dynamics CRM Services.................................................8
Chapitre II : Spécification des besoins 10
Chapitre II : Spécification des besoins 11
I. Présentation du Projet : 11
1. OBJECTIF DU SITE : 11
2. A QUI S’ADRESSE LE SITE : 11
Administrateur :...........................................................................................................................11
Etudiant:.......................................................................................................................................12
Professionnel:...............................................................................................................................12
Utilisateur anonyme :...................................................................................................................12
3. CONTENUS 12
4. ARBORESCENCE 12
II. Liste des cas d’utilisation : 14
Stage d’été 2009 :OXIA Http://www.oxia-group.com
1. UTILISATEUR 14
Cas d’utilisation 1 : demander une inscription.............................................................................14
ETUDIANT 14
Cas d’utilisation 1 : Compléter son profil......................................................................................14
JURY 15
Cas d’utilisation 1 : Compléter son profil......................................................................................15
Cas d’utilisation 2 : Donner une note...........................................................................................15
2. ADMINISTRATEUR 15
Cas d’utilisation 1 : Modérer les profils........................................................................................15
Cas d’utilisation 2 : Changer le mot de passe...............................................................................16
Cas d’utilisation 3 : modérer les fichiers.......................................................................................16
Cas d’utilisation 4 : modérer les commentaires...........................................................................16
Cas d’utilisation 5 : ajouter des articles dans la rubrique événement..........................................16
3. UTILISATEUR ANONYME 16
Cas d’utilisation 1 : ajouter un commentaire................................................................................16
Cas d’utilisation 2 : proposer un événement................................................................................16
III. Liste des écrans 17
1. UTILISATEUR ANONYME : 17
Accueil :........................................................................................................................................17
PFE................................................................................................................................................17
Evénements..................................................................................................................................17
Contacts........................................................................................................................................18
2. UTILISATEUR INSCRIT 18
3. ADMINISTRATEUR 19
Page de Gestion des inscrits.........................................................................................................19
Page Gestion de fichier.................................................................................................................20
Page de Gestion des commentaires...............................................................................................20
Page de Gestion des événements.................................................................................................20
IV. Hébergement 20
Chapitre III : Conception 21
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception de la base de données 22
1. INTRODUCTION 22
1.1. OUTIL DE MODÉLISATION........................................................................................................22
1.2. MODÈLE DE CONCEPTION DE DONNÉES......................................................................................22
2. ARCHITECTURE 23
2.1. ARCHITECTURE .NET [4].........................................................................................................25
2.2. PRÉSENTATION DES DIFFÉRENTES COUCHES DE L’ARCHITECTURE [4]................................................25
3. CONCLUSION 28
Chapitre IV : Réalisation 29
Chapitre IV : Réalisation 30
1. INTRODUCTION 30
2. MOYENS MIS EN ŒUVRE POUR LE DÉVELOPPEMENT 30
2.1. INTRODUCTION À VISUAL STUDIO 2008 [6], [8].........................................................................30
2.2. SYSTÈME DE GESTION DE BASE DE DONNÉES (SGBD) : SQL SERVER 2008.....................................31
2.3. PRÉPARATION DE L'ENVIRONNEMENT........................................................................................32
2.3.1. CRÉER UN COMPTE AZURE:32
2.3.2. Créer un compte Microsoft Connect :...........................................................................32
2.3.3. CONFIGURATION REQUISE: 34
2.3.4. ACTIVATION DE IIS7, WCF, ASP.NET ET HTTP : 34
3. DESCRIPTION 36
3.1. ACCUEIL..............................................................................................................................36
3.1.1. Inscription.....................................................................................................................36
3.1.2. Authentification............................................................................................................36
3.2. GESTION DES MEMBRES..........................................................................................................37
3.2.1. Profil des membres.......................................................................................................37
3.3. GESTION DES PROJETS............................................................................................................38
3.4. GESTION DES EVÉNEMENTS.....................................................................................................38
3.4.1. Ajout d'événement.......................................................................................................38
3.5. CONTACT.............................................................................................................................39
4. Déploiement dans les nuages 40
Stage d’été 2009 :OXIA Http://www.oxia-group.com
4.1.1. CHOIX DE L’URL ET CONFIGURATION DE L’APPLICATION :41
4.1.2. STAGING : 42
4.1.3. PRODUCTION : 44
5. CONCLUSION 45
Conclusion et Perspectives 46
Conclusion et Perspectives 47
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Introduction Générale Faculté des Sciences de Tunis
Introduction Générale Ce projet a pour objectif de tester la version CTP du cloud de Microsoft : le PaaS AZURE
Il s’agit d’une mission d’exploration et de découverte.
Ce stage a été effectué en utilisant un compte Azure durant la période CTP en 2009.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du Cadre du Projet
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de Tunis
Chapitre I : Présentation du Cadre du Projet
1. INTRODUCTION Le présent projet consiste à développer et déployer une application web dans AZURE
(la plateforme Cloud Computing de Microsoft).
Dans ce premier chapitre, nous commençons par présenter l’organisme d’accueil qui
est la société « OXIA », par la suite, nous nous intéressons à la plateforme de Cloud
Computing choisie pour ce projet : La plateforme Windows Azure.
2. PRÉSENTATION DE LA SOCIÉTÉ « OXIA » [5]
2.1. DESCRIPTION DE LA SOCIÉTÉ
« OXIA » est présente dans les domaines de la finance, la gestion intégrée
d’entreprise(ERP), la logistique, le transport et le conseil en télécommunication. Elle est forte
d’une expertise technique dans divers domaines technologiques : les architectures
d’entreprise, la plate-forme Java, la plate-forme .NET, les Web Services et sans oublier les
technologies client/serveur.
« OXIA » est aujourd'hui un fournisseur global de solutions intégrées pour la gestion
d'entreprise. Alliant un savoir-faire métier (Conseil en Management) à un savoir-faire
technologique (Ingénierie Logicielle), OXIA veut se positionner comme le partenaire
privilégié de ses clients sur cette composante vitale que représente le système d'information
dans la gestion de l'entreprise.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de Tunis2.2. DOMAINE D’ACTIVITÉ DE L’ENTREPRISE
La mission de l’entreprise est d'accompagner les clients dans leur quête d'excellence.
En effet, les nouveaux impératifs d'une économie compétitive et mondialisée imposent un
processus de transformations continues de l'entreprise. Elle s’engage totalement auprès de ses
clients dans la définition et la réussite de ces transformations.
Elle les aide dans la définition de leur nouveau positionnement stratégique à travers
son offre de management consulting. Elle les conseille dans l'organisation de leurs processus
internes et dans la mise en place de solutions adaptées à leurs besoins.
De plus, les télécommunications constituent aujourd'hui un élément important de
l'infrastructure supportant les flux d'informations. Ils constituent également un facteur de coût
important essentiellement pour les grandes sociétés.
C’est pour cela et grâce à une très bonne connaissance du contexte local et un réseau
de partenaires étrangers, « OXIA » intervient en tant qu'architecte de réseaux voix, données et
images, en tant que pilote de projets télécoms et en tant que conseillé dans l'optimisation des
coûts et de la qualité de service des réseaux.
Elle accompagne le client que ce soit un opérateur ou une grande entreprise, pour
réussir l'implantation ou la gestion de leur infrastructure en alliant une haute technicité à
l'expérience des grands projets.
3. La plateforme Windows Azure
3.1. DescriptionLa Plateforme Windows Azure propose une symétrie dans le Cloud de la plateforme
Microsoft existant en entreprise. Elle comprend un socle d’exécution, Windows Azure, que
l’on peut considérer comme l’équivalent d’un système d'exploitation dans le Cloud. Elle
propose également un ensemble de services (.Net Services, SQL Data Services et Live
Services) destinés à être utilisés individuellement ou de manière combinée par les
développeurs d’applications.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de TunisLa Plateforme de Services Azure est actuellement en CTP (« Community Technology
Preview » ou pré-bêta) et est attendue pour la fin de l’année 2009.
Comparons le schéma « On-Premises » intégrant pour sa part Windows Serveur, SQL Server,
Biztalk Server ainsi que SharePoint et Microsoft Dynamics avec l’univers dit « Cloud
Services ou Azure Services Platform » intégrant quant à lui Windows Azure, Live
Services, .NET Services, SQL Services ainsi que Sharepoint Services et Dynamics CRM
Services !
La différence majeure entre les deux mondes ne réside pas uniquement dans le fait d’ajouter
le terme Services. La plateforme des Services Azures vous met ainsi à disposition un
environnement complet d’hébergement de vos applications et de services vous permettant de
vous détacher complètement de toutes les notions ou problématiques liées à l’hébergement de
vos applications : déploiement, montée en charge, géo-localisation, gestion des licences
serveurs, …
Mais comment la société Microsoft pourra-t-elle se charger de l’hébergement en masse
d’applications à l’échelle mondiale ?
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de Tunis
Il faudra comprendre que la plateforme des Services Azure (et de ce fait Windows Azure) sera
hébergée dans des Microsoft Data Center gigantesques qui seront à terme éparpillés sur la
planète. Microsoft prévoit à très court terme de mettre en œuvre deux Data Center aux États-
Unis avec une projection de déploiement d’autres Data Center sur le reste de la planète dans
un avenir tout proche.
Non content d’apporter cette extensibilité de la plateforme applicative telle que le marché
l’attend, Microsoft garantit également la flexibilité du choix de la technologie de
développement ainsi que l’interopérabilité de la plateforme avec le reste de l’écosystème
mondial.
Dans un futur proche développer les solutions « on the cloud » pour Windows Azure en PHP
ou Java.. sera possible.
La plateforme des Services Azure, comme le montre son architecture, met ainsi à disposition
de tout développeur, toutes technologies confondues, une série de services et outils afin de lui
permettre de construire rapidement et facilement des applications « on the cloud ». Cette
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de Tunisdémarche est à ce premier stade bien au point avec Visual Studio 2008 SP1 ainsi que le .NET
Framework 3.5.
Tentons de mieux découvrir et mieux comprendre les éléments constituants de la plateforme
de services Azure.
Pour ce faire, démarrons par l’élément constitutif de base, soit « Windows Azure » :
3.2. Windows Azure
Windows Azure est un « OS on the Cloud » servant tout comme son binôme « on-premises » (soit Windows Serveur) de plateforme de développement mais aussi et surtout de plateforme d’hébergement et de management de services dans le cadre de la nouvelle stratégie et plateforme des services Azure.
La particularité de cet OS on the Cloud est de mettre à disposition :
- Stockage et hébergement à la demande- Une forte capacité de montée en charge et gestion automatisée du balancing- Géo-localisation automatique de l’hébergement de vos applications- La possibilité de manager toute application dite online ou dite on the cloud (gestion
automatique ou manuelle de la montée en charge, de la géo localisation ou proximité des serveurs, …).
- …
Windows Azure est également supporté par Visual Studio 2008 et 2010 permettant ainsi à tout développeur .NET de profiter et capitaliser son expérience au travers de ce nouveau genre d’applications / solutions .NET !
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de TunisMicrosoft annonce, dans un futur proche, la capacité de programmer vos applications dites « on the cloud » au travers de langages comme Ruby, Python ou encore PHP
3.3. Live Services
Les Live Services sont un ensemble de briques technologiques permettant de gérer de façon cohérente les données utilisateurs et les données des applications. Ils permettent aux développeurs de construire, par exemple, des applications pouvant stocker, partager et synchroniser documents, photos, fichiers et autres informations à travers PCs, téléphones et sites Web.
3.4. .NET Services
Les .NET Services sont la version « Cloud » de concepts familiers du framework .NET telles que la gestion du Contrôle d’accès, de Workflow et de la Connectivité entre des briques applicatives. Consommables sous forme de Services Cloud, ils peuvent être utilisés ensembles ou séparément que ce soit pour des applications résidant dans Windows Azure mais également dans l’entreprise.
3.5. SQL Azure
Microsoft SQL Azure correspond à l’extension des fonctionnalités de SQL Server aux environnements de type Cloud. Bâtie sur une architecture de Services, Microsoft SQL Azure vous permet de stocker des données structurées, semi-structurées et non-structurées. La première version de SQL Azure exposera un service de type gestion de données relationnelle sous le nom SQL Azure Database. A terme, la gamme de services SQL Azure proposeront un ensemble de fonctionnalités riches allant de l’exécution de requêtes de type relationnelles, à la recherche, la génération de rapports, l’analyse de données, l’intégration de données et enfin la synchronisation de données vers des utilisateurs mobiles, des sites déportés ou encore des partenaires commerciaux.
3.6. Microsoft Sharepoint Services / Dynamics CRM Services
Ces deux dernières briques, non encore disponibles à ce jour, permettront dans le futur aux développeurs sur la plateforme Azure d’accéder aux fonctionnalités de SharePoint ainsi que
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre I : Présentation du cadre du Projet Faculté des Sciences de Tuniscelles de CRM afin de leur permettre la construction d’application collaborative ou encore de gestion de la relation client. Ces deux dernier Services, bien qu’annoncés, ne sont pas encore disponibles à ce stade.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
Chapitre II : Spécification des besoins
I. Présentation du Projet :Cette application a pour objectif de regrouper les informations autours des projets de fin d’étude, des blogs, des travaux des étudiants et des événements universitaires ayant une relation avec le monde de l’entreprise. Il permettra un partage des ces informations.
Ce site permettra de créer un lieu de rencontre des étudiants et des entreprises à partir des projets de fin d’études ainsi que des stages d’étés qui seront disponibles et téléchargeables.
1. Objectif du site :C’est un site de partage de connaissances et d’informations à traves duquel les étudiants pourront avoir une idée sur les projets proposés, le travail qui a été fait et pourront comparer leur travaux respectifs. Les entreprises pourront voir les travaux des étudiants.
Le site contiendra aussi des concours et des événements de différentes facultés ce qui permettra aux étudiants ainsi que les entreprises d’avoir une idée sur ces événements de pouvoir s’inscrire et y assister.
Le site comportera un détecteur de plagiat (en arrière plan) et permettra de noter le taux de risque de plagiat pour chaque document
Le site permettra de proposer des statistiques de différents types selon le profile de l’utilisateur.
Il permettra aussi de créer une page de profile en liaison avec les sites de réseaux sociaux (LinkedIn, viadeo, Twitter,…)
2. A qui s’adresse le site :
Administrateur :L’administrateur est le gestionnaire du site, il aura à :
- Valider les demandes d’inscription.- Changer les mots de passe sur demande de l’utilisateur- Ajouter des événements, des concours.- Modérer les commentaires.- Envoyer des emails aux utilisateurs.- Valider les fichiers uploadés.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
Etudiant:L’étudiant sera autorisé à avoir un profil à accéder grâce à un login et un mot de passe. Un profil avec des champs à remplir : nom, prénom, date de naissance, numéro de téléphone, adresse mail, adresse, université, catégorie, sujet, avec ou sans binôme. Il pourra mettre sa photo personnelle dans son profil. Il aura à uploader son rapport de stage ou de PFE, sa présentation et préciser s’il veut participer avec son projet dans l’un des concours proposés. Il pourra choisir s’il veut que ses données soient confidentielles ou accessibles à tous le monde.
Professionnel:Un membre de jury aura un profil. L’accès sera accordé via un login et un mot de passe. Il aura un profil avec des champs à remplir : nom, prénom, date de naissance, adresse mail, numéro de téléphone, adresse, profession, université, catégorie, une photo personnelle. Il pourra choisir s’il veut que ses données soient confidentielles ou accessibles à tous le monde. Il aura à voir les rapports de PFE et les présentations, les télécharger s’il veut, et il aura à donner une note et une remarque.
Utilisateur anonyme :Un invité est un utilisateur sans profil qui peut surfer dans le site, voir les profils qui lui sont accessibles, ajouter des commentaires, télécharger des rapports et des présentations. Il aura la possibilité de faire de recherches indexées.
3. ContenusCe site contiendra
- Les rapports des PFE - Les présentations des PFE des étudiants en Tunisie.- Les données sur les utilisateurs du site.
o Les profils de l’étudiant Ses coordonnées Un lien vers son blog
o Des photos de profil
-Les événements universitaires en relations avec l’entreprise.
o Conférenceso Journées portes ouverteso Concours
4. Arborescence
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
Les utilisateurs du site se divisent en invité, inscrit et administrateur.
Les utilisateurs inscris sont les étudiants et les professionnels (jury), une page s’ajoute à l’arborescence : la page Mon Profil.
L’administrateur est le gestionnaire du site, il aura à contrôler les utilisateurs inscrits, leurs fichiers ainsi que les commentaires ajoutés au site. C’est lui qui va ajouter des articles sur les événements. Il pourra envoyer des mails aux inscrits pour leurs mentionner une nouvelles ou les avertir en cas de commentaire sur leurs fichiers ou profil.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
II. Liste des cas d’utilisation :Cette partie présente en détail les cas d’utilisation de l’application. Pour chaque cas on présente les actions de l’utilisateur et le détail de l’écran de saisie et des opérations qui seront réalisés par le serveur.
1. Utilisateur
Cas d’utilisation 1 : demander une inscriptionL’utilisateur rempli un formulaire contenant les informations suivantes :
- Nom- Prénom- Date de naissance (format standard)- Adresse mail (un message d’erreur s’affiche si le format n’est pas standard)- Fonction (choisir entre étudiant ou jury) - Université (liste de choix des universités en Tunisie)- Spécialité (liste des choix spécialité disponible dans l’université choisie
précédemment)- Année (liste de choix)- Uploader une photo du profil avec une limite de sa taille maximale, grâce à un
bouton parcourir. (un message d’erreur s’affiche si le fichier uploadé n’est pas une photo ou si sa taille est supérieure à la taille maximale donnée).
Il valide le formulaire en cliquant sur un bouton « valider ». Le bouton « valider » ne sera cliquable que si tous les champs sont pleins.
L’inscription sera matérialisée par l’envoi d’un email de vérification.
S’il y a une réponse dans les 24 heures l’inscription est validée, sinon la demande est annulée.
Un Captcha de vérification doit être ajouté.
Etudiant
Cas d’utilisation 1 : Compléter son profil.Apres son authentification, l’étudiant voit apparaitre un bouton « MonProfil » grâce auquel il pourra voir son profil : ses données précédentes qu’il pourra changer et il pourra aussi compléter son profil par les données suivantes :
- Sujet du PFE.- Uploader le rapport avec un bouton parcourir.- Uploader la présentation avec un bouton parcourir.- Blog- Site Web
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
- Centres d'intérêts- Groupes et associations - Participer à un concoure (liste de choix des concours disponibles durant cette
période)
Il valide avec un bouton « valider ».
Jury
Cas d’utilisation 1 : Compléter son profil.Apres son authentification, le jury voit apparaitre un bouton « MonProfil » grâce auquel il pourra voir son profil : ses données précédentes qu’il pourra changer et il pourra aussi compléter son profil par les données suivantes :
- Blog- Site Web- Centres d'intérêts- Groupes et associations
Il valide avec un bouton « valider ».
Cas d’utilisation 2 : Donner une noteLe membre de jury sera amené à associer une note aux étudiants dont il est responsable.
Cette tache sera faite en cliquant sur un lien « attribuer une note », il sera mené à introduire les données suivantes :
- Nom et prénom- La note associée- Remarques
Il valide avec un bouton « valider ».
2. Administrateur
Cas d’utilisation 1 : Modérer les profilsL’administrateur reçoit une notification par mail qu’il y un nouvel inscrit au site.
Il consulte son profil pour contrôler ses données.
S’il remarque qu’il y a quelque chose qui n’est pas conforme :
- Il pourra effacer une donnée.- Avertir l’utilisateur par mail.- Bloquer un utilisateur (dans des cas extrêmes).
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
Cas d’utilisation 2 : Changer le mot de passeL’administrateur reçoit une notification par mail qu’un utilisateur voudrait changer son mot de passe.
Il lui valide le nouveau mot de passe et lui envoi une notification par mail.
Cas d’utilisation 3 : modérer les fichiersL’administrateur reçoit une notification par mail qu’un utilisateur a uploadé un fichier (rapport, présentation).
Il l’ouvre :
- S’il respecte les normes, il le valide- Sinon il l’efface et envoi un mail à son utilisateur- Il pourra dans des cas extrêmes bloquer l’utilisateur.
Cas d’utilisation 4 : modérer les commentairesL’administrateur reçoit par mail une notification qu’il un nouveau commentaire à modérer.
Il lit le commentaire : le valide s’il respecte les normes, l’efface sinon.
Cas d’utilisation 5 : ajouter des articles dans la rubrique événementL’administrateur peut écrire des articles sur les concours, journées et conférences à venir dans la rubrique événement.
Il pourra recevoir une proposition d’un utilisateur.
Il vérifie que cet événement existe et il pourra ajouter l’article proposé.
3. Utilisateur anonyme
Cas d’utilisation 1 : ajouter un commentaireUn utilisateur anonyme peut parcourir le site, et ajouter des commentaires via un lien « ajouter un commentaire ».
Il aura à fournir les données suivantes :
- Nom et prénom (obligatoire)- Email (obligatoire)- Lien personnel: Site web ou blog (optionnel)- Le commentaire
Cas d’utilisation 2 : proposer un événement Un utilisateur anonyme pourra proposer un événement via un lien « proposer un événement ».
Il aura à fournir les données suivantes :
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
- Nom et Prénom (obligatoire)- Profession (obligatoire)- Lien personnel : site web ou blog (optionnel)- Lien de l’événement (optionnel)- L’article proposé
III. Liste des écrans
1. Utilisateur anonyme :
Accueil : La page d’accueil contiendra :
- Les liens vers les autres pageso PFEo Evénementso Contacts
- Authentification- Des icones publicitaires
PFELa page PFE contiendra :
- Les derniers PFE mis dans le site - Lien vers l’utilisateur qui a mis le PFE
o Profil de l’utilisateur (étudiant) Ses données Sa photo de profil Son rapport de PFE Sa présentation Sa note s’il est accordée
- Authentification - Des icones publicitaires
EvénementsLa page événements présentera les derniers événements à venir, avec des liens vers :
- Concourso Les derniers articles mis à propos des concours : le lieu, la date, le thème,
les commentaires.- Conférences
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
o Les derniers articles mis à propos des conférences : le lieu, la date, le thème, les commentaires, des photos.
- Journées portes ouverteso Les derniers articles mis à propos des journées : le lieu, la date, le thème,
les commentaires, des photos.- Un lien « proposer un événements »
o Nom et prénomo Date de naissanceo Professiono L’événement :
Lieu Date Thème Remarques
o Valider l’événement- Authentification - Des icones publicitaires
ContactsCette page contiendra :
- L’adresse mail de l’administrateur.- L’utilisateur peut laisser une remarque, il laisse :
o Nom et prénomo Date de naissanceo Professiono La remarqueo Un lien « envoyer la remarque à l’administrateur ».
- Authentification - Des icones publicitaires
2. Utilisateur inscritIl aura les mêmes pages de l’utilisateur anonyme, mais en plus la page « mon profil » qu’elle contient :
- Le profil de l’utilisateuro Ses donnéeso Sa photoo Son rapport (si c’est un étudiant)o Sa présentation (si c’est un étudiant)o Sa note (si c’est un étudiant et si elle est accordée)
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
- Un bouton « changer mes données »- Des icones publicitaires
Pour les autres pages, l’icône authentification se remplace par le nom de l’utilisateur et sa photo.
3. AdministrateurLes pages sont les mêmes que celles de l’utilisateur anonyme avec quelques changements :
- L’icône authentification se remplace par le nom de l’utilisateur et sa photo.- Sous chaque article, s’ajoute les liens « modifier », « effacer »- Sous chaque commentaire s’ajoute les liens « modifier », « effacer »- Un lien s’ajoute dans la page « ajouter un article ».
Page de Gestion des inscritsEtudiant :
Cette page contient les étudiants affichés dans une matrice dont les colonnes sont :
- Nom- Prénom- Date de naissance- Adresse mail- Université- Spécialité - Année- Sujet du PFE.- Rapport- présentation - Blog- Site Web- Centres d'intérêts- Groupes et associations - Concoure- Note
Jury :
Cette page contient les jurys affichés dans une matrice dont les colonnes sont :
- Nom- Prénom- Date de naissance- Adresse mail
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre II : Spécification des besoins Faculté des Sciences de Tunis
- Université- Spécialité - Année- Blog- Site Web- Centres d'intérêts- Groupes et associations
Page Gestion de fichierCette page contient tous les fichiers uploadé dans le site sous forme de matrice dont les colonnes sont :
- Nom de fichier- Type- Nom du propriétaire- Une case à cocher : valide ou pas
Page de Gestion des commentairesLes commentaires seront affiches sous forme de matrice dont les colonnes sont :
- Nom de celui qui a mis le commentaire- Date- Article - Le commentaire en question
Page de Gestion des événementsElle contient les événements affichés dans une matrice dont les colonnes sont :
- Nom de l’événement- Lieu- Date- Theme- Nom de celui qui a proposé l’événement
IV. Hébergement Le site sera hébergé dans le cloud computing de Microsoft : Windows Azure.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
Chapitre III : Conception de la base de données
1. INTRODUCTION Dans le présent chapitre, on va commencer d’abord par définir les outils de
conception. Par la suite, nous présenterons une conception générale du système contenant le
digramme des classes du système. Enfin, nous allons parler de l’architecture utilisée en
définissant les différentes couches et composants.
1.1. OUTIL DE MODÉLISATION
PowerAMC est un logiciel de modélisation. Il permet de modéliser les traitements informatiques et leurs bases de données associées.
Il permet de réaliser tous les types de modèles informatiques. Il reste un des seuls qui permet de travailler avec la méthode Merise.
1.2. MODÈLE DE CONCEPTION DE DONNÉES Le modèle conceptuel des données (MCD) a pour but d'écrire de façon formelle les données qui seront utilisées par le système d'information. Il s'agit donc d'une représentation des données, facilement compréhensible, permettant de décrire le système d'information à l'aide d'entités.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
0,n
0,n
0,n
1,n
1,n
0,n
0,n1,1
0,n
1,10,n
0,n
0,n 1,1
1,n
0,n0,n
0,n
0,n
1,n
Personne
NomPrenomEmailPasswordNaissanceUrlAfficheInteretGroupesCIN
Caractère longCaractère longCaractère longCaractère longDateCaractère longTexteTexteEntier
<O><O><O><O>
<O>
Universite
nomUniv Caractère long <O>Sepcialite
nomSpec Caractère long <O>
Site
NomSite Caractère long <O>
Projet
NomProjetUrlRapportUrlPresentation
Caractère longCaractère longCaractère long
<O>
TypeProjet
NomType Caractère long <O>
etudi
AnneeUniv Entier <O>
elbore
deType
possede
attribu
NoteDateEH...
DécimalDate & Heure
participe
Evennement
NomEventLieuEventRemarqueUrlAfficheTheme
Caractère longCaractère longCaractère longCaractère longCaractère long
<O><O>
<O>
Statut
IDStatutNomStatut
<pi> EntierCaractère long
<O><O>
IDStatut <pi>est
Conference
SujetDateEHNom
Caractère longDate & HeureCaractère long
<O><O><O>
contient
Sponsor
NomUrlLogoSitewebDescriptionadresse
Caractère longCaractère longCaractère longTexteTexte
<O>
sponsorise
2. ARCHITECTURE Pour le bon déroulement de notre travail, l’étude et le choix de l’architecture logicielle
à utiliser sont importants. C’est pour cela, que l’architecture .Net semble la mieux adaptée
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
pour développer ce travail. En effet, pour la réalisation du projet, je me suis basée sur les
outils de développement .Net tel que Visual Studio 2008 et SQL Server 2008.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
2.1. ARCHITECTURE .NET [4]
2.2. PRÉSENTATION DES DIFFÉRENTES COUCHES DE L’ARCHITECTURE [4]
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
Cette vue architecturale spécifie les différents composants de l'application. On
reconnaît Cinque macros couches :
Presentation Layer.
Service Layer.
Business Layer.
Data Layer.
Cross-Cutting.
Voici les détails de la composition de ces couches :
2.2.1. Presentation Layer
La couche Présentation est constituée de deux composants :
UI Components : C'est le composant visuel de l'interface. Elle permet d'afficher les
informations à l'utilisateur. Ce sont par exemple les pages ASP.NET, les WinForms...
UI Process Components : Il permet dans la plupart des cas, l'interaction de
l'utilisateur avec le système qui suit un processus connu. Par exemple, l'utilisateur va
choisir une catégorie de produits avant de sélectionner un produit particulier dans
cette liste.
2.2.2. Service Layer
Cette couche possède aussi deux composants :
Service Interfaces : Ce composant contient des méthodes qui servent à aider
l’utilisateur lors de la saisie. On trouve des méthodes de test, de tri, de contrôle…
Message Tests : Comme son nom l’indique, le composant message tests contient tous
les messages à afficher comme les messages d’erreur, de confirmation, d’insertion, de
suppression…
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
2.2.3. Business Layer
La couche Business ou métier contient quatre composants :
Business Workflows : Contient les méthodes et les fonctions nécessaires à un
traitement données. Ces opérations doivent se faire dans le bon ordre et elles suivent
un enchainement bien déterminé.
Business Components : Ce composant implémente les règles métier. Par exemple,
elle contiendra une fonction qui fait le total des prix des articles achetés, puis y
applique une taxe spécifique (pays, type de produit...).
Business Entity Component : Les composants de l'application doivent pouvoir
s'échanger des données. Cet échange peut se faire à différents formats. Cela peut être
des données sérialisés (DataSets, DataReaders, XML...) ou directement des classes.
Service Interfaces : Ce composant ouvre le logique métier du système en exposant les
services disponibles. C'est grâce à cette interface qu'on va pouvoir " attaquer " le cœur
de l'application. Cette interface définit les modèles de communication en tenant
compte des formats de données, des exceptions...
2.2.4. Data Layer
La couche Data est constituée de trois composants :
Service Agents : Ce composant permet d'ouvrir l'application. Il permet en effet
d'utiliser des fonctionnalités externes au système, et éventuellement de fournir une
interface de format de données compatible avec le service extérieur.
Data Helpers : Comme son nom l’indique, ce composant sert à passer les données
entre le Service Agents et le Data Acces, c'est-à-dire les fonctionnalités externes au
système et les données récupérées de la base de données.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre III : Conception Faculté des Sciences de Tunis
Data Access Components : C’est le composant qui accède directement à la base de
données. Il contient les requêtes SQL et la plupart des applications qui accèdent aux
données.
2.2.5. Cross-Cutting
Cette couche contient : Components for Security, Operational Management, and
Communication. Ces composants servent à la gestion d'exceptions, aux autorisations et à la
communication avec les autres services et applications. On peut même créer et définir nos
propres objets personnels.
3. CONCLUSIONDans ce chapitre, nous avons réalisé le MCD de notre application ainsi que ses aspects
statiques et comportementaux. Ceci nous a permis de déterminer la façon à travers laquelle
nous allons réaliser une application répondant aux besoins déjà spécifiés. Dans le chapitre
suivant nous présenterons les étapes de réalisation de notre application ainsi que quelques
interfaces représentatives de notre travail.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Chapitre IV : Réalisation
1. INTRODUCTION Après l’étude conceptuelle du système, nous passons à l’étape suivante; celle du
développement. Nous commençons par présenter les outils matériels et logiciels qui nous ont
permis de développer notre système, ensuite nous allons présenter une vue globale sur ce
dernier, et enfin une présentation de ses principales fenêtres.
2. MOYENS MIS EN ŒUVRE POUR LE DÉVELOPPEMENT L’entreprise OXIA est connue d’une expertise technique dans divers domaines
technologiques : les architectures d’entreprise, la plate-forme Java, la plate-forme .NET, les
Web Services et sans oublier les technologies client/serveur. Pour la réalisation de ce projet,
nous nous sommes basés sur la plate-forme .NET, en particulier sur le Visual Studio 2008
pour la création de la solution Web et Microsoft AZURE pour la plateforme Cloud
computing. L’un des points très avantageux de l’utilisation de cette plate-forme est qu’elle
utilise une architecture simple ce qui permet d’assurer une meilleure lisibilité et meilleure
maintenance.
2.1. INTRODUCTION À VISUAL STUDIO 2008 [6], [8]
Visual Studio est un ensemble complet d'outils de développement permettant de
générer des applications Web ASP.NET, des Services Web XML, des applications
bureautiques et des applications mobiles. Visual Basic, Visual C++, Visual C# et Visual J#, se
sont des langages permettent de mieux tirer parti des fonctionnalités du .NET Framework, qui
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
fournit un accès à des technologies clés simplifiant le développement d'applications Web ASP
et de Services Web XML.
2.2. SYSTÈME DE GESTION DE BASE DE DONNÉES (SGBD) : SQL SERVER 2008
Microsoft SQL Server 2008 Express Edition (SQL Server Express) est un produit de
gestion de données à la fois puissant et fiable, riche en fonctionnalités, et qui offre des
performances élevées et assure la protection des données d'applications clientes incorporées,
d'applications Web légères et de banques de données locales.
SQL Server 2008 est un SGBDR (Système de Gestion de Bases de Données
Relationnelles) de la plateforme Microsoft. Basé sur les points forts de son prédécesseur (SQL
Server 2005), il inclura beaucoup de nouvelles fonctionnalités qui permettront entre autres :
Créer et déployer des applications plus sûres, plus puissantes et plus fiables,
Proposer aux développeurs un environnement de développement riche, souple et
moderne permettant de créer des applications de bases de données plus sûres,
Partager des données entre diverses plates-formes, applications et systèmes pour
faciliter les connexions, tant internes qu'externes.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
2.3. PRÉPARATION DE L'ENVIRONNEMENT
2.3.1. Créer un compte Azure:http://www.microsoft.com/azure/register.mspx
En cliquant sur « Register for Azure Services », ce lien vous demandera de se connecter à Microsoft Connect ou d’en créer un compte, si vous en n’avez pas.
2.3.2. Créer un compte Microsoft Connect :Pour cela il faut avoir un Windows Live ID.
S’inscrire à Microsoft Connect.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Apres avoir confirmer votre inscription, Microsoft connect vous demandera d’indiquer un pseudonyme et voila vous êtes inscrit à Micrsoft Connect.
Etant connecté, le reste est d’attendre une invitation de Windows Azure, qui arrivera dans 4 à 5 jours.
Vous aurez le droit à des projets « Live Services » sans la reception de l’invitation et à des projets de « Storage and Hosted Services », en plus, aprés la reception de l’invitation.
Avant la reception de l’invitation : les projets de Windows Azure sont desactivés.
Apres la reception de l’invitation :
Le mail d’invitation Windows Azure vous donnera un code « Token ID » .
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Enfin les projets de Windows Azure sont activés mais on remarque qu’on a le droit qu’à 2 projets du type « Storage Account » et un seul projet du type « Hosted Services ».
2.3.3. Configuration requise: Système d’exploitation: Windows 7; Windows Server 2008; Windows Vista Service
Pack 1; Windows Vista Service Pack 2. IIS 7.0 (activation de ASP.NET, WCF HTTP et optionnellement CGI) Microsoft Visual Studio 2008 SP1, Microsoft Visual Studio 2010 Beta 1 ou Microsoft
Visual Web Developer 2008 Express Edition with SP1 SQL Server 2005 Express Edition ou SQL Server 2008 Express Edition.
Remarque: tous les outils doivent avoir la même langue.
2.3.4. Activation de IIS7, WCF, ASP.NET et http :
Windows Vista et Windows 7
1. Menu -> Settings | Control Panel | Programs | Programs and Features.2. Cliquez sur Turn Windows Features On or Off.3. Sous Microsoft .NET Framework 3.0, selectionnez Windows Communication
Foundation HTTP Activation.Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
4. Sous Internet Information Services, ouvrir World Wide Web Services, ensuite Application Development Features, puis sélectionnez ASP.NET and CGI.
5. Installez the selected features.
Windows Server 2008
1. Menu -> Programs | Administrative Tools | Server Manager.2. Server Manager, sous Features Summary, choisissez Add Features.3. Dans le Add Features, sous .NET Framework 3.0 Features, sélectionnez the .NET
Framework 3.0. Sous WCF Activation, sélectionnez HTTP Activation. Cliquez sur Next pour installer.
4. Dans Server Manager, sous Roles Summary, verifiez que le Web Server (IIS) apparait dans la liste available roles. Sinon , cliquez sur Add Roles to install Internet Information Services.
5. Dans Server Manager, sous Roles Summary, clicquez Web Server (IIS).6. Dans la fenêtre Web Server (IIS), cliquez sur Add Role Services.7. Dans Add Role Services, ouvrir Web Server, ensuite Application Development,
sélectionnez ASP.NET et CGI et cliquez sur Next pour installer.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
3. DESCRIPTION
3.1. ACCUEIL
3.1.1. InscriptionLa page d'accueil du site contient un formulaire d'inscription, dans lequel l'utilisateur peut fournir des données et avoir un profil.
3.1.2. AuthentificationApres avoir eu un compte, l'utilisateur peut s'authentifier via un login et un mot de passe.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
3.2. GESTION DES MEMBRES
3.2.1. Profil des membresApres l'inscription, les membres peuvent ajouter des données supplémentaires dans leurs profils.
Si le membre inscrit est un étudiant, il peut également ajouter ses projets de fin d'études ou de stages.
3.3. GESTION DES PROJETS
Les projets sont composés en deux catégories: projets de fin d'études et projet de stage d'été.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
3.4. GESTION DES EVÉNEMENTS
3.4.1. Ajout d'événementLes membres du site ainsi que les utilisateurs anonymes peuvent proposer des événements, choisir la catégorie: Journée ou Concours; lui ajouter la liste des sponsors, les conférences associé ainsi que toutes les informations relatives à cet événement.
Ajout d'événement
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Ajout de sponsor
Ajout de conférence
3.5. CONTACT
Un utilisateur anonyme peut contacter l'administrateur du site en laissant un commentaire qui sera directement envoyé au mail de l'administrateur via l'interface de contact:
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
4. Déploiement dans les nuagesLe déploiement dans les nuages est très simple. En effet il suffit de cliquer avec le bouton droit de la souris sur le projet et choisir publish.
========== Publish: 1 succeeded, 0 failed, 0 skipped ==========
Un répertoire contenant le fichier de configuration et le pacquage de l’application s’ouvre ainsi qu’une page internet, c’est celle qui contient votre compte Azure.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Le déploiement se fait en 3 étapes :
Choisir le label et l’url de l’application. Staging. Production.
4.1.1. Choix de l’url et configuration de l’application :On clique sur New Project et on choisi Hosted Services :
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
4.1.2. Staging : Il suffit de cliquer sur Deploy...
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Uploader le fichier de configuration ainsi que le pacquage de l’application et on clique sur Deploy…
Si on clique sur configure :
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
Ce fichier de configuration est le même que localement, on peut donc augmenter le nombre d’instance à volonté.
4.1.3. Production :Il suffit de cliquer sur le bouton qui se trouve au milieu entre le Staging et Production.
Apres cette étape j’obtiens l’url que j’ai choisi ainsi qu’un ID.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Chapitre IV : Réalisation Faculté des Sciences de Tunis
On attend un peu pour que Initializing se transforme en Started. Ensuite on pourrait ouvrir le lien souhaité dans n’importe quel PC.
5. CONCLUSION Comme on a pu constater, nous avons présenté un site web interactif qui nous
permettra de mieux tester les buts et les limites de la plateforme Cloud computing de
Microsoft Azure.
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Conclusion et Perspectives
Stage d’été 2009 :OXIA Http://www.oxia-group.com
Conclusion et Perspectives
Au début du stage, l’objectif, comme le présentait le sujet revêtait la forme suivante :
Développer de déployer une solution web sous Microsoft Azure
L’aspect innovant de ce projet est le développement dans la plateforme cloud
computing ou l'informatique dans le nuage de Microsoft AZURE qui s'avère une plateforme
riche et qui présente divers services.
Durant le stage à « OXIA », nous avons d’abord étudié les besoins d'un site interactif
comme exemple d'application web, on a conçu la base de données. Puis dans une deuxième
partie, nous avons développé la solution web en respectant l’architecture de .Net, ses
différentes couches ainsi que sa méthode très singulière de programmation, qui s’impose
d’elle même aux développeurs pour mieux exploiter ces ressources énormes. Enfin, dans une
dernière étape, nous avons déployé cette solution dans les nuages de Microsoft Azure.
Le domaine du cloud computing s’avère très intéressant et aura certainement une
grande influence sur le futur du web.
Stage d’été 2009 :OXIA Http://www.oxia-group.com