36
Ecole National Supérieur d'Ingénieur à Tunis اة التونسية لجمهوريعلميلي والبحث اللعاتعليم ا وزارة ال جامعة تونس المدرسةةّ الوطنياّعلي الدسينلمهن ل سّ بتونDépartement de Mathématiques Appliqués et modélisation قسم هندسة الاتّاضيّ ريةّطبيقيّ الت و جةّ النمذRapport de stage Ouvrier 1 ère année génie Mathématiques appliquées et Modélisation Réalisation d’un application J2EE Elaboré par : Haroun SMIDA Encadré par : Mr Chokri MHADHBI Entreprise d’accueil :

Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

Embed Size (px)

Citation preview

Page 1: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

Ecole National Supérieur d'Ingénieur à Tunis

لجمهورية التونسيةا

وزارة التعليم العالي والبحث العلمي جامعة تونس

بتونّس للمهندسين العليّا الوطنيّةالمدرسة

Département de Mathématiques Appliqués et modélisation النمّذجة و التّطبيقيّة ريّاضيّاتهندسة ال قسم

Rapport de stage Ouvrier

1ère année génie Mathématiques appliquées et

Modélisation

Réalisation d’un application J2EE

Elaboré par :

Haroun SMIDA

Encadré par :

Mr Chokri MHADHBI

Entreprise d’accueil :

Page 2: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

1

Remerciement

Au terme de ce stage, je tiens à exprimer mes profondes

gratitudes à mon encadreur Monsieur Chokri MHADHBI,

pour son soutien, ses directives objectives aussi pour son

engagement à m’aider et son encadrement judicieux dans le

cadre de ce stage.

Avant de commencer, j’aimerai exprimer mes vifs

remerciements et gratitudes les plus distinguées à tous qui

m’ont aidé à effectuer ce stage dans les meilleures

conditions, qui m’ont encouragé par leurs conseils précieux,

qui m’ont offert les divers es documentations efficaces et

nécessaires pour ma formation.

Enfin, je remercie mes professeurs et ceux qui ont

participés de près ou de loin dans la mise en œuvre de ce

programme de formation professionnel.

Page 3: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

2

Table des matières

TABLE DES FIGURES ...................................................................................................................................................................... 4

PRESENTATION DE LA SOCIETE : .............................................................................................................................................. 5

1. DIRECTION GENERALE : ................................................................................................................................................................ 6 a. Service Comptabilité :........................................................................................................................................................ 6 b. Service du Personnel : ....................................................................................................................................................... 6

2. DIRECTION COMMERCIALE : ......................................................................................................................................................... 6 a. Service professionnel : ...................................................................................................................................................... 6 b. Service après-vente : .......................................................................................................................................................... 6

DIRECTION INDUSTRIELLE : ....................................................................................................................................................... 7

1. SERVICE QUALITE ET FORMATION : ............................................................................................................................................. 7 2. SERVICE PRODUCTION : ................................................................................................................................................................. 8 3. SERVICE METHODE : ...................................................................................................................................................................... 8 4. SERVICE TECHNIQUE ET MAINTENANCE : ................................................................................................................................... 9

a. Service technique : .............................................................................................................................................................. 9 b. Service maintenance :........................................................................................................................................................ 9

5. RESOURCE HUMAINE : ................................................................................................................................................................ 10 6. SERVICE GESTION DE PRODUCTION : ....................................................................................................................................... 10

a. Service Logistique : .......................................................................................................................................................... 10 b. Magasin : .............................................................................................................................................................................. 10

ACTIVITE DU DEPARTEMENT INDUSTRIEL : ..................................................................................................................... 11

1. PROCESSUS D’INSERTION AUTOMATIQUE : ............................................................................................................................. 11 a. Service d’insertion Axiale : ........................................................................................................................................... 11 b. Service insertion radiale : ............................................................................................................................................. 13 c. Service insertion CMS : (composants montés en surface) ............................................................................. 15

2. INSERTION MANUELLE : ............................................................................................................................................................. 18 3. CHAINE TV ................................................................................................................................................................................... 19 4. CHAINE EXPORT .......................................................................................................................................................................... 19 5. CHAINE FINAL .............................................................................................................................................................................. 21

PRESENTATION DU PROJET : ‘GEST_COMP’ ........................................................................................................................ 23

1. PRESENTATION DE L’APPLICATION : ........................................................................................................................................ 23 2. FONCTIONNALITES ...................................................................................................................................................................... 23 3. EXIGENCES .................................................................................................................................................................................... 23 4. SPECIFICATIONS .......................................................................................................................................................................... 23

a. Gestion du personnel ...................................................................................................................................................... 24 b. Gestion des compétences .............................................................................................................................................. 24 c. Gestion des polyvalences .............................................................................................................................................. 24 d. Gestion des évaluations ................................................................................................................................................. 24

CONCEPTION ET REALISATION .............................................................................................................................................. 25

1. CONCEPTION ................................................................................................................................................................................ 25 2. MODELISATION UML ................................................................................................................................................................. 25 3. CAHIER DE CHARGES FONCTIONNEL ......................................................................................................................................... 25 4. SPECIFICATION TECHNIQUES ..................................................................................................................................................... 27

Page 4: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

3

