Projet de diplôme « Eduswiss »

publicité
Rapport Final
Gilberto Matos
31 mai 2007 version 0.7
Rapport final
SWS travail de diplôme B.37.15 / 2007
Classification *
Non classé / Interne / Confidentiel
Statut **
En exécution / En étude / Terminé
Nom de projet
HERMES Manager pour le PDA
Raccourci de projet
HePocket
Numéro de projet
371507
Chef de projet
Gilberto Antonio Matias de Matos
Donneur d'ordre
USIC
Auteur
Gilberto Antonio Matias de Matos
Initiale
GAMM
Traitement
Gilberto Antonio Matias de Matos
Expert
M. Flückiger - Zuehlke
Approbation
Messieurs Réne Bach et Markus Flückiger
Distributeur
USIC
Contrôle de modification, examen, approbation
Version
Date
Description,
0.7
31.05.2007
remarques
nom et rôles
Gilberto Matos : Elaboration et
rédaction du rapport final.
Définitions, acronymes et raccourcis
Notion/raccourci
Importance
Références
Signe d'identification
Titre, source
Gilberto Matos - Rapport Final - Hermes Manager
1/65
Tables des matières
1. Introduction...................................................................................................... 2
2. Hermes Manager .............................................................................................. 3
2.1
Historique ................................................................................................ 4
3. Le travail........................................................................................................... 5
3.1
Ma contribution ....................................................................................... 6
3.3
Coût et rentabilité du projet..................................................................... 7
3.4
Réalisation ............................................................................................... 8
3.2
Phase de test ........................................................................................... 6
3.5
4.
Mon concept de développement............................................................... 8
Architecture (.NET Framework utilisé) ............................................................. 9
5
Architecture HePocket .................................................................................. 10
5. Multilinguisme................................................................................................ 17
5.1
Gestion du multilinguisme ..................................................................... 17
6.
Exportation et importation d’un projet ......................................................... 18
7
HePocket ...................................................................................................... 21
8.
4.5
Le pré requis matériels........................................................................... 21
4.6
Le pré requis logiciels ............................................................................ 21
4.7
Comment installer le HePocket............................................................... 22
Evaluation des SGBD (Système de gestion de base de données) .................... 25
9.
Base de données .......................................................................................... 26
9
Le future ...................................................................................................... 33
10
Discussion ................................................................................................ 34
11
Conclusion ................................................................................................ 35
12
Bibliographie............................................................................................. 37
13
Annexes.................................................................................................... 39
13.1
Visual Studio .NET............................................................................... 39
13.3
Les classes HePocket .......................................................................... 44
13.4
Les concurrents de .NET Compact Framework..................................... 45
13.2
13.5
Architecture des classes (.NET Framework) ......................................... 41
Les schémas relationnels et les tables (ERD) ...................................... 48
Gilberto Matos - Rapport Final - Hermes Manager
2/65
1. Introduction
Vous avez en main le rapport final du travail de diplôme "HERMES Manager" sur
PDA. L’idée de départ est de rendre la méthode HERMES accessible aux managers
et autres donneurs d’ordre. La forme et le mécanisme d’accès à la méthode
varient complètement, parce que pour le moment la méthode HERMES et
disponible en format papier et sur le site Hermes.
Mon travail met la méthode Hermes sur un PDA et permet aux managers et
donneurs d’ordres de rester en contact avec elle à tout moment. De plus une
partie permettant la gestion des projets ainsi que l’évaluation des candidats est
disponible.
La valeur ajoutée de mon travail est la gestion de projet, inscription des
candidats, la récupération de contenus du fichier Microsoft Excel (p. ex. le ROI, les
valeurs de l’investissement), l’exportation et importation de projets.
Gilberto Matos - Rapport Final - Hermes Manager
3/65
2. Hermes Manager
Le HERMES Manager et la méthode HERMES
Hermes manager est un outil que décrit, montre et facilite l’utilisation et la
compréhension de la méthode HERMES du point de vue du manager. Le manager
est la personne responsable de plusieurs projets et qui supervise les chefs de
projets qui sont responsables directement pour un projet donné.
Hermes manager est divisé en deux parties, que sont : les connaissances de base
et l’exécution.
Connaissances de base :
Décrit et présente la partie théorique de la méthode
ainsi que les principes généraux.
Exécution :
C’est la description de la partie pratique (directives
d’actions) pour le manager dans le suivi d’un ou
plusieurs projets.
HERMES est en fait la méthode permettant la gestion du processus, élaborer des
solutions, l’un des processus informatiques de l’Administration fédérale. (Réf. : Lik
6)
La directive pour la conduite de projets informatiques, utilisation d’HERMES): du
conseil informatique de la Confédération, qui fait référence à la Loi sur
l’Organisation du Gouvernement et de l’Administration, précise d’ailleurs que tous
les projets informatiques doivent être réalisés selon la méthode de gestion de
projet HERMES. (Réf. : DocP 6)
Cette directive est appuyée par la Norme pour la conduite de projets
informatiques en cyberadministration, qui fait également la promotion d’HERMES.
(Réf. : DocP 6)
Gilberto Matos - Rapport Final - Hermes Manager
4/65
2.1 Historique
Divinité de l’Olympe, dont il était le messager, Hermès était notamment le dieu du
commerce et des voyageurs.
Son nom a été quelque peu galvaudé, mais en ce qui nous intéresse HERMES est le
nom d’une méthode de gestion de projets informatique et qui fait de plus en plus
parler d’elle dans sa version remise au goût du jour à l’occasion des projets
NOVE-IT et NEO HERMES. (Réf. : DocP 6)
La méthode Hermes est née dans les années 70, sous l’égide de l’administration
fédérale, les CFF et les PTT (actuellement Swisscom et La Poste) ayant comme
objectif principal la définition d’un langage commun pour mieux maîtriser leurs
projets.
Depuis 31 ans qu’Hermes est une réalité, après le déploiement de la première
version dans les administrations cantonales, communales et dans le secteur privé,
la méthode de gestion de projet Hermes a été continuellement adaptée et révisée.
(Réf. : Lik 5)
Motivations personnelles
La motivation est un des points pour la bonne conduite du travail. Je suis motivé
et j’espère mener le présent travail à terme.
Ce travail a aussi un aspect pédagogiques et didactique. Vu que je suis d’origine
africaine et au vide existant en Afrique au niveau de la gestion de projets, je
pense exploiter les connaissances acquises dans ce travail pour les utiliser plus
tard.
Je suis intéressé par ce thème parce qu’il représente un grand défi ainsi qu’une
bonne introduction dans l’univers d’Hermes. Il m’offre la possibilité de
comprendre la gestion de projet, la programmation du HePocket et l’appréhension
des besoins du public cible.
Gilberto Matos - Rapport Final - Hermes Manager
5/65
3. Le travail
HePocket est divisé en deux parties : la 1er partie englobe la transposition de la
brochure
"Hermes
Manager"
et
la
2ème
comporte
les
fonctionnalités
supplémentaires, comme par exemple suivi des projets, la base de données et
l’échange de projets entre le PDA et l’ordinateur PC.
DB
Guide de
poche Hermes
3
2
1
HePC
Manager.
Edition 2003
HePocket
1. : schéma de la démarche "Full"
1
Transposition de la brochure "Hermes Manager" sur le PDA. Le texte de la brochure
sera partiellement repris sans grande modification. Les graphiques exposés dans la
brochure seront représentés et adaptés d’une autre manière afin de les rendre visibles
et lisibles dans le PDA.
2
La base de données, sera utilisée pour la sauvegarde des projets et des données sur les
candidats (p. ex. inscription d’un candidat).
3
L’échange de fichier (Importation et Exportation des projets) : Les fichiers importés ou
exportés ont le format XML ou Texte.
La démarche "Full" a donnée naissance à HePocket, parce qu’elle couvre touts les
besoins du client. Elle offre à l’utilisateur la possibilité de créer et de sauvegarder
des projets, évaluer un candidat et avoir la méthode Hermes toujours à sa
disposition.
Gilberto Matos - Rapport Final - Hermes Manager
6/65
3.1 Ma contribution
- transposition du contenu papier vers un PDA
- manuel d’utilisation du HePocket
- une présentation de HERMES, par la mise en place de la méthode sur un PDA
- le contenu du HePocket est partiellement différent de la brochure Hermes
Manager
- rendre Hermes manager plus attractif et utile aux gestionnaires des projets
3.2 Phase de test
Pendant la phase de test, il y a eu trois groupes des testeurs : M. Bach, USIC et 3
étudiants (Marc Mathys, Orlando França et Mandu Schneider). HePocket a reçu
pendant sa phase de test un écho positif de la part de testeurs et les objectifs
fixés ont tous été atteints.
Testeur USIC : "… Die effektiven Bedürfnisse für eine Weiterentwicklung müssen
jetzt eruiert werden. Ohne diesen Prototyp wäre es nicht möglich gewesen. “
Testeur USIC 1 : " Generell:
- Eine sinnvolle Anwendung (mobile Unterstützung) finde ich vor allem den Guide!
- Generell gute Benutzerführung (einfach, verständlich)
- Gute Performance
- Inhaltliche Beschränkung auf das Wichtigste.
Gesamthaft aus meiner Sicht sicher eine würdige und interessante Diplomarbeit.
Entspricht in meinen Augen in etwa dem, was wir früher von einer Diplomarbeit
erwartet haben. ".
Je suis content de la phase de test parce qu’elle a bien fonctionné, la qualité du
travail a été garantie, les directives du cahier des charges respectée, donc les
bases sont posées.
Gilberto Matos - Rapport Final - Hermes Manager
7/65
3.3 Coût et rentabilité du projet
J’ai respecté les heures (536 h) de travail prévu dans le cahier des charges. Le
tableau ci-dessous présente les heurs de travail :
Etape
Les tâches
Temps
1er
Cahier des charges
2 semaines
64
Sfr. 4200
2ème
Base de données (DBA)
2 jours
16
Sfr. 840
3ème
Fichier projet (Excel)
1 jours
8
Sfr. 560
4ème
Prototype PDA, rapport final et manuel d’aide
2 mois
416
Sfr. 16 800
5ème
Présentation
3 jours
32
Sfr. 2800
3 mois
536 h
Sfr. 18 750
pour l’utilisateur
Total
Heures
Coût en Sfr.
Dans le cahier de charges, j’ai calculé le coût de la mise en place du présent
projet à Sfr. 22 381.85, voir le tableau ci dessous.
Coûts
Description
Montants
Frais d'examen
Sfr. 2950
Licence Etudiant Microsoft Visual Studio .NET
Sfr. 82,60
Déplacement en train entre Zürich et Bern (6 fois pendant 3 mois avec 1/2
Sfr. 270
tarifs)
Déplacement en train entre Zürich et Schlieren (6 fois pendant 3 mois)
Sfr. 46.80
Licence Adobe Professional 7.0
Sfr. 272.45
Total
Sfr. 22 381.85
Après trois mois de travail, le coût effectif de la mise en place du HePocket est de
Sfr. 22 345.05, la différence entre l’estimation et le coût effectif réside dans la le
nombre des voyages plus petit à Schlieren que prévu et au fait qu’un logiciel
(Screen Capture) a été acheté.
Le HePocket est un travail non commercial, son première objectif est de valider et
d’approfondir des connaissances, donc mon gain dans le présent projet est la
réussite du travail afin d’obtenir le diplôme, la connaissance de la méthode
HERMES,
le
génération
d’application
pour
HePocket,
documentation, les contacts avec la Confédération, etc.
Gilberto Matos - Rapport Final - Hermes Manager
la
rédaction
de
8/65
3.4 Réalisation
La phase de réalisation a servi à l’élaboration du système pour qu’il soit prêt à
l’introduction et crée les conditions préalables à cette dernière. Le plus grand défi
de cette phase été de respecter les directives du cahier des charges et de venir à
bout d'obstacles et de difficultés imprévus, d'estimer et ré-estimer correctement
la situation, et d'adapter les mesures en conséquence.
Les éléments implantés
- Transposition de brochure Hermes édition 2003
- Le multilinguisme
- Conception et développement de la base de données (hermesDataBase.sdf)
- Intégration du fichier projet (Microsoft Excel)
3.5 Mon concept de développement
Pour la mise en place du HePocket, j’ai choisit un concept de programmation
objet afin de réutiliser au maximum le code et éviter les doublures ou réécritures
du code et afin d’améliorer la qualité.
La modélisation objet qui j’ai suivit est basée sur le modèle méthode OOSE de
Jacobson et des concepts décrits par Bertrand Meyer dans son livre „Objectoriented software Construction“. (Réf : DocP 10)
J’ai crée un modèle le proche possible de la réalité de manière à simplifier ma
tâche. Ma réalité est la brochure Hermes est mon modèle le prototype (format
PowerPoint) est de cette ensemble est née le HePocket (Hermes for Pocket PC).
Mon objectif consisté à créer une représentation informatique des éléments de la
brochure auxquels j’ai été 'intéresse, sans me préoccuper de l'implémentation, ce
qui signifie indépendamment du langage de programmation.
Il s'agit donc de déterminer les objets présents et d'isoler leurs données et leurs
fonctions. Pour cela j’ai mis en place des méthodes.
Gilberto Matos - Rapport Final - Hermes Manager
9/65
4. Architecture (.NET Framework utilisé)
J’ai choisit l’environnement de développement Visual Studio .NET, parce qu’il y a
deux points forts de la stratégie de Microsoft, qui sont la standardisation, aussi
bien du point de vue de l'utilisateur que de celui du développeur et les outils
(Visual C# .NET) mis à disposition qui sont bien compatibles avec les structures de
Windows CE, le système d’exploitation pour PDA
La figure ci-dessous montre les éléments utilisés pour la réalisation du HePocket.
Le Visual Studio .NET est la couche supérieure et CLR est la dernière couche.
2. : Architecture ".NET FrameWork t"
J’utilise le langage de programmation « Visual C# .NET », la traduction du code est
prise en charge par la partie « IL », les interfaces (formulaires) sont produites par
le bloc « Application Windows Winforms », les classes importées depuis le bloc
« Basic classes » et l’exécutable produits par la bloc « CLR ».
Gilberto Matos - Rapport Final - Hermes Manager
10/65
5 Architecture HePocket
Mais pourquoi utiliser .NET Framework ? Le développement de logiciels est encore
une activité fortement demandeuse de main-d'œuvre et prône aux erreurs. En
revanche, les progrès réalisés dans la densité de la silicone, de même que les
outils de conception de circuits complexes dans la silicone, ont donné lieu à des
progrès considérables pour les performances du matériel (ordinateurs). (Réf : 8)
Le HePocket est un prototype développé dans l’environnement .NET de Microsoft
(Réf. : 1) et qui permet l’installation de l’application sur un iPAQ (Pocket PC,
Windows CE) plus précisément ".NET Compact Framework".
Le HePocket utilise largement les bibliothèques de classes .NET Framework. Le
HePocket utilise la classe pour l'accès au système de fichiers, les contrôles de
l'interface, WinForms (Windows Forms) et le traitement de chaînes de caractères
(String).
3. : Architecture de l’environnement de travail "HePocket"
Les progrès dans le développement de logiciels ont été nettement plus modestes.
Toutefois, étant donné l'importance des logiciels (pour certaines sociétés, le
logiciel est le domaine de prédilection de valeur ajoutée), les efforts visant à
améliorer la productivité dans le développement de logiciels ont de grandes
chances de donner des résultats significatifs et durables. (Réf : 2)
Gilberto Matos - Rapport Final - Hermes Manager
11/65
Visual C# .NET considère les interfaces comme classes, mais je ne suis pas
d’accord. Je considère une classe, la structure d’un objet, c'est-à-dire la
déclaration de l’ensemble qui composera un objet. Un objet est issu d’une classe,
c’est le produit qui sort d’un moule.
Un objet est une instanciation d’une classe, c’est une instance. Avec Visual C#
.NET on peut créer des classes, mais chaque interface générée est aussi
considérée comme une classe.
Dans la figure ci-dessous je représente la séparation qu’il faut tenir compte entre
les interfaces générées et les classes vitales (classes effectives) qui j’ai crée pour
la mise en place et la gestion des événements produits depuis les interfaces.
4. : Architecture de séparation des classes "HePocket"
Les
classes
effectives
sont :
German.cs,
TheWorkingLanguage.cs,
TheDataBaseManagement.cs,
HermesProjectManagement.cs,
French.cs,
English.cs,
TheCandidateDBmanagement.cs,
TheProjectDBmanagement.cs,
HermesPreAnalysisPhaseManagement.cs,
HermesInitializationPhaseManagement.cs,
HermesConceptPhaseManagement.cs,
HermesCandidateManagement.cs, HermesCandidateAdressManagement.cs.
La description des classes effectives du HePocket se trouve dans la partie annexe
du présent rapport ainsi qui l’architecture des classes .NET Framework.
Gilberto Matos - Rapport Final - Hermes Manager
12/65
Comment le code du HePocket est-il généré ?
La classe « Object » est la classe est la classe ou sommait de l’hiérarchie des
classes, à première vue la classe « MainHermesMenu.cs » fait figure de classe
principal par contre l’assemblage (compilation) et la création de l’exécutable est
pris en charge par la méthode principal (Main) qui se trouve dans la classe
« Program.cs ». Voir le code ci-dessous.
5. : Le code de la classe « Program.cs »
La classe « Program.cs » est généré (automatiquement) par l’environnement Visual
Studio .NET.
6. : Architecture de production du code (exécutable)
Gilberto Matos - Rapport Final - Hermes Manager
13/65
Voici
deux
exemples
de
classes
HePocket :
MainMenuHermes.
La
MainMenuHermes et les autres classes sont décrites dans l’annexe. La classe
« MainMenuHermes »
est
cliente
des
classes
« TheWorkingLanguage »,
« FullFillDemoDataBase » et « TheDataBaseManagement ».
La classe « MainMenuHermes » est cliente des classes « German », « English » et
« French ».
Gilberto Matos - Rapport Final - Hermes Manager
14/65
L’avantage de l’environnement .NET Framework, ce que le code produit peut être
exécuté dans tout les PDA sans modifier le code écrit au moment du
développement de l’application, en extrayant les méta données d'un projet (par
exemple, son modèle de base de données) et en les combinant à certains modèles
de conception et de règles de comportement. (Réf. : 1)
La figure ci-dessous représente l’architecture du HePocket.
7. : Architecture "HePocket"
Le premier bloc est composé de fichiers sources C# (p. ex. German.cs), des
références (p. ex. System) et des ressources (p. ex. Microsoft.Windows.CE). Le
fichier exécutable p. ex. « HePocket.exe » est généré selon la machine (dans le cas
du HePocket c’est un « PDA ») source choisie au moment du développement.
Gilberto Matos - Rapport Final - Hermes Manager
15/65
La conception d'une interface utilisateur claire et intuitive pour les applications
.NET est très simple. Il est difficile de le décrire de manière simple, alors je vous
demanderai un peu de patience, le temps que j'essaie de fournir une explication
claire.
La figure ci-dessous représente le processus d’interface utilisateur.
8. : Processus d’interface utilisateur "HePocket"
Par ce processus de création d’interface toutes les interfaces du HePocket
présente
dans
le
HePocket
héritent
du
menu
présent
« MenuHermesManager.cs », voir le code ci-dessous.
Gilberto Matos - Rapport Final - Hermes Manager
dans
la
classe
16/65
Le Binding ou le fait de lier des éléments entre eux, par exemple pour passer
d'une représentation de données à une autre.
Un bindingContext est créé par l’interface (formulaire), cet objet est une sorte de
contrôleur de collections pour les composants graphiques liés, les abonnés. A
chaque changement de position, le bindingContext prévient l'ensemble de ses
abonnés via un mécanisme d'Observer/Observable.
Si l'élément en cours change, le CurrencyManager avertit tous les abonnés, par
exemple les contrôles liés, pour qu'ils puissent actualiser leurs données. De plus,
vous pouvez définir la propriété Position pour spécifier la ligne dans le DataTable
vers lesquels les contrôles pointent. Pour déterminer le nombre de lignes dans la
source de données, utilisez la propriété correspondante.
9. : Architecture de l'attache de données d’une interface (formulaires) "HePocket"
Le CurrencyManager est nécessaire parce que les sources de données ne gèrent
pas nécessairement un pointeur d'élément en cours. Par exemple, les tableaux et
les objets ArrayList peuvent être des sources de données, mais ils ne comportent
pas de propriété qui retourne l'élément en cours. Pour obtenir l'élément en cours,
utilisez la propriété Current. (Réf. : 1)
Gilberto Matos - Rapport Final - Hermes Manager
17/65
5. Multilinguisme
Le HePocket est une application multi langue. L’utilisateur a le choix entre 3
langues de travail (Allemand, Anglais, Français). Le français est la langue de travail
par défaut. L’utilisateur a la possibilité de changer la langue de travail depuis le
menu "Fichier". Le changement reste conservé jusqu’à la prochaine modification.
L’application ne change pas la langue de travail automatiquement.
5.1 Gestion du multilinguisme
La
langue
de
travail
est
sauvegardée
dans
un
fichier
texte,
nommé
« SaveLanguage.txt ». Le fichier sera créer au premier démarrage du HePocket.
FR
HePocket
SaveLanguage.txt
Fig. 10: représentation de la sauvegarde de la langue de travail
J’utilise les symboles suivants pour identifier les langues de travail : FR (français),
ENG
(anglais)
et
DE
(Allemand).
Si
l’utilisateur
supprime
le
fichier
« SaveLanguage.txt », il sera crée au prochain démarrage. La modification du
contenu du fichier, implique le maintien de la langue de travail par défaut
jusqu’au prochain changement. (Réf. : DocP 9)
Ci-dessous une fine partie code pour la gestion du multilinguisme
Gilberto Matos - Rapport Final - Hermes Manager
18/65
6. Exportation et importation d’un projet
Pour l’exportation ou importation de projets, l’utilisateur a le choix entre le
format XML et le format texte.
L’exportation des projets
Les données des projets exportés sont lues depuis la base de données
« hermesDataBase.sdf » et exportées vers un support choisit par l’utilisateur.
Celui-ci doit saisir un nom pour le fichier. Chaque projet a une clef
d’identification unique, pour garantir l’intégrité des enregistrements qu’elle
représente.
DB
XML
Disque
Fichier
projet
TXT
Fig. 11 : représentation de l’exportation d’un projet
L’utilisateur choisit le projet qu’il souhaite exporter. Le choix de l’utilisateur est
conservé dans une variable et ensuite, à l’aide d’une requête de sélection son
contenu est sauvegardé temporairement dans un fichier. (Réf. : DocP 9)
Dans le chapitre 12, titre : Fichier projet format Texte (import / export) et Fichier
projet format XML (import / export), vous pouvez voir un exemple de fichier.
Extrait fine d’une partie code pour le traitement de l’exportation d’un projet
Gilberto Matos - Rapport Final - Hermes Manager
19/65
L’importation des projets
L’utilisateur choisit le fichier (projet) qu’il souhaite importer depuis un support, p.
ex. une carte mémoire. Avant d’introduire les données dans la base de données,
la clef d’identification du projet à importer sera comparée aux clefs des projets
existants.
Si la clé d’identification est présente dans la base de données, les données du
projet seront actualisées, sinon ajoutées dans la base de données. De cette
manière il est impossible d’avoir de doublons dans la base de données. (Réf. : DocP
9)
XML
DB
Disque
Fichier
projet
TXT
Fig. 12 : représentation de l’importation d’un projet
Dans le chapitre 12, titre : Fichier projet format Texte (import / export) et Fichier
projet format XML (import / export), vous pouvez voir un exemple de fichier.
Extrait fine d’une partie code pour l’importation d’un projet
Gilberto Matos - Rapport Final - Hermes Manager
20/65
Clef d’identification
La clef d’identification est un élément unique qui permet une meilleure
identification des projets et l’intégrité des données.
La clef d’identification est un élément unique qui permet une meilleure
identification des projets et l’intégralité des données.
Nom du projet
Heure
Code
Année
Exemple : Si l’utilisateur crée un projet à 18:30h sur son Pocket PC avec le nom
"Demo USIC" en 2007, sa clef d’identification aura la structure suivante :
DemoUSIC18:30POC2007
Eléments de la clef
Description
Nom
Représente le nom du projet.
Heure
Indique l’heure de la création de l’enregistrement.
Code
Représente le support utilisé pour la création du projet
Année
Indique l’année de la création de l’enregistrement.
PC : pour l’ordinateur POC : pour le Pocket PC.
Ci-dessous une fine partie code pour la création de la clef d’identification
Gilberto Matos - Rapport Final - Hermes Manager
21/65
7 HePocket
Réalisation du HePocket
La réalisation du HePocket, ou comment les différentes classes ont été
assemblées est un des points les plus importants dans la réalisation du prototype.
Pour développer une application .NET Compact Framework, il faut avoir Microsoft
Visual Studio 2005 ou le Kit de développement Microsoft .NET Framework 2.0
SDK.
4.5 Le pré requis matériels
Pour l’exécution, les critères suivants doivent être remplis:
- Processeur : Intel ® PXA255
- espace disque : 3 MB
4.6 Le pré requis logiciels
Pour le fonctionnement du HePocket, les logiciels suivants sont nécessaires:
- SQL Mobile
- .NET Compact Framework 2.0
- Windows Mobile 2003 SE
Pour l’installation de ces logiciels, il faut consulter le Manuel de l’utilisateur.
Gilberto Matos - Rapport Final - Hermes Manager
22/65
4.7 Comment installer le HePocket
Il n’y a pas d’ « installeur » pour l’installer le HePocket. Je n’ai pas développé un
installeur à cause du temps nécessaire pour le développement d’une telle
application et le coût de l’achat d’un programme d’installation comme par
exemple InstallShield 11.5. J’ai donc renoncé parce que cette fonction n’avait pas
de priorité dans ce travail. Pour exécuter le HePocket dans un PDA, il suffit de
transférer le fichier HePocket.exe dans le PDA.
Interface principale
L’interface
principale
du
HePocket
est
définie
par
la
classe
« MainMenuHermes.cs ». Elle met à disposition de l’utilisateur la barre de menus,
les menus et les sous-menus. L’utilisateur interagit avec le HePocket par les
différentes interfaces. L’interface principale est composée de 4 menus.
13. : Interface principale "HePocket"
Les menus
Descriptions
Fichier
Le menu « fichier » regroupe en grande partie les fonctions extra « Hermes ». Ce
menu est composé de cinq sous-menus : Candidats, Exporter, Importer, Langue et
Quitter.
Projets
Ce menu regroupe la partie gestion de projet. Il offre à l’utilisateur la possibilité
Guide
Ce menu regroupe toute la partie théorique de la méthode « Hermes ».Il est
de créer, supprimer, modifier et consulter des projets.
composé de trois sous-menus : Connaissances de base, Méthode Hermes,
Annexes
Aide
Comme son nom l’indique, le menu « Aide » offre à l’utilisateur les informations
dont il a besoin pour l’aider à travailler avec le HePocket. Il est composé de deux
sous-menus : Aide HePocket et Information.
Gilberto Matos - Rapport Final - Hermes Manager
23/65
Interaction utilisateur & HePocket
L’utilisateur interagit avec le Hepocket par l’interface principale, dont il peut
accéder aux différents menus de l’application.
Parce que la proposition faite, pendant l’élaboration du prototype version
PowerPoint, ne permettait pas aux utilisateurs de se retrouver, il faut dire qui
beaucoup était perdus par le système de navigation proposé.
La mise en place de la navigation dont l’emplacement des menus a été décidé
après plusieurs teste et la navigation amélioré.
La figure ci-dessus représente un utilisateur qui entre en contact avec le
HePocket, l’objectif est de montrer les elements (interfaces) qui l’utilisateur
trouvera en lançant le HePocket.
Pour plus d’information sur les menus et leur fonction, veuillez consulter le
« Manuel de l’utilisateur ». (Réf. : DocP 9)
Gilberto Matos - Rapport Final - Hermes Manager
24/65
Connexion vers la base de données
L’application ne se connecte pas à la base de données au moment de son
lancement. L’utilisateur peut utiliser le HePocket sans jamais se connecter à la
base de données parce que pour la navigation dans la partie théorique (p. ex.
Guide) aucune connexion n’est nécessaire.
La figure ci-dessous est une représentation simplifiée de la connexion entre le la
DB et les interfaces.
14. : PDA – DB – interfaces utilisateurs "HePocket"
Une connexion vers la base de données est crée, si l’utilisateur décide de créer,
consulter, modifier ou supprimer : les données d’un projet ou candidat. Le code
ci-dessous représente la connexion vers la base de données.
Les données saisies ou consulter par l’utilisateur sont toujours stockées dans des
fichiers temporaires et supprimer après avoir quitter le HePocket.
Gilberto Matos - Rapport Final - Hermes Manager
25/65
8. Evaluation des SGBD (Système de gestion de base de données)
J’ai analysé plusieurs systèmes de gestion de bases de données, comme SQL
Mobile, Microsoft Access, FileMaker, SyBase. Avant de prendre une décision, j’ai
regardé la partie technique, le prix et les solutions existantes. En ce qui concerne
les logiciels libres (open source), je n’est pas regardé de tels types de solution,
parce que je ne suis pas adhérent de ce type de logiciel.
Le système de gestion de base de données (en anglais "DBMS", Database
Management System) est une application qui organise les données dans un cadre
structuré composé de tables (de lignes et de colonnes), et qui utilise cette
structure pour fournir un accès aux données ainsi que des moyens pour les
traiter. (Réf. : 5)
Les activités supportées sont la définition d'une base de données (spécification
des types de données à stocker), la construction d'une base de données (stockage
des données proprement dites) et la manipulation des données (principalement
ajouter, supprimer, consultation des données).
Un système de gestion de base de données est un programme informatique
gérant les bases de données, par exemple Microsoft Access (avec
restrictions), Oracle, Informix, Sybase etc.
Gilberto Matos - Rapport Final - Hermes Manager
des
26/65
9. Base de données
Une base de données est une structure de données destinée aux traitements
d’informations et à la gestion des données. Dans le cadre de mon travail de
diplôme, plus concrètement la mise en place de HePocket, la base de données est
destinée à la gestion des projets.
C'est une entité logiquement cohérente et représentant une sémantique. Tout
d'abord, il faut rappeler que Microsoft Access n'est pas une base de données,
mais un outil, limité, de gestion de bases de données.
Le système de gestion de base de données désigne l'ensemble des fonctions
permettant de définir la structure des données, de formuler des requêtes, de
modifier et de stocker des informations (créer et maintenir une base de données).
(Réf. : DocP 8)
La base de données est destinée à la sauvegarde des projets qui seront crées et
pour la sauvegarde des informations sur les candidats. L’accent sera mis sur la
partie création et consultation de projet ainsi que sur la partie représentant les
phases de travail « HERMES ».
J’utilise une base de données parce que de mon point de vue, c’est la meilleure
structure pour la gestion des données que je souhaite traiter. Voir les
informations plus détaillées aux chapitres « 8 et 9 ».
Un système de gestion de bases de données est un programme supportant la
définition de bases de données, leur exploitation efficace, la définition
d'utilisateurs, le tout dans un contexte multi-utilisateurs. C’est là que Access a,
entre autre, des limites. La vitesse des requêtes, la compatibilité SQL étendue
mais pas SQL Mobile.
Aujourd’hui il y a différente génération de système de gestion de base de
données. Les systèmes de gestion de base de données relationnels, supportent
des bases de données décrites selon le modèle relationnel et ils sont compatibles
avec le langage SQL.
Gilberto Matos - Rapport Final - Hermes Manager
27/65
Un modèle de données est un ensemble de concepts permettant de décrire la
structure d'une base de données. La plupart des modèles de données incluent des
opérations permettant de mettre à jour et de questionner la base. Le modèle de
données le plus utilisé est le modèle relationnel. Il existe depuis longtemps des
systèmes de gestion de base de données orienté objet.
Une grande part des applications construites sur le système de gestion de base de
données ne peuvent se permettre d'exécuter les programmes et requêtes de leurs
utilisateurs les uns après les autres, car cela impliquerait des temps d'attente
beaucoup trop long. C'est le cas, par exemple, des applications gérant les
transactions boursières, les réservations de places d'avion etc. Le système de
gestion de base de données doit donc exécuter simultanément - autant que
possible - les programmes et requêtes des utilisateurs.
Dans ce chapitre, on emploiera le mot de transaction pour désigner toute unité de
traitement (programme ou requête utilisateur) exécutée sur le SGBD. On appellera
transaction correcte, toute transaction qui, s'exécutant seule (sans concurrence)
sur une base de données cohérente (dont toutes les contraintes d'intégrité sont
vérifiées), fournit en résultat un état cohérent de la base de données.
Ci-dessous extrait d’une partie code, représentant la sauvegarde d’un projet dans
la DB et la connexion.
Gilberto Matos - Rapport Final - Hermes Manager
28/65
Afin de conserver la cohérence de la base, le système doit garantir l'"atomicité" de
l'exécution des transactions : toute transaction est soit complètement exécutée,
soit pas du tout, SQL Mobile respect cette règle.
Il y a deux point qui doivent être évalués avant la choix et la création d’une base
de données pour un PDA : la taille de l’application et de la consommation de
l’espace mémoire. Comme développeur d’une application fonctionnant sur un
PDA, je ne peux pas supposer que les utilisateurs ont aujourd'hui une carte de
stockage disponible, sauf si une telle condition soit acceptable par l’utilisateur.
La SQL Mobile est un serveur base de données destiné aux PDA et Smartphone.
Elle
offre
un
accès
Multi-Utilisateurs,
des
mécanisme
de
transaction,
synchronisation et connexion avec un serveur central. La SQL Mobile a été
spécialement conçu par Microsoft pour le développement des applications sur
PDA.
J’ai choisit SQL Mobile comme système de gestion de base de données, c’est un
choix économique parce que le produit est gratuit et parce qu’il a été conçu pour
les application sur un PDA dans l’univers windows et par sa taille (1.5 MB). J’ai
nommé la base de données « hermesDataBase.sdf », le choix du nom est lié au
thème du travail.
SQL Mobile Manager est un outil portatif pour le contrôle et l’administration du
Microsoft SQL Server. Il permet aux gestionnaires de bases de données de gérer
un environnement SQL Server à distance par le biais de Windows Mobile comme
un téléphone portable ou un PDA.
Facile à installer et à utiliser, SQL Mobile Manager permet aux gestionnaires de
bases de données de gérer leurs SQL Servers d’une façon sécurisée à n’importe
quel moment, n’importe où et de répondre en un temps record aux incidents et
alertes. (Réf. : 1)
Avec SQL Mobile Manager, les gestionnaires de base de données acquièrent la
commodité d’un accès sécurisé, 24 sur 24, 7 jours sur 7, peu importe où se
trouve leur SQL Server. (Réf. : 1)
Gilberto Matos - Rapport Final - Hermes Manager
29/65
La base de données (hermesDataBase.sdf) est utilisée pour sauvegarder les
projets, les informations sur le candidat, les phases Hermes. Les relations entre
les tables sont établies entre la clef primaire et le champ de référence.
Les concurrents de SQL Mobile (SQL Server SE)
L’objectif de cette partie est de montrer ce que les concurrents de Microsoft
proposent comme solution au niveau de base de données mobile. Pour les
développeurs de l’environnement Windows, le serveur mobile SQL est le choix
logique et inclus de base de données, pour le IPAQ et de Smartphones.
Le serveur 2005 Editon mobile de SQL (mobile de SQL ou SSM) a comme grand
frère, SQL édition du serveur 2005.
PostgreSQL 8.0
Considéré comme le système de bases de données relationnelles open source le
plus pointu, PostgreSQL 8.0 s'exécute nativement sous Windows alors qu'il fallait
auparavant
utiliser
une
couche
d'émulation
(Cygwin)
qui
réduisait
ses
performances et sa stabilité. Co-développée par le groupe de "Développement
Global de PostgreSQL" et des éditeurs de logiciels tels que Red Hat, Fujitsu,
Afilias, SRA, 2nd Quadrant et Command Prompt, cette nouvelle version intègre
une gestion très avancée des points de retournement qui permettent la
restauration complète des données à partir d'une sauvegarde. (Réf. : 11)
PostgreSQL 8.0 supporte aussi la gestion des "table space" qui permet de répartir
une base de données volumineuse sur plusieurs disques durs afin d'accroître les
performances. D'autres améliorations ont été apportées telles qu'un système de
cache mémoire plus efficace, la haute disponibilité via l'outil de réplication Slony
et l'utilitaire de pooling de connection pgPool, de nouveaux langages de
procédures stockées (PL/Java, PL/PHP et PL/Perl), un nouveau connecteur pour
Microsoft .NET, etc.
Avec de telles caractéristiques, PostgreSQL 8.0 se hisse sans effort au niveau des
meilleurs SGBD commerciaux fournis par IBM, Oracle et Microsoft.
Gilberto Matos - Rapport Final - Hermes Manager
30/65
DB2 Everyplace Snyc Server
Le serveur de DB2® Everyplace pour soutenir les clients mobiles dans différentes
plateformes de langue à l'aide du développement d'application de la connectivité
de base de données de Java (JDBC) et du serveur de synchro de DB2 Everyplace.
Avec l'arrivée des technologies de calcul dominantes, plus d'entreprises veulent
prolonger leurs solutions de legs aux dispositifs mobiles tels que PDAs ou
téléphones pendant un meilleur temps de réponse et une satisfaction de client
améliorée. (Réf. : 2)
Le serveur DB2 Everyplace Sync Server avec la base de données mobile, peut être
employée dans tous les dispositifs mobiles, contrairement à SQL Mobile (SQL
Server CE). DB2 Everyplace est un logiciel open source.
Le serveur de synchronisation de DB2 Everyplace contrôle la synchronisation
bidirectionnelle de données entre la source et les bases de données de cible. Il
agit en tant que pont entre le logiciel de client dans des dispositifs mobiles et un
serveur de base de données de JDBC.
IBM emploie le client de serveur de synchronisation de DB2 Everyplace pour
réaliser la synchronisation de données et d'application entre les dispositifs et les
points d'émission de données mobiles de l'entreprise.
L'exécution
d'une
telle
technologie
comme
DB2
Everyplace
permet
les
professionnels mobiles, inspecteurs, auditeurs, techniciens de service de champ,
médecins, agents immobiliers, et les régleurs de déclaration de sinistre de rester
en contact avec des données essentielles quand ils ne sont pas au bureau. DB2
Everyplace est un open source mais avec un prix varient entre $65 - $ 500.
Codebase
Bien que cette base de données ne soutienne pas le système d’exploitation
Windows mobile 5, elle a beaucoup de dispositifs gentils. En premier lieu, elle
vient avec le code source, une version de bureau vient également avec le code
source. L’utilisateur n’a pas besoin de payer de redevance pour la distribuer.
Gilberto Matos - Rapport Final - Hermes Manager
31/65
Codebase est écrit dans le langage de programmation C/C++ qui fournit non
seulement la plus grande exécution dans un dispositif mobile, mais est également
le plus portatif.
Ils disent qu'ils ont un API Visual C # .NET pour le Pocket PC et au-dessus de tout,
le Compact Framework, mais puisqu'elles n'ont aucune version d'évaluation je ne
pouvais pas essayer le produit.
One$db
One$db est une base de données open source écrite en Java. Le permis
d’exploitation
en
vue
de
développer,
peut
être
obtenue
à
la
LGPL
(http://opensource.org/licens...), qui tient compte de l'usage libre et peut être
librement distribué incorporé ou employé par n’importe quel application.
Des changements au code source, cependant, plus strictement sont surveillés par
un tel permis. Le dispositif réglé est très impressionnant et concurrentiel avec
plusieurs des bases de données commerciales. La version commerciale du produit
est Daffodil DB; ceci ajoute le chiffrage et la réplique à l'ensemble de dispositif.
Bien qu'une excellente base de données incluse, je n’ai trouvé aucune référence
au Windows CE ou au Windows Mobile sur leur emplacement, ainsi je suppose
qu'il exigerait une quantité considérable de travail pour mettre en communication
et examiner ceci sur une nouvelle plateforme. J'ai également trouvé un API ODBC
dans la base de données.
ITTIA FUEL DB
Cette base de données semble être populaire avec quelques dans le mileieu du
développement des applications mobiles mais, Je trouver peu d'information sur
elle. Il soutient le système d’exploitation Windows Mobile 5 mais je ne pense pas
qu'il a un fournisseur d'ADO.Net.
La base de données FUEL DB semble être plus adapté pour les systèmes qui ont
les ressources très limitées. Il semble être embarqués dans votre programme mais
elle plutôt une base de données in-memory.
Gilberto Matos - Rapport Final - Hermes Manager
32/65
Oracle9i Lite Release 5.0.2 for Windows CE, Pocket PC
L'oracle est peut-être le meilleur fournisseur connu des bases de données, mais
l'oracle n'est pas la solution la meilleure marchée, pour un étudiant son prix fait
froid au dos, mais les dispositifs soutenus sont impressionnants et l'oracle Lite a
été nommé récompense du logiciel 2005 de magazine Smartphone & Pocket PC,
comme le meilleure.
L'oracle offre des moteurs de base de données pour tous les logiciels
d'exploitation de serveur principal comme Oracle XE for desktop development.
Bien que Windows CE et Windows Pocket PC 2003 soient soutenus, je n'ai vu
aucun appui pour le Windows Mobile 5 ou l'ADO.Net dans le cadre de contrat de
NET.
Naturellement ODBC peut toujours être employé pour se relier par l'intermédiaire
d'ADO.NET. La quantité de dispositifs contre l'empreinte de pas de l'installation
est très impressionnante.
Sybase UltraLite.NET 9.0.2
Sybase est connu particulier pour leurs produits de synchronisation et de
réplique. Le serveur de synchronisation de MobiLink ajoute des puissances en
chevaux très sérieuses à ce produit. Sybase fournit également beaucoup de des
éditions de serveur et de dessus de bureau de leur moteur de base de données.
Bien qu'il ait été difficile de déterminer le prix, la petite taille de la base de
données est étonnante (150 KB).
L’entreprise Sybase à une solution pour les appareils du type Pocket pc appelé
Mobile Solutions (Sybase SQL Anywhere). La solution proposée par l’entreprise
Sybase est intéressante mais le prix n’est pas accessible, avec mon petit budget et
la solution de Sybase me prendrait un certain temps pour bien comprendre l’idée
et le concept du produit Mobile Solutions. Sybase et sa filiale iAnywhere sont non
seulement les leaders des marchés des intergiciels (middleware) et des bases de
données mobiles mais le service Internet mobile AvantGo de Sybase.
Gilberto Matos - Rapport Final - Hermes Manager
33/65
9 Le future
Le HePocket a posé la base pour le développement d’une application future, donc
les difficultés, les expériences, les contraintes vécues pendant sa mise en place
doivent servir d’exemple.
- Élargissement de langue de travail p. ex. Italien
- Système d’information sur les projets (pour les gestionnaires)
- Mise en place d’un système de support de décision et d’évaluation
- Développement d’un module d’installation intégrée dans Hermes PowerUser
pour faciliter la configuration d’un PDA
- Développement (adaptation) du prototype vers le PALM, Blueberry et autres PDA
- Définir des passerelles (transfert de données) entre les outils de gestion de
portefeuille de projets, voir de Hermes PowerUser, vers le PDA
Le développement mobile est différent du développement pour les ordinateurs
(PC) d'une manière très importante : des dispositifs mobiles sont limités dans les
ressources.
Gilberto Matos - Rapport Final - Hermes Manager
34/65
10
Discussion
Je ne suis pas d’accord avec le concept de classe exprimé dans l’environnement
C#.
La structure des classes et la structure qui je proposé et la navigation proposé par
la version PowerPoint étaient des points de grande discorde pendant la mise en
place du HePocket, dont se sont des points toujours discutables.
Visual C# .NET est un langage de programmation pour le monde Windows
(Microsoft), j’ai eu du plaisir et aussi profité de l’occasion pour approfondir mes
connaissances sur le présent langage et son environnement de développement.
Une solution Open source serait mois cher et permettrais un plus large contrôle
des logicielles utilisé.
Puis, je devez faire l'essai de performance pour garantir que les temps d'accès et
plus longs pour la mémoire démontable sont acceptables.
Microsoft a découvert le marché des appareils embarqués avec un certain retard,
si nous comparons à ses principaux concurrents p. ex. SUN, Symbian, PALM etc.
Vers la fin de 2006, Microsoft a lancé SSE (SQL Server Express) pour l'usage sur
tous les PCS courant fonctionnant avec la version Win32 ou précédent système
d’exploitation.
Une version de SQL Server Management Studio Express (SSMSE), mis à jour pour
soutenir SSE est prévue. Ces dispositifs qualifieront SSE comme une base de
données incluse universelle pour des applications de client et de IPAQ pour
Windows.
Gilberto Matos - Rapport Final - Hermes Manager
35/65
11
Conclusion
Le HePocket répond aux exigences (buts) fixés dans le cahier des charges. Mon
grand problème été l’assemblage, regroupement des différents composants mis à
disposition par Microsoft, p. ex. la base de données (SQL Mobile) proposées.
Dans le développement pour ordinateur (PC) presque n'importe quelle base de
données suffira, mais pour le développement mobile je dois me rendre compte
des limitations de ressource afin de concevoir un système qui exécute en juste
proportion.
L’objectif de Microsoft est de créer un monopole au niveau de appareils
embarquées, ainsi son logiciel Microsoft ActiveSync est devenue en peu de temps
un standard dans la synchronisation des données entre le PDA et l’ordinateur (PC),
alors que le logiciel AvantGo de Sybase était plus intéressant et de qualité plus
supérieur. (Réf : SmartPhone & Pocket PC Magazine)
ActiveSync est non seulement disponibles pour les PDA mais des entreprises
comme, Symbian et Nokia ont obtenus des licences pour tourner ActiveSync
comme un standard, pour leurs produits. (Réf. : 13)
La seule alternative sur le marché contre ActiveSync est SyncML, une norme
ouverte par l'alliance mobile ouverte. Elle est installée à 700 millions de
téléphones, 80% des dispositifs vendus l'année dernière. Elle fait quel ActiveSync
fait et bien mieux. (Réf. : 12)
Microsoft se à livre une guerre féroce avec ses concurrents ainsi, la firme de
Richmond a annoncé qu’elle avait l’intention d’intégrer le SQL Mobile dans les
prochaines versions de son système d’exploitation Windows Mobile (Windows CE).
Une telle mesure pourrait conduire les développeurs à ne plus chercher une DB
pour leurs développements et ainsi consolider l’intérêt monopoliste de Microsoft.
Les produits utilisés pour la mise en place du HePocket s’adapte bien au cadre du
travail demandé et les buts qui je me suis fixés et il se pourrait que dans un autre
travail plus approfondie les produits (logiciels) et forme de travail peuvent
changer.
Gilberto Matos - Rapport Final - Hermes Manager
36/65
Je trouve le frais d’exam (Sfr. 2950.-) demandé par la SWS, trop élevée. Je
considère l’expérience acquise durant les trois derniers mois des positifs, parce
qu’elle ma permis de connaître la méthode Hermes, découvrir l’univers de la
programmation d’un PDA.
Il faut être honnête j’ai eu grand plaisir et je suis content d’avoir une application
qui tourne sur un PDA mais je n’aime pas la rédaction des documents parce à
chaque fois je saigne dans le nez depuis que je suis petit. Je suis content du
résultat obtenu dans l’ensemble.
Il est vrai que certains points ou situations pourraient être abordés d’une autre
manière, mais nous sommes dans un monde ou chaque personne à sa vision, voir
perception de chose et il voit se qu’il veut voir, ou important pour son bien être.
Je profite de l’occasion pour remercier tout ces qui mon accompagner pendant
l’élaboration et la mise en place du présent projet, les participants à la phase de
teste du HePocket, sans leur aide un telle travaille ne serait pas possible.
Gilberto Matos - Rapport Final - Hermes Manager
37/65
12
Bibliographie
J’ai listé les liens, documents et des ouvrages qu’ont servis de base à la création
du cahier des charges.
Abréviations
Abréviation
Description
CLR
Common Language Runtime
DB
Database (base de données)
DocP
Documents et publications
FCL
Framework Classes Library
LiK
Lien
MSIL
Microsoft Intermediate Language
Réf
Référence
SWS
Software Schule Schweiz
TIC
Technologies de l’information et de la communication
USIC
Unité de stratégie informatique de la confédération
Références
Référence
Description
1
Microsoft MSDN (Microsoft Developer Network)
2
IBM (IBM Solution)
3
Sun Microsystems (Sun Solution Portofolio)
4
Qualcomm Brew (Developer Home)
5
Oracle (Oracle Data Base)
6
Sybase (Sybase développement)
7
Access Linux Platfform
8
Intel (Intel Software Network)
9
Palm INC.
10
UBS Quotes
11
Indexel (L’informatique professionnelle)
12
OMA (Open Mobile Alliance)
13
Microsoft Press
Gilberto Matos - Rapport Final - Hermes Manager
38/65
Documents et publications
Nr.
Description
1
HERMES Manager "Guide de poche" Edition 2003 USIC
2
Le management
3
HERMES "Conduite et déroulement de projets dans le domaine des technologies de
4
Inside XML
5
Visual C# .NET
6
Article sur la méthode Hermes du EPFL
7
Definitive XML Application Development
Auteur : Bob Nelson & Peter Economy Edition : First
l’information et de la communication (TIC)" Développement de systèmes Edition 2003
Auteur : Steven Holzner Edition : New Riders
Auteur : Jason Price & Mike Gunderloy Edition : Sybex
[email protected], EPFL-DII - Management
Auteur : Lars Marius Garshol Edition : Prentice Hall PTR
8
.NET Wireless Programming
9
Manuel de l’utilisateur pour HePocket
10
Objected – Oriented software construction
Auteur : Mark Ridgeway Edition : Sybex
Auteur : Gilberto A. M. de Matos
second edition
Auteur : Bertrand Meyer Edition : Prentice Hall
Liens
Nr.
Nom
Les liens
1
Compact
http://www.microsoft.com/downloads/details.aspx?FamilyID=0c1b0a88
2
Microsoft
http://www.microsoft.com/downloads/details.aspx?displaylang=de&Fam
3
SQL Mobile
http://www.microsoft.com/downloads/details.aspx?FamilyID=85e0c3ce-
4
SWS
http://diplom.sws.bfh.ch/portal.php?id=053f201cf37e3b1b21796e608d
(Gilberto
0b784b
5
Hermes
http://www.hermes.admin.ch/
6
NOVE-IT
http://www.nove-it.admin.ch/f/ziele/zieledefinition-f.php/
7
USIC
http://www.isb.admin.ch
8
Windows CE
http://www.microsoft.com/france/windows/embedded/windowsce.asp/
9
Pocket PC
http://h10010.www1.hp.com/wwpc/fr/fr/sm/WF05a/22239-22245-
Framework
ActiveSync
Matos)
-59e2-4eba-a70e-4cd851c5fcc4&DisplayLang=de
ilyID=9E641C34-6F7F-404D-A04B-DC09F8141141
3fa1-453a-8ce9-af6ca20946c3&DisplayLang=de
22245-22245-298101-12343180.html/
Gilberto Matos - Rapport Final - Hermes Manager
39/65
13
Annexes
13.1 Visual Studio .NET
Pour le développeur travaillant avec Visual Basic et MS Office, la première étape a
consisté à utiliser le même langage et le même environnement de développement.
Le besoin de portabilité et d'intégration a en outre fait émerger la nécessité de
disposer de nouveaux standards ouverts tels que XML.
Pour répondre efficacement à cette évolution, Visual Studio a été entièrement
remanié de manière à standardiser les méthodes de développement à destination
de ces deux environnements qui cohabitent de plus en plus étroitement
aujourd'hui (Réf. : 1) :
- Les applications Windows (WinForms)
- Les applications Internet (WebForms et WebServices)
La figure ci-dessous représente l’architecture .NET Framework et logiciel Visual
Studio .NET.
Visual Studio .NET
VB .NET
C++
C#
……
JScript
IL (Common Language System)
Application Windows
WinForms
Application Internet
WebForms - WebServices
Basic classes
CLR (Common Language Runtime)
2. : Architecture ".NET FrameWork et Visual Studio"
Gilberto Matos - Rapport Final - Hermes Manager
40/65
CLR : Environnement d’exécution des exécutables .NET, assurant le chargement
du programme, la gestion de la mémoire et d’autres fonctions centrales du
système d’exploitation. C’est l’équivalent de la machine virtuelle Java.[REF]
MSIL : Le code de niveau de langage machine standard, indépendant de l’UC (CPU)
dans lequel tous les exécutables .NET sont écrits.
Une application se compose de fenêtres nommées Forms. Pour les applications
Windows, il s'agit de WinForms tandis qu'il s'agit de WebForms pour les
applications dédiées au Web. Le HePocket utilise WinForms.
Si les caractéristiques de ces deux types de Forms sont très différentes, le tour de
force de Visual Studio.NET consiste à rendre le développement similaire dans les
deux cas.
Visual Studio.NET regroupe ainsi des fonctionnalités telles que la conception de
l'interface utilisateur, l'édition du code, la mise au point (généralement nommée
Débogage), système d'aide, etc., dans un même environnement intégré pour
développer les deux types d'applications
Gilberto Matos - Rapport Final - Hermes Manager
41/65
13.2 Architecture des classes (.NET Framework)
La bibliothèque de classes est organisée en espaces de noms, chacun contenant
un jeu de structures et de classes connexes. Par exemple, l'espace de noms
System.Drawing, contient des nombreux types qui représentent des polices,
stylets, lignes, formes, couleurs, et ainsi de suite. Le .NET Framework est une API
orientée objet conçue pour une utilisation facile. (Réf. 1)
Utilisation de directives et de références
Avant de pouvoir utiliser les classes dans un espace de noms donné dans un
programme C#, vous devez ajouter une directive using pour cet espace de noms à
votre fichier source C#.
La librairie objet du Framework Microsoft .NET (Framework Classes Library) est un
ensemble de classes unifié et hiérarchisé offrant un grand nombre de
fonctionnalités standard.
La FCL permet ainsi d'utiliser un grand nombre d'interfaces prédéfinies sans avoir
à gérer de multiples librairies. Les classes du Framework .NET sont généralement
présentées dans un tableau comme suit (Réf : DocP 5) :
La figure ci-dessous représente la structure des classes de l’environnement de
travail .NET. Si nous créons un lien entre la figure 2 et 3, l’architecture des classes
appartient (se situe) au niveau de la partie « Basic Classes ».
Gilberto Matos - Rapport Final - Hermes Manager
42/65
Les classes Système
Le HePocket est composé de quatorze classes et par des interfaces, par exemple
« MainMenuHermes.cs ». Microsoft considère les interfaces comme des classes
mais je ne suis pas d’accord avec ce point de vue (voir le chapitre « Bibliographies »).
Les classes .NET Framework (Compact Framework) utilisés :
Nr.
1
Les
Descriptions
System
contient des classes fondamentales et des classes de base qui définissent des
classes
types de données valeur et référence, des événements et des gestionnaires
d'événements, des interfaces, des attributs, ainsi que des exceptions de
traitement couramment utilisés. (réf. : 1).
2
System.
Data
Permet d’accéder aux classes qui représentent l’architecture ADO.NET.
ADO.NET permet à l’utilisateur de générer des composants
qui gèrent de
manière efficace les données en provenance de plusieurs sources de données,
p. ex. le base de données. (réf. : 1).
La pièce maîtrise de l’architecture ADO.NET est la classe DataSet. La DataSet
peut contenir plusieurs objets DataTable. La DataTable contient des données
provenant d’une source unique telle que SQL Server. (réf. : 1)
3
4
System.
Cet classe contient les classes qui prennent en charge les fonctionnalités
L
une connexion vers une base de données SQL. (réf. : 1)
System.
Cette classe est référencé par défaut dans une application Visual C#. Elle
ns
le tableau, les listes etc. (réf. : 1)
Data.SQ
Collectio
5
System.I
6
System.
O
Text
spécifiques à SQL Server, en d’autre terme elle permet à l’utilisateur de crée
contient des interfaces et classes qui définissent différentes collections, p. ex.
Elle contient des types qui permettent la lecture et l’écriture dans des fichiers
(File, FileInfo) et flux de données (FileStream, StreamReader etc.), ainsi que des
types permettent la prise en charge de fichiers et répertoires de base.
Les classes pour le codage des caractères ASCII, UTF-8, sont représentées par
la présente classe. Elle a des classes abstraites pour la conversion de blocs de
caractères en blocs d’octets et inversement et une classe d’assistance qui
gérer et met en forme des objets String. (réf. : 1)
7
8
System.
XML
System.
Drawing
Cette classe fournit une prise en charge standard pour des opérations avec des
éléments XML. Elle offre des mécanismes pour la manipulation et traitement
de documents XML, p. ex. la création et validation. (réf. : 1)
L’offre l’accès aux fonctionnalités graphiques de la base GDI+. Cet une classe
référencé par défaut. (réf. : 1)
Gilberto Matos - Rapport Final - Hermes Manager
43/65
Nr.
Les classes
Descriptions
9
System.Messaging
Cet une classe référencé par défaut. Elle fournit des classes qui
permettent de se connecter aux files d’attente de messages, de les
analyser et de les gérer sur le réseau, ainsi que d’envoyer, de
recevoir ou lire des messages, échangés par les objets. (réf. : 1)
10
System.Web.Service
s
Elle permet la création des services Web XML à partir de clients de
services Web ASP.NET et XML. Les services Web XML sont des
applications qui donnent la possibilité d’échanger des messages
dans un environnement faiblement couplé utilisant des protocoles
standard tels que http, XML, XSD, SOAP et WSDL. (réf. : 1)
11
System.Net.IrDA
Cette classe met un socket en état d’écoute pour contrôler les
connexions infrarouges à partir d’un service ou d’une adresse
réseau spécifiés. (réf. : 1)
Les références (DLL) .NET Framework (Compact Framework) utilisés :
Nr.
Les références
Descriptions
1
Mscorlib
Cette DLL contient les types de base du Framework .NET, comme
la classe System.Object, la classe System.Int32. Elle constitue le
module contenant le manifeste de l’assemblage .NET. Cette
référence est crée automatiquement par tous les compilateurs qui
produisent du code CIL. C’est le DLL qui regroupe toutes les
classes .NET. (réf. : 1)
2
Microsoft.WindowsCE
.Forms
Elle contient des classes pour le développement (création) des
fenêtres pour PDA et SmartPhone à l’aide du .NET Compact
Framework. (réf. : 1)
3
Microsoft.WindowsMo
bile.DirectX
Elle fournit la référence pour la gestion de la partie graphique p.
ex. pour les imagens, pour les PDA et Smartphone et d’autres
périphériques exécutant Windows CE avec le .NET Compact
Framework. (réf. : 1)
Gilberto Matos - Rapport Final - Hermes Manager
44/65
13.3 Les classes HePocket
Nr.
Les classes
Descriptions
1
English.cs
Cette classe gère le texte en Allemand. Tout le texte affiché en anglais
2
French.cs
Cette classe gère le texte en Allemand. Tout le texte affiché en français
3
FullFillDemo
Cette classe est utilisée pour l’introduction des valeurs par défaut. Le
DataBase.cs
projet « Demo USIC » et le candidat « Gilberto Matos » sont introduits
4
German.cs
Cette classe gère le texte en Allemand. Tout le texte affiché en Allemand
5
HermesCand
Cette classe est utilisée pour la gestion des fichiers temporaires lier à
idateAdress
Management
dans l’application provient de la présente classe.
dans l’application provient de la présente classe.
depuis la présente classe.
dans l’application provient de la présente classe.
l’adresse du candidat.
.cs
6
HermesCand
Cette classe est utilisée pour la gestion des fichiers temporaires lier au
idateManage
candidat.
HermesProje
Cette classe est utilisée pour la gestion des fichiers temporaires lier au
ment.cs
7
ctManageme
nt.cs
8
projet crée par l’utilisateur.
HermesConc
Cette classe est utilisée pour la gestion de la phase de conception. La
nagement.cs
(de la phase de Conception) sont prises en charge par la présente classe.
eptPhaseMa
sauvegarde, la consultation, la suppression et la modification des données
Cette classe est le pole de liaison entre les différentes interfaces lier à la
phase de Conception et la base de données.
9
HermesInitia
Cette classe est utilisée pour la gestion de la phase d’initialisation. La
eManageme
(de la phase d’initialisation) sont prises en charge par la présente classe.
lizationPhas
nt.cs
10
Cette classe est le pole de liaison entre les différentes interfaces lier à la
phase d’Initialisation et la base de données.
HermesPreA
Cette classe est utilisée pour la gestion de la phase d’analyse préliminaire.
nalysisPhase
La sauvegarde, la consultation, la suppression et la modification des
.cs
présente classe. Cette classe est le pole de liaison entre les différentes
Management
11
sauvegarde, la consultation, la suppression et la modification des données
données (de la phase d’Analyse préliminaire) sont prises en charge par la
interfaces lier à la phase d’Analyse préliminaire et la base de données.
TheCandidat
La sauvegarde, la consultation, la suppression et la modification des
ment.cs
classe est le pole de liaison entre les différentes interfaces lier au candidat
eDBmanage
données (du candidat) sont prises en charge par la présente classe. Cette
et la base de données.
Gilberto Matos - Rapport Final - Hermes Manager
45/65
Nr.
Les classes
Descriptions
12
TheDataBase
Cette classe est utilisée pour la création de la base de données
Management
« hermesDataBase.sdf ». La base de données est crée au premier
TheProjectD
La sauvegarde, la consultation, la suppression et la modification des
nt.cs
classe est le pole de liaison entre les différentes interfaces lier au projet et
.cs
13
14
démarrage du HePocket.
données (du projet) sont prises en charge par la présente classe. Cette
Bmanageme
la base de données.
TheWorking
Cette classe gérer la langue de travail. Elle sauvegarde ou modifie la langue
Language.cs
de travail dans le fichier « SaveLanguage.TXT ».
Le langage Visual C# ajoute automatiquement des références aux DLL de la
bibliothèque
de
classes
les
plus
couramment
utilisées,
par
exemple
« System.Data ».
13.4 Les concurrents de .NET Compact Framework
Pour le développement des applications sur des appareils de poches, comme les
PDA, Smartphone etc. il existe plusieurs environnent de travail et développement,
p. ex. Java 2 Mobile Edition, Brew (Qualcomm), Palm OS et naturellement .NET
Compact Framework.
.Net est un ensemble de technologies conçu pour améliorer la productivité du
développeur, l'accent étant mis plus spécifiquement sur les exigences des
programmes dans un environnement réseau (c'est-à-dire Internet). (Réf : DocP 5)
Les développeurs élaborent leurs programmes au moyen des blocs fonctionnels
qu'ils
trouvent
dans
.Net.
Ce
dernier
remplit
également
la
fonction
d'environnement contrôlé dans lequel ces programmes peuvent être exécutés.
(Réf : 1)
Cet environnement contrôlé empêche totalement de commettre certaines erreurs
courantes de programmation qui peuvent avoir des répercussions sur la sécurité,
par exemple des dépassements de mémoire tampon, tout en multipliant le
nombre
des
options
de
sécurité
disponibles.
Bref,
une
"structure
de
développement" comme .Net permet de produire du code qui contient moins de
bugs, est plus sûr, possède plus de fonctions et est plus facile à développer.
Gilberto Matos - Rapport Final - Hermes Manager
46/65
Palm OS : Palm OS est un système d'exploitation pour appareils mobiles édité par
Palm source, séparé en 2003 de la société Palm (PalmOne depuis). Initialement
conçus pour les PDA (assistants personnels numériques) de Palm, Palm OS a été
adopté par beaucoup d'autres fabricants. (Réf : 9)
Palm OS vient d'être abandonné par la compagnie qui l'avait acheté il y a quelques
années. Access à annoncer le 18 octobre 2006 que le système Palm OS allait être
remplacé définitivement par Access Linux Plateforme. (Réf : 7)
Java 2 Mobile Edition : Java 2 Micro Edition est une architecture technique dont le
but est de fournir une base de développement des applications embarquées.
L’intérêt étant de proposer toute la puissance d’un langage tel que Java associé
aux services proposés par une version bridée du Framework J2SE : J2ME. (Réf : 3)
JavaFX Mobile est un logiciel dédié aux appareils mobiles. Il est disponible via les
licences OEM accordées aux opérateurs, aux fabricants de combinés et aux autres
sociétés désireuses de simplifier et d'accélérer le développement d'un logiciel
standardisé puissant qui peut être exploité sur une large palette d'appareils grand
public. (Réf : 3)
Les terminaux n’ayant pas la même capacité en terme de ressources que les
ordinateurs de bureau classiques (mémoire, disque et puissance de calcul), la
solution passe par la fourniture d’un environnement allégé afin de tenir compte
des différentes contraintes d’exécution.
Cependant, comment faire en sorte d’intégrer la diversité de l’offre à une base
technique dont la cible n’est pas définie à priori ? La solution proposée par J2ME
consiste à regrouper par catégories certaines familles de produits, tout en
proposant la possibilité d’implémenter des routines spécifiques à un terminal
donné. (Réf : 3)
Brew (Binary Runtime Environment for Wireless) : de Qualcomm est une
technologie émergente permettant de télécharger des applications à partir du
Web. Ces applications peuvent ensuite extraire d'autres données du Web ou être
exécutées hors ligne. (Réf : 4)
Gilberto Matos - Rapport Final - Hermes Manager
47/65
Quels sont les avantages de .NET ?
L'initiative
.NET
représente
un
effort
systématique
visant
à
rendre
la
programmation plus efficace. Il faut savoir que .NET n'est pas une seule chose,
mais plusieurs. Chaque élément de .NET représente une manière de faciliter
l'écriture du code ; regroupés, ils représentent une réorientation majeure voire,
pour certain, une petite révolution. (Réf. 1)
Pour les clients Microsoft de longue date, il s'agit quasiment d'une réinvention de
Microsoft, résolument axée sur Internet.
Et tous ceux qui développent des
logiciels pour une version quelconque de Windows — bureau ou embarquée —
doivent évaluer dans quelle mesure (et non pas si) .NET les concerne. (Réf. 1)
Quels sont les désavantages de .NET ?
En développement une application sur l’environnement .NET Framework, il y a une
certaine forme de dépendance. Il est bien moins coûteux de faire évoluer la
technologie existante que de la changer radicalement, mais lorsque la décision est
prise d’interrompre le support, il faut y aller et se former - sans quoi l'on se
retrouve dans une situation d’outsider. Le .NET Framework est plus lourd au
niveau des DLL, donc pas rentable sur des petits projets et il est normalisé par
Microsoft.
Gilberto Matos - Rapport Final - Hermes Manager
48/65
13.5 Les schémas relationnels et les tables (ERD)
La table est un ensemble de données organisé selon un modèle de lignes et de
colonnes, pouvant varié selon le fabricant. Chaque table est l'implémentation
physique d'une relation, c’est la représentation d’un objet, par exemple la table
« Candidate » représente l’objet candidat.
Les tables sont un des éléments importants dans la création de la base de
données « hermesDataBase.sdf », parce que les saisies qui seront effectué par
l’utilisateur seront sauvegardées dans les tables. J’ai choisit l’anglais comme
langue, pour l’écriture des noms des tables et des champs. Le SQL est le langage
par défaut pour travailler avec les tables.
Le schéma relationnel
Ce
document
décrit
les
tables
qui
constituent
la
base
de
données
"hermesDataBase.sdf". Vous trouvez dans ce document le schéma relationnel
entre les tables. Pour la création de la base de données "hermesDataBase.sdf"
j’utilise le programme SQL Mobile et QueryAnalyzer pour visualiser son contenu.
L’objectif principal est de montré comme la base de données a été conçue et
rendre les éléments constituant de la base de données visibles.
Gilberto Matos - Rapport Final - Hermes Manager
49/65
Le candidat et son adresse
Un candidat a une adresse et une adresse appartient à un candidat. L’addition et
la suppression d’un candidat et de son adresse sont garanties par la SGBD. En
additionnant une adresse le système attribue au candidat le respectif numéro de
référence vers la table Address.
Candidate
Habite
Candidate_id
1,1
Address
AddressCandidate_id
street
title
streetNumber
lastName
zip
firstName
city
birthday
phone
profession
mobile
1,1
observation
Email
Ref_Candidate
Website
Le candidat et le projet
Un candidat participe à un ou plusieurs projets et un projet a un candidat comme
leader.
Candidate
Candidate_id
1,1
Project
Participe
Project_id
title
projectName
lastName
creationDate
firstName
birthday
profession
observation
RefAddress
creationHour
1,1
Identificationkey
projectGoals
projectNotes
RefCandidate
Gilberto Matos - Rapport Final - Hermes Manager
50/65
La table projet et la table phase d’initialisation
Un projet est constitué d’une phase d’initialisation et une phase d’initialisation est
liée à un projet.
1,1
Project
InitializationPhase
InitializationPhase_id
Project_id
finishedPhase
projectName
Constitué
creationDate
creationHour
RefCheckListSelectingleader
RefCheckListComposingBoard
RefDecisionPointProjectMandate
identificationKey
projectGoals
RefManagerResponsibilities
1,1
projectDescription
RefInitializationPhase
La table projet et la table phase d’analyse préliminaire
Un projet est constitué d’une phase d’analyse préliminaire et une phase d’analyse
préliminaire est liée à un projet.
1,1
Project
PreAnalysisPhase
Project_id
Constitué
projectName
PreAnalysisPhase_id
creationDate
finishedPhase
identificationKey
RefDecisionPointSolutionSelection
RefDecisionPointAgreementGoals
creationHour
projectGoals
projectDescription
1,1
RefPhaseReleaseConcept
RefPreAnalysis
Gilberto Matos - Rapport Final - Hermes Manager
51/65
La table projet et la table phase de conception
Un projet est constitué d’une phase de conception et une phase de conception est
liée à un projet.
Project
1,1
Project_id
projectName
Constitué
creationDate
ConceptPhase
ConceptPhase_id
finishedPhase
creationHour
RefDecisionPointConcept
identificationKey
projectGoals
projectDescription
RefPhaseReleaseImplementation
1,1
RefConceptPhase
La table projet et la table phase de réalisation
Un projet est constitué d’une phase de réalisation et une phase de réalisation est
liée à un projet.
Project
1,1
Project_id
projectName
Constitué
creationDate
ImplementationPhase
ImplementationPhase_id
creationHour
finishedPhase
identificationKey
projectGoals
projectDescription
RefImplementationPhase
1,1
RefDecisionPtSysSpfication
RefDecisionPtSysCopletion
RefPhaseReleaseDeployme
nt
Gilberto Matos - Rapport Final - Hermes Manager
52/65
La table projet et la table phase d’introduction
Un projet est constitué d’une phase d’introduction et une phase d’introduction est
liée à un projet.
1,1
Project
Project_id
DeployementPhase
Constitué
projectName
DeploymentPhase_id
creationDate
finishedPhase
creationHour
Ref_DecisionPointSysMigration
identificationKey
projectGoals
1,1
projectDescription
RefDeploymentPhase
Ref_DecisionPtSysAcceptance
Ref_PhaseReleaseFinalization
Ref_Project
La table projet et la table phase de finalisation
Un projet est constitué d’une phase de finalisation et une phase de finalisation est
liée à un projet.
Project
Project_id
1,1
projectName
Constitué
creationDate
creationHour
projectDescription
FinalizationPhase_id
RefCheckListProjectFinalization
identificationKey
projectGoals
FinalizationPhase
1,1
finishedPhase
RefManagerTask
RefFinalizationPhase
Gilberto Matos - Rapport Final - Hermes Manager
53/65
Les tables (champs et types de valeurs)
Les champs sont des constituent des tables. L’accès aux informations stockées
dans les tables, s’est effectué depuis les champs.
J’utilise la table « Candidate » pour le traitement et stockage des données sur le
candidat. Le candidat est un objet actif. Il est évalué par l’utilisateur du HePocket
comme un possible élément capable de diriger un projet.
La table candidat
Table : Candidate
Nom du champ
Type
Taille
Candidate_id
LongInteger
title
texte
10
lastName
texte
20
firstName
texte
20
birthday
date
profession
texte
observation
memo
Ref_Address
LongInteger
Remarques
Clef d’identification primaire
Format : jj.mm.aaa (p. ex. 19.02.1978)
15
Référence vers la table « AddressCandidate »
La table adresse du candidat
J’utilise la table « AddressCandidate » pour le traitement et stockage de l’adresse
du candidat. L’adresse du candidat offre à l’utilisateur du HePocket des
informations supplémentaires sur le candidat.
Table : AddressCandidate
Nom du champ
Type
Taille
ID_AddressCandidate
LongInteger
Street
texte
20
streetNumber
texte
6
Zip
texte
6
City
texte
20
Phone
texte
20
Mobile
texte
20
Email
hypertexte
Website
hypertexte
Remarques
Clef d’identification primaire
Gilberto Matos - Rapport Final - Hermes Manager
54/65
La table projet
La table « Project » est destinée au stockage et traitements des informations des
projets.
Table : Project
Nom du champ
Type
Project_id
LongInteger
Taille
Remarques
projectName
Texte
creationDate
date
Format : jj.mm.aaa (p. ex. 19.02.1978)
creationHour
date
Format : 24 heures (p. ex. 12:30)
identificationKey
texte
projectGoals
memo
projectDescription
memo
projectNotes
memo
refInitializationPhase
LongInteger
Référence vers la table « InitializationPhase »
refIPreAnalysisPhase
LongInteger
Référence vers la table « PreAnalysisPhase »
refConceptPhase
LongInteger
Référence vers la table « ConceptPhase »
Clef d’identification primaire
25
50
La table pour la phase d’initialisation
La table «InitializationPhase » est destinée à la sauvegarde des informations
concernant la phase de Initialisation.
Table : InitializationPhase
Nom du champ
Type
Taill
ID_InitializationPhase
LongInteger
Clef d’identification primaire
finishedPhase
boolean
Valeur par défaut « non ». Indique la
refCheckListSelectingleader
LongInteger
Référence vers la table
refDecisionPointprojectMandate
LongInteger
Référence vers la table
refManagerResponsibilities
LongInteger
Référence vers la table
refCheckListComposingBoard
LongInteger
Référence vers la table
refDecisionPointProjectMandate
LongInteger
Référence vers la table
e
Remarques
conclusion de la phase
« CheckListSelectingleader »
« DecisionPointProjectMandate »
« ManagerResponsibilities »
« checkListComposingBoard »
« DecisionPointProjectMandate »
Gilberto Matos - Rapport Final - Hermes Manager
55/65
La table pour la check liste : choix d’un chef de projet
La table « CheckListSelectingleader » est destinée au stockage des informations
concernant la check liste « choix d’un chef de projet ».
Table : CheckListSelectingleader
Nom du champ
Type
CheckListSelectingleader_id
LongInteger
Taille
InternalEmployee
boolean
ExternalEmployee
boolean
CommunicationSkillsNo
boolean
CommunicationSkillsYes
boolean
projectLeaderShipNo
boolean
projectLeaderShipYes
boolean
SuccessfulProjectsNo
boolean
SuccessfulProjectsYes
boolean
Remarques
Clef d’identification primaire
La table pour la check liste : composition du comité de projet
La table « checkListComposingBoard » est destinée au stockage des informations
concernant la check liste « composition du comité de projet ».
Table : CheckListComposingBoard
Nom du champ
Type
checkListComposingBoard_id
LongInteger
DecisionMakingInvolvedYes
boolean
DecisionMakingInvolvedNo
boolean
PeopleResponsibleYes
boolean
PeopleResponsibleNo
boolean
RepresentativeRelevantGroupsYes
boolean
RepresentativeRelevantGroupsNo
boolean
Taille
Remarques
Clef d’identification primaire
Gilberto Matos - Rapport Final - Hermes Manager
56/65
La table pour le Point de décision mandat de projet
La
table
« DecisionPointProjectMandate »
est
destinée
au
informations concernant le point de décision « mandat de projet ».
stockage
des
Table : DecisionPointProjectMandate
Nom du champ
Type
DecisionPointProjectMandate_id
LongInteger
CorporateStrategyYes
boolean
CorporateStrategyNo
boolean
ProjectNecessaryYes
boolean
ProjectNecessaryNo
boolean
GoalsClearYes
boolean
GoalsClearNo
boolean
scheduleFeasibleNo
boolean
scheduleFeasibleYes
boolean
Taille
Remarques
Clef d’identification primaire
La table pour la phase d’analyse préliminaire
La table « PreAnalysisPhase » est destinée au stockage des informations sur la
phase d’analyse préliminaire.
Table : PreAnalysisPhase
Nom du champ
Type
Taille
Remarques
PreAnalysisPhase_id
LongInteger
Clef d’identification primaire
finishedPhase
boolean
Valeur par défaut « non ». Indique la
refDecisionPointAgreementGoals
LongInteger
Référence vers la table
refDecisionPointSolutionSelection
LongInteger
Référence vers la table
refPhaseReleaseConcept
LongInteger
conclusion de la phase
« DecisionPointAgreementGoals »
« DecisionPointSolutionSelection »
Référence vers la table
« PhaseReleaseConcept »
Gilberto Matos - Rapport Final - Hermes Manager
57/65
La table pour le Point de décision : accord sur objectifs
La
table
«DecisionPointAgreementGoals
»
est
destinée
informations sur le point de décision « Accord sur objectifs ».
au
stockage
des
Table : DecisionPointAgreementGoals
Nom du champ
Type
DecisionPointAgreementGoals_id
LongInteger
Taille
Remarques
Clef d’identification primaire
refResultAssessmentSituation
LongInteger
Référence vers la table
refResultSystemObjectives
LongInteger
Référence vers la table
« ResultAssessmentSituation »
« ResultSystemObjectives »
La table pour le résultat : analyse de la situation
La table « ResultAssessmentSituation » est destinée au stockage des informations
sur le résultat « Analyse de la situation » du point de décision « accord sur
objectifs ».
Table : ResultAssessmentSituation
Nom du champ
Type
ResultAssessmentSituation_id
LongInteger
ScopeInvestigationYes
boolean
ScopeInvestigationNo
boolean
AnalyseDepthYes
boolean
AnalyseDepthNo
boolean
ConsiderationsITYes
boolean
ConsiderationsITNo
boolean
Taille
Remarques
Clef d’identification primaire
Gilberto Matos - Rapport Final - Hermes Manager
58/65
La table pour le résultat : objectifs du système
La table « ResultSystemObjectives » est destinée au stockage des informations sur
le résultat « Objectifs du système » du point de décision « accord sur objectifs ».
Table : ResultSystemObjectives
Nom du champ
Type
ResultSystemObjectives_id
LongInteger
SystemObjectivesYes
boolean
SystemObjectivesNo
boolean
SystemConflictYes
boolean
SystemConflictNo
boolean
SystemCorporateYes
boolean
SystemCorporateNo
boolean
Taille
Remarques
Clef d’identification primaire
La table pour le Point de décision : choix de la solution
La table «DecisionPointSolutionSelection » est destinée au stockage des
informations sur le point de décision « Choix de la solution ».
Table : DecisionPointSolutionSelection
Nom du champ
Type
DecisionPointSolutionSelection_id
LongInteger
Taille
Remarques
Clef d’identification primaire
refResultSystemRequirements
LongInteger
Référence vers la table
refResultProposedSolutions
LongInteger
Référence vers la table
« ResultSystemRequirements »
« ResultProposedSolutions »
Gilberto Matos - Rapport Final - Hermes Manager
59/65
La table pour le résultat : exigences envers le système
La table « ResultSystemRequirements » est destinée au stockage des informations
sur le résultat « exigences envers le système » du point de décision « choix de la
solution ».
Table : ResultSystemRequirements
Nom du champ
Type
ResultSystemRequirements_id
LongInteger
SystemRequirementsYes
boolean
SystemRequirementsNo
boolean
ImportantPartYes
boolean
ImportantPartNo
boolean
PresentPhaseYes
boolean
PresentPhaseNo
boolean
Taille
Remarques
Clef d’identification primaire
La table pour le résultat : propositions de solution
La table « ResultProposedSolutions » est destinée au stockage des informations
sur le résultat « proposition des solutions » du point de décision « choix de la
solution ».
Table : ResultProposedSolutions
Nom du champ
Type
ResultProposedSolutions_id
LongInteger
SearchSolutionsYes
boolean
SearchSolutionsNo
boolean
ObjectivesAttainableYes
boolean
ObjectivesAttainableNo
boolean
ReasonableSolutionsYes
boolean
ReasonableSolutionsNo
boolean
ProjectedSolutionsYes
boolean
ProjectedSolutionsNo
boolean
Taille
Remarques
Clef d’identification primaire
Gilberto Matos - Rapport Final - Hermes Manager
60/65
La table pour la phase de conception
La table « ConceptPhase » est destinée à la sauvegarde des informations
concernant la phase de conception.
Table : ConceptPhase
Nom du champ
Type
ConceptPhase_id
LongInteger
Taille
Remarques
Clef d’identification primaire
finishedPhase
boolean
Valeur par défaut « non ». Indique la
refDecisionPointConcept
LongInteger
Référence vers la table
refPhaseReleaseImplementation
LongInteger
Référence vers la table
conclusion de la phase
« DecisionPointConcept »
« PhaseReleaseImplementation »
La table pour le Point de décision : concept
La table «DecisionPointConcept » est destinée au stockage des informations sur le
point de décision « Concept ».
Table : DecisionPointConcept
Nom du champ
Type
Taille
Remarques
DecisionPointConcept_id
LongInteger
Clef d’identification primaire
Ref_ResultSolutionEquipement
LongInteger
Référence vers la table
Ref_ResultStudyHePockets
LongInteger
Référence vers la table
Ref_ResultsConcept
LongInteger
Référence vers la table «
« ResultSolutionEquipement »
« ResultStudyHePockets »
ResultsConcept »
Gilberto Matos - Rapport Final - Hermes Manager
61/65
La table pour le résultat : produits finis et moyens matériels
La table «ResultSolutionEquipement » est destinée au stockage des informations
sur le résultat « Produits finis et moyens matériels » du point de décision
« concept ».
Table : ResultSolutionEquipement
Nom du champ
Type
ResultSolutionEquipement_id
LongInteger
OffShelfProductsYes
boolean
OffShelfProductsNo
boolean
FavourImplementationYes
boolean
FavourImplementationNo
boolean
MethodsIntroducedYes
boolean
MethodsIntroducedNo
boolean
Taille
Remarques
Clef d’identification primaire
La table pour le résultat : études détaillées et prototypes
La table « ResultStudyPrototypes » est destinée au stockage des informations sur
le résultat « Etudes détaillées et prototypes » du point de décision « concept ».
Table : ResultStudyPrototypes
Nom du champ
Type
ResultStudyHePockets_id
LongInteger
CriticalSubSystemsYes
boolean
CriticalSubSystemsNo
boolean
ObjectivesScopeYes
boolean
ObjectivesScopeNo
boolean
HePocketsConceptYes
boolean
ObjectivesScopeNo
boolean
Taille
Remarques
Clef d’identification primaire
Gilberto Matos - Rapport Final - Hermes Manager
62/65
Fichier projet format Texte (import / export)
Gilberto Matos - Rapport Final - Hermes Manager
63/65
Fichier projet format XML (import / export)
Gilberto Matos - Rapport Final - Hermes Manager
Téléchargement