dev web
DESCRIPTION
PFETRANSCRIPT
-
Secrtariat Gnral
Universit Polytechnique de Bobo-Dioulasso (U.P.B.)
Ecole Suprieure d'Informatique (E.S.I) c 11 1
.&,,, -~
,::,
Ministre des Enseignements Secondaire et Suprieur(MESS)
Cycle des Ingnieurs de Travaux Informatiques (C.I.T.I)Option: Analyse et Programmation (A.P)
THEME: GESTION AUTOMATISEE DES PUBLICATIONS DE L'INSD
Priode au 01 Septem6re au 30 :Novem6re 2013
Auteur: Bene-wende Odilon Isae ZOUNGRANA
Matre de staKe
MAlex SOME
Informaticien l'lNSD
~ v- u,-. Seve ft ~'-v~'t- )l a1,.AJ.-J(!,..- ~J.;,.;vi -"rviseur
1 t' V 1 Dr. Abdoulaye SERE~ Enseignant chercheur l'Unitg~ t...v:'\.~ J al-- r1ftl de Formation et de Recherche
en Science et Technologie(UFRjST)
Anne acadmique: 2012-2013
-
A~ c.rlte~v.
T:,: ;- i , > 1 - .' , ;,.
-
Au dbut de ce rapport, il serait trop injuste de nous accorder tous les mrites dutravail ralis. Il y'a des personnes sans qui, les couleurs de ce chef-d'uvre auraient pu tre
ternies, et qui, nous devons une fire chandelle.
Nous tenons donc remercier dans un premier temps, toute l'quipe pdagogique de
! Ecole Suprieure d'Informatique et les intervenants professionnels responsables de laformation des ingnieurs de travaux en informatiques, pour avoir assur la partie thorique de
celle-ci.
Nous remercions galement toute l'quipe professionnelle de l'INSD pour
l'exprience enrichissante et pleine d'intrt qu'elle nous a fait vivre durant ces trois mois au
sein de l'institut. Nos vifs remerciements vont aussi aux personnes suivantes:
Dr SERE Abdoulaye, enseignant l'universit polytechnique de Bobo-
Dioulasso notre superviseur,
);> M. Dienyl Alexandre SOME, informaticien l'INSD, notre matre de stage,
Enfin, au risque de n'oublier personne, nous tmoignons notre gratitude tous ceuxqui, de prs ou de loin ont apport leur soutien notre formation ou la russite de ce travail.
II
-
')\1MAIRI:DEDICACES 1
REMERCIEMENTS II
SOMMAIRE III
SIGLES, ACRONYMES ET ABBREVIATIONS VI
LISTE DES FIGURES VII
LISTE DES TABLEAUX VIII
AVA1\JT PROPOS IX
INTRODUCTION GENERALE 1
Chapitre 1: GE'\IEf~AI.ITCS 2
INTRODUCTION 2
I.I.PRESENTATIO'N DE ['INSD 2
1.1.1 Cration 2
1.1.2 Activits 3
1.1.3. Organisation 4
1.2. PRESENTATION DU THEME 6
1.2.1. Description ,Ill thme 6
1.2.2. Probllnatiquc 6
1.2.3. Rsultats attendus 6
1.3. LANGAGE. METHODE ET DEMARCHE D'ANALySE 7
1.3.1. Le langage de modl isation 7
1.3.2. Mthode de dveloppement 9
1.3.3. Dmarche danalyse 12
1.4. ACTEURS DU PROJET ET PLANNING PREVISiONNEL 13
1.4.1. Acteurs du projet '" 13
III
-
1.4.2. Planning prvisionnel 14
CONCLUSION 19
CHAPITRE Il : ETUDES FONCTIONNELLES ET TECHNIQUES 20
INTRODUCTION 20
11.1. ETUDE PRELIMINAIRE 20
11.1.1. Description gnrale du fonctionnement.. 20
11.1.2. Fonctionnai it de GAPI 21
Il.2. CAPTURE DES BESOINS 22
11.2.1. Capture des besoins fonctionnels 22
11.2.2. Captme des besoins techniques 24
lU. L'ARCHITECTURE LOGICIELLE DE L'APPLICATION 27
Il.4. L'ENVIRONNEMENT DE DEVELOPPEMENT (IDE) 28
11.5. UNE PLATEFORME PHP 29
11.6. OUTILS DE MODELISATION 30
11.7: ANALYSE DU FUTUR SYSTEiVlE 30
Il.7.1. Description gnrale 31
II.7.2. Estimation des Besoins 32
11.7.3. Colit de d\ eloppement et de formation 33
CONCLUSION 36
Chapitre III: CONCEPTION ET DEVELOPPEMENT 37
IN'I'RODUCTION 37
111.1. CONCEPTION 37
111.1.1. Diagrammes de cas d'utilisation 37
111.1.2. Diagramme de squence 44
IV
-
II!. 1.3. Diagramme de classe 47
II!.IA. Diagramme de dploiement 48
111.2. DEVELCWP[\1ENT DE GAPl 49
111.3. DEPLOIEMENT DE GAPI 51
fi 1.3. 1. Politique de scurit 51
111.3.2. Gestion des attaques 51
11!.3.3. Gestion des catastrophes 52
111.3.4. Gestion des incidents d'exploitation 53
111.4. POLITIQUE DE SECOURS 53
11104.1. Plantage dLi systme 53
IliA .2. Pun ne dLie LI n accs au rseau et Autres pannes critiques 53
IIL5.TRANSITION 53
If1.5.1. Procdure transitoire 53
111.5.2. Formation des utilisateurs 54
CONCLUSION 54
CONCLUSION GENERALE 55
BIBLOGRAPHIE ET WEBOGRAPHIE, 56
.\ '\l:\JEXES 57
Annexe 1 : Prsentation de Zend Framework 57
Annexe 2 : Prsentation de MySQL 58
v
-
Sigle t Dfinition !ACL Access Control ListAPI ., Application Programming Interface rAJAX Asynchronol.JS JAvascript XmlBD
,1 Base de DonnesCICI Cycle des Ingnieurs de Conception Informatiquecln l Cycle de Ingnieurs des travaux InformatiqueCOCOMO r COnstructive Cast ModelCU Cas d'Utilisation 1 1CSS Cascading Style SheetsEDJ Integrated Deve/opment EnvironmerltGAPI Gestion Automatise des Publications de / 'INSDHM H mme MachineHOaD Hierarchical abject Oriented Design 1 JHTML HyperText Markup LanguageINSO Institut National de la Statistique et de DveloppementKLSL l Kilo Lignes Sources de LogicielJSP Java Servel' Page ., .~J2EE Java 2 Enterprise EditionMAJ , Mise JourMYC ~, L Model Yiew Controller l, Il 1~ND Non DisponibleOMG Object Management Group .. ,OMT Object Modeling TechniqueOOA 1 Object Oriented AnalysisOOD Object Oriented DesignOaSE
Object Oriented SoftWare Engineering l ,t
PHP PHP : Hypertext Preprocessor ,PU , Processus Unifi
.
RUP Rational Unified ProcessusSDK
-; Software Dev lapment KilSG8D Systme de Gestion de Base de DonnesSQL ~ Structured Query LanguageUML Unified Modeling LanguageXHTML ~i, 1~: 1 eXtensible HyperText Markup Language ,XML eXtensible Markup LanguageXP eXtreme Programming2TUP 2 Track Unified Processus
i
VI
-
~ .
1 LiSTE DES FIGURES . .".." \. ."._____~ _-" -~~"- __-=L~. -: __~-=----~
Figure 1 : Organigramme de l'INSD 5
Figure 2 : Le systme d'infonnation soumis deux natures de contraintes Il
Figure 3 : Le processus de dveloppement en y Il
Figure 4 : Diagramme de Gantt du planning prvisionnel 15
Figure 5: Diagramme de Gantt du planning rel. 17
Figure 6 : Prsentation du matriel 31
Figure 7 : Architecture rseau 32
Figure 8 : Diagramme de cas d'utilisation global 37
Figure 9: Reprsentation dtaille du cas d'utilisation grer les documents 38
Figure 10: Reprsentation dtaille du cas d'utilisation grer les utilisateurs)) 38
Figure Il Reprsentation dtaille du cas d'utilisation grer les Clients)) 39
Figure 12 : Diagramme de squence du cas d'utilisation s'authentifier)) .45
Figure 13 : Diagramme de squence du cas d'utilisation Grer documents)) 45
Figure 14 : Diagramme de squence du cas d'utilisation Enregistrer une commande))......... 46
Figure 15 : Diagramme de squence du cas d 'util isation Approvisionner stock)) 46
Figure 16 : Diagramme de classes 48
Figure 17 : Diagramme de dploiement 49
Figure 18 : Arborescence du projet zend framework 50
Figure 19 Ecran de connexion avec chec d'authentification 52
Figure 20: Page d'accueil 53
Figure 21: Ecran de gestion des documents 53
VII
-
Tnbleau 1 : Etude comparative de quelques processus de dveloppement 9
Tableau 2 : Planning rel ]5
Tableau 3 : Identi fication des cas d'utilisations 22
Tableau 4: Description fonctionnelle du cas d'utilisation grer les documents 23
TClbleau 5 : Description fonctionnelle du cas d'utilisation grer les clients 23
Tableau 6 : Description fonctionnelle du cas d'utilisation grer les utilisateurs 24
Tableau 7 : Prsentation de quelques technologies web 25
Tableau 8 : Tableau comparatif de frameworks PHP 27
Tableau 9 : Tableau comparatif d'EDI 28
Tableau ]0: Tableau comparatifde plateformes PHP 29
Tableau]] : Estimation des besoins 32
Tableau 12 : COLlt de dveloppement 35
Tableau 13 : CoCit de formation des utilisateurs 35
Tableau 14: COLlt de ralisation 36
Tableau 15 : Description textuelle de quelques cas d'utilisation CU S'authentifier 40
Tableau 16 : Description textuelle de quelques cas d'utilisation Grer un utilisateur 41
Tab leau 17 : Description textuelle de quelques cas d' uti 1isation Grer document 42
Tableau 18 : Description textuelle de quelques cas d'utilisation Grer clients 43
Tableau 19 : Liste des mthodes lies aux diffrentes classes 49
VIII
-
L'Universit Polytechnique de Bobo (UPB), jadis Centre Universitaire de Bobo-Dioulasso(CUPB), a t cr le 23 mai 1997 par dcret n097 -254/PRES/PM/MESSRS. Installe unequinzaine de kilomtre l'ouest de Bobo-Dioulasso, elle est compose de six (6)tablissements:
./ Ecole Suprieure d'Informatique (ESI) ;
./ Institut de Dveloppement Rural (IDR) ;
./ Institut Universitaire de Technologie (IUT) ;
./ Institut des Sciences de la Sant (lNSSA) ;
./ Unit de Formation et de Recherche Sciences et Technologies (UFRIS.T)
./ Unit de Formation et de Recherche des Sciences Politiques,juridiques et Economiede Gestion (UFRIS.J.P.E.G)
L'Ecole Suprieure d'Informatique o nous avons suivi notre formation, a une organisation
pdagogique qui s'articule autour des deux axes suivants:
./ La formation au Cycle des Ingnieurs de Travaux Informatiques (CITI) optionsAnalyse Programmation (AP) et Rseau et Maintenance Informatique (RMI) ;
./ La formation au Cycle des Ingnieurs de Conception en Informatique (CrCI) ;
Les tudiants en fin d'tude du Cycle des Ingnieurs de Travaux en Informatique (CITI), dansle cadre normal de l'en forcement et de valorisation de leur formation, effectuent un stage en
entreprise au cours duquel ils sont confronts des problmes informatiques rels du mondeprofessionnel. Trois mois durant, ils travailleront trouver des solutions conceptuelles et
technologiques qui rpondent aux besoins informatiques exprims par leurs structuresd'accueil.
Ce stage s'est droul du 01 septembre au 30 novembre 2013
IX
-
La production et la distribution des donnes statistiques et des publications fiables est un
enjeu important du fait de leur porte pour J'ensemble des utilisateurs en gnral et desdirigeants de l'Etat en particulier. La gestion des publications de l'INSD se trouve toujours un stade embryonnaire. Ce volet de la production et de la distribution des documents,
ncessite une introduction f011e des nouvelles technologies afin de rpondre efficacement la
forte demande des consommateurs. Avec la mise en uvre du Schma Directeur Statistique
2010-2015, des effol1s remarquables ont t faits dans la production statistique pour rpondre
aux besoins de plus en plus importants et complexes des utilisateurs. La prise en compte de
1'~lUtomatisati(Jn de la gestion des publications viendra en appui rpondre cetteproblmatique de la ploduction-distribution des publications. Aussi, ]'INSD a-t-il saisil'opportunit de ce st~lge pour instruire le thme "Gestion automatise des publications de
J NSD" afin de pail ier aux insuffisances et imperfection du traitement non informatis de la
gestion des documents. Le dveloppement de l'application sur la "Gestion automatise des
publications de l'INSD" sollicit auprs des stagiaires, vient rsoudre les difficults manuelles
rencontres dans les tches du Service de Management de J'Information Statistique (SMIS) engestion des publications ou documents produits l'INSD.
Ce rapport de stage qui est le rsum de notre tude sera organis en trois chapitres. Un
premier chapitre sera consacr aux gnralits, un deuxime portera sur les tudes
fonctionnelles et techniques que nous mnerons et le dernier chapitre traitera de la conception
dans son intgral it.
, (j "Lion. L1to 1.llis~ de~ Publicarions de lNSD )
-
INTRODUCTION
Cc chapitre concerne la prsentation de notre structure d'accueil et du thme de notre tude.
Nous allons galement faire cas de notre dmarche d'analyse pour mener bien le projet.Enfin, nous prsenterons les diffrents acteurs du projet et nous donnerons un planningprvisionnel du droulement des diffrentes phases de l'analyse
I.1.PRESENTATION DE l'INSD
L'Institut National de la Statistique et de la Dmographie est l'organisme officiel de l'Etat
responsable de produire, d'analyser et de diffuser les informations statistiques officielles,
objectives et de qualit pour le Burkina Faso. Celles-ci enrichissent les connaissances,clairent les dbats et appuient la prise de dcision des diffrents acteurs de la socit
burkinab.
1.1.1 Cration
Le systme statistique national du Burkina Faso doit tre plac dans le cadre du
dveloppement conomique, social et politique du pays. S'il est indniable qu'on ne peut
concevoir un peuple organis sans statistiques, il convient tout de mme de reconnatre que la
tentative de crer un systme statistique plus ou moins cohrent date de l're coloniale.
J'Institut National de la Statistique et de la Dmographie a t cr en 1974 comme une
dil'ection centrale de l'administration puis transform en un tablissement Public de l'tat caractre Administratif (EPA), par le Dcret N2000-508/PRES/PM/MEF du 27 Octobre2000.
En 1974, il succdait alors la Direction Nationale de la Statistique et de la Mcanographie
cre en mars 1966 et qui entra dans la mmoire collective des Voltaques d'alors, comme
tant le service charg du traitement de la solde des fonctionnaires. Cette direction remplaait
le Service National de la Statistique et des tudes conomiques (SNSEE) lui-mme cr troisans auparavant, en fvrier 1963, pour rpondre aux nouveaux besoins en donnes plus
2
-
labores, apparus l'aube des indpendances le 5 aot 1960. La premire unit vocation
statistique a t le "Bureau Statistique" cr en 1958.
1.1.2 Activiti's
LNSD est l'organe ot1lciel de l'Etat en matire d'information statistique. Son objectifpremier est la collecte. le traitement, l'analyse, la publication et la diffusion de J'information
statistique.
A ce titre, il est charg de :
:> promouvoir la recherche, le dveloppement, la coordination et l'efficacit des tudes
caractre statistique, conomique et dmographique suivant des principes uniformes,
conformment aux directives nationales et aux normes internationales approuves par
le Burkina Faso;
:> prparer, sur les plans technique et mthodologique la collecte des statistiques en
assurant leur complmentarit et leur comparabilit;
:> effectuer le traitement, l'analyse et la publication des statistiques officielles de l'Etat,
suivant les normes nationales et internationales;
:> laborer et publier les comptes conomiques;
:> prparer et excuter les recensements gnraux de la population et Jes enqutes
dmographiques nationales;
:> prparer et excuter les tudes et recherches en matire de population;
:> assurer le secrtariat permanent du Conseil National de Coordination Statistique;
:> participer la prparation de tout rglement administratif dans le domaine de lastatistique:
:> tablir les budgets conomiques en collaboration avec les directions et dpartementsministriels concerns;
:> raliser des prvisions conomiques court, moyen et long termes l'aide de modJesappropris:
3
-
:l suivre la conjoncLUre conomique nationale et internationale;
:l laborer un Tableau de Bord Trimestriel de l'Economie;
:l laborer le Tableau de Bord Social du Burkina Faso;
:l laborer le Tahleau de Bord Agro-pastoral et de l' Ellv ironnement ;
:l mettre en place des outils de suivi des conditions de vie des mnages;
:l mener des tudes et offrir des prestations de services;
:l mettre en place une centrale de bilans.
1.1.3. Organisation
L"institut National de la Statistique et de la dmographie est un tablissement public caractre administratif plac sous la tutelle technique du ministre charg de ]a statistique, etsous la tutelle financire du ministre charg des finances. Il est dirig par un Directeur
Gnral et comprend les directions suivantes:
Au niveau central:
./ la direction de la coordination statistique, de la formation et de la recherche(DCFR)
./ la direction de la dmographie(DD)
./ la direction des statistiques et des synthses conomiques(DSSE)
./ la direction des statistiques et des conditions de vie des mnages(DSCVM)
./ Direction de l']nformatique et du Management de l'Information Statistique (DIMIS)
./ la direction de l'administration et des finances(DAF)
./ l'agence comptahle(AC)
Au niveau rgional
./ les directions rgionales de l'Institut Nationale de la Statistique et de la Dmographie(DR/ISND
L.organigramme de l'institut est prsent la figure 1
4
-
'''~ :-.... =_. r;;
_1Celluled'Assistancetechnique et deConseil (CATC)
Personne
Responsable des
Marchs(AC)
Service de laRecette
AgenceComptable
Service del'Equipement etde l'Immobilier
Direction desAffairesAdministrativeset Financires(DAAF)
Service desStatistiquesEconomique
ServiceAdministratif etFinancier
DirectionsRgionales del'INSD(DRlINSD)
Figure 1 : Organigramme de l'INSDService de laDocumentation etdes Archivesfpt1&tOe
Direction del'Informatique etdu Managementde l'1I)formationStatistiqueIDIMIS)
Directeur gnral
Direction desStatistiques surles conditionsde Vie desMnagesrnsrVMI
Service des
statistiques
d'Entreprises et
Service de laPrvision et del'Analyse deConjOlldllle
Direction desStatistiques etdes SynthsesEconomiques(OSSE)
!Service desComptesEconomiques etdes Anal~Macro
..---
Direction de laDmographie
Service de la
C90rdinationSblliI&iquo
r=-:-. d 1Direction e aCoordinationStatistique, de laFormation et dela RechercheIOCSFR)
Ge.stion Automatise des PllIblications de r INSD 5
-
1.2. PRESENTATION DU THEME
1.2.1. Description du thme
Notre thme Gestion automatise des publications de l' INSD stipule la mise en place d'une
application pouvant grer de faon rationnelle et fiable, le processus d'coulement des
documents produits lNSD.
1.2.2. Problmatique
L'Institut National de la Statistique et de la Dmographie mne des enqutes suite auxquelles
paraissent des documents. Ceux-ci sont mis la disposition de toute personne dsirant les
consulter. On peut donc s'en procurer auprs du service marketing de la structure. Le problme
qui se pose c'est que la gestion de ces documents au niveau de l'lNSD se fait jusque-lmanuellement, sans aucun outil informatique, ce qui entrai ne des inconstances au niveau des
traitements des commandes, des produits en stock, de la distribution, de la traabilit des
documents couls. etc.
1.2.3. Rsultats attendus
I:n rtrence ce qui a t formul la problmatique, le projet terme doit permettre d'avoirL1ne information il jour sur les documents et les clients qLli s'y sont intresss. C'est--dire tousce qui a concern le document depuis sa production jusqu' l'utilisateur final.
Il nous revient donc d'effectuer une analyse complte des diffrentes activits menes par les
agents du service marketing concernant la publication des documents et de procder
J'informatisation des tches identifies au cours de cette analyse. La solution devra donc
permettre:
./ la gestion des documents
./ la gestion des clients
./ la traahilit des documents
./ l'tat de stock
./ les recettes des documents.
6
-
1.3. LANGAGE, METHODE ET DEMARCHE D'ANALYSE
La construction d'un logiciel est complexe parce qu'elle met en uvre de nombreuses
ressources: humaine, matrielles, technologiques. En plus de cela pour des raisons de qualits
en termes de robustesse et de prcision, il est ncessaire d'utiliser un processus bien dfini, un
langage de modlisation approuv et des techniques de modlisation rigoureuses.
1.3.1. Le langage de modlisation
La modlisation est une technique d'ingnierie qui permet de comprendre un systme par
l'tablissem~nt de modles pour mettre au point une solution un problme.
El le nous aide reprsenter un systme:
./ en prcisant sa structure;
./ en dfinissant ce qu'il fait;
./ en dterminant comment il le fait;
./ en fournissant un canevas qui guide sa construction;
./ en le docu mentant.
Pour ce faire nous avons choisi d'utiliser pour ce projet le langage UML (Unified ModelingLanguage) cause de sa faon de procder qui cerne tous les contours de notre projet.
UML est un langage cie modlisation fond sur les concepts orients objets. II a t conu pourla modlisation cie tous les phnomnes de l'activit cie l'entreprise indpendamment des
techniques d'implmentation mises en uvre par la suite. Il est n de la fusion de trois (03)mthodes de rfrence: OMT, Booch, oaSE. UML n'impose pas une dmarche particulire
pour l'analyse d'un systme mais prconise d'adopter une dmarche ayant les caractristiques
suivantes:
./ itrative et incrmentale ;
./ guide par le besoin des utilisateurs du systme;
./ centre sur l'architecture logicielle.
j'our faciliter I~l visioll du non-programmeur et le travail du programmeur et afin d'obtenir une\ue d'ensemble du systme en un temps beaucoup plus court, UML a initi le concept visuel
7
-
fond sur ks uiagralllnl~S. UML 2.0 dfinit treize (13) diagrammes repartis selon les modlessuivants:
:> les modles statiques
Ce sont des diagrammes qui permettent de visualiser, spcifier, construire et documenter
l'aspect statique ou sll'lIcturel du systme d'information. Les modles statiques sont entre autre
le diagramme de classe, le diagramme d'objets, le diagramme de dploiement, le diagramme destructure composite. le diagramme de composants et le diagramme de paquetages.
:> les modles dynamiques
Ils modlisent les aspects dynamiques du systme, c'est--dire les diffrents lments qui sont
susceptibles de subir des modifications. Parmi eux. on distingue les diagrammes de cas
(j'utilisation, les diagrammes d'tats - transitions et les diagrammes d'activits.
:> les modles d'interactions
Ils reprsentent les interactions entre le systme lui-mme et les diffrents acteurs du systme,
mais aussi la faon Jont les diffrents objets contenus dans le systme communiquent entreeux. 11 s'agit des diagrammes de squence, de communication (collaboration), d'interactionglobale et de temps.
Les avantages prsents par UML, nous permettent de faciliter la modlisation des diffrents
aspects de notre projet. En effet UML prsente l'avantage d'tre le standard de la modlisationobjet universellement reconnu. II est un langage visuel. Sa notation graphique permet
(j\~xprimer visuellement des solutions objets facilitant ainsi la comparaison et l'valuation decelles-ci. C'est un langage formel et normalis dot d'un gain de prcision et d'un gage de
stabilit. Il est aussi lin support de communication performant car il cadre l'analyse tout en
facilitant la comprhension des reprsentations abstraites complexes. En outre, UML sert
formaliser tous les documents techniques d'un projet et permet d'affiner les dtails de l'analyseau fur et mesure de l'avance du projet. Il est possible d'utiliser le mme atelier de gnielogiciel depuis l'expression des besoins jusqu' la gnration de tout ou d'une partie du code.Enfin, il est indpendant des langages de programmation et des processus de dveloppement.
UML propose un mo) en pour reprsenter diverses projections d'un systme: les vues.Elles sont gnralement constitues d'un ou plusieurs diagrammes UML qui sont des
reprsentations graphiques qui s'intressent un aspect prcis du modle dont chaque type est
C;cstinn !\ulmnlli';~,~ des Publications Je 1'1NSD 1)8
-
compos d'lments de modlisation prdfinis et la combinaison offre une vue complte des
~~rm+""er::batterie;de~POs" '
9
-
XP
-Cible des projets de plus de10 personnes
-Ensemble de BestsPractices de dveloppement(travail en quipes. transfertde cOlllpdcnl'es".)-Cible des projets de moins de10 personnes
-Propose des modles dedocuments, et des canevas pour
. ,des projets types-Itratif, simple mettre enuvre
-Fait une large place aux aspectstechniques: prototypes. rglesde
dveloppement, tests
-Innovant: programmation enduo, kick-off matinal
debout ...
-Ne couvre pas les phases enamont et en aval audveloppement: capture desbesoins, support, maintenance,tests d'intgration".
-Elude la phase d'analyse, sibien qu'on peut dpenser sonnergie faire et dfaire
-Assez flou dans sa mise enuvre: quels intervenants,
quels livrables?~ltratif -Plutt~uperli i
,
~Propose un cycle de,
dveloppement en Y
-Cible des projets detoutes tailles
-S'articule autour de
l'architecture
2TUP
Notre choix s'est port sur la mthode 2TUP, du fait de son approche nouvelle, originale. Notre
projet est bas sur un processus de dveloppement bien dfini qui va de la dtermination desbesoins fonctionnels attendus du systme jusqu' la conception et le codage final.
1.3.2.2. Le processus de dveloppement 2TUP
La famille des ., Unified Process (UP)" constitue une trame commune pour intgrer lesmeilleures pratiques de dveloppement. Un processus lI!> est itratif et incrmentai, centr sur
l'architecture. conduit par les exigences des utilisateurs. pilot par les risques et orient
composants. Le processus 2TUP signifie 2 Track Unified Process. C'est un processus UP
qui rpond aux caractristiques que nous venons de citer. Le processus 2TUP apporte une
rponse aux contraintes de changement continuel imposes aux systmes d'information de
l'entreprise. En ce sens, il renforce le contrle sur les capacits d'volution et de correction de
tels systmes. 2 Trad: signifie littralement que le processus suit deux chemins. Il s'agit des
chemins fonctionnels et d'architecture technique. qui correspondent aux deux axes de
la
-
changement imposs au systme informatique. La figure 2 nous donne un aperu de ses deux
contraintes.
Figure 2 : Le systme d'information soumis deux natures de contraintes
L'axiome fondateur clu 2TUP consiste constater que toute volution impose au systmed'information peut se dcomposer et se traiter paralllement, suivant un axe fonctionnel et un
PcilicatiO>fonctiollllell~: ~
Analyse
/ P!'cse de( "" ! '::31 satlon
"
1 Coelage
Test
Re
-
:> La branche gauche (fonctionnelle) comporte:./ la capture de::- besoins fonctionnels, qui produit un modle des besoins focalis sur le
mtier des utilisateurs. Elle qualifie au plus tt Je risque de produire un systme
inadapt aux utilisateurs. De son ct, la matrise d'uvre consolide les spcifications
et en vrifie la cohrence et l'exhaustivit de l'analyse, qui consiste tudier
prcisment la spcification fonctionnelle de manire obtenir une ide de ce que va
ral iser l s: stllle en termes de mtier. Les rsultats de l'analyse ne dpendent
d'aucune technologie partieul ire.
:> La branche droite (architecture technique) comporte:./ la capture des besoins techniques, qu i recense toutes les contraintes et les choix
dimensionnant la conception de systme. Les outils et les matriels slectionns ainsi
que la prise en compte de contraintes d'intgration avec l'existant conditionnent
gnralement des prrequis d'architecture technique;
./ la conception gnrique, qui dfinit ensuite les composants ncessaires la constructionde l'architecture technique. Cette conception est la moins dpendante possible des
aspects fonctionnels. Elle a pour objectif d'uniformiser et de rutiliser le mmemcanisme pour tout un systme.
L'architecture technique construit Je squelette du systme informatique et carte la plupart des
risques de niveau technique. L'importance de sa russite est telle qu'il est conseill de raliser
lin prototype pOlir assurer sa validit.
~ La branche du milieu comporte:./ la conception prliminaire, qui reprsente une tape dlicate, car elle intgre le modle
d'analyse dans l'architecture technique de manire tracer la cartographie descomposants du systme dvelopper;
./ la conception dtaille, qui tudie ensuite comment raliser chaque composant;
./ l'tape de coc\age, qui produit ces composants et teste au fur et mesure les units decode ralises;
L'tape de recette, qui consiste enfin valider les fonctions du systme dvelopp.
1.3.3. Dmnrche d'analyse
2TUP est organise suivant les quatre phases suivantes: initialisation, laboration,construction et transition.
1\...' --,; 1i l'! ,\ 1 , ! [ i:12
-
:> La phase d'initialisation:
1~lle conduit dfinir la vision du projet, sa porte, sa faisabilit, son business case, afin depouvoir dcider au mieux de sa poursuite ou de son arrt.
:> La ph,\S d'laboration:
Elle poursuit trois objectifs principaux en parallle:
./ identifier et dcrire la majeure partie des besoins des utilisateurs;
./ construire (et pas seulement dcrire dans un document !) l'architecture de base dusystme:
./ lever les risques majeurs du projet.:> La phase de construction :
Elle consiste surtout concevoir et implmenter l'ensemble des lments oprationnels (autresque ceux de l'architecture de base). C'est la phase la plus consommatrice en ressources et eneffort.
:> la phase de transition:
Elle permet de faire passer le systme informatique des mains des dveloppeurs celles des
utilisateurs finaux. Les mots-cls sont: conversion des donnes, formation des utilisateurs,
dploiement. bta-tests.
lA. ACTEURS DU PROJET ET PLANNING PREVISIONNEL
104,1. Acteurs du projetCe sont toutes les personnes qui interviennent dans l'excution de ce projet. Ils sont regroupsen groupe de pilotage, groupe de projet et en groupe des utilisateurs.
1.+.1.1. Groupe de pilotage
Le groupe de pilotage prend les dcisions relatives aux objectifs recherchs et fixe lesorientations gnrales, les dlais respecter et dfinit galement les moyens mettre en place
pour la ralisation du projet et approuve le plan d'action tabli par le groupe de projet. Ils'agit notamment de:
13
-
M. SOME Dienyl Alexandre (vice-directeur du service informatique l'INSO)Dr. SERE /l.bdou/aye (enseignant l'Universit de Polytechnique 8080-DIOL: LASSO)
IA.l.L. Groupe de projet
Le groupe de projet est charg de l'excution du projet, de la conception et ventuellement laralisation du projet. Cc groupe est compos de:
ZOUNGRANA B Odilon Isae (Elve ingnieur de travaux informatique l'ES!,Stagiaire l' INSO)
1.4.1.3. Groupe des utilisateurs
I.e groupe d
-
~~...,r;jll+-e!----,
11'
f,:m:ili,::lIt
~tA~1t!k~,::i~(n:k:~~1f.t"l'lf::r.f ~t;:;:
t:W,;.;,. ft f r: Z}UIOUpedeprOj!1
,tri ltt' ,3,Uloup!d!~IoIil!~IOOI!deproj!t
1
i
,.hj;JnM~c"~"iClo.lr.i:sd~'(;'"''
f + '1g 'of t t'Mr'e: , Mt., t4"i'htf tu ?""'t"r1f
FigUl-e 4 : Diagramme de GanU du planning prvisionnel
!Jans la pratique, les choses ne se sont pas passes comme prvu. D'autres tches se sont
ajoutes ou ont t modifies en terme de dur ou de succession. Le tableau 2 nous donne lestaches du planning rel.
Tableau 2 : Planning rel
Mois Jours N Tches Dpendance Phases
Septembre 02-03 01 Accueil, modalits sur le sta e 1
04 02 Prsentation et visite de l'INSD 01
05-09 03 Attente de thme, Formation en Outlook 02
10 04 Echange avec le service marketing pour 02d a er le thme
11-12 05 Interview pour comprendre et lucider lethme
13-16 06 Corn rhension et acce tion du thme,
15
-
19-25 08 Etude de l'existant, Etude du langageUMLet du rocessus2TUP
17-18
A partirdu 19
07
resoumis au service marketin
Recherche sur le thme
Dbut de rdaction du rapport
06
Septembre- 26-02Octobre
09 Etude des fonctions, dtermination des cas 05d'utilisations
10
besoins (fonctionnel et 06
Rvision du SQL, prise en main de zend 09framework
14 Dve10 ement
13
\0
20-29 12
19
06-18
01-12
29-31 12 Installaion,d'outils dedveloppemerit,Zend FrameWork
17-23 09 Conce tion des diffrents diagrammes
22-25 10 Elaboration du SOBO
28 11 Validation et MA] des donnes recueillies
10-16 08 Validationd~sdbnt;srecueillies
03-09Octobre
1
1 Novembre
3 mois 90 'ours--'---'- __-'- --'---- --J...._...L-_.....J
Ce tableau nous a pennis d'avoir le diagramme de Gantt de la figure 5:
, (icstioll /\t1 1(lill:ll'.. ~ des Puhlications de IT\SD ')16
-
~-9:'" ~,
\' ~ :' .~_!" ''\;",::H ,I!!~ ""~,::JJI,t! l,.r le Itar! t:J Groupe de plil)tilge
~'~:~':i1:iO"I!~ .I~'ti 1" f-I,"~,: r Groupe de pilclage,;~'~ 0... ~"e"'e e: I");"-nf~r ~::il ufou~e de pilot~ge;Groupede projet
fi GrO\lpe de proiet
, -~r.,~ ..... r
-
Nomdeelat:he T Dure :]Dbut T Fin T lPrdc..ss ..ur'T
.A;cceu il ~: f~':!- -= r~ t- -= juS j cur! Lun 02/::>9/13 'le ri J6/:: 3" 13th"'~
3
5
Etuda de! l::rg=;~! e: 10 joursch oh du 13(';3g~! IJML etde la rT'ethcde 2TUF
reccE:uil d-=~ te~=i""i 5 jour~l,fonctionnel tt.=:chn;que:i
Valid_ticn je! d:rc~~, 3jour!reccE:L;illi::: -?( r~1:'_
Lun 09/09/13 Mer 111~9.13Jeu 12/09/13 Mer 25/J9/13 2
Jeu 26/09/13 Mar 02/10/13 3;2
Jeu03/10;13 LunJ7/,::13 ~
Mar08,'lC:'13 LLr ,.::11213
7 v'alid~:lon t rvt~J O;foncticrr::lltEe, dLsysterr e
a. ConE:'ticr. c~s .jiffr.:nt:idiagramrre,
9 Revls1er CL; ~::'L.et ::rise enrT"'air Oli :Erd:ran~-E:
10 developperrent
~1 Redaction du rapp:rt
2 jours Mar 15/10/13 Mer 1&/10/13 6
5 jours Jeu 17/10/13 Mer 23,'1::13 7
8jours Jeu 24/10/13 Lun J~illi13 8
17 jours 1011 ar 05/11/13 Mer 27/11/13 965 jours Lun 02/09/13 Ven 29/11/13
l
-
Nom de la tche Dure Dbut Prdcesseurs
1
2
3
.!\cceuil et f"!"c-jalrte sr.Jr/e stase 2joursPre:;ertaticn et ... i:;:lt' di! /'INSD 1 jour.o..ttente. du them.e oetformation 3 jour:asur Ol,.; tlcd:-"
ech2r~~ :;,:-:::.Ie: ~"::\'/l::';:mad. .;:tlrg CL( j';:~3.,~-=r leth e n~-=
Lun 02/09/13
Mer 04/09/13
Jeu 05/09/13
Mar 10/09/13
Mar03/09/13
Mer 04/09/13
Lu n 09/09/13
5 lnt~r", \;;'~'.' ~ -: '_r ,: ""'pi ",norE -eti:IUCI(:l.:rle therr"E
2. jours Mer 11/09/13 J~t.. 12/09/13
6
7
8
9
6,cceptatlcr. et r-=!cIJ'Tl,iS,~c('\du 2. joursthemE au !'rvice n~31d:eting
A.pprcpriati::>f"!, etlJ8E d@: Sjoursl'elli::-r3n: E': detL": j'?f\3:lyse
Ven 13/09/13
M" 17/0'3/13
Jeu 19/09/13
J~1,; :::.3 }G 13
lun 16/09/13
Mer IB/09/13
r",'er ~5r:::>9/13
5
6
6
11
1.2
L3
15
16
En,;,d.-: ..~: :'nctl':-I~~.C4t'nni,nJ.t~v~1 ,,::) 1.:-H: :3.S~
Con.:~~t~c':": ~i -:';::~~l1t:.dia,gra1n:~1~~El.J.bora.:ic:.... :.-.:. ~G3D
y 3.h3.t lcn -:t :.L~_.t .~~ cnn~-:j-rK"U..::-it\i-=~
Revi~ion du S:)lIn.itall:;":-Icr d'ovtil::: cedevelc ~...;-"",,,,. :.;,,,.jFram :"~r.:.
5 J0t;.1";
3 Jour.
4 jo-;.-ri1 JOU
3 JOLf"S
3 JOLrs
Jou 10 10'13
Jo" 171013
Luri ~S10'13
M.r 29/10/13
Ven 01/11/13
Ji:L. 31/10/13
MiSrCS/l1/13
10
11
12
9
18 Pri!e er ccn~te d02;;; derniere:s: 1 jourremarqu$
Mer 06/11/13
M.r 19/11/13
lun 18./11/13
Mar 19/11/13
16
19
20
DvelcpperT"'~nr. SjOU r ! Mer 20/11/13lun 1~/10/13
Ven 29/11/13
;~r 29:'11/13lB
Figure 7 Liste des tches relles
I:ONCLUSION
Cette premire tape nous a permis de nous familiariser avec notre structure d'accueil et aussi
de bien nous imprgner du thme d'tude, Nous avons pu dfinir une dmarche d'analyse qui
va nous permettre de raliser notre projet. Dans la suite du travail, nous, nous emploierons su ivre les di fjrentes tapes de notre dmarche.
, ,ies! j()n /\U10lndli"l: (les l'uhl il'ations Je l" INSD 19
-
i NTRODUCTfON
Le chapitre prcdent fut l'objet entre autre de la description du processus 2TUP. Nous avons\ u que ce processus est un processus en forme de Y et est dcompos en 2 branches d'tude:
La branche fonctionnelle et la branche technique. Ce chapitre fera l'objet d'une part de l'Etudeprliminaire et d'autre part de l'tude de notre systme selon ces 2 branches et enfin d'une
~malyse du futur systme pour dterminer le cot de ralisation.
ILL ETUDE PRELIMINAIRE
II.l.I. Description gnrale du fonctionnement
:> Enqute
L'enqute est le point de dpart de l'tablissement d'un document. Un service technique
exprime et matrialise le besoin d'initier une enqute qui va ncessairement aboutir la
production d'un document. Cette enqute peut tre un devoir priodique, ou seulement entam
sur demande ou ncessit. En fait, la fin de l'enqute, les donnes sont rassembles,
corrobores et analyses. Ainsi donc, elle aboutit j'laboration d'un document mis au servicede qui le dsilc.
:> Document
Il est le rsultat d'une enqute dirige par un service technique, mme si des documents
paraissent parfois priodiquement, sans enqute pralable. Ces documents sont donc reproduits
au niveau de la reprographie, puis transmis au service marketing, qui procde la
classification, au stockage et la distribution ou coulement pour la clientle. Le document est
distribu au service public dsireux d'utiliser le document des fins nationales, vendus aux
privs et aux particuliers. Toutefois, tout document dont le cot de production est infrieur 1000 FCFA est donn gratuitement qui veut.
Cicstioll ;\111\\1)) li' : ck-" Puhlicdtions de "INSD"20
-
:> Clientle et acquisition
Ileut tre client. tout organe ou toute personne dsirant consulter le document. En s'adressant au
service marketing. on peut acqurir le document.
II,1.2, Fonctionnalit de GAPI
La description gnrale du fonctionnement de l'application nous permet de recenser les
fonctions suivantes rparties en modules:
:> Grer Document
Ce module permettra les actions qui ont trait direct aux documents: Leur manipulation, leur
classification, leur stockage ... Ainsi, le document qui est beaucoup plus manipul par le
service marketing, ama des actions qui le concernent telles, enregistrer document, voir
recettes du document, suivre ses traces, ...
:> Grer Client
Les clients reprsentent tous ceux qui doivent ou veulent acqurir un document quelconque. Ce
module doit donc pouvoir permettre de rcapituler les habituels clients, de voir les meilleurs
clients, d'ajouter un nouveau client, de supprimer un client.
~ La gestion Stock
Cest le lieu o sera gr le stock des documents. Ce module a pour principales fonctionnalits,
\oir tat du stock. vl"itier les sorties. valuer recettes totales. les documents en rupture et ceux
qui seront disponibles sous peu.
:> La gestion des paramtres et des utilisateurs
Les accs l'application doivent tre contrls d'o la ncessit de ce module. Il doit permettred'ajouter un utilisateur et de lui attribuer des rles et lui permettre de grer son compte. Lesparamtres basiques d avancs de l'application pourront aussi tre dfinis.
" \i~"ti()11 /\1I1,)rn;lli
-
11.2. CAPTURE DES BESOINS
II.2.1. Captu re des besoins fonctionnels
ILL 1. i. Cas d'utilisation
lJn cas d'utilisation est un ensemble d'actions susceptibles d'tre ralises par un systme et
produisant lin rSll\t,lt observable intressant pour un acteur particulier du systme. C'est
l'image d'une fonctionnalit du systme, dclenche en rponse la stimulation d'un acteur.
Il illustre, dtecte puis dcrit un besoin d'un utilisateur. La totalit des cas d'utilisation
constitue ['ensemble des fonctionnalits du systme.
Le diagramme des cas d'utilisation reprsente la structure des fonctionnalits ncessaires aux
utilisateurs du systme. Il sert structurer les besoins des utilisateurs et les objectifscorrespondants du systme. Il exprime les interactions acteurs/systme et apporte une valeur
:Ijoute l'acteur concern. C'est en regroupant les intentions fonctionnelles des utilisateurs enunits cohrentes qu'nn identifie les cas d'utilisation.
IL1.1.2. Identification des cas d'utilisation
Le systme tudi prsente un trs grand nombre de fonctionnalits donc de cas d'utilisation.
C'es cas d'utilisation seront repartis en cas d'utilisation de haut niveau et ses cas seront dtaills
par la suite pour une plus grande lisibilit. Les cas d'utilisation de haut niveau s'identifient
comme tant les diffrents modules du systme. On obtient donc le tableau 3 contenant les
diffrent cas d'utilisation.
Tableau 3: Identification des cas d'utilisationsr--------~--__,_-------__,_---
Cas d'utilisation Acteur(s) Message(s) misGrer les enqutes Agents Service Saisie/MAl, consulter
Marketing
Message(s) reuListe des Enqutes
Grer les ServicestechniquesGrer les Commandes
Grer les Types deDocumentsGrer le Stock
.Agents Sryice. Marketing
Agents ServiceMarketingAgents ServiceMarketingAgents ServiceMarketing
SaisieIMAJ, C9P&ulter
Saisie/MAl, consulter
Saisie/MAl, consulter
Saisie/MAl, consulter
Liste .des . tyP~~._ deDoq~meri~, j;:\ii's:--Liste des Documents
1l...',~1 i() J l /\ ~ : tr22
-
Grer la Traabilit Agents Service Saisie/MAl, consulter Coordination ....s' ,~' , ' "-.i'\~'~:~' /:f';:~~!lt:~;,r;';,~
Marketing Ooc1.ltn~ntsZC~.~n~s~,'.Grer les Clients Agents Service Saisie/MAl, consulter Liste des clientsPhysiques Marketing PhysiquesGrer les Clients Agents Service Saisie/MAJ, consulter Liste des clientsMoraux Marketing MorauxGrer les Commandes Agents Service Saisie/MAJ, consulter Liste des Commandesdes Clients MarketingGrer les Profils Administrateur Saisie/MAJ, consulter Liste des profils'Grer les Modules Admi nistrateur Saisie/MAJ, consulter Liste des ModulesGrer les Privilges Administrateur Saisie/MAJ, consulter Liste Privilges
IL 1.1.3. Description fonctionnelle des cas d'utilisation
~ Grer Document
Le tableau 4 donne la description fonctionnelle du cas d'utilisation grer les documents
Tableau 4 : Description fonctionnelle du cas d'utilisation grer les documents
Cas d'utilisation Description...ii.
Grer les documents Enregistre les informations sur un document.Est li type de document, service technique,enqute, commande
Grer les Enqutes Enregistre les informations SUl;'iu~e,~1II1Est li Service technique, Docment .'.
Grer les Services technique Enregistre les informations sur un servicetechnique. Est li Document, enqute
Grer les types de documents Enregistre les Diffrents types de documents.Est li ft Document
Grer les Stocks Permet de 1ister les Documents disponibles etleur quantit. Mais en relation Document,Commande
Grer traabi 1it Met en relation le document et le client quil'acquiert
:> Gl"l'rClicllts
Le tableau 5 donne la description fonctionnelle du cas d'utilisation grer les clients
Tableau 5 : Description fonctionnelle du cas d'utiHslltion grer les clients
Grer les Clients Physiques Enregistre les informations sur une personne
physique. Est en relation avec Client
23
-
Grer les Clients Moraux Enregistre les informations sur une personnemorale. Est en relation avec Client
Grer les Commandes des Clients
:> Grer utilisateurs
Lt' tableau 6 donne 1,\ description fonctionnelle du cas (l'utilisation grer les utilisateurs
Tableau 6 : Description fonctionnelle du cas d'utilisation grer les utilisateurs
Grer utilisateur
Grer profil
Enregistre les infor~ations '.' s un.utilisateur. Est en reiation.~~.~c. :C.,9.~..~ 'document '';;'",:;':.;' '.'ciEnregistre les diffrents profils des utilisateurs.Est en relation avec utilisateur et privilgeChange le mot de passe d'uQntilisateijr.. f~;iChanger mot de passe~ L-_---C:- ---''-- -'---__-'---'---''--'-__
11.2.2. Capture des besoins techniques
1,(1 capture des hesoins techniques est une tape qui traite des contraintes techniques etlogicielles. Ct'st le lit'u o ['on fait les choix ncessaires (technologies, outils, matriel) pourun dploiement de son systme. Ces choix sont soumis aux contraintes de performance d'accs
-
langages que nous avons cits peuvent permettre d'atteindre les objectifs. Nous prsentonssuccinctement travers le tableau 7 ces trois langages.
Tableau 7 : Prsentation de quelques technologies web
Technologie web. --'y .
; Caractristiques [Observations Niveau de, connaissance
-compif~t"i~terp-;:t-;_.- -=-b~~~~~~p'--d-e-c'-o-n-ce-p-t-s--f-M-O-y-e-nn-e----lmaltnser;
-orient objet et autres fparadigmes; -trs rt?pandu ;
Java (JSP+servlets), -ramasse-miettes; -robuste.
I-machine virtuelle;
1, -syntaxe familire (proche. de Cet C++);
-orient, obj~t.~\.~~tre~ .paradigmes;"" ". ".
-typage dynamique faible;
-multiplateforme. ,.,. _._.~"' o ' _ ,, ....,...,....,..,.......,,,...
-interprt; -trs rpandu;
PHP -systme de gestiond'exception;
-m!J!t.ipl.ate_fo.;;..rm~..,;e;...' -+- . __.-:...~~.__.........~.............. ........~~_j-interprt; -pas trs rpandu. Non !
- orient objet et autresparadigmes;
Ruby-ramasse-miettes;
-systme de gestiond'exception;
1,t _ ."_", "~.,,
-possibilit demodification de classe
1 pendant l'excution;
, -nombres entiers de tailleillimite;
i. IL':-;linn !\I:l\\rn:,ti~~~ cic~ Puhliciltion:-; de liNSD25
-
Nous utiliserons PHP. PHP 5 plus prcisment. Ce choix est guid par nos prtentions
d'orientation professionnelle, mais aussi Pour sa souplesse, sa portabilit ainsi que son
intgration complte du modle objet, PHP 5 est le langage qui a retenu l'attention de l'quipede projet.
Pour la prsentation (les pages, nous utiliserons l'indispensable XHTML associ javascript etaux feuilles de style CSS 2.
11.2.1.1. Le framework
:1- Qu'est-ce qu'un rramcwork?
(1 Un framework est un kit de composants logiciels structurels, qui sert crer les fondationsainsi que les grandes lignes de tout ou d'une partie d'un logiciel (architecture). Un frameworkse distingue d'une simple bibliothque logicielle principalement par:
~ son caractre gnrique, faiblement spcialis, contrairement certaines bibliothques;un framework peut, ce titre, tre constitu de plusieurs bibliothques, chacune tantspcialise dans un domaine. Un framework peut nanmoins tre spcialis, sur un
langage palticulier, une plateforme spcifique, un domaine particulier (Reporting,mapping. etc.).
~ le cadre de wlVail (traduction littrale de frame\\ork) qu'il impose de par sa constructionmme, guidant l'architecture logicielle voire conduisant le dveloppeur respecter
certains patterns; les bibliothques le constituant sont alors organises selon le mmeparadigme. 1
b. Pourquoi utiliser un framework ?
~ Un framework n'est pas une ncessit absolue, mais nanmoins il est trs utile.~ Un framework est un gage de qualit, d'volutivit et de facilit de maintenance des
applications.
~ Les applications dveloppes l'aide de framework sont conformes avec les standardsdu march.
1 Source: http://ti.wikipedia.org/wiki/Framework
-
Co Quel framework allons-nous utiliser?
Plusieurs frameworks PHP ont t mis au point. Nous avons choisi trois parmi les plus connus
pour notre comparatif comme l'illustre le tableau 8.
Tableau 8 : Tableau comparatif de frameworks PHP
Les plus Les moinsFramework PHP
Zend Frame\\'OI'K 1.12
-Documentation de l'API,pas bien dtaille.
-Composants pour les ACL,, l'authentification et les sessions;
- Intgration de bibliothques AJAX(jQuery, Dojo) ;
: -Implmentation du pattern MYC ;-Licence Open Source.
-Implmentation du pattern Mye;1 - Intgration de bibliothques AJAX1' -Ne sup~orte pas PDO (PHP: (Prototype, script.aculo.us) ; Data ObJect).
-Licence Open Source.~"'" '" ...._.- ..__._~-----'"-.__......- ~ _..__.-......-......---..,..,..~!"'""M
-Configuration en mode graphique; !-Difficile prendre en t-Implmentation du pattern MYC ; main;
. -Moteur de tempIates (twig) ; -Pas de composant pour les:~LicenceOpfinSpurce.. . ACL et l'authentifi" 1
~. ~ ~.o - ~ ~ ~ 0 o, 1\ ~iit'~~'f;
~ CakePHPCakePHP ].3
i 0 SyrnforlYSymfony 2
Nous utiliserons Zend Framework pour ses composants tels que les ACL, l'authentification et
les sessions; et la bibliothque AJAXjQuery que nous connaissons bien.
NI3 : Pour plus dnfonnation sur zend framework, voir annexe 1 la page 58.
11.3. L'ARCHITECTURE LOGICIELLE DE L'APPLICATION
L'architecture du systme est guide par le framework de dveloppement bien qu'il ne
l'impose pas. Zend Fraillework implmente le pattern MVe (Model-View-Controller).
Le design pattern Modle- Vue-Contrleur (Mye) est un pattern architectural qui spare lesdonnes (le modle), l'interface homme-machine (la vue) et la logique de contrle (lecontrleur).
('e modle de conccplinn impose donc une sparation en 3 couches:
-
Le modle: Il reprsente les donnes de l'application. Il dfinit aussi l'interaction avec la base
de donnes et le traitement de ces donnes.
La vue: Elle t'eprsente l'interface utilisateur, ce avec quoi il interagit. Elle n'effectue aucun
traitement, elle se contente simplement d'afficher les donnes que lui fournit le modle. Il peuttout fait y avoir plusieurs vues qui prsentent les donnes d'un mme modle.
Le contrleur: " gre l'interface entre le modle et le client. Il va interprter la requte de ce
dernier pour lui envoyer la vue correspondante. Il effectue la synchronisation entre le modle et
les vues.
la synchronis
-
Cc comparatif Illontr,' qu'Eclipse ne supporte pas Zend Fraillework. il n'est donc pas adapt.
[cs deux autres I::r) 1 offrent les mmes fonctionnalits: cependant Netbeans en raison de sasimplicit d'utilisation. de sa convivialit, de sa rapidit et de sa gratuit, notre choix portera
donc sur Netbeans 7.2.
11.5. UNE PLATEFORME PHP
Lne plateforme PH P est un ensemble de logiciels permettant le dveloppement, les tests et le
dploiement d'applications web PHP. C'est un ensemble constitu en gnral du serveur web
Apache, de l'interprte PHP et d'un SGBD (MySQL ou PostgreSQL). C'est cet ensemble quisera le moteur de notre appl ication ; grce lui, on pourra gnrer les interfaces et excuter les
diffrents traitements dvolus au systme. En un mot, c'est le cerveau du systme. Plusieurs
plateformes PHP sont disponibles. En voici quelques un sous forme de tableau comparatif dans
le tableau 10.
Tableau 10 : Tableau comparatif de plateformes PHP
-PHP 5.3;-Apache 2.2;-MySQL 5.1;-phpMyAdmin 3.3;-Zend Framework;
. -Zend Optimizer+;-Zend Loader;-Zend Debugger;-Zend Cache.
Plateformes PH P
Zend Servel' CE 5.6
WampServer 2.2c:I'J~w s'-~ arnp erver
XAMPP 1.8
C~1 XAIVlPP
Composants % Les plus Les moins- ~-' .. _.. --,._."..~_ .._~ .._.,,",_. "~t_."_.~. ""--~-----~~------'1
\. -API de cache de i 1donnes;! 1
, -Zend Framework iintgr; !
1-Acclration de . M'1 l - \ses jour pas trs '
j code; .. 01 1'" d frequentes ;1
- nterlace ed ob ' -Tlchargement1 e ogage; . ,
1 0 1 d Apache et MySQL: -Connectlvlte base de 1 d ,. l':do' 0 0 ors el \I1sta\ atlOn.i onnees mtegreet (Oracle,
PostgreSQL ...) ;1 -Multiplateforme ;
....... ._.__.... ,J -Gratuit. ......._ . .__._~_....,.,,- ....-..,...-)-PHP 5.3;," -Possibilits d'ajouter 1 .-Apache 2:2; des 'versions '.1:','.,.>]7;.-MySQL 5.5; d'~pache, ,-phpMyAdmin 3.4; MySQL;
; -XDebug 2.1; ~Large communaut-sqlbuddy1.3; d'utilisateurs;-webgrindLO. -Gratuit.
-," ... ,. - .......'~... __.,_._ . _* --.~ -~~._" -" -,",'.j
-
--;'=MySQL 5.5; I-G;;tuit~'--'--1-phpMyAdmin 3.5; ; i-TolTIcat 7.0;-OpenSSL.
Pour viter tout problme li un changement possible de systme d'exploitation, nous
cartons WalllpServer qui est uni-plateforme. Quant aux deux autres plateformes, Zend Serverest plus fourni en fonctionnai it et intgre notre framework de dveloppement, nous opterons
donc pour Zend Server CE 5.6.
NB: pour plus d'information sur MySQL, voir annexe 2 la page 59.
11.6. OUTILS DE MODELISATION
Les outils de modlisation qui ont servi la ralisation du projet sont les suivants:
:> Visio 2013 pour la conception des diffrents diagrammes UML et de l'architecture
rseau insrs dans le rapport.
:> Gantt Pmject pour l'tablissement du diagramme de Gantt au niveau desplanllings:
11.7: ANALYSE DU FUTUR SYSTEME
Nous prsentons ici le scnario retenu pour le futur systme.
On utilisera les graphiques suivants pour prsenter les architectures rseaux correspondantes:
30
-
commutatS'J(
Figure 6 : Prsentation du matriel
II.7.1. Dcsc ription gnrale
Il consiste en la mise en place d'une application web qui fonctionne selon une
architecture 3-tiers o l'on sparera les couches de prsentation, traitement et d'accs aux
donnes et respectant le modle Mye prconis par Zend Framework.
Ceth: application sera dploye en interne et utilisera le rseau local de l'INSO, c'est--
dire que le serveur d"application ainsi que celui de base de donnes seront installs au sein de
l'INSO.
Pour assurer la scurit du rseau de l'INSO, une zone dmilitarise (OMZ,DeMilitarized Zone) est cre pOlir les serveurs.
Les utilisateurs accderont l'application grce un navigateur web au niveau de leurposte client (client lger) pour les diffrents traitements.
31
-
(1
1
Agent rnq rketing ( DMZ
-----~-
(Admi nl~\ trateur
Figure 7 : Architecture rseau
II.7.2. Estimation des Besoins
Ce dont a besoin notre solution pour un fonctionnement optimal, est rcapitul dans le tableau1 J.
Tableau Il : Estimation des besoins
Prix unitaireDsignation ~ Caractristiques
Serveur Serveur HP ProLiant 5953953 1 ExistantMU JO C7 E3-12403.30GHz 4-core IP4GB-U Hot PlugSATA 460W RPSEU
Ordinateur Pentium IV ND Existant
3 Tire sur Il ttp ://www.senetie.fr/produet/626475-421
2 Tire sur htt[)://store .apple.eom/fr/produet/TR423ZM/A/onduleur-idowell-ibox-ups-550%C2%AOva
l ',-' ~ 1i l i 1 \ 132
-
Onduleur Onduleur iDoweli 163 717252 1 ExistantiBox UPS 550 Va
Planification ProjectProfessional Gratuit i>;
Modlisation PowerDesigner15 Evaluation 1Existant
Systme Debian GNV/Linux Gratuit 1 ,d'exp/uitotiun 3.1-Sarge(SE) SE cot client Windows 7 ExistantAntivirus Kaspersky Internet Existant
Security 2013SGBDR MySQL 5.5.30 ou> GratuitIDE ' Netbe(l1'js
, "", ,",Gratuit ;'; ;, lI;' ,r: rf' '"
Serveur Apache 2.2 Gratuitd'applicationInternet Configuration ND Existant
professionnel, AccsADSL dbit >=
: 512kbtls
]1.7.3. Cot de dveloppement et de formation
On distingue plusieurs mthodes permettant d'estimer le cot de dveloppement d'un logiciel
parmi lesquelles nous avons le modle COCOMO (COnstructive COst MOdel). Cette mthodeexiste en trois versions: simple, intermdiaire et dtaille.
Nous utiliserons le modle COCOMO simple qui est le mieux document, il donne des
estimations des cots en s'appuyant sur la taille (estime) du logiciel et sur le type de logicielou projet raliser. Il existe trois (03) types de projets que sont:
:> les projets de mode organique:
Ces projets SOllt raliss par L1ne quipe de taille relativement petite travaillant dans unenvironnement tmilier et dans un domaine d'application connu de l'quipe.
( (1I:slil)11 !\lil()n)(\lis,.~ des Puhlications de lNSD 33
-
:> les projets de mode semi-dtach :
Ce sont des types de projets qui ne sont pas trop complexes. L'quipe de dveloppement seconnat un peu, et les technologies peuvent tre mal connues, mais pas d'une grande difficult
d'apprhension.
~ les projets de mode embarqu:
Le systme dvelopper est une partie d'un systme complexe et les modifications de
spcifications destines contourner des problmes logiciels sont en gnral impossibles.
Les formules permettant de calculer le cot, ou plus exactement l'effort requis pour le
dveloppement du logiciel en fonction du type de projet sont les suivantes:
:> mode organique: HM = 2,4 (KLSL) 1,05 ;
:> mode semi-dtach : HM = 3 (KLSL) 1,12 ;
:> mode embarqu: HM = 3,6 (KLSL) 1,20.
:> HM (signifie Homme-Mois) : reprsente l'effort requis pour le dveloppement del'application.
:> KLSL (Kilo-Lignes-Sources du logiciel) : correspond 1/1000 du nombre de lignes decode du logiciel.
:> Le modle COCOM simple permet galement d'estimer le temps ncessaire audveloppement d'un projet (TDEV). Les quations pour les diffrents types de projetssont les suivantes:
:> Mode organique: TDEV = 2,5 (HM) 0,38 ;
:> Mode semi-dtach : TDEV = 2,5 (HM) 0,35 ;
~ Mode embarqu: TDEV = 2,5 (HM) 0.32.
Le nombre de personnes requis pour raliser le projet dans cet intervalle de temps est donc::> N == Ht\VTDEV.
Le cot total de ralisation est donn par:
~ COllt = HM*\',i1eurHM.
O ValeurHM reprsente le salaire moyen d'un informaticien. Au Burkina Faso nousestimons ce salaire 225.000 FCFA.
, \.icslion ;\litU!n;ili~c \: dc~ !'uhlications de liNSD i)34
-
Le nombre de lignes de code est estim 6100.
La mthode COCOMO simple en mode semi-dtache est la mthode retenue pour le
calcul des cots :
HM = 3 (KLSL) \,12,
TDEV=2,5 (HM) 0,35;
N = HM/TDEV et
Cot = HM*ValeurHM ce qui donne.
Tableau 12 : Cot de dveloppement
Dsigation Montant
Kilo-Lignes-Sources (KLSL) 6 100Homme-Mois (HM) 23,57
, 'U!~:0~~ ~.; ~ :Temps de dveloppement 7,5
Nombre de dveloppeur (N) 3 ~ ,
Valeur HM 225000---
1 Cot Je dveloppement 5303250
. h);flIatio!1
Afin que les utilisateurs puissent se familiariser avec le logiciel, une formation sera faite
leur gard dont le Cllt est valu dans le tableau 13 :
Tableau 13 : Cot de formation des utilisateurs
Heures Montant de l'heure Utilisateurs Montant total
10 15000 4 150000
35
-
I!", ~ . C:ot de rl:a!islltion
En rsume, avec la mthode COCOMO, le cout de la ralisation de notre solution avec tous les
contours runis s'lve 5 453 250 FCFA comme le montre le tableau 14.
Tableau 14 : Cot de ralisationC--'
Dsignation ,Mont~t').
Besoins 0
Analyse et conception 1 500 000 FCFA-_.-
DVl: 1Oppl11ent 5 303 250 fCFA
Formation 150000 FCFA
Total 6 953 250 FCFA
CONCLUSION
A travers les tudes fonctionnelles et techniques, nous avons pu d'une part, dgager les grandes
fonctionnalits et d'autre part ('architecture physique et logicielle de notre futur systme. Dans lechapitre suivant. nOlis ahorderons l'tude conceptuelle du systme qui consistera dfinir la
manire dont ces contraintes fonctionnelles et techniques seront implmentes.
i icslilln (\lil'lInal;SL'~ cks Puhlications de lNSD J)36
-
INTRODUCTION
Aprs les tudes fonctionnelles et techniques que nous avons ralises, nous allons maintenant
passer la phase de conception. Le processus de conception permet de passer de l'analyse la
fabrication de la solution en langage objet. C'est cette tape du processus 2TUP ques'effectue la fusion des tudes fonctionnelles et techniques.
Dans ce chapitre nous prsenterons un chantillon des diagrammes qui ont servi la conception
du systme qll~ sont les diagrammes de cas d'utilisation, les diagrammes de squences. lesdiagrammes de classes et les diagrammes de dploiement.
III.l. CONCEPTION
111.1.1. Diagrammes de cas d'utilisation
Nous prsentons dans un premier temps le diagramme de cas d'utilisation global la figure 10,
puis les diagrammes dtaills de certains cas d'utilisation que nous dcrivons textuellement.
Cas d'utilisation global
(as d'utilisationglr ""\.Grer document )
;
/
Admnistrateur
erer utilisateurs
,,\
include,
Authentification
include\\
//
//
/
include
include>>"
ol'
Figure 8 : Diagramme de cas d'utilisation global
37
-
Gestion document
o
Agent ser ice marketing
Grer servicetechnique
Grer document
Grer comman de
Grer enqute
Grer type dedocument
~- -----~-~-----------------------------'
Figure 9 : Reprsentation dtaille du cas d'utilisation grer les documents
Grer les uttllsate Jrs
Grer AgentsChanger le mot de
pass
'~,
Adm nistrateur~'-~
~-~- ------.......
" '\Grer les profils
extend----~
Enregistrer unutilisateur
figure 10: Reprsentation dtaille du cas d'utilisation grer les utilisateurs
, (jestilll1 /\lltCln\,\li
-
,---------~
Grer clients
Client Moral
Etablir lieno L=------------" client-document
gent service ma eting
Client Physique
}
-
* Scnario alternatif
Un scnario alternatif est une succession d'une ou plusieurs tapes qui peuvent remplacer une
ou plusieurs t
-
Tableau 16 : Description textuelle de quelques cas d'utilisation Grer un utilisateur
Nom du cas d'utilisation: Grer un utilisateur
Rsum: Ce cas d'utilisation permet de saisir un utilisateur avec la possibilit de mettre jourles1
1 informations le conc(,lllant'1 Acteur: Administrat~\Irsdu systme
Pr condition: Avoir t enregistr comme utilisateur du systme avec un profil
Scnario nominal:
dbut
1. L'administrateur lance la fentre d'ajout et de mis jour des utilisateurs;2. le systme lui affiche la fentre (Al, Al);3. L'administrateur renseigne les informations (El, E2);4. le systme vrifie les informations fournies;5. L'administrateur confirme la validation;6. le systme ellrgistre le nouvel utilisateur;
fin
Scnario alternatif:
Al: L'administrateur dcide de mettre jour un utilisateur
1. Il slectionne rutilisateur en question;2. Le systme lui affiche les anciennes donnes de l'utilisateur;3. Il effectue les diffrents modifications;4. Il demande valider ses modifications;5. Le systme prynd en coropte ls IllQdifications; ,6. Fin du cas d'utilisation.
Al : L'administrateur dcide de supprimer un utilisateur
1. Il slectionne l'utilisateur en question;c ~,:" 2"
-
1. Le systme informe l'utilisateur que les champs doivent tre remplis2. On repart au point 4 du scnario nominal.E2 : les donnes sont errones.1. Le systme informe l'utilisateur que les donnes ne sont pas correctes;2. On repart au point 4 du scnario nominal;
Tableau 17 : Description textuelle de quelques cas d'utilisation Grer document
Nom du cas d'utilisation: Grer document
Rsume: ce cas d'utilisation permet d'avoir des infonnations compltes et jour sur un documentdonn. C'est--dire le service techni ue et l'en ute ui ont aboutis son laboration.Acteurs: Agent du service marketing
Pr-condition: Avoir t~ enregistr comme utilisateur du systmeScnario nominal: dbut
1. L'utilisateur lance la fentre de saisie des documents;2. Le systme lui affiche la fentre;3. II renseigne les informations (A l, A2, E2,E2)4. Il valide la saisie5. Le systme contrle et rassure que tous les champs ont t bien remplis6. Le systme enn':1iSlre les donnes
finScenario alternatif:AI : L'utilisateur dcide de mettre jour un document
1. 11 slectionne le document en question;2. Le systme lui affiche les.ancieOI1:esAonnesdu document;3. Il effectue les diffrntes roodifTciitions;":" .4. Il demande valider ses modifiati
-
Tableau 18 : Description textuelle de quelques cas d'utilisation Grer clients
Nom de cas: Grer clientRsum: ce cas d'utilisation permet d'avoir et de mettre jour les informations sur un clientActeurs: les agents du service marketing
J. L'utilisateur Jallce la fentre grer cJient;2. Le systme lui affiche la fentre;3. rI slectionne ajouter un nouveau client4. II renseigne les informations (Al, A2, E2, E2)5. Il val ide la saisie6. Le systme contrle et rassure que tous les champs ont t bien remplis7. Le systme enregistre'lesdonnes, .. .
fin
Scnario nominal:
dbut
Pr-condition: Avoir t enregistr comme utilisateur du systme
Scenario alternatif:
Al : L'utilisateur dciue de mettre jour un client1. li slectionne le client en question;2. Le systme lui affiche les anciennes donnes du client;
3. 11 effectue les diffrentes modifications;4. Il demande valider ses modifications;
5. Le systme prelld ell compte les modifications;6. Fin du cas d'utilisation.
A2 : L'utilisateur dcide de supprimer un client1. Tl slectionne le client en question;
2. Le systme lui affiche une boite de dialogue pour lui demander de confirmer la suppressiondu client;
3. Il confirme " opration;4. Le systme supprime le client;
Scnario d'exception : ., ;>:,' ';:;, t:\:;:"': 'u.' .:'T-
-
La description textuelle de ces cas d'utilisation sera accompagne par le diagramme de
squence qui montrera de faon squentielle le flux de message chang entre l'utilisateur et le
systme.
111.1.2. Diagramme de squence
Les diagrammes de squences permettent de reprsenter des collaborations entre acteurs et
objets selon un point dc vue temporel, on y met l'accent sur la chronologie des envois demcssages. Le tcmps s'~coule "de haut en bas" de l'axe vertical du diagramme.
l,es oprateu rs
Ils permettent de faire des traitements particuliers en blocs.
~ L'oprateur Loop est utilis pour dcrire un ensemble d'interactions qui s'excutentenboucle. En gnral, une contrainte appele garde indique le nombre de rptitions
(minimum et maximum) ou bien une condition boolenne respecter. La boucle estrpte al! moins minimum fois avant qu'une ventuelle condition de garde boolenne
ne soit teste. Tant que la condition est vraie, la boucle continue au plus maximum fois.
~ L'oprateur rel: une rfrence peut tre vue comme un pointeur ou un raccourcivers un autre diagramme de squence existant. Cela quivaut copier le contenu du
diagramme de squence point en lieu et place de la rfrence.
1\ travers les tigures 14 17 nous prsentons les diagrammes de squences de certains cas
d'utilisation tel s'authentifier , grer document , enregistrer une commande et
approvisionner stock .
44
-
iAuthentificatio~[1 parametersl
1
Base dedonne
nces incorrectes J 1 11 11'"-Demande identlfication- 1 1
, 1 1
,- )et1 1
1
h 11 _Renseigner champs 1, Valjde~Sie 1, 1
11
,1
{-----Envoie pour veriflcation------'+-demande details utilisateur-.h---Envoie details- - - --
Validation
,
-------.,~" "'",..,,-------w1,
--, 1\
~Fournir espace de travail
loop si don
Figure 12 Diagramme de squence du cas d'utilisation s'authentifier
,-~~~~~,.-;o~~~~~~------~~~--~~~~-~-~~--~------~-------,
Authentification
\...---lallcer ecran de documen
:--Ci-lol~iraction a effectue~ - Afficher champ pour saisie--
Icap si donnes incorrectes
1 infini,-~~~~---,,-~~~~--j
Loop
1 in~RenSeigner champs_Valiger saisie,
Envoie pour enregistrement,,
111 - - - - Envoie resultats - - - -1,
~ - - - -Afficher resultats- - - -
Demande d'enregistremen
Enregistre-- - - Envoie details--- --U
1
~ -Revenir ecran de document-
Figure 13 Diagramme de squence du cas d'utilisation Grer documents
llestioil ;\II!C>ln,lli
-
--~~~--- --------Enregistrer une commande J
,.,
GAPI/Comn;-ande
,
),
~L
-
111.1.3. Diagramme de classe
111.3.1.1. Rgles de gestion (RG)
Les rgles de gestion suivantes, organises par grand domaine fonctionnel expriment les
relations statiques qui seront prises en compte entre les entits interagissant dans la gestion de
la publication de l'INSD. Ce sont ces mmes rgles qui rgissent le diagramme de classe de la
ligure 18.
~ GESTION DES DOCUMENTSun document est produit par un service technique
un service technique peut produire un ou plusieurs documents
un service technique dirige une ou plusieurs enqutes
une enqute est dirige par un service technique
un document peut avoir plusieurs types
un type peut concerner plusieurs documents
~ GESTION DES UTILISATEURSun utilisateur est une personne
un utilisateur a Lin profil
un profil peLlt admettre plusieurs utilisateurs
un utilisateur enregistre un ou plusieurs documents
un document est enregistr par un utilisateur
~ GESTJO;\ DES CLIENTS
un client est soit moral ou physique
un client lance L1ne ou plusieurs commandes
une commande concerne un et un seul clientune commande concerne un ou plusieurs documents
un document peut faire l'objet de plusieurs commandes
- un document peut faire l'objet de plusieurs commandes
47
-
1I1.3.1.2.. Schma du diagramme de classe
Client
,:~ . lava la~qStrinq. 3drasseCIient :J3valanqString
!. ~bjH1if .java lang.String~-_._---_.-
l" nom .ja'~= \~~;.S::ir:g \ii' prenom .jm 13fJSt'lni nationalite jml3rlStrin~. localite : j":l Il'; S::ir;
Clien!Moral
del1Ominatior. :java.la~Sjril'9. statut :java.la~.Stril'9
--~-,--_.-...__ .__.._~~J
Enquete
,0-1
-------,-----
Commande i----:>;.1.'1'-.-jd-eo-m-ma-n-de--:j-nl---I
---- O" ;. - . 0-'- i datif'--omman :java.um.Oate I~.
-
Figure 17 : Diagramme de dploiement
111.2. DEVELOPPEMENT DE GAPI
Voici la liste des diffrentes mthodes associes aux diffrentes classes de notre solution.
Tableau 19 : Liste des mthodes lies aux diffrentes classes
String
String
Gestion Automatise (ks Publications de l'INSD
Enregistre des donnes dans une classe
Met jour les donnes d'une classe
49
-
111.2.1 Arborescence du projet zend framework dans NetBeans
EJ~odilon_INSD Source Files
. -rB () , configs
controUersformslayoutsmodelsmodules
i) viewsif: fJ helpers[J scripts
......~ Bootstrap,phpdocsdH~i library1lC~ public. ~ ,zfproject. xml
[1 Cm Test Files[ff .Ik Important Files@ t. Indude Path
Figure 18 : Arborescence du projet zend frameworkDans un projet NetBeans, le code de l'application se trouve dans le dossier Sources
Files , les fichiers de test dans Test Files . Nous nous intressons au dossier le plus
important: Sources Files, il est organis en sous-dossiers selon l'arborescence recommandepar zend framework.
~ application../ le fichier Bootstrap.php contient le code de chargement automatique des ressources de
l'application au dmarrage. Le chargement automatique permet d'initialiser l'application et
de charger certains composants du framework ;
../ conjigs contient le fichier application.ini qui stocke les donnes de configuration globale del'application telles que les paramtres de connexion la base de donnes, le fuseau horaire,
le doctype html, ... ;
../ controllers contient les fichiers correspondants aux diffrents contrleurs;
../ models stocke les fichiers correspondants aux modles;
../ views stocke les vues;
Gestion Automatise des Publications de l'[NSO 50
-
./ layouts contient des scripts pour la gestion de l'interface graphique; ces scripts contiennent
le code commun toutes les pages;
./ modules contient les modules de l'application; chaque module a ses dossiers control/ers,
models, et views; en effet, zend framework considre chaque module comme uneapplication indpendante; forms contient les formulaires utiliss dans le module. Chaquemodule a aussi son fichier Bootstrapphp
=> library: ce dossier contient la bibliothque jQuery et le framework zend lui-mme.
=> Public:
./ css: ce dossier contient les feuilles de style;
./ js: c'est le dossier contenant les scripts javascript ;
./ le fichier index.php est le point d'entre de l'application, toutes les requtes passent par l ;
./ Le fichier .htaccess est utilis par le serveur web Apache.
=> Docs: ce dossier est ddi la documentation gnre ou saisie.
Cette arborescence permet d'assurer une certaine scurit quant l'accs aux fichiers. Le
serveur Apache est configur pour n'accder qu'au dossier public.
111.2.2 Quelques crans de GPF
:> Connexion
Pour pouvoir accder la page d'accueil de l'application, l'utilisateur doit au pralable
s'identifier. Cette identification consiste en la saisie de son identifiant et de son mot de passe.
Tant que l'authentification n'est pas russie, l'utilisateur ne peut pas accder son espace de
travail. Un message vous avise dans ce cas de l'chec de votre authentification.
Gestion Automatise des Publications de l'INSD)l51
-
Login
Password
admln
Connexion
DT DE PASSE OU OM D'UTIUSATEUR J CORRECT
Figure 19 Ecran de connexion avec chec d'authentification
Une fois l'authentification russie, l'utilisateur accde sa page d'accueil.
~ La page d'accueil
C'est le cadre de trayail quotidien des utilisateurs. Il comprend l'ensemble des tches qu'un
utilisateur peut effectuer dans le processus de la Gestion automatise des publications de l'INSD.
Tous les utilisateurs n'ont pas les mmes droits. Ainsi un utilisateur administrateur possde les
droits de gestion des utilisateurs aJors qu'un non-administrateur n'en possde pas. Sur la partie
suprieure de la page d'accueil sont affiches les informations concernant l'utilisateur connect.
~che. le 21 Junk!.l10.l4 BienvenueZ~ 0!3IA0n ~
Gesllon Automatise de PubiJcallons de l '0 52
-
Flrore 20: Page d'accueil~ L'explorateur
L'explorateur permet l'utilisateur connect de naviguer travers les diffrentes fonctionnalitsque lui offre son profil.
La liste des documents est affiche lorsque l'on clique sur le menu Gestion documents Les
oprations de tri, d'ajout, de modification, de suppression et d'affichage dtaill des informationsd'un document sont offertes.
Tous les d ments
Afficher 10 El lignes /page RechercheNumero catgorie/Srie Nom du solde. Prix .. Nbr Dltedocument expies .. parution
,
1 Resultats Projection oui 100 1750 2014-05-29demographlque2 Resultats Projection OUI 100 1750 2014-02-15demographlque3 Resultats Rapports oui 200 1750 2014-05-05d'analyse4 ann are statistique ou 100 1750 2014-07-145 annuaire q atiQtlQue oui 500 10000 2014-07-08
Affichage : 1 5 / 5 hgne(s)
Fi2Ure 21: Ec.-an de gestion des documents
111.3. DEPLOIEMENT DE GAPI
111.3.1. Politique de scurit
La scurit d'une application doit tre prise en compte tous les stades de sa vie. Ellecommence au moment de la conception, quand on met en place les choix stratgiques; elle est
constante, et enfm elle se concrtise par la surveillance des oprations journalires lorsquel'application sera mise en production.
La politique de scurit a pour but de minimiser les risques de parme, d'viter que la base de
donnes soit dans un tat d'incohrence, d'viter les accs non autoriss la base et d'viter la
prsence de programmes indsirables dans le rseau. Il s'agit donc de prendre toutes les
dispositions utiles afin de rduire au minimum les effets nfastes des pannes matrielles ou
logicielles
Gestion utomaLise des Pubhca.llOllS de rI 0 53
-
111.3.2. Gestion des attaques
L'attaque est le moyen par lequel une entit accde de faon subite et avec l'intention
de nuire ou de prendre le contrle d'un systme. Nous avons identifi deux attaques possibles:
:> Les virus et autres logiciels malveillants
Considrs comme le malle plus rpandu de la scurit de l'information, les virus, dans
leur majorit, ont pour but premier l'infection en vue d'une dstabilisation du systmeinformatique auquel ils accdent. Ce sont des programmes informatiques plus ou moins
autonomes dans leur fonctionnement qui se propagent par les supports de stockage.
Dans notre systme, la prsence d'un virus provoquerait des dsagrments normes du
fait de sa capacit se propager travers le rseau et donc une infection de tout le systme si
des mesures adquates ne sont pas prises. Pour viter ces dsagrments, il sera install sur
chaque poste client, un antivirus en vue de permettre un contrle beaucoup plus rapide des
informations que les acteurs du systme auront traiter.
:> Les accs non autoriss
Les accs non autoriss ou accs malveillants reprsentent des attaques qui touchent la
confidentialit et la scurit des donnes. Les attaques d'accs malveillants prennent diverses
formes selon que l'information est stocke sur un support physique (cl USB, disque dur, CD-ROM) ou lectronique (rseau). Ces attaques peuvent donc tre ralises grce l'accsphysique de l'agresseur dans le local o se trouve l'information ; mais aussi grce un
dispositif informatique permettant d'intercepter l'information en transit sur le rseau.
La dfinition de profil utilisateur au moyen de l'utilisation de mot de passe et de nom de
connexion permettra d'offrir chaque utilisateur les donnes et traitements auxquels il a droit.
Aussi les informations telles que les mots de passe de connexion ne seront stockes ni en clair
ni sous forme dcodable dans la base; ces informations feront l'objet d'un cryptage quipermettra le brouillage des mots de passe.
Pour remdier aux attaques portant atteinte la scurit des donnes, l'INSD a mis en
place un contrle d'identification des personnes qui accdent au local o se trouve le serveur.
Gestion Automatise des Publications de l'lNSD54
-
111.3.3. Gestion des catastrophes
Le maillon faible du systme est le serveur; quant il est hors service, c'est tout le
systme qui ne tourne plus. On se concentre donc sur la scurit du serveur. Les catastrophes
qui constituent une menace pour le serveur sont les incendies, les inondations, la foudre. Pour
cela, l'INSD dispose des moyens qui sont dj mis en place pour lutter contre ces diffrentescatastrophes, savoir des extincteurs dans les locaux, un parafoudre. Les risques d'inondation
sont rduits, les bureaux des agents du service marketing tant au deuxime niveau
111.3 A. Gestion des incidents d'exploitation
En cas d'incident, l'utilisateur concern doit faire appel une personne qualifie ayant des
comptences en informatique pour la rsolution du problme. Si l'incident est li
l'application, il pourra ventuellement se servir des dossiers de programmation pour y parvenir.Au cas o le problme persiste, l'INSD pourra faire recours aux programmeurs.
111.4. POLITIQUE DE SECOURS
11104.1. Plantage du systme
La premire mesure prendre en cas de plantage du systme est de le relancer. Si le problme
persiste, il faudrait faire intervenir le groupe de projet.
111.4.2. Panne due un accs au rseau et Autres pannes critiques
En cas de panne due l'accs au rseau, on pourra faire appel un technicien rseaux.
Pour toutes autres pannes, on fera intervenir une fois de plus le groupe de projet.
III.S.TRANSITION
111.5.1. Procdure transitoire
Avant la mise en place du systme futur, celui-ci sera soumis deux types de tests afin de
valider sa qualit. Ces tests seront effectus par des dveloppeurs. Il s'agit:
~ d'un test fonctionnel: il consiste vrifier que les rsultats produits par lesystme sont ceux attendus ; ce test prendra en compte les scnarii nominaux
alternatifs et exceptionnels des diffrentes fonctionnalits du systme.
Gestion Automatise des Publications de l'INSO )55
-
:> d'un test structurel: beaucoup plus professionnel, il vise contrler le mode et
les normes mtiers de ralisation des diffrentes fonctionnalits.
A la suite de ces tests, viendra le dploiement du systme. Pour permettre la continuit des
services des dpartements couverts par le systme, nous prconisons un fonctionnement en
parallle du nouveau systme avec le systme actuel pendant un mois. Cette priode de
couplage des deux systmes sera mise profit pour l'identification d'ventuelles discordances
ou disfonctionnements du systme mais aussi et surtout d'apporter des corrections et des
amliorations afin de fournir un produit qui rponde le mieux aux besoins des utilisateurs.
Toutes les oprations de la procdure transitoire feront l'objet d'une itration jusqu'l'obtention de 90% de la qualit externe.
111.5.2. Formation des utilisateurs
Elle permettra aux utilisateurs de se familiariser avec le nouveau systme. Un systme
informatique n'est efficace que lorsque les diffrents utilisateurs prennent conscience de
certains aspects scuritaires et normes d'utilisation. Cette prise de conscience passe
ncessairement par cette formation. En effet, les utilisateurs doivent tre forms bien utiliser
les services du systme en vitant les oprations qui pourraient le dstabiliser ou prsenter des
failles de scurit et en privilgiant les oprations qui participent le mieux son maintien et
sa scurit.
Les diffrents utilisateurs auront une formation, avant toute exploitation du systme, pour se
familiariser avec ce nouveau systme. Les critiques mises lors de la formation seront un
tremplin pour amliorer la qualit du logiciel.
CONCLUSION
ce niveau, toutes les questions relatives l'agencement et aux dtails de la solution ont tmodlises
A l'issue du codage, l'application sera value via des tests avant d'tre dploy et mis la
disposition des utilisateurs.
Gestion Automatise cks Publications de /'INSD ))56
-
Au tenne de notre tude et de notre stage, des acquis considrables ont t engrangs. Ainsi, il
apparat clairement que l'infonnatisation de la gestion des publications de l'INSD sera d'un
apport considrable cette dernire.
De ce fait les documents que produit l'INSD seront suivi depuis leur production jusqu' leurcoulement. Notre application pennettra aux agents du service marketing d'avoir une vue
globale chaque instant de leur documents savoir les recettes, les clients qui s'y sont
intress, le service technique qui a produit le document ainsi que le stock de ce document.
Pour que cette problmatique puisse tre rsolue il a fallu qu'on se dote d'une dmarched'analyse robuste et assez complet pour pouvoir cerner tous les contours de notre projet.
Dans cette dmarche le langage de modlisation utilis est UML dans sa version 2.0 qui se fait
complt par le processus de dveloppement 2TUP.
D'un traitement manuel inadapt, l'INSD passera un traitement automatique des donnes et
un gain considrable en temps.
Durant ces trois mois de stage nous avons aussi pu capitaliser de nombreuses connaissances en
matire de programmation Web, tout en ralisant des acquis certains en matire de
professionnal isme.
Il est cependant notable que certaines insuffisances sont relever et corriger pour parfaire
cette application. Aussi le groupe de projet s'engage-t-i1 poursuivre des efforts dans ce sens,tout en tant dispos recevoir d'ventuelles contributions.
Gestion Automatise des Publications de l'INSD ))57
-
BIBLIOGRAPHIE:
.... Julien Pauli et Guillaume Poncon, Les cahiers du programmeur Zend FrameworkBien developper en PHP
.... Jean Engels, PHP5, Paris, Eyrolles, 2008
.... Christophe Porteneuve, Bien dvelopp pour le web 2.0, Paris, Eyrolles, 2008
WEBOGRAPHIE :
.... http://fr.wikipedia.org/wikiIFramework
.... http://julien-pauli.developpez.com/tutoriels/php/mvc-controleur/
.... www.alsacreations.com/tutoriels
.... http://zend-framework.developpez.com/
.... http://store.apple.com/fr/productffR423ZMlAlonduleur-idowell-ibox-ups-550%C2%AOva
.... http://http://www.senetic.fr/product/626475-421
RAPPORTS CONSULTES
.... NANA Sni et KOLOGO Robert: Gestion du patrimoine foncier: cas descollectivits territoriales rapport de stage ESI 2010-20 II .
.... SAGA Abdoul Karim et KIMA Franc 2011-2012: Informatisation de lagestion d'Elite Htel rapport de stage ES12011-2012
Gestion Automatise des Publications de l'INSD 58
-
Annexe 1 : Prsentation de Zend Framework
Le Zend Framework est un Framework haut niveau orient composants, pour PHP5. Il
fonctionne partir de PHP 5.1.4 et apporte un socle de solutions orient objet pour lesapplications web, des plus simples au plus complexes.
Zend FrameworkZend Framework (ZF) est un Framework open-sourcedestin aux dveloppements d'applications web et de
services web avec PHP5. Le Zend Framework est
construit en utilisant 100% de code orient-objet. Lastructure des composants du Zend Framework est
quelque peu unique ; chaque composant est conu
avec de faibles dpendances envers les autres
composants. Cette architecture faiblement couple
permet aux dveloppeurs d'utiliser les composants
individuellement.
Les fonctionnalits de Zend Framework
Dvelol)IJeurDernire versioncrit enEnvironnementlangueTypelicenceSite web
modifier
Zend Technologies @ 01.11.4 (3 Mars 2011) [+1-]PHPMulli-plaleforme
MultilingueFramework
New BSD license
frame\>vork.zend.com!9 0...
Avec ce jour une cinquantaine de packages, ZendFramework propose un ensemble de composants, permettant entre autre
./ La connexion et la gestion de bases de donnes,
./ L'intgration d'un modle MVC,
./ Un support de l'Ajax au travers de Dojo et d'un composant de cration de formulaire,
./ La gestion de l'authentification,
./ La gestion de la session PHP,
./ Et bien plus encore...
Composants de Zend Framework
Bien qu'ils puissent tre utiliss individuellement, les composants de la librairie standard de
Zend Framework forment un Framework d'application web puissant et extensible quand ils sont
combins. Le ZF offre une robuste et performante implmentation du motif MVC, une
Gestion Automatise d~s Puhlications de l'TNSD 59
-
abstraction de base de donnes simple d'utilisation, et un composant de fonnulaire qui
implmente un rendu HTML, la validation et le filtrage des donnes, ainsi les dveloppeurs
peuvent consolider toutes ces oprations en utilisant une interface orient-objet faciled'utilisation. Quel que soit le besoin de votre application, vous avez toutes les chances detrouver un composant de Zend Framework qui peut tre utilis pour rduire drastiquement
votre temps de dveloppement avec une base de tests solide
Annexe 2 : Prsentation de MvSOL
Prsentation gnrale
MySQL est un systme de gestion de base de donnes (SGBO). Il est distribu sous une doublelicence GPL et propritaire. Il fait partie des logiciels de gestion de base de donnes les plus
utiliss au monde l , autant par le grand public (applications web principalement) que par desprofessionnels, en concurrence avec Oracle, Infonnix et Microsoft SQL Server.
Principales caractristiques
MySQL supporte la nonne SQL2 (utilisation d