5. REALISATION ............................................................................................................................................................................... 27 a. Plateforme de travail ...................................................................................................................................................... 27 b. Architecture de l’application ....................................................................................................................................... 27 c. Environnement de développement .......................................................................................................................... 31

BIBLIOGRAPHIE ............................................................................................................................................................................ 33

LEXIQUE .......................................................................................................................................................................................... 34

Page 5: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

4

Table des figures

FIGURE 1 :ORGANIGRAMME DE LA SOCIETE .............................................................................................................................................. 7 FIGURE 2: PROCESSUS D’INSERTION AUTOMATIQUE ............................................................................................................................. 11 FIGURE 3 :SEQUENCEUR ............................................................................................................................................................................ 12 FIGURE 4 : VCD ........................................................................................................................................................................................... 12 FIGURE 5 : MACHINE RADIALE .................................................................................................................................................................. 14 FIGURE 6 : VUE ARRIERE D’UNE MACHINE RADIALE ............................................................................................................................. 15 FIGURE 7 : TETE D’UNE MACHINE RADIALE ............................................................................................................................................ 15 FIGURE 8 : LES ETAPES DE SERVICE CMS ............................................................................................................................................... 16 FIGURE 9: DEK 256 HORIZON .................................................................................................................................................................. 17 FIGURE 10: LA MACHINE DE POSE SIEMENS ........................................................................................................................................... 17 FIGURE 11: LE FOUR .................................................................................................................................................................................. 18 FIGURE 12: TEST FINAL DES TELEVISEURS ............................................................................................................................................. 19 FIGURE 13: TESTEUR TAKAYA .............................................................................................................................................................. 20 FIGURE 14: RACK FONCTIONNEL ............................................................................................................................................................. 20 FIGURE 15: EQUIPE CONTROLE QUALITE ................................................................................................................................................ 21 FIGURE 16: CHAINE FINALE ...................................................................................................................................................................... 22 FIGURE 17: DIAGRAMME DE CAS D'UTILISATION .................................................................................................................................. 26 FIGURE 18: ARCHITECTURE LOGICIELLE CIBLE ..................................................................................................................................... 27 FIGURE 19: GWT LOGO ............................................................................................................................................................................ 28 FIGURE 20: NETBEANS LOGO ................................................................................................................................................................... 31 FIGURE 21: POWERAMC LOGO ............................................................................................................................................................... 31 FIGURE 22: APACHE TOMCAT LOGO ....................................................................................................................................................... 31 FIGURE 23: MYSQL LOGO ........................................................................................................................................................................ 32

Page 6: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

5

Présentation de la société :

La compagnie Tunisienne d’Electronique EL_ATHIR a été créée en 1965, son siège

social se situe au 27 avenue Khair-Eddine Pacha Tunis dans un local de 200 m2, dont

l’effectif est de 320 employés et son premier responsable est madame Sonia Allani,

EL_ATHIR a une capitale de 18821754 DT.

Il s’agit d’une entreprise privée qui a commencé par la production des transistors sous

l’égide de la marque THOMSON. Puis, en 1968, elle a poursuivi ce partenariat avec les

téléviseurs noir et blanc. Et depuis 1974, elle a commencé à produire les téléviseurs

couleurs.

Depuis, l’entreprise a développé ses activités, s’est étendue couvrant aujourd’hui

plus de 14000m2 et son effectif s’est agrandi jusqu’à compter plus de 800 employés.

Actuellement, l’entreprise s’est vue contrainte de réduire son effectif a 300 employés à

cause de récents évènements géopolitiques qui ont affecté l’économie tunisienne.

Raison sociale Compagnie Tunisienne de l’électronique « EL-

ATHIR »

Forme juridique Société anonyme

Fondateur Mme. Sonia ALLANI

Téléphone (+216) 71 904 133

Fax (+216) 71 908 782

Nationalité Tunisienne

Certification ISO 9001 V 2008

Activités de son département industriel

Téléviseurs couleurs et autre produit

électroniques destinés au grand public

Cartes électroniques en sous-traitance

LCD Samsung

LCD SABA (Vestel)

Page 7: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

6

Principaux clients

• SAMSUNG

• SESSY

• BOUYER

• SABA

E-mail

[email protected]

[email protected]

1. Direction générale :

a. Service Comptabilité :

Tenir la comptabilité.

Passer les écritures comptables.

Elaborer le bilan annuel.

b. Service du Personnel :

Recruter et gérer le personnel

Gérer la paie et les déclarations sociales.

Assurer les relations avec les partenaires sociaux.

Gérer le plan de formation du personnel.

Assurer la communication interne et externe

Gérer les opérations de prévention et de santé.

2. Direction commerciale :

a. Service professionnel :

Installer des produits vendus par la société.

Préparer les vidéos, les caméras, récepteurs, appareils de mesure

b. Service après-vente :

Réparer les téléviseurs uniquement produits par la maison.

Page 8: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

7

Direction industrielle :

Gérer les ressources humaines et matérielles du Département Industriel

Assumer la responsabilité des résultats industriels, des résultats qualité et de la

sécurité du personnel du Département Industriel

Coordonner les décisions inter services du Département Industriel

Assurer la liaison entre la Direction Générale et le Département Industriel

Proposer et négocier la politique industriel et les objectifs généraux avec la

