Académique Documents
Professionnel Documents
Culture Documents
Du profond de mon cœur, je dédie ce travail à tous ceux qui me sont chers,
A MA CHERE MERE
Aucune dédicace ne saurait exprimer mon respect, mon amour éternel et ma
considération pour les sacrifices que vous avez consenti pour mon instruction et mon
bien être.
Je vous remercie pour tout le soutien et l’amour que vous me portez depuis mon
enfance et j’espère que votre bénédiction m’accompagne toujours.
Que ce modeste travail soit l’exaucement de vos vœux tant formulés, le fruit de vos
innombrables sacrifices. Puisse Dieu, le Très Haut, vous accorder santé, bonheur et
longue vie.
Ce travail est dédié à mon père, décédé trop tôt, qui m'a toujours poussé et motivé
dans mes études.
J'espère que, du monde qui est sien maintenant, il apprécie cet humble geste comme
preuve de reconnaissance de la part d'un fils qui a toujours prié pour le salut de son
âme. Puisse Dieu, le tout puissant, l'avoir en sa sainte miséricorde !
A MA CHERE EMINA
Merci énormément pour ton soutien plus que précieux. Merci pour ton grand cœur
toutes vos qualités qui seraient trop longues à énumérer. Ma vie ne serait pas aussi
magique sans ton présence et ton amour.
Je t’aime de tout mon cœur.
Dédicace
Du profond de mon cœur, je dédie ce travail à tous ceux qui me sont chers,
A MA CHERE MERE
Aucune dédicace ne saurait exprimer mon respect, mon amour éternel et ma
considération pour les sacrifices que vous avez consenti pour mon instruction et mon
bien être.
Je vous remercie pour tout le soutien et l’amour que vous me portez depuis mon
enfance et j’espère que votre bénédiction m’accompagne toujours.
Que ce modeste travail soit l’exaucement de vos vœux tant formulés, le fruit de vos
innombrables sacrifices. Puisse Dieu, le Très Haut, vous accorder santé, bonheur et
longue vie.
Ce travail est dédié à mon père, décédé trop tôt, qui m'a toujours poussé et motivé
dans mes études.
J'espère que, du monde qui est sien maintenant, il apprécie cet humble geste comme
preuve de reconnaissance de la part d'un fils qui a toujours prié pour le salut de son
âme. Puisse Dieu, le tout puissant, l'avoir en sa sainte miséricorde !
A MA CHERE EMINA
Merci énormément pour ton soutien plus que précieux. Merci pour ton grand cœur
toutes vos qualités qui seraient trop longues à énumérer. Ma vie ne serait pas aussi
magique sans ton présence et ton amour.
Je t’aime de tout mon cœur.
|1
Remerciement
Je veux exprimer par ces quelques lignes de remerciements ma gratitude envers
tous ceux en qui, par leur présence, leur soutien, leur disponibilité et leurs conseils j’ai
trouvé courage afin d’accomplir ce projet.
Je commence par remercier Monsieur Karim KALTI qui m’a fait l’honneur d’être
mon encadrant. Je le remercie profondément pour son encouragement continu et aussi
d’être toujours là pour m’écouter, m’aider et me guider à retrouver le bon chemin par
son sagesse et ses précieux conseils, ce qui m’a donné la force et le courage d’accomplir
ce projet.
Je tiens à remercier également Monsieur Ahmed KADDOUR, mon encadrant
externe qui m’a donner l’occasion d’être un stagiaire chez la société prestigieuse
Microsoft Tunisie aussi pour son aide et soutien.
Enfin, je ne peux achever ce projet sans exprimer ma gratitude à tous les
enseignants de la faculté des sciences de Monastir, pour leur dévouement et leur
assistance tout au long de notre formation.
|2
Résumé
Mon projet consiste dans l’étude, la conception et la réalisation d’une plateforme de gestion
des projets de fin d’études pour la faculté des sciences de Monastir, qui permet aux étudiants
de chercher des structures d’accueil ,de consulter les rapports des anciens projets de fin
d’études et de déposer leurs rapports à l’administration de la faculté à distance ,ainsi que le
contrôle des dépôts par les agents administratifs de la faculté. Ces fonctionnalités sont les
objectifs majeurs de ma plateforme.
Pour atteindre ces objectifs, j’ai eu recours à créer une plateforme qui se compose d’une
application web ASP.NET MVC5 basée sur une architecture 3 tiers dont Microsoft SQL Server
comme système de gestion de bases de données, une étude conceptuelle réalisée par le
langage de modélisation UML et Visual Studio comme éditeur de code. Aussi une
application mobile Windows Phone 8.1 et une application desktop Windows Store.
Ces deux dernières sont développées en C# pour le code behind et le XAML pour les
interfaces graphiques.
Mots-clefs: Windows Phone, Windows Store, MVC5, Entity Framework Code First, Cortana,
|3
SOMMAIRE
Introduction générale..........................................................................................................................................7
Spécification et analyse des besoins ....................................................................................................9
Introduction ............................................................................................................................................................... 10
I. Projet de fin d’études ............................................................................................................................................ 10
II. Etude de l’existant .............................................................................................................................................. 12
Conception .................................................................................................... 15
Introduction ............................................................................................................................................. 16
Conclusion ............................................................................................................................................................... 34
Réalisation ..................................................................................................... 35
I. Environnement de travail ................................................................................................................................ 36
II. Environnement de développement ........................................................................................................... 37
III. Des interfaces ........................................................................................................................................................ 40
Plan de business............................................................................................ 48
I. Besoins financière et temporel..................................................................................................................... 49
II. Revenus de l’application web ....................................................................................................................... 50
III. Revenus de l’application mobile ................................................................................................................. 51
|4
Table des figures
Figure 1 : Le modèle en V………………………………………………………………………………………….………16
|5
Figure 21 : Page d’accueil de l’agent administratif…………………………………………………………..44
|6
Introduction général
Introduction
Depuis ces deux derniers siècles, l’humanité a fait des pas énormes dans tout ce qui a attrait
à l’innovation et aux progrès technologiques. Cette grande évolution a grandement servi à
l’homme dans son ensemble et aussi à améliorer de façon considérable son niveau de vie.
L’informatisation a facilité la tâche de l’Homme, il devient donc possible de partager les
informations et d’accéder à distance à tous ce dont on a besoin.
C’est dans ce cadre que s’inscrit mon projet de fin d’études (PFE) qui porte sur le
développement d’une plateforme qui aide les étudiants à réaliser leurs projets de fin
d’études et prendre une idée suffisante pour commencer le cycle de réalisation d’un projet
professionnel.
D’autre part l’étudiant peut consulter et prendre une idée des anciens rapports, peut aussi
chercher des structures d’accueil sans déplacement, et la tâche principale, il peut déposer
son rapport en ligne et cela en créant un compte et en remplissant les informations
nécessaires relatives à son rapport.
Cadre du projet
Ce travail s’inscrit dans le cadre de mon projet de fin d’études pour l’obtention du diplôme
universitaire de licence en Sciences de l’Informatique. Il s’est déroulé au sein de la société
Microsoft Tunisie. Au cours de ce stage la société Microsoft Tunisie m’a confié la conception
et la réalisation d’une plateforme qui se compose d’un site web et d’une application
Windows universelle dans un milieu pur professionnel.
|7
Organisation du rapport
Le présent rapport explicite les différents stades théoriques et pratiques de la réalisation
de mon projet et il se compose de quatre chapitres articulés comme suit.
Ensuite, dans le deuxième chapitre je présente la conception de mon projet ainsi que
l’architecture qui me permettra de réaliser ma plateforme en évitant tous les
problèmes techniques.
Dans le dernier chapitre, je vais présenter le plan d’affaires qui assure la continuité de
mon projet ainsi que les besoins financières et le cout de développement.
|8
Chapitre 1 :
Spécification et analyse
des besoins
|9
Introduction
Dans ce chapitre, je présente l’étude préalable qui doit être élaborée avant d’entamer la mise
en place de ma plateforme. Pour cela, je commence par donner un aperçu de l’ensemble
des problèmes qui seront résolus dans ce projet. Je détaillerai ensuite les exigences
fonctionnelles, à savoir les fonctionnalités requises par l’utilisateur pour me placer dans
l’optique du démarrage de réalisation d’un projet réel.
Le projet de fin d’études présente un certain nombre de caractéristiques que je vais essayer
de résumer dans la partie suivante :
1. Acteurs
Un projet de fin d’études est généralement effectué par un étudiant qui en est l’auteur.
Dans certain cas et si le volume de travail l’exige il peut être effectué par deux étudiants
qui travailleront dans ce cas en binôme.
2. Période
Un projet de fin d’étude s’étale sur une période qui se mesure en mois et dont la durée
varie selon le diplôme préparé (2 mois pour les licences fondamentales, 4 pour les
licences appliquées, 6 mois pour les diplômes d’ingénieurs). Il se déroule le plus souvent
durant le second semestre de l’année universitaire.
| 10
3. Organisme d’accueil
Le projet se déroule généralement dans un organisme qui peut relever du secteur public
ou privé. Il peut également se dérouler au sein même de l’institution d’enseignement à
laquelle appartient l’étudiant si le sujet est proposé par un de ses cadres enseignants.
4. Encadrement
Un projet de fin d’études est obligatoirement encadré par un encadrant universitaire qui
fait partie du cadre enseignant de l’institution à laquelle est affilié l’étudiant. Dans certain
cas des enseignants universitaires d’autres institutions sont également autorisés à
assurer un tel encadrement. Lorsque le projet se déroule dans un organisme externe et
si le personnel de cet organisme possède la qualification nécessaire, un encadrant de cet
organisme peut être également désigné pour superviser le projet. Cet encadrant est
appelé encadrant externe ou encadrant industriel.
5. Rapport
Le projet se solde par la rédaction d’un rapport dans lequel l’étudiant fait la synthèse du
travail réalisé tout au long de la période du stage. Ce rapport est rendu en plusieurs
copies papiers à l’administration et constitue un des éléments importants qui entre dans
l’évaluation du projet. Le rapport est remis à l’administration quelques jours avant la
soutenance. Si le jury l’exige une nouvelle version du rapport peut être remise après la
soutenance à l’administration. Cette version comporte généralement des corrections
tenant compte des observations faites par le jury lors de l’évaluation. La bibliothèque de
l’institution garde généralement deux copies du rapport afin de les mettre à la
disposition des étudiants des promotions qui suivent.
6. Soutenance
La soutenance constitue le moyen permettant l’évaluation du projet de fin d’études elle
a lieu à une date donnée fixée par l’administration et se déroule devant un jury.
| 11
7. Le jury
Le jury de la soutenance est composé par :
8. Indexation du rapport
Tout rapport doit comporter :
| 12
Ils doivent se débrouiller seuls à travers des efforts personnels ou en demandant à leur
entourage, camarades des promotions précédentes, voir même à leur enseignants des
suggestions de structures pouvant les accueillir.
Une fois le projet décroché, vient alors la phase de son élaboration. Certes les étudiants sont
guidés par leur encadrant pour savoir comment aborder cette phase et comment la planifier.
Il n’en reste pas moins que la consultation des expériences précédentes de projets similaires
ou des projets réalisés dans les mêmes structures peut leur fournir une aide supplémentaire.
De telles expériences sont généralement capitalisées dans les rapports des projets passés.
Ces derniers peuvent servir également de guide pour la rédaction des nouveaux rapports.
- A l’état actuel aucune indexation n’est appliquée aux rapports archivés (absence
totale de fiche papier ou électronique). Ces derniers sont déposés en vrac et l’étudiant
doit opérer par une recherche manuelle pour trouver les documents qui répondent à
ses besoins.
- Au fil du temps, et vu le grand nombre de projets élaborés chaque année (autour
d’une centaine), le nombre total des rapports est devenu si important que le
processus de recherche manuel est devenu une tâche fastidieuse. De son côté le coût
de l’archivage s’est élevé et devant l’absence de ressources (les espaces disponibles
sont limités), les rapports sont de plus en plus abandonnés dans des espaces qui ne
sont pas bien aménagés pour l’archivage ce qui engendre le plus souvent leur
détérioration voir même leur perte.
- Le nombre limité d’exemplaires disponibles de chaque rapport (1 ou 2 copies par
rapport) engendre souvent un problème d’attente pour pouvoir faire le prêt surtout
pour les rapports de référence qui sont trop prisés.
- Avec le temps, l’état de certaines copies de rapport se détériore au point qu’elles
deviennent inexploitables. Aucune stratégie de remplacement n’est envisagée à l’état
actuel aux exemplaires abimés ou perdus.
| 13
IV. Solution envisagée et spécification des
besoins
Afin de pallier aux défaillances observées, je propose d’informatiser le processus de dépôt
et d’archivage des projets de fin d’études. Pour cela, j’opte pour le développement d’une
plateforme qui devra assurer les fonctionnalités suivantes :
Par ailleurs et afin de faciliter l’accès aux services offerts par cette plateforme, j’ai opté pour
son développement de façon à ce qu’elle puisse être déployée sur plusieurs types de
périphériques (Pc, tablette, téléphone mobile, etc.).
V. Conclusion
Ce chapitre a été dédié à la présentation et à la spécification des différents besoins de la
plateforme à développer. Il m’a permis de bien comprendre le problème et d'avoir une vue
d'ensemble sur les fonctionnalités fondamentales sur lesquelles je vais me focaliser. Cette
vue globale est le pilier et le support de base de notre conception que j'exposerais dans le
chapitre suivant.
| 14
Chapitre 2 :
Conception
| 15
Introduction
La conception est une étape primordiale dans le cycle de vie d’une application, elle a pour
objectif d’élaborer à partir du modèle du système obtenu lors de l’étape d’analyse de besoin,
des modèles détaillés de l’architecture du système. Elle vise également la réduction de la
complexité du système.
Dans ce chapitre, je commence d’abord par une conception générale qui contient le cycle
de vie et la méthodologie adopté, j’enchaine ensuite par l’architecture physique et logique
de ma plateforme, je termine enfin par la présentation de la conception détaillé de la
plateforme à développer.
I. Conception générale
1. Cycle de vie
On parle souvent du cycle de vie d'un logiciel. Par cela, on entend toutes les phases de
développement du logiciel, de l'établissement des besoins du client jusqu'à l'achèvement
du logiciel en tant que produit commercial.
i. Présentation du modèle
Le modèle du cycle en V est un modèle conceptuel de gestion de projet imaginé suite au
problème de réactivité du modèle en cascade. Il permet, en cas d'anomalie, de limiter un
retour aux étapes précédentes.
Figure1 : Le modèle en V
| 16
ii. Description du modèle
La représentation en V tient d'avantage compte de la réalité, le processus de développement
n'est pas réduit à un enchaînement de tâches séquentielles.
2. Méthodologie adoptée
Afin d’optimiser la compréhension ainsi que la réalisation du projet on a choisi comme
méthodologie de développement RUP (Rational Unified Process). C’est un standard qui
propose une conception assez poussée et prend en compte tous les détails de conception
y compris le système existant, RUP a la visibilité sur tout le système d’information et il est
conseillé pour des projets qui commencent à zéro.
Cette méthodologie est basée sur le langage de modélisation UML (Unified Modeling
Langage) que nous avons adopté pour toute la suite de notre travail.
En effet UML (Langage de modélisation unifié) comme son nom l'implique, un langage de
modélisation et non une méthode ou un procédé. L'UML est constitué d'une notation très
spécifique ainsi que les règles grammaticales s'y attachant pour élaborer des modèles de
logiciel. L'UML supporte un riche ensemble d'éléments de notation graphique.
Il décrit la notation pour les classes, les composants, les nœuds, les activités, le workflow, les
cas d'utilisations, les objets, les états ainsi que la façon de modéliser les relations entre ces
éléments.
L'UML permet également les extensions personnelles à travers les éléments stéréotypés.
| 17
3. Concept et architecture de la plateforme
développée
Mon projet consiste à concevoir une plateforme qui se compose de trois applications : une
application web, une application mobile Windows Phone 8.1 et une autre application
desktop Windows Store App.
| 18
ii. L’architecture logique de l’application web
J’ai choisi le model ASP.NET MVC 5 comme une architecture logique de l’application web.
Le patron de conception modèle-vue-contrôleur (en abrégé MVC, en anglais model-view-
controller), tout comme les patrons modèle-vue-présentation ou présentation, abstraction,
contrôle, est un modèle destiné à répondre aux besoins des applications interactives en
séparant les problématiques liées aux différents composants au sein de leur architecture
respective.
L'organisation d'une interface graphique est délicate. L'architecture MVC ne prétend pas en
éliminer tous les problèmes, mais fournit une première approche pour ce faire. Offrant un
cadre normalisé pour structurer une application, elle facilite aussi le dialogue entre les
concepteurs.
L'idée est de bien séparer les données, la présentation et les traitements. Il en résulte les
trois parties énumérées plus haut : le modèle, la vue et le contrôleur.
| 19
iii. Architecture de l’application mobile
Comme une architecture pour mon application mobile (Windows Phone 8.1), j’ai choisi
l’architecture orientée service ou SOA (Service Oriented Architecture), pour me faciliter la
récupération de données situées au niveau de la même base de données de l’application
web.
Plus précisément, j’ai développé mon application à l’aide des services mobile de Microsoft
Azure (en anglais Microsoft Azure Mobile Services).
Les services Web sont basés sur un ensemble de normes qui décrivent la syntaxe et la
sémantique des communications logicielles : JSON fournit la syntaxe commune pour la
représentation des données, le protocole SOAP (Simple Object Access Protocol) fournit la
sémantique pour l'échange de données, et le langage WSDL (Web Services Description
Language) fournit un mécanisme permettant de décrire les possibilités d'un service Web.
Des spécifications complémentaires, collectivement appelées architecture WS, définissent
les fonctionnalités pour la découverte des services Web, la gestion des événements, les
pièces jointes, la sécurité, la messagerie fiable, les transactions et la gestion. [1]
| 20
II. Conception détaillée
| 21
ii. Description des cas d’utilisation
L’étude des cas d’utilisation a pour objectif de déterminer ce que chaque utilisateur attend
du système. La détermination des besoins est basée sur la représentation de l’interaction
entre l’acteur et le système. On énumère ici les fonctionnalités disponibles pour chaque
acteur :
Simple utilisateur :
Consultation des anciens rapports.
Consultation des coordonnées des structures d’accueil.
Génération des CVs.
Etudiant :
Consultation des anciens rapports.
Consultation des coordonnées des structures d’accueil.
Gestion de dépôt de rapport de projet de fin d’études.
Génération des CVs.
Agent Administratif :
Gestion des dépôts.
Gestion des structures d’accueil.
Gestion des membres de jury.
Gestion d’archives des rapports.
Gestion des comptes des étudiants.
Super Administrateur :
Gestion des comptes utilisateur.
Gestion des rapports.
Gestion des structures d’accueil.
Gestion des membres de jury.
On va voir par la suite les diagrammes de cas d’utilisation pour chaque utilisateur en détail.
En commençant par les cas d’utilisation d’un simple utilisateur.
| 22
Les cas d’utilisation d’un simple utilisateur :
Un simple utilisateur a le droit de consulter les rapports des anciens projets de fin d’études,
la consultation l’annuaire d’organisme d’accueil pour un stage et aussi la génération de son
propre CV.
| 23
Les cas d’utilisation d’un étudiant auteur de projet de fin d’études :
Un étudiant a le droit de consulter les rapports des anciens projets de fin d’études, la
consultation l’annuaire d’organisme d’accueil pour un stage et il peut aussi faire le dépôt
de son rapport de projet de fin d’études à l’administration de la faculté à travers cette
plateforme
| 24
Les cas d’utilisation d’un agent administratif :
Un agent administratif s’occupe par la gestion des rapports c.-à-d. la validation des rapports,
la gestion des organismes d’accueil et la gestion des membres de jury. Il peut aussi consulter
l’archive des rapports.
| 25
Les cas d’utilisation d’un super administrateur :
Un super administrateur a tous les droit d’accès ; gestion des rapports, des organismes
d’accueil, des comptes utilisateur (étudiants et agents administratif) ainsi que le back office.
| 26
2. Diagramme de séquence
i. Description de diagramme de séquence
Les diagrammes de séquences sont la représentation graphique des interactions entre les
acteurs et le système selon un ordre chronologique dans la formulation UML. On montre
ces interactions dans le cadre d’un scénario d’un diagramme des cas d’utilisation. Le but
étant de décrire comment se déroulent les actions entre les acteurs ou les objets.
ii. Diagramme de séquence du dépôt
| 27
iii. Diagramme de séquence de la recherche
Ce diagramme présente la démarche de la recherche d’un rapport dans la base de
données, cela se fait en choisissant l’un des critères proposés.
C’est le même cas pour la recherche des organismes d’accueil.
| 28
3. Diagramme de classes
i. Description des classes
Une classe représente la structure d’un objet, c’est-à-dire la déclaration de l’ensemble des
entités qui le composent. Elle est constituée d’attributs dont les valeurs représentent l’état
de l’objet et des méthodes qui sont les opérations applicables aux objets.
| 29
ii. Diagramme des classes
ssssss
| 30
iii. Dictionnaire de données
Dictionnaire de la classe « Rapport »
Dictionnaire de données
Nom d’attribut Description Type
ID L’identifiant de la classe Rapport Integer
Titre Le titre de sujet de projet de fin d’études String
CodeRapport Le code d’un rapport String
EtatRapport Indique l’état du rapport String
Resume Le résumé du rapport. String
DateSoutenance Indique la date de la soutenance Date
Diplôme Indique le diplôme de l’auteur String
Spécialité Indique la spécialité de l’auteur String
Binome Indique si le dépôt est par binôme ou non Boolean
DateValidation Indique la date de validation du rapport par Date
l’agent administratif.
Tags La liste des mots clés. String
Dictionnaire d’attributs
Nom d’attribut Description Type
ID L’identifiant de la classe OrganismeAccueil Integer
Titre Description concernant l’organisme d’accueil String
Email L’adresse électronique de l’organisme d’accueil String
Type Indique si l’organisme est une unité de recherche String
ou une entreprise
Categorie Indique si l’organisme est un organisme public String
ou privé
Specialite Indique la spécialité de l’organisme d’accueil Date
NomResponsable Le responsable de stage dans cet organisme String
d’accueil
PosteResponsable La poste du responsable des stages dans String
l’organisme d’accueil
NumeroTel Le numéro du téléphone de l’organisme d’accueil Boolean
| 31
Dictionnaire de la classe « MembreJury »
Dictionnaire d’attributs
Nom d’attribut Description Type
ID L’identifiant de la classe MembreJury Integer
Nom Le nom de membre du jury String
Prenom Le prénom de membre du jury String
Email L’adresse électronique de membre du jury String
Affiliation L’affiliation de membre du jury String
Grade Le grade de membre du jury String
Dictionnaire d’attributs
Nom d’attribut Description Type
ID L’identifiant de la classe Document Integer
DocType Le type de document String
Data Le contenu de document Byte[]
Dictionnaire d’attributs
Nom d’attribut Description Type
ID L’identifiant de la classe Departement Integer
Nom Le nom du département String
Dictionnaire d’attributs
Nom d’attribut Description Type
ID L’identifiant de la classe Roles String
Nom Le nom de rôle String
| 32
Dictionnaire de la classe « Utilisateur »
Dictionnaire d’attributs
Nom d’attribut Description Type
ID L’identifiant de la classe Utilisateur String
Nom Le nom d’utilisateur String
Username Le nom d’utilisateur pour la connexion | pseudo String
Mot de passe Le mot de passe de l’utilisateur String
Email L’adresse électronique de l’utilisateur String
Etat L’état du compte Boolean
Dictionnaire d’attributs
Nom d’attribut Description Type
CIN Le numéro de carte d’identité de l’Etudiant String
Tel Le numéro de téléphone de l’Etudiant String
Dictionnaire d’attributs
Nom d’attribut Description Type
Poste Le poste de l’agent String
| 33
III. Conclusion
Ce chapitre est d’une grande importance pour la suite du travail du fait qu’il projette la
notion théorique sur un cas pratique de ma plateforme et qu’il traite la conception du
système à réaliser, sans laquelle la réalisation ne pourra se faire comme il se doit.
J’ai d’abord identifié le cycle de vie que nous avons adopté pendant les différentes phases
de mon projet. J’ai passé par la suite à définir une méthodologie de conception adéquate à
mon application. Puis j’ai décrit l’architecture générale de ma plateforme.
À la fin, j’ai expliqué le fonctionnement détaillé par le moyen de la modélisation par des
diagrammes UML.
| 34
Chapitre 3 :
Réalisation
| 35
Introduction
Au niveau de cette dernière partie, je m’intéresse aux outils utilisés pour la réalisation de ma
plateforme et la mise en œuvre des différents composants décrits au niveau du chapitre
précédant ainsi qu’aux principales interfaces de l’application.
I. Environnement de travail
1. Environnement matériel
Le travail a été réalisé sur un ordinateur portable qui dispose des caractéristiques suivantes :
Microprocesseur : Intel i5
Mémoire vive de : 4Go DDR3
Disque dur : 500Go
J’ai utilisé aussi un téléphone mobile (Smart Phone) Nokia Lumia avec un système
d’exploitation Windows Phone 8.1.
2. Environnement logiciel
J’ai utilisé Windows 10 Technical Preview comme un système d’exploitation. Windows 10 est
la version du système d'exploitation Windows présentée le 30 septembre 2014. Sa sortie est
prévue pour fin juillet 2015. Son interface graphique est une synthèse et une amélioration
de celles de Windows 7 et Windows 8.1.
Les dernières actualités de la version aboutie de Windows 10 ont été dévoilées lors de la
Conférence Build 2015 du 29 avril au 1er mai à San Francisco. En 2013, c'est lors du même
événement que la firme de Redmond avait lancé Windows 8.1. On y apprend notamment
que le navigateur Internet Explorer est rebaptisé Edge et que la distribution sera disponible
sur PC, smartphones, tablettes et console Xbox One. [2]
| 36
II. Environnement de développement
Microsoft Visual Studio est une suite de logiciels de développement pour Windows conçue
par Microsoft. La dernière version s'appelle Visual Studio 2015.
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# utilisent tous le même
environnement de développement intégré (IDE, Integrated Development Environment), qui
leur permet de partager des outils et facilite la création de solutions faisant appel à plusieurs
langages. Par ailleurs, ces langages permettent de mieux tirer parti des fonctionnalités du
Framework .NET, qui fournit un accès à des technologies clés simplifiant le développement
d'applications Web ASP et de Services Web XML grâce à Visual Web Developer. [3]
2. Twitter Bootstrap
Twitter Bootstrap est une collection d'outils utile à la création de sites et d'applications web.
C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de
navigation et autres éléments interactifs, ainsi que des extensions JavaScript en option. C'est
l'un des projets les plus populaires sur la plate-forme de gestion de développement Git
Hub.[4]
| 37
3. Entity Framework
Entity Framework est une technologie recommandée d'accès aux données fournie par
Microsoft pour les nouvelles applications. Entity Framework vous permet de créer un modèle
en écrivant du code ou à l'aide de zones et de lignes dans Entity Framework Designer. Les
deux approches s'utilisent pour cibler une base de données existante ou pour créer une base
de données.
Ce dernier est un mappeur objet/relationnel qui permet aux développeurs .NET d'utiliser des
données relationnelles à l'aide d'objets spécifiques au domaine. Il rend inutile la plupart du
code d'accès aux données que les développeurs doivent généralement écrire.
4. Microsoft Azure
Microsoft Azure (Windows Azure jusqu’en 2014) est le nom de la plate-forme applicative en
nuage de Microsoft. Son nom évoque le concept de « cloud computing » ou informatique
en nuage (l'externalisation des ressources informatiques d'une entreprise vers des Data
Center distants). Il s'agit d'une offre d'hébergement (applications et données) et de services
(workflow, stockage et synchronisation des données, bus de messages, contacts…). Un
ensemble d'API permet d'utiliser et d'accéder à cette plateforme et aux services associés. Un
environnement d'exécution (le « Live Operating Environment ») permet une intégration
étroite avec les principaux systèmes d'exploitation existant (Windows, Mac OS et Windows
Phone). Le projet a été annoncé par le PDG de Microsoft Steve Ballmer lors de sa Professional
Developers Conference, qui se tenait du 26 au 30 octobre 2008 à Los Angeles. [6]
| 38
5. ASP.NET MVC 5
Le rôle Serveur Web (IIS) comprend Internet Information Services (IIS) 7, une plateforme
Web unifiée intégrant IIS, ASP.NET, Windows Communication Foundation et Windows
SharePoint Services. IIS 7 vous permet de partager des informations avec d'autres utilisateurs
sur Internet, un intranet ou un extranet. Windows Server® 2008 fournit IIS 7.0, également
proposé dans certaines éditions de Windows Vista®. Windows Server® 2008 R2 fournit IIS
7.5, également proposé dans certaines éditions de Windows® 7. [8]
Microsoft SQL Server est un système de gestion de base de données (abrégé en SGBD ou
SGBDR pour « Système de gestion de base de données relationnelles ») développé et
commercialisé par la société Microsoft. Bien qu'il ait été initialement développé par Sybase
et Microsoft, Ashton-Tate a également été associé à sa première version, sortie en 1989. [9]
| 39
III. Les interfaces
1. Application Web
La page d’accueil :
| 40
Page d’inscription :
Page de recherche :
| 41
Page de recherche des organismes d’accueil :
| 43
Page d’accueil de l’agent administratif :
| 44
2. Application Windows Store App
L’interface d’accueil
| 45
3. Application Windows Phone
Page de démarrage de l’application
Figure 25 : Page de
démarrage de l’application
Page d’accueil :
| 46
Page de consultation des rapports :
Figure 27 : Page de
consultation des rapports
Page d’aide :
| 47
Chapitre 4 :
Plan d’affaires
| 48
Introduction
Comme étant un produit informatique mon projet passe certainement par un cycle de vie
commerciale qui me pousse à développer mon projet et réfléchir à l'élargir en ajoutant des
fonctionnalités qui s'adaptent.
Dans ce chapitre on va voir comment puis-je bénéficier de mon projet en détaillant le plan
business de ce dernier. Je commence à présenter les besoins financiers et l’étude des
revenus.
Besoins financiers
Autre
17%
Compte
Microsoft Azure
50%
| 49
2. Besoin temporel :
Le cycle de développement de ce projet prend 3 mois comme une période de
développement cette partie se répartis sur plusieurs parties :
Période de réalisation
40
35
35
30
25
20
15
15
10
10
5 7
2
0
Analyse des besoins Conception Développement Test Deployement
| 50
III. Revenus d’applications Windows
A l’aide de Microsoft pubCenter il est possible de gérer les bannières publicitaires au niveau
des applications Windows que ce soit les applications mobile ou les applications
bureautique. Et à cette occasion j’ai ajouté des zones de publicité à mes deux applications,
Windows Phone et Windows App Store App pour maximiser les revenus.
| 51
Conclusion générale
Ce travail a été réalisé dans le cadre de mon projet de fin d’études. Il a pour objectif la
conception et la réalisation d'une plateforme permettant la gestion et le suivi des projets de
fin d'études au sein de la Faculté des Sciences de Monastir.
Dans ce contexte, j'ai cherché à informatiser nos besoins en développant une plateforme
flexible et évolutive permettant son amélioration par la suite afin d’anticiper les
changements continus des besoins des utilisateurs. Cette plateforme a permis en premier
lieu, de déposer les rapports à l'administration et d'identifier les organismes d’accueil. Ainsi,
la consultation des anciens rapports qui facilite le recherche des rapports et pour gagner les
avantages d’archivage électronique.
Pour la conception de ma plateforme, j'ai eu recours à la méthodologie UML. Cette approche
m'a permis de bien comprendre la problématique et de bien modéliser les objectifs à
atteindre. Ce qui m'a donné la possibilité de réaliser un système stable et évolutif. Le projet
s’est déroulé selon trois axes principaux afin de passer par les étapes essentielles de tout
projet : l’analyse, la conception et la réalisation. Pour la réalisation, j'ai utilisé C# comme
langage de programmation et SQL Server comme système de gestion de base de données.
En outre, ce projet était une opportunité pour bien maîtriser le développement web et
apprendre l'ASP.NET MVC5 ainsi que les outils et Framework liés tel que l’Entity Framework
et jQuery.
En guise de perspective Ce travail reste prêt pour toute amélioration envisageable comme
réaliser une application dédiée à toutes les fonctionnalités de mon plateforme pour qu’elle
soit exploitable par des autres plateformes (exemple : Android et iOS). Il est également
possible d’étendre l’utilisation de cette plateforme à d’autres institutions d’enseignement
supérieur et pourquoi pas la rendre exploitable au niveau national.
| 52
Bibliographie
[1] : https://msdn.microsoft.com/fr-fr/library/aa480728.aspx
[2] : http://fr.wikipedia.org/wiki/Windows_10/
[3] : http://fr.wikipedia.org/wiki/Microsoft_Visual_Studio/
[4] : http://fr.wikipedia.org/wiki/Twitter_Bootstrap/
[5] : https://entityframework.codeplex.com/
[6] : http://fr.wikipedia.org/wiki/Microsoft_Azure/
[7] : http://fr.wikipedia.org/wiki/ASP.NET
[8] : https://technet.microsoft.com/fr-fr/library/cc753433(v=ws.10).aspx
[9] : http://fr.wikipedia.org/wiki/Microsoft_SQL_Server
[10] : http://www.microsigma.fr/visual-studio-2013-licence-msdn.html
| 53