direction générale.

1. Service qualité et formation :

Gestion du système de management de la qualité :

Participer à la sensibilisation du personnel par l’affichage des résultats qualité et

par les actions d’amélioration.

Direction Industrielle

Service qualité et formation

Qualité

de produit

Système

qualité

nt

Service production

Insertion

automatique

Insertion

manuelle

Service méthode

Service technique et maintenance

Service maintenance

Service

technique

Ressource

humaine

Service gestion de production

Magazin MP

Service

logistique

Agent qualité fournisseur

Figure 1 :Organigramme de la société

Page 9: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

8

Traitement des réclamations clients et mise en place des plans d’actions

efficaces.

Agent qualité fournisseur(AQF) :

Traitement et suivi des incidentes qualités fournisseur.

Veiller à la collecte et la saisie des résultats qualité des différents points de

contrôle qualité.

Assurer le suivi des dossiers de non-conformité.

Qualité produit :

Validation des nomenclatures.

Validation de process de fabrication des produits.

Réalisation et suivi du test long duré.

Un travail qui a rapporté à l’entreprise la marque de l'ISO 9001 version 2008.

2. Service production :

Fabriquer les produits conformément aux plannings, aux plans de contrôle, aux

dossiers de fabrication et aux consignes d’Assurances Qualité

Organiser le flux de production

Gérer la capacité de production (ordonnancement)

Définir les gammes et les dossiers de fabrication (méthodes)

Suivre et améliorer la fluidité

Animer le personnel dans le but de le faire participer à une amélioration continue

de la qualité des produits.

3. Service méthode :

Contrôler et valider les nomenclatures internes CTE.

Les nomenclatures servent pour l'approvisionnement ainsi que la programmation

des machines. Quant aux fiches d'instructions, elles donnent à chaque poste en détails

les opérations à effectuer jusqu'à l'évacuation au poste suivant tout en respectant les

règles de sécurité et de qualité.

Page 10: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

9

Etablir, gérer et mettre à jour les dossiers de fabrication des produits.

Travailler sur l’amélioration des procédés et des processus de fabrication et des

moyens de production.

Assurer la coordination entre les services (production, qualité, technique).

Etablir les cahiers de charge CTE des produits à commander.

4. Service technique et maintenance :

a. Service technique :

Fournir l’assistance à la production et aux différents autres services du

département

Etudier et réaliser les équipements de test, de réglages et de contrôle

Gérer la maintenance de ces équipements

Mettre en place les méthodes de réglage des produits en fabrication conformément

à leur dossier technique

Former selon besoin des opérateurs travaillant sur les équipements de test, de

réglage et de contrôle

Assurer l’analyse de défaillance des produits

Gérer la fonction métrologique

b. Service maintenance :

Mettre en œuvre la politique de la maintenance définie par la direction de

l’entreprise

Définir des stratégies les mieux adaptées pour atteindre le rendement maximal

des systèmes de production

Maintenance préventive et corrective de tous les systèmes

Travaux d’installation et de mise en route de matériels neufs

Travaux directement liés aux conditions de travail :

Sécurité, hygiène, environnement, pollution, etc.

Amélioration, reconstruction et modernisation des installations

Gestion des pièces de rechange, des outillages et des moyens de transport et de

manutention

Page 11: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

10

5. Resource humaine :

Recruter et gérer administrativement le personnel.

Gérer la paie et les déclarations sociales.

Assurer les relations avec les partenaires sociaux.

Assurer la communication interne et externe.

Gérer les opérations de prévention et de santé.

6. Service Gestion de production :

Gérer et mettre à jour les nomenclatures des produits.

Gestion et suivi de la capacité de production.

Planification et suivi de la réalisation de la production.

Contrôle et suivi de la facturation Export.

a. Service Logistique :

Approvisionner les composants nécessaires à la fabrication des produits destinés

au marché national tunisien

Assurer le transport et les formalités douanières

Réceptionner, stocker et gérer les matières premières

Gérer les magasins Produits Finis de la Sous-traitance.

Sélectionner les fournisseurs (du marché national tunisien)

b. Magasin :

Stockage et gestion des matières premiers nécessaires à la production.

Colisage de fournisseur

Utilisation de Logiciel GPAO

System FIFO (first in first out)

Coordination avec magasins extérieurs (dépôt Ben Arous).

Page 12: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

11

Activité du département industriel :

1. Processus d’insertion automatique :

La figure ci-dessous montre le processus d’insertion des ateliers automatique :

Figure 2: Processus d’insertion automatique

a. Service d’insertion Axiale :

C’est la première étape de la production. Cette partie du service est spécialisée dans

l’insertion des composants électroniques couchés sur des cartes imprimées vierge :

Diodes, Résistances, Straps (fil métalliques conductrices) ; etc.…. Suivant la nomenclature

réalisée par le service méthode.

Séquenceur :

C’est une machine qui sert à réaliser des séquences identiques d’une sélection bien

déterminée de composantes électroniques sous forme d’une bobine qui sera ensuite

utilisé par le VCD pour insérer les composantes dans les plaques électroniques.

Insertion automatique

Atelier 1

Radiale

Axiale

Atelier 2

CMS

Page 13: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

12

VCD : VCD (Variable Center Distance) :

Le VCD est la machine qui récupère les séquences réalisées par le séquenceur et les

insèrent automatiquement dans la carte électronique.

Figure 4 : VCD

Figure 3 :Séquenceur

Page 14: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

13

VCD - SEQUENCEUR :

C’est une machine qui récupère de la matière première c’est à dire les composantes

électroniques en entrer et sélectionne les composantes à insérer et les insèrent

automatiquement dans les plaques électroniques.

La machine VCD-SEQ est la nouvelle génération des machines axiales. C’est

l’assemblage de deux machines (VC + Séquenceur) en une seule machine VCD-SEQ ; elle

est commandée manuellement (chargement des plaques et des composants) et

automatiquement (insertion).

Sa fonction principale est d’insérer les composants électroniques montés

horizontalement (diodes ; résistances ; Straps…) en s’appuyant sur un chemin

d’insertion et de déplacement de la table commandé par un programme enregistré dans

la mémoire de la machine par l’ordinateur.

NB : Chaque type de plaque de n’importe quel produit à son propre programme

d’insertion + son plan de chargement.

Machine Jumper

Le Jumper est une machine similaire au VCD qui sert à insérer des simples fils

conducteurs, le travail de cette machine peut être confié au VCD ou VCD-séquenceur,

mais faute de temps et l’utilisation très fréquente des fils conducteur on a recours au

Jumper pour faciliter et spécifier la tache de chaque type de machine.

La C.T.E. a recours au Jumper car elle a rencontré des problèmes avec le fils dans le

séquenceur et le VCD-séquenceur.

Machine Presse rivet

Cette machine leur rôle fait le pliage avec une force automatique par vérin à une charge

bien déterminé pour écraser tous les rivets au même temps.

b. Service insertion radiale :

La machine d’insertion automatique radiale : cette machine a pour tâche d’insérer les

composants électroniques radiaux, l’insertion se limite aux résistances, diodes,

Page 15: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

14

transistors et aux condensateurs. La machine d’insertion automatique radiale est

similaire à celle de l’insertion axiale.

Il y a dans ce service deux machines identiques qui servent à produire deux types de

produit différents.

La première est dotée d’une technologie plus avancée que la deuxième, du coup on

remarque l’existence des mêmes effecteurs dans les deux machines sauf que dans la

première machine les composants sont plus petits de taille.

Figure 5 : Machine radiale

Cette chaîne est totalement automatisée la présence humaine se limite aux

chargements des produits dans des compartiments appropriés suivant un ordre bien

déterminé et le chargement des racks des cartes électroniques et le reste se fait

automatiquement, cela est dû à l’ajout d’autre composant à la machine comme l’ascenseur

de chargement et de déchargement.

Page 16: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

15

Figure 6 : Vue arrière d’une machine radiale

Cette machine possède une interface utilisateur pour sélectionner le programme

d’insertion et aussi permet la visualisation des problèmes rencontrés dans l’insertion

comme l’absence de produit à insérer ou des problèmes de plaquage dans l’insertion etc.

Figure 7 : Tête d’une machine radiale

c. Service insertion CMS : (composants montés en surface)

C’est la partie la plus sensible de l’insertion automatique. Le service insertion

automatique de CMS a pour tâche d’insérer les petits composants électroniques qui se

Page 17: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

16

fixent sur les cartes électroniques par l’intermédiaire d’une colle spécifique ou par de la

crème à braser.

Il y a essentiellement trois types de machine qui remplissent ses différentes taches :

La machine de sérigraphie (Dek 256 Horizon).

La machine de pose siemens des CMS.

Le four.

La machine de sérigraphie : est une machine conçue pour le dépôt de colle qui sert à

fixer les composants CMS sur les cartes électroniques.

Unité de chargement

Unité de pose de colle

Unité de placement des

composants

Four

Contrôle de qualité

Figure 8 : Les étapes de service CMS

Page 18: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

17

Figure 9: Dek 256 Horizon

La machine de pose des CMS : C’est une machine qui dépose les composantes sur la

colle déjà mise par la machine de sérigraphie d’une façon automatique dans leurs

emplacements dans la carte électronique.

Figure 10: La machine de pose siemens

Le four : cette étape est effectuée en trois séquences :

Prés chauffage

Chauffage

Refroidissement

Page 19: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

18

Figure 11: Le four

Contrôle de qualité :

Ce poste a pour objectif de définir clairement les modalités du contrôle des

composants montés en surface et de garantir la qualité des cartes sur lesquels les CMS

ont été posés.

L’opérateur vérifie :

Le bon positionnement des composants sur la carte (décalage par rapport à la

position prévu pour le composant).

La polarité des composants.

Le débordement de la colle sur les pastilles pour ne pas créer de court-circuit.

Le manque de composant.

Le contrôle est effectué à 100% dans le cas d’un nouveau produit et 10% de la

production de chaque rack pour le même produit tout en respectant la spécification du

produit.

2. Insertion manuelle :

Page 20: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

19

La chaine fait partie intégrante de l’usine, le travail qu’elle effectue est le

complément de l’insertion automatique.

En effet, les composants qui ne peuvent pas être insérés automatiquement

(présentant des caractéristiques non-conforme aux performances des machines) sont

insérés par des ouvriers manuellement : Condensateurs ; circuits intégrés ;

transformateurs ; etc.

3. Chaine TV

Différentes Etapes de Suivi d’un TV en Production :

Test statique -banc d’alignement -test fonctionnel -contrôle qualité châssis

Entrée chauffée -réglage géométrie -réglage vidéo -réglage couleur

Réglage focus-réglage son -control qualité final (TV ouvert) -rigidité diélectrique

Contrôle qualité finale (TV fermé)

Figure 12: Test final des téléviseurs

4. Chaine Export

Les fournisseurs clients passent une commande à la compagnie, puis ils envoient

les matières avec un modèle de fabrication.

Suivant un calendrier précis obéissant aux plannings, un produit est lancé sur ligne de

production. Il passe d’abord par une multitude de postes d’insertion manuelle. Une fois

terminée, la carte sera envoyée à la soudure par vague.

La carte sera par la suite contrôlée à une première étape par un testeur statique. Ce

test est dit « test in situ ». La carte n’est pas soumise à une tension élevée. Seuls des blocs

Page 21: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

20

de composants sont soumis à une basse tension afin de déterminer les éléments

défectueux.

A la fin du test, l’appareil affiche les emplacements des composants à déclarer et il

imprime leurs adresses et le problème détecté pour chacun d’eux.

Figure 13: Testeur TAKAYA

Le dépannage est fait sur le même poste de travail.

L’opératrice remplace alors les résistances, les diodes et tous les composants non

fonctionnels, puis refait le test jusqu’à ce que ce soit « valide ».

Les cartes passeront par la suite par un test fonctionnel. On mettra à l’épreuve les

performances requises par chaque modèle : son, amplification ou réduction de grandeurs

électriques, etc.

Figure 14: Rack fonctionnel

Elle est mise alors sous tension et subit des réglages afin de répondre aux tâches

demandées.

Page 22: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

21

Reste à faire le contrôle qualité qui s’avère sur cette ligne est minutieux, filtrable et

exigent en plus. La contrôleuse mentionne par écrit et avec une pastille rouge les défauts

détectés et en cas d’erreur répétitive, elle signale le problème au chef responsable.

Figure 15: Equipe contrôle qualité

Le dépannage se fait après le contrôle qualité doit être suivi par un test in situ car la

carte a été déjà mise sous tension.

Avant d’être mises en emballage, les faces cuivres des cartes sont frottées et nettoyées

à l’aide d’un produit alcoolisé (C2H60) afin d’éliminer la résine et les tâches de graisse.

Le stockage de tout le lot sera fait au magasin en attendant leur date d’expédition.

5. Chaine final

- Assemblage les cartes alimentations, les cartes mères, les speakers et insertion des

circuits courants dans la télévision.

- Fermeture par la cache arrière

- Test rigidité d’électrique

- Chauffe

- Réglage de blanc

Analyse de couleur

Générateur de mire

Media Player

Amplificateur de son

- Réglage final

- Contrôle qualité

- Emballage les télévisions

- Sarclage les palettes de télévisions

Page 23: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

22

- Contrôle.

Figure 16: Chaine finale

Page 24: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

23

Présentation du projet : ‘Gest_Comp’

1. Présentation de l’application :

L'objectif principal de mon stage est la réalisation d'une application intranet qui se présente sous le nom de Gest_Comp. (Gestion des compétences et des polyvalences).

Tenant compte de la difficulté de maintien en cohérence de la base de donnée l’évaluation mensuelle des personnels, EL-ATHIR a décidé de se doter d'un outil de gestion interne. Des fonctionnalités ont été ajoutées afin de faciliter la recherche de profils ou de compétences, et l'ajout de nouvelles compétences.

En effet, l'application gère un réel suivi des personnels à travers les taches qu'ils ont déjà effectué. Gest_Comp se divise alors en 4 modules principaux étroitement liés les uns les autres :

Gestion du personnel Gestion des compétences Gestion des polyvalences

Gestion des évaluations

2. Fonctionnalités

L’application Gest_Comp doit permettre de :

Gérer les informations du personnel Gérer les compétences Gérer les polyvalences Ajouter les évaluations Rechercher les profils ou des compétences

3. Exigences

L'application doit être développée sur un mode Utilisateur / Serveur. Tenant compte de l'évolutivité de l'application et de l'aspect « requêtes », la mise en œuvre d'une base de données est indispensable, et elle doit respecter les différentes formes normales.

4. Spécifications

Les spécifications ont été rédigées par mon tuteur, mes collègues et moi et m'ont été remises après la lecture du cahier de charges. Ce sont en fait, les recommandations du directeur de la BU (business unit) Banque, finances et Assurance (qui joue le rôle de client) qui définit les fonctionnalités principales que devra pouvoir effectuer les futurs utilisateurs de l'application.

Page 25: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

24

a. Gestion du personnel

L'application doit permettre d'ajouter, modifier, supprimer une personne.

Au minimum, une personne a :

Nom Prénom Matricule

b. Gestion des compétences

L'application doit permettre d'ajouter, modifier, supprimer une compétence.

Au minimum, une compétence a :

Numéro Description

c. Gestion des polyvalences

L'application doit permettre d'ajouter, modifier, supprimer une polyvalence.

Au minimum, une polyvalence a :

Numéro Description

d. Gestion des évaluations

L'application doit permettre d'ajouter, modifier, supprimer une évaluation.

Au minimum, une évaluation a :

Numéro Date (mois/année) Type (compétence/polyvalence) Employé

Page 26: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

25

Conception et Réalisation

1. Conception

Après lecture du cahier de charges et réalisation des IHM, une étape devient indispensable, celle de l'élaboration du cahier de charges fonctionnel et des spécifications techniques.

Cette étape essentielle dans le projet va conditionner la qualité, la rapidité et la simplicité du développement et aussi faciliter la reprise du projet par une autre personne.

2. Modélisation UML

De toute évidence, je me suis tourné vers une conception objet à l'aide du standard UML (objet relationnel Unified Modeling Language, traduisez "langage de modélisation objet unifié") qui est devenu incontournable. Cet outil méthodologique fournit les éléments indispensables pour remédier aux inconvénients majeurs de l'approche objet :

- Un langage (pour s'exprimer clairement à l'aide des concepts objets), qui doit permettre de représenter des concepts abstraits (graphiquement par exemple), limiter les ambiguïtés (parler un langage commun, au vocabulaire précis, indépendant des langages orientés objet), faciliter l'analyse (simplifier la comparaison et l'évaluation de solutions).

- Une démarche d'analyse et de conception objet, pour ne pas effectuer une analyse

fonctionnelle et se contenter d'une implémentation objet, mais penser objet dès le départ, définir les vues qui permettent de décrire tous les aspects d'un système avec des concepts objets.

Ainsi, l'UML comble une lacune importante des technologies objet que je compte utiliser par la suite. Il permet d'exprimer et d'élaborer des modèles objet, indépendamment de tout langage de programmation. De plus il normalise les concepts objet.

Les auteurs d'UML préconisent d'utiliser une démarche guidée par les besoins des utilisateurs du système, centrée sur l'architecture logicielle, itérative et incrémentale car un processus de développement qui possède ces qualités fondamentales favorise la réussite d'un projet (conseil que j'ai bien évidemment suivi).

3. Cahier de charges fonctionnel

L'objectif du cahier des charges fonctionnelles, tout d'abord, est de décrire de manière fonctionnelle l'application. Je définis ainsi qu'il me faut établir une application permettant l'utilisation partielle ou totale de fiches internes selon un profil d'utilisateur. Ainsi le document décrit, à l'aide de scénarios, toutes les fonctionnalités que doit posséder Gest_Comp ainsi que les différents acteurs amenés à l'utiliser.

Page 27: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

26

Ainsi l'application est divisée en « uses cases » ou cas d'utilisation, comportant chacun son scénario selon l'acteur, et regroupé en package. Un diagramme de cas d'utilisation a été réalisé pour pouvoir étaler la charge de travail sur la période du stage.

Diagramme de cas d’utilisation :

Figure 17: Diagramme de cas d'utilisation

Le cas d'utilisation est ensuite détaillé en un ou plusieurs scénarios. Un scénario est une suite d'échanges entre des acteurs et le système pour décrire un cas d'utilisation dans

Page 28: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

27

un contexte particulier. C'est un enchaînement précis et ordonné d'opérations pour réaliser le cas d'utilisation.

4. Spécification techniques

L'objectif du spécifications techniques est d'approfondir les fonctionnalités déjà élaborés en rédigeant des solutions adaptées et cohérentes. Ce document décrit ainsi en détails tout l'aspect technique de l'application. A savoir, son organisation, le diagramme de classes avec une description pour chacune d'elles et l'enchaînement des appels de méthodes au cours du déroulement d'un cas d'utilisation.

5. Réalisation

Dans cette partie je présente la plateforme de travail et les étapes du développement du module mission que j'ai choisi comme exemple.

a. Plateforme de travail

Cette plateforme de travail assiste le développeur à partir de l'étape de modélisation UML jusqu'au déploiement de l'application sur le serveur. Cette plateforme est utilisée par toutes les équipes de projets soit en interne ou en externe et ce pour les raisons suivantes :

Diminuer les risques tout au long du projet. Faciliter les différentes phases du projet. Augmenter la qualité de ce qui est produit (faire bien et du premier coup). Augmenter le niveau d'adéquation entre le besoin et le produit réalisé. Diminuer les coûts et délais de développement.

b. Architecture de l’application

La couche présentation : contient les composants qui doivent interagir avec l'utilisateur de l'application, comme les pages Web, les formulaires, ainsi que tout ce qui régit le comportement de l'interface utilisateur. J'utilise GWT

La couche métier : Intègre les fonctionnalités et les traitements propres à l'application. Ces fonctionnalités sont implémentées avec des composants avec états. Cette couche est générée en utilisant le Framework Spring IOC.

La couche d'accès aux données : Fournit une interface simple pour accéder aux données et les manipuler. Les composants de cette couche abstraient la sémantique de la couche de données sous-jacente. Chaque composant fournit typiquement des méthodes pour créer, lire, mettre à jour et effacer des entités de données. L'outil utilisé ici est Hibernale qui produit des objets DAO pour les entités définies dans le model UML.

La couche stockage de données : comprend l'ensemble des sources de données de l'application, constitué principalement du SGBD. Dans mon cas c'est MySQL

Page 29: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

28

i. GWT

Figure 19: GWT Logo

Page 30: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

29

GWT (Google Web Toolkit) est un Framework développé par Google, permettant de créer des pages web dynamiques en utilisant la technologie AJAX. Son fonctionnement consiste à créer l'interface graphique en utilisant le langage Java (à l'instar de la technologie swing pour les applications locales). Le code java est ensuite compilé et transformé en code JavaScript/AJAX. Ce dernier sera embarqué dans un serveur d'applications qui se chargera de le transmettre au navigateur web. Ce Framework est apparu en 2006 et est sous licence open source.

Au-delà du simple Framework, cette solution promue par Google apporte une nouvelle approche du développement d'application de type client léger. En effet, le développeur fait ici abstraction quasi complète de la complexité habituelle liée au JavaScript/CSS/HTML.

Le Framework 1(*): est un espace de travail modulaire. C'est un ensemble de bibliothèques, d'outils et de conventions permettant le développement rapide d'applications. Il fournit suffisamment de briques logicielles et impose suffisamment de rigueur pour pouvoir produire une application aboutie et facile à maintenir. Ces composants sont organisés pour être utilisés en interaction les uns avec les autres (voir urbanisation).

Un framework fournit un ensemble de fonctions facilitant la création de tout ou d'une partie d'un système logiciel, ainsi qu'un guide architectural en partitionnant le domaine visé en modules. Un framework est habituellement implémenté à l'aide d'un langage à objets, bien que cela ne soit pas strictement nécessaire : un framework objet fournit ainsi un guide architectural en partitionnant le domaine visé en classes et en définissant les responsabilités de chacune ainsi que les collaborations entre classes. Un sous-ensemble de ces classes peuvent être des classes abstraites.

Le déploiement à grande échelle de bibliothèques d'objets exige un framework ; celui-ci fournit un contexte où les composants sont réutilisés.

Si l'utilisation du terme bibliothèque est limitée à l'ensemble des fonctions du système, le terme de framework peut être employé par extension pour inclure également l' architecture logicielle préconisée pour cette bibliothèque (organisation en couches, utilisation du modèle MVC, etc.), voire l'environnement de développement bâti autour ( Microsoft .NET + Visual Studio, etc.) même si celui-ci est capable de gérer différents frameworks.

On trouve différents types de frameworks :

Framework d'infrastructure système : pour développer des systèmes d'exploitation, des interfaces graphiques, des outils de communication. (exemple : Framework .Net, Eclipse, NetBeans, Struts)

Framework d'intégration intergicielle : pour fédérer des applications hétérogènes. Pour mettre à dispositions différentes technologies sous la forme d'une interface unique. (Exemple : Ampoliros avec ses interfaces RPC, SOAP, XML)

Frameworks d'entreprise : pour développer des applications spécifiques au secteur d'activité de l'entreprise.

Page 31: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

30

Frameworks orientés Système de gestion de contenu

Les principaux avantages de ces frameworks sont la réutilisation de leur code, la standardisation du cycle de vie du logiciel (Spécification, développement, maintenance, évolution), ils permettent de formaliser une architecture adaptée au besoin de l'entreprise. Ils tirent parti de l'expérience des développements antérieurs.

Ces frameworks sont en quelque sorte des progiciels extrêmement souples et évolutifs

Ajax : ou Asynchronous JavaScript And XML (« XML et JavaScript asynchrones »), est un acronyme désignant une solution informatique libre pour le développement d' applications Web. À l'image de DHTML ou de LAMP, AJAX n'est pas une technologie en elle-même, mais un terme qui évoque l'utilisation conjointe d'un ensemble de technologies libres couramment utilisées sur le Web :

- HTML (ou XHTML) pour la structure sémantique des informations.

- CSS pour la présentation des informations.

- DOM et JavaScript pour afficher et interagir dynamiquement avec l'information

présentée.

- l'objet XMLHttpRequest pour échanger et manipuler les données de manière

asynchrone avec le serveur Web.

- XML.

En alternative au format XML, les applications AJAX peuvent utiliser les fichiers texte ou JSON. Les applications AJAX peuvent être utilisées au sein des navigateurs Web qui supportent les technologies décrites précédemment. Parmi eux, on trouve Mozilla, Firefox, Internet Explorer, Konqueror, Safari ou encore Opera. Toutefois, ce dernier ne supporte pas les transformations XSLT nativement pour les versions antérieures à la 9.0

Java Swing: est une bibliothèque graphique pour le langage de programmation Java, faisant partie du package Java Foundation Classes (JFC), inclus dans J2SE. Swing constitue l'une des principales évolutions apportées par Java 2 par rapport aux versions antérieures.

Swing offre la possibilité de créer des interfaces graphiques identiques quel que soit le système d'exploitation sous-jacent, au prix de performances moindres qu'en utilisant Abstract Window Toolkit (AWT). Il utilise le principe Modèle/Vue-Contrôleur (M/VC, les composants Swing jouent en fait le rôle de Contrôleur au sens du MVC) et dispose de plusieurs choix d'apparence (de vue) pour chacun des composants standard

ii. Hibernate

Hibernate est un Framework de mapping objet/relationnel ou de persistance de données pour J2EE. En effet, la couche applicative voit les données comme des classes dont le contenu reste en mémoire même après la fin d'exécution du programme. D'où persistance objet des données. De plus, le lien entre les classes exposées et la source physique des données (moteur base de données relationnelle) est défini par un fichier XML. D'où mapping objet relationnel.

Page 32: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

31

iii. Spring

SPRING est un conteneur dit « léger », c'est-à-dire une infrastructure similaire à un serveur d'application J2EE. Il prend donc en charge la création d'objets et la mise en relation d'objets par l'intermédiaire d'un fichier de configuration qui décrit les objets à fabriquer et les relations de dépendances entre ces objets. Le cœur de SPRING et ce qui fait sa très grande force sont la mise en œuvre du design pattern « Inversion Of Control » ou encore « Dependency Injection ». L'idée du pattern IOC est très simple, elle consiste, lorsqu'un objet ‘A’ a besoin d'un objet ‘B’, à déléguer à un objet ‘C’ la mise en relation de ‘A’ avec ‘B’.

c. Environnement de développement

Cette partie présente les différents outils et logiciels de développement utilisé avec l'architecture logicielle.

i. NetBean

Figure 20: NetBeans Logo

Netbeans est un environnement de développement intégré (EDI) qui supporte

une large variété de langages de programmation et d'outils de collaboration.

ii. Power AMC

Figure 21: PowerAMC Logo

C’est un outil de modélisation qui permet à la fois de faire du Merise et de l'UML.

iii. Apache Tomcat

Figure 22: Apache Tomcat Logo

Tomcat est un conteneur de servlet J2EE. Issu du projet Jakarta, Tomcat est désormais un projet principal de la fondation Apache. Tomcat implémente les spécifications des servlets et des JSP de Sun Microsystems. Il inclut des outils pour la configuration et la gestion, mais peut également être configuré en éditant des fichiers de configuration XML. Comme Tomcat inclut un serveur HTTP interne, il est aussi considéré comme un serveur HTTP.

Page 33: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

32

iv. MySQL

Figure 23: MySQL Logo

MySQL est un serveur de bases de données relationnelles SQL développé dans un souci de performances élevées. Il est multithread, multi-utilisateurs. C'est un logiciel libre développé sous double licence en fonction de l'utilisation qui en est faite : dans un produit libre (open-source) ou dans un produit propriétaire. Dans ce dernier cas, la licence est payante, sinon elle est libre.

Page 34: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

33

Bibliographie

http://fr.wikipedia.org/wiki/Java_2_Enterprise_Edition

http://www.memoireonline.com/

http://librapport.org/getpdf.php?get=841&id=17&pagename=FILE:download/document%20view

JDK1.8

http://java.sun.com/j2ee/1.8/docs/api/index.html

Apache Tomcat

http://tomcat.apache.org/

Spring IOC

http://www.martinfowler.com/articles/injection.html,

http://smeric.developpez.com/java/uml/avalon/ioc/

GWT

http://code.google.com/webtoolkit/

Hibernate 3.0

http://www.hibernate.org/hib_docs/reference/fr/html/

MySQL

http://www-fr.mysql.com/

Page 35: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

34

Lexique

Apache Tomcat

Conteneur "Open Source" de Servlet J2EE. Il fait partie du projet Jakarta au sein de la fondation Apache. Tomcat implémente les spécifications des Servlets et des JSP de Sun Microsystems. Comme Tomcat inclut un serveur HTTP interne, il est aussi considéré comme un serveur HTTP.

HTML

Langage informatique créé et utilisé pour écrire les pages Web. C'est un langage de balises surtout axé sur la mise en forme du texte.

J2EE

"Java 2 Platform Entreprise Edition", c'est une spécification pour le langage de programmation Java de Sun plus particulièrement destiné aux applications d'entreprise. Dans ce but, toute implémentation de cette spécification contient un ensemble d'extension au Framework Java standard (J2SE) afin de faciliter la création d'applications réparties.

JSP

"Java Server Pages", technologie basée sur Java qui permet aux développeurs de générer dynamiquement du code HTML, XML ou tout autre type de page Web. La technologie permet au code Java et à certaines actions prédéfinies d'être ajoutés dans un contenu statique.

MySQL

Gestionnaire de base de données libre.

Oracle

Système de gestion de base de données relationnelle fourni par Oracle Corporation et couramment utilisé dans les applications sur différentes plates-formes.

Servlets

C'est une API qui permet de générer dynamiquement des données au sein d'un serveur HTTP. Ce programme Java s'exécute dynamiquement sur le serveur Web et permet l'extension des fonctions de ce dernier : accès à des bases de données, transactions...

SGBD

Abréviation pour Système de Gestion de Base de Données.

Page 36: Rapport Stage Ouvrier - Application J2EE - Haroun SMIDA

35

SQL

"Structured Query Language" ou langage structuré de requête est un pseudo-langage informatique standard et normalisé destiné à interroger ou manipuler une base de données relationnelle.

UML

"Unified Modeling Language", c'est un langage graphique de modélisation des données et des traitements.

XML

"eXtensible Markup Langage", standard du W3C qui sert de base pour créer des langages de balisage : c'est un "métalangage".