Académique Documents
Professionnel Documents
Culture Documents
1. Introduction.................................................................................................................................15
2. Présentation de l’entreprise........................................................................................................15
2.1. Présentation de SAGEMCOM...............................................................................................15
2.2. Présentation de SAGEMCOM Tunisie..................................................................................17
2.2.1. Statut...........................................................................................................................17
2.2.2. Organisation générale..................................................................................................17
2.2.3. Effectif..........................................................................................................................17
2.2.4. Agréments Qualité.......................................................................................................18
2.2.5. Domaines d’activités et principaux clients...................................................................18
2.2.6. Spécificités...................................................................................................................19
3. Atelier décodeur et fonction Test................................................................................................19
3.1. Atelier Décodeur..................................................................................................................19
3.2. Fonction Test.......................................................................................................................20
3.2.1. Modélisation de la fonction Test..................................................................................20
3.2.2. Test In-Situ...................................................................................................................22
4. Approche matérielle du test In-Situ.............................................................................................22
4.1. Interface..............................................................................................................................22
4.2. Testeur In-Situ.....................................................................................................................23
5. Environnement logiciel du test In-Situ.........................................................................................25
5.1. Programme principal...........................................................................................................25
5.2. Langages de programmation...............................................................................................28
5.2.1. BT-Basic........................................................................................................................28
5.2.2. VCL (Vector Control Language)....................................................................................29
6. Présentation du projet.................................................................................................................29
6.1. Problématique.....................................................................................................................29
6.2. Etude empirique..................................................................................................................30
6.2.1. Temps d’arrêt de production.......................................................................................30
6.2.2. Coût d’arrêt de production..........................................................................................31
6.3. Travail demandé..................................................................................................................31
7. Conclusion...................................................................................................................................31
Page 4
Table des Matières
1. Introduction.................................................................................................................................33
2. Méthodologie du travail..............................................................................................................33
2.1. Choix du processus de développement..............................................................................34
2.2. Présentation 2TUP[3]...........................................................................................................35
2.3. Présentation du language UML...........................................................................................37
3. Capture des besoins et cas d’utilisation.......................................................................................37
3.1. Capture des besoins.............................................................................................................37
3.1.1. Les besoins fonctionnels..............................................................................................38
3.1.2. Besoins opérationnels..................................................................................................38
3.1.3. Spécifications et contraintes........................................................................................38
3.2. Cas d’utilisation....................................................................................................................38
3.2.1. Identification des acteurs.............................................................................................39
3.2.2. Diagramme de cas d’utilisation....................................................................................39
3.2.3. Diagramme d’activités.................................................................................................41
4. Scénarios d’utilisation..................................................................................................................41
4.1. Diagramme de séquences du scénario nominal..................................................................42
4.1.1. Diagramme de séquence relatif aux administrateurs..................................................43
5. Capture des besoins techniques..................................................................................................47
5.1. Spécification d’architecture.................................................................................................47
5.2. Spécification matérielle.......................................................................................................48
5.2.1. Côté serveur.................................................................................................................48
5.2.2. Côté Client...................................................................................................................48
6. Conclusion...................................................................................................................................48
1. Introduction.................................................................................................................................50
2. Environnement de travail de l’application...................................................................................50
2.1. Présentation de la plate-forme .NET....................................................................................51
2.2. Présentation du Visual Studio..............................................................................................52
2.3. Applications Windows.........................................................................................................52
3. Implémentation...........................................................................................................................54
3.1. Conduite de processus de développement..........................................................................54
3.2. Etapes de réalisation............................................................................................................55
3.2.1. Développement de l’application de contrôle des modifications des fichiers de test . .55
3.2.2. Développement de l’application d’envoi d’email.........................................................56
3.2.3. Création de la base de données...................................................................................56
Page 5
Table des Matières
Page 6
Liste des Figures
Page 7
Liste des Figures
Page 8
Liste des Tableaux
Page 9
Liste des Abréviations
BS : Boundary Scan
BU : Business Unit
CA : Chiffre d’Affaire
M2M : Machine-to-Machine
Page 10
Liste des Abréviations
SAT : Satellite
TER :Terre
TF :Test Fonctionnel
TI :Test In-Situ
TT :Terminal Technicien
Page 11
Introduction Générale
Introduction Générale
Dans des secteurs compétitifs, à savoir, l’industrie électronique, les gains en qualité et en
temps pèsent pour l’entreprise. Ils lui permettent de préserver son image de marque parmi les
différents éditeurs sur le marché et de s’imposer surtout que le secteur, grâce à la tendance
vers la maîtrise des technologies de fabrication et de test des cartes électroniques, est en
pleine expansion.
Notre entreprise d’accueil SAGEMCOM TUNISIE, est l’un des leaders dans le domaine
de haute technologie, qui a fait du développement de la démarche d’auto-qualité et de la
réduction du nombre de réclamations clients le cœur de ses objectifs.
Notre projet de fin d’études s’intègre dans cette politique globale et consiste à développer un
logiciel de surveillance et de suivi des programmes de test In-Situ des cartes électroniques
des décodeurs TV, réalisé au sein de SAGEMCOM TUNISIE. Il permet l’amélioration de la
qualité de test et la réduction de nombre de réclamations clients qui en résultent. Il réalise
aussi un gain en temps et en coût d’intervention suite aux modifications non-souhaitées des
programmes de test.
Ce mémoire s’articule autour de trois chapitres.Le premier chapitre est dédié à présentation
de l’environnement du travail et de la problématique. Le deuxième chapitre présente le choix
de la méthodologie et la démarche de conception utilisées pour étudier les besoins de ce
projet. Le troisième chapitre est consacré à la réalisation et au test de l’application
développée.
Page 12
Introduction Générale
Page 13
Chapitre 1 : Environnement de Travail et Problématique
Chapitre
1
Environnement de Travail et Problématique
1. Introduction
2. Présentation de l’entreprise
2.1. Présentation de SAGEMCOM
2.2. Présentation de SAGEMCOM Tunisie
3. Atelier décodeur et fonction Test
3.1. Atelier Décodeur
3.2. Fonction Test
4. Approche matérielle du test In-Situ
4.1. Interface
4.2. Testeur In-Situ
5. Environnement logiciel du test In-Situ
5.1. Programme principal
5.2. Langages de programmation
6. Présentation du projet
6.1. Problématique
6.2. Etude empirique
6.2.1. Temps d’arrêt de production
6.2.2. Coût d’arrêt de production
6.3. Travail demandé
7. Conclusion
Page 14
Chapitre 1 : Environnement de Travail et Problématique
1. Introduction
2. Présentation de l’entreprise
2.1. Présentation de SAGEMCOM
SAGEMCOM est un groupe français spécialisé dans le domaine de haute technologie à
dimension internationale issu de la branche Communications de l’ex SAGEM. C’est
aujourd’hui un groupe privé indépendant détenu principalement par The Carlyle Group et ses
salariés.
Ayant acquis des positions de premier plan grâce à son fort potentiel d’innovation,
SAGEMCOM affirme son ambition de devenir un des leaders mondiaux des terminaux Haut
Page 15
Chapitre 1 : Environnement de Travail et Problématique
BU Documents
20,12%
BU Décodeurs TV
numériques 31,43%
Figure1.2 : Répartition des activités de SAGEMCOM
Le group SAGEMCOM est présent dans plus de 40 pays au travers d’une soixantaine d’entités [1].
SAGEMCOM affirme son ambition de devenir un des leaders mondiaux des terminaux
communicants à forte valeur ajoutée. Elle opère sur les marchés du haut-débit, des télécoms et
de l’énergie, et de la gestion de documents : terminaux d’impression grand public
etprofessionnels, décodeurs de TV numérique, terminaux haut-débit et résidentiels,
communication M2M, maîtrise de l'énergie et systèmes, partenariats télécom et convergence.
Page 16
Chapitre 1 : Environnement de Travail et Problématique
Resp
Resp Resp Resp Resp Resp
CUF CUF Resp .
Indu . Main
. de CUF .
STB STB ADT: Test
ADT:* Indu ATR:
Mour s Proc ten- ATR
Abdelk Test
Wajih
1 2 Roma Erwa
ADT Salah ance Nuit ATR:
s Franci
ad ADT ess Frank Fethi ader ATR
BACC in n GHRI Adem
ATR s
MAST VERY Dziri BOUSS
ARI FORN CORN BI ETTA ABIDI DUPU
OUR
*Lieu de stage ELLI EC Y
Figure 1.4 : Organisation de SAGEMCOM Tunisie
2.2.3. Effectif
L’évolution du nombre de personnel de SAGEMCOM Tunisie pendant toute la durée de
son activité est illustrée par l’histogramme suivant :
2011 4605
2010 3652
2009 3084
2008 3540
2007 3050
2006 1550
2005 800
2004 550
55% 45%
2003 80
Fem Ho
Figure 1.5 : Evolution de l’effectif 2003-2011
mes mm
es
Page 17
Chapitre 1 : Environnement de Travail et Problématique
L’extension des activités a été accompagnée par une évolution du nombre du personnel
qui s’est multiplié fois 60 dans une période de 8 ans avec un taux d’encadrement de 20% et
une moyenne d’âge de 26 ans.
Page 18
Chapitre 1 : Environnement de Travail et Problématique
2.2.6. Spécificités
L’Activité Décodeurs de TV numériques ADT de SAGEMCOM représente le plus grand
chiffre d’affaire dans le groupe (442 millions d’euros en 2010 environ 33.43% de l’ensemble
des CA) et actuellement le leader européen des décodeurs pour l’IPTV et la TNT[1].
Pour l’assurance de la production en très grandes séries des décodeurs de TV
numériques (350 000 pièces/mois), SAGEMCOM Tunisie dispose d’un service de Test ADT
au sein duquel s’est déroulé notre stage de fin d’études et dont la fonction sera détaillée dans
la partie qui suit.
A l'arrivée du circuit imprimé nu, celui-ci est déballé et inséré dans un rack antistatique.
Le rack rempli, est déposé sur un désempileur qui va faire sortir automatiquement les circuits
un à un et les envoyer dans la première machine, la sérigraphie. Cette dernière étale une pâte
à braser à base d'étain permettant, après avoir été chauffée, de souder les composants sur le
circuit imprimé. Les machines de pose des CMS placent les composants sur le circuit et le
four de refusion fait chauffer l'étain pour assurer le contact.
Page 19
Chapitre 1 : Environnement de Travail et Problématique
Nous avons donc un circuit équipé de composants. Il est temps maintenant d'insérer les
composants traversants manuellement (prise USB, Tuner, blindages,…). Ensuite, le circuit
passe à la vague pour la soudure. Une fois refroidis et nettoyés les circuits passent à
l’assemblage et au conditionnement. Il ne reste plus qu’à emballer et expédier au client.
Page 20
Chapitre 1 : Environnement de Travail et Problématique
Page 21
Chapitre 1 : Environnement de Travail et Problématique
4.1. Interface
L’interface se partage en deux parties aussi, une partie supérieure qui est composée de la
cloche, les sondes et les switchers et une partie inférieure qui contient les points test. La
figure suivante montre un exemple d’interface (voir annexe).
Page 22
Chapitre 1 : Environnement de Travail et Problématique
Pour effectuer le test in situ d’une carte, il faut appliquer celle-ci sur un lit à clous. Et pour
cela, la grande majorité des interfaces utilise un système de dépression. La carte est « aspirée
» contre le lit à clous. Les sondes sont fixées dans une planche immobile solidaire du testeur.
Au-dessus de cette planche, une planche mobile (montée sur ressort ou sur joint souple) peut
monter ou descendre sous l’effet de dépression. Cette plaque mobile est percée de sorte que
les sondes puissent la traverser lorsqu’elle descend. C’est sur cette plaque que l’on place la
carte à tester (un point de test en regard de chaque trou). La dépression assure le maintient de
la carte contre la plaque mobile qui descend jusqu’à ce que les sondes entrent en contact avec
les points de test.
Imprimante
Clavier + Souris
Calculateur
Testhead
Nous détaillons dans les deux figures 1.12 et 1.13 les principes de test des composants
digitaux et analogiques.
Page 23
Chapitre 1 : Environnement de Travail et Problématique
Le composant à tester est représenté dans la figure 1.12 par la résistance Rx. Le programme
de test commande la carte CONTROL pour contrôler la carte de PIN et la carte des relais
ASRU. Afin de connecter le composant au circuit MOA, la source de tension Vs est
appliquée, et la sortie de MOA est mesurée par un détecteur qui détermine la valeur du
composant.
Rref
V MAO= V (éq.1)
Rref + Rx S
La figure 1.13 décrit le schéma fonctionnel d’un exemple du test digital. Le composant à
tester comporte des portes NAND. Nous appliquons des signaux logiques à partir des drivers
(de D1 à D4). Les récepteurs (portes OU exclusive R1 et R2) comparent la sortie du
composant à des références imposées par le programme du test. Deux cas sont possibles :
-
Figure 1.13 : Schéma fonctionnel pour le test des composants digitaux
Page 24
Chapitre 1 : Environnement de Travail et Problématique
Dans le programme du test, les états attendus et les signaux envoyés au composant sont
déclarés comme des vecteurs. Par exemple, pour notre cas (le composant à tester comporte
des portes NAND) quand nous envoyons le vecteur 1010 les récepteurs compare le vecteur de
sortie de ce composant au vecteur attendu être reçu 11 si les deux vecteurs sont identiques le
composant est bon sinon il est mauvais.
Initialis
ation
Déclaration
des options
hardware Programmation du flash
de chaque au niveau test_fonctionnel
Choix
type
Test type du
Pré- NON produit
Téléchar
short ger
OUI
Boot
Test Choix
short/ NON type du
open produit
Téléchar
OUI ger
Test Nomenc
testj NON Choix
lature
et type du
OUI produit
Téléchar
Test
ger
anal NON
Loader
og Choix
OUI type du
Test produit
degit NON Téléchar
ger TT
al Choix
OUI
Test type du
foncti NON produit
Téléchar
onnel
OUI ger CRC
Test
Test
mauv
bon
ais
Figure 1.14 :Organigramme du test In-Situ
Page 25
Chapitre 1 : Environnement de Travail et Problématique
Description
Test pré-short :
- Mesure les impédances de faible valeur,
- Vérification de la position des cavaliers et switchers.
Test short et open :
- Détecte la présence des courts-circuits attendus, ainsi que l’absence de tous autres
courts-circuits dit non attendus.
Test Analogique :
- Vérifier les valeurs des composants analogiques (résistances, condensateurs, jumper,
transformateurs, transistors, LED, Zener).
Test jet :
Ce test permet de détecter les problèmes de soudures sur les broches des composants.
- Si mesure < seuil bas : pin du composant en l’air (mal soudée ou composant absent),
- Si mesure > seuil haut : court-circuit entre les broches.
Test Polarity Check :
- Vérifier le bon positionnement des capacités polarisées ;
- Mesurer de la capacité dans les deux sens avec un rapport qui doit être < 1.
Test Connect Check :
- Permet de vérifier la présence des diodes internes de clamping des composants
numériques.
Test Digital :
- Ce test est dédié aux circuits intégrés.
Test Mixed :
- Regroupe le test analogique et le test digital.
Le test d’un produit quelconque nécessite différents fichiers. La figure 1.15 explique
l’arborescence de programme du test.
Page 26
Chapitre 1 : Environnement de Travail et Problématique
Agile
nt30
70
boar diagno
auto
ds stics
file
21 37 ……
60 00 ……
mip mcp3 mcp …….
x _tnt 2 .
Sous le répertoire boards nous trouvons les programmes du test de chaque interface de
produit comme mcp2, mipx…etc. Nous disposons de :
- testplan: programme en BT-Basic contenant tous les appels aux tests des composants.
Il est exécuté à chaque test de carte;
- Répertoire analog contenant les fichiers de programmes de test écrits en BT-Basic de
chaque composant analogique testé ;
- Répertoire digital contenant les fichiers de programmes de test écrits en VCL de
chaque composant digital testé ;
- testorder: ce programme contient tous les composants de la carte électronique. Il
spécifie si le composant est testé ou il n’a pas d’accès donc il n’est pas testé (nulltest)
et il spécifie aussi si ce composant est commun pour tous les types de produit (voir
annexe) ;
- wirelist: ce fichier contient une liste de connections (wire) entre l’interface module
pin dans la carte de pin et les sondes dans l’interface. Chaque connexion listée dans le
wirelist spécifie la carte de pin nécessaire.
Page 27
Chapitre 1 : Environnement de Travail et Problématique
Remarque:
- Le testeur fait le test de deux cartes en même temps. Nous trouvons par exemple, un
fichier pour la résistance R1 de la première carte nommé 1%r1 et un fichier pour la
résistance R1 de la deuxième carte nommé 2%r1. Ces fichiers sont ''linkés'' c’est à
dire que si nous modifions 1%r1 la modification sera automatiquement répercutée
dans 2%r1 ;
- Le testeur exécute seulement les objets pour cela, dans les répertoires analog et
digital nous trouvons les fichiers objets .o de chaque composant (1%r1.o, 2%r1.o).
- Dans des cas bien déterminés, le technicien test peut éviter de passer par toutes ses
étapes de test en précisant dans les fichiers testplan ou testorder les étapes de test à
abandonner. Mais toute modification non souhaitée peut aboutir à un produit non
conforme.
5.2.1. BT-Basic
Le BT-Basic est le langage de programmation qui permet d’écrire des commandes dans le
système Agilentboard test. Les possibilités de programmation de BT-Basic incluent:
- Opération de virgule flottante,
- Modification de configuration binaire (jusqu'à 32 bits),
- Opérations (arithmétique et logiques),
- Variables (local et global),
- Sous-programmes,
- Étiquettes,
- Fonctions (arithmétique, logarithmique, exponentiel et trigonométrique),
- La modification de chaîne de caractères,
- L'image I/O,
- Les boucles (if-then-else, goto, et for-next),
- Manipulation et édition des répertoires et des fichiers.
Page 28
Chapitre 1 : Environnement de Travail et Problématique
6. Présentation du projet
6.1. Problématique
L’un des principaux objectifs que SAGEMCOM Tunisie s’est fixée pour l’année 2011 est
de réduire de 25% le nombre de réclamations clients.C’est dans ce cadre que notre projet de
fin d’études a été proposé et dans le but d’assurer la qualité des Test In-Situ et diminuer le
nombre de réclamations clients qui en résultent.
Page 29
Chapitre 1 : Environnement de Travail et Problématique
Dans la phase de Test In-Situ de l’ADT, les interfaces aussi bien que les fichiers de test
changent en fonction des produits à tester. Les techniciens sont alors autorisés à apporter des
modifications sur quelques fichiers de test pour les adapter aux nouveaux produits et dans
d’autres cas et abandonner quelques étapes de test.
Une modification non souhaitée de ces fichiers peut entrainer des défauts de
programmation des micros contrôleurs PIC, donc des défauts produits qui ne peuvent être
détectés qu’à la réception du produit chez les clients.
Notre projet consiste alors à développer une application qui permet de contrôler les
fichiers de test et d’alerter les responsables de Test In-Situ en temps réel en cas de
modification et précisant les types de modifications si nécessaire.
Avec :
- TpNC :Temps de production non conforme.
- NeqA: Nombre d’équipes en arrêt.
- NjrA : Nombre de jour d’arrêt pour chaque équipe.
- Nheq : Nombre d’heures d’arrêt par équipe
360 Heures
Page 30
Chapitre 1 : Environnement de Travail et Problématique
Avec:
- Cg: Coût global.
- Ch: Coût d’arrêt par heure.
- Cr : Coût de retrofit
15 400 Euros
7. Conclusion
Les défauts de programmation des micros contrôleurs PIC constituent l’une des sources
de non-conformité des produits au sein de l’atelier décodeur. L’impact de ce défaut a été
évalué, dans ce chapitre, en termes de temps et de coût.
Pour la réduction de ces pertes, nous avons opté pour une application qui permet le suivie
et la surveillance des programmes de test In-Situ des cartes électronique du produit
décodeur.
Page 31
Chapitre 1 : Environnement de Travail et Problématique
Dans le chapitre suivant, nous avons à présenter les phases de spécifications et de conception
de notre application.
Page 32
Chapitre2 : Spécification et analyse conceptuelle
Chapitre
2
Spécification et analyse conceptuelle
1. Introduction
2. Méthodologie du travail
2.1. Choix du processus de développement
2.2. Présentation 2TUP[3]
2.3. Présentation du language UML
3. Capture des besoins et cas d’utilisation
3.1. Capture des besoins
3.1.1. Les besoins fonctionnels
3.1.2. Besoins opérationnels
3.1.3. Spécifications et contraintes
3.2. Cas d’utilisation
3.2.1. Identification des acteurs
3.2.2. Diagramme de cas d’utilisation
3.2.3. Diagramme d’activités
4. Scénarios d’utilisation
4.1. Diagramme de séquences du scénario nominal
4.1.1. Diagramme de séquence relatif aux administrateurs
5. Capture des besoins techniques
5.1. Spécification d’architecture
5.2. Spécification matérielle
5.2.1. Côté serveur
5.2.2. Côté Client
6. Conclusion
Page 33
Chapitre2 : Spécification et analyse conceptuelle
1. Introduction
Les phases de la spécification et la conception sont des déterminantes de notre projet. Nous
allons commencer tout d’abord par expliquer notre choix du processus de développement et
la méthode de conception. Ensuite, nous allons passer à l’analyse des besoins fonctionnels et
non fonctionnels de notre projet. Enfin, nous allons finir avec les diagrammes de cas
d’utilisation et de séquence.
Phase de
Phase de Phase de
spécificatio
conception réalisation
n
Chef de Spécificateur
Projet Analyste
Rédactio
Utilisateur -
n des
Concept
spécificat
eur
Analyse ions
Ko Analys
des Validati
générales e-
besoins on Concep
O tion
k
Spécification
Cahier des
s
charges
La figure 2.1 montre le cycle de vie d’une application informatique et détaille les phases
de spécification et de conception auxquelles nous allons nous intéresser tout au long de ce
chapitre.
2. Méthodologie du travail
Page 34
Chapitre2 : Spécification et analyse conceptuelle
Page 35
Chapitre2 : Spécification et analyse conceptuelle
Nous allons opter pour la méthode 2TUP parce qu’elle se distingue des autres méthodes
par son cycle en Y qui permet de paralléliser et de dissocier les besoins fonctionnels des
besoins techniques et donc de mieux répartir les contraintes initiales en amont du projet.
2.2. Présentation2TUP[3]
La méthode 2TUP sépare les aspects techniques des aspects fonctionnels avant de les
regrouper dans la phase de réalisation.
La méthode 2TUP est basée sur l’itération et l’incrémental. 2TUP permet de séparer les
contraintes fonctionnelles des contraintes techniques, sous la forme de deux branches :
– Branche Fonctionnelle
– Branche Technique
– Branche Conception-Réalisation
Capture des besoins fonctionnels : produit le modèle des besoins focalisé sur le métier des
utilisateurs. Elle qualifie, au plus tôt possible le risque de produire un système inadapté aux
utilisateurs. Cette phase a pour objectif de définir :
– La frontière fonctionnelle entre le système considéré comme une boîte noire et son
environnement, c’est le niveau contexte.
Page 36
Chapitre2 : Spécification et analyse conceptuelle
– Les activités attendues des différents utilisateurs par rapport au système toujours
envisagé comme une boîte noire, c’est le niveau cas d’utilisation
Capture des besoins techniques : recense toutes les contraintes sur les choix de
dimensionnement et la conception du système. Les outils et le matériel sélectionnés ainsi que
la prise en compte des contraintes d’intégration avec l’existant. Cette étape permet de définir
le modèle d’analyse technique. Le rôle de ce dernier est d’établir les couches logicielles et y
spécifier les activités techniques attendues.
La branche conception-réalisation
Conception préliminaire : est une étape délicate, car elle intègre le modèle d’analyse
fonctionnelle dans l’architecture technique de manière à tracer la cartographie des
composants du système à développer. Cette étape permet de produire le modèle de
conception système. Ce dernier organise le système en composants, délivrant les services
techniques et fonctionnels. Ce modèle regroupe les informations des branches technique et
fonctionnelle.
Codage et Test: C’est dans l’étape de codage que s’effectue la production des composants et
les testes des unités de code au fur et à mesure de leur réalisation.
Page 37
Chapitre2 : Spécification et analyse conceptuelle
Page 38
Chapitre2 : Spécification et analyse conceptuelle
- Informer les acteurs des modifications apportés sur les programmes de test. Ainsi,
l'information se fait par l'envoi des e-mails suivant un modèle bien déterminé ;
- Permettre aux acteurs de choisir les produits dont les fichiers de test vont être
contrôlés.
- Enregistrement des identifiants, des mots de passe, des droits d’accès, des nouveaux
produits dans une base de données.
Page 39
Chapitre2 : Spécification et analyse conceptuelle
Acteur 1:
Utilisateur: Tout employé appartenant au service Test In Situ ayant le droit d’utiliser
l’application.
Acteur 2:
Page 40
Chapitre2 : Spécification et analyse conceptuelle
Le diagramme des cas d’utilisation exclusifs à l’administrateur du système est illustré par la
figure 2.5.
Page 41
Chapitre2 : Spécification et analyse conceptuelle
Début
Applicatio
n
Afficher la
fenêtre
d’authentificati
Saisir login et
on
MP
Vérifier les
attributs
ou Valid Non
i e?
Non
Admi MP No
n? oubl n
Ou Accéder aux ié? O
i Accéde No choix des
ui
Saisir nouveau
r à la n produits
MP
OuBDD? Sélectionner les
i
Mettre à jour la produits Stocker dans
BDD BDD
Enregistrer les Contrôler l’état
modif de modification
No No
Quitt Modif No
n n Quit
er ié? n
ter
O O Oui
ui Fin ui email
Envoi Fin
4. Scénarios d’utilisation
Page 42
Chapitre2 : Spécification et analyse conceptuelle
Page 43
Chapitre2 : Spécification et analyse conceptuelle
Enchaînement alternatif :
Dans le cas où le login et le mot de passe saisis par l’utilisateur sont invalides, le système
lui affiche un message d’erreur et la fenêtre d’authentification sera de nouveau affichée.
Dans le cas où l’utilisateur oublie son mot de passe, l’application lui offre la possibilité de
le changer comme le montre le diagramme de séquence suivant.
Page 44
Chapitre2 : Spécification et analyse conceptuelle
La figure 2.9 montre bien que les cinq premières étapes sont identiques au scénario
nominal. Au moment où l’administrateur choisit de mettre à jour la base de données il sera
Page 45
Chapitre2 : Spécification et analyse conceptuelle
Page 46
Chapitre2 : Spécification et analyse conceptuelle
L’ajout de nouveaux utilisateurs par l’administrateur se fait en leur accordant des droits
d’accès en lecture et en écriture à la base de données. Seuls les administrateurs ont le droit
d’accès en écriture.
Figure 2.11 : Diagramme de séquence relatif à la mise à jour de la table des produits
Page 47
Chapitre2 : Spécification et analyse conceptuelle
La capture des besoins techniques couvre avec celle des besoins fonctionnels, toutes les
contraintes qui ne traitent ni de la description du métier des utilisateurs, ni de la description
applicative. Cette étape nécessite une connaissance des pré-requis techniques. Le modèle s'y
exprime suivant les deux points de vue qui sont la spécification logicielle et la structure du
matériel à exploiter.
Page 48
Chapitre2 : Spécification et analyse conceptuelle
5.2. Spécificationmatérielle
Les choix techniques sont de nature géographique, organisationnelle, et technique. Elles
concernent les performances d'accès aux données, la sécurité du système, l'interopérabilité, la
volumétrie et le mode d'utilisation du système. Ils impliquent des contraintes relatives à la
configuration du réseau matériel et informatique.
Les locaux de SAGEMCOM TUNISIE sont répartis sur deux usines U1 et U2 reliées
entre elles par un câble de fibre optique monomode. Le réseau privé de l’entreprise est de
type LAN (Local Area Network) de topologie en étoile (voir annexe).
6. Conclusion
Ce chapitre a permis de présenter et de définir d'une manière formelle les différentes
fonctionnalités de base de notre application tout en se basant sur les besoins fonctionnels et
non fonctionnels.
Page 49
Chapitre 3 : Implémentation Test et Validation
Chapitre
3
Implémentation Test et Validation
1. Introduction.................................................................................................................................50
2. Environnement de travail de l’application...................................................................................50
2.1. Présentation de la plate-forme .NET....................................................................................51
2.2. Présentation du Visual Studio..............................................................................................52
2.3. Applications Windows.........................................................................................................52
3. Implémentation...........................................................................................................................54
3.1. Conduite de processus de développement..........................................................................54
3.2. Etapes de réalisation............................................................................................................55
3.3. Développement de l’interface graphique............................................................................58
4. Test de performance...................................................................................................................62
4.1. Test préliminaires................................................................................................................62
4.2. Test de conformité...............................................................................................................66
5. Conclusion...................................................................................................................................69
Page 50
Chapitre 3 : Implémentation Test et Validation
1. Introduction
Après avoir achevé les deux premières phases du cycle de vie de notre application, qui
sont les phases de spécification et de conception, nous nous intéressons au cours de ce présent
chapitre à la phase de réalisation et mise en œuvre de notre travail. Cette phase est suivie
d’un test de performance dans le butd’évaluer notre produit final.
Comme le montre la figure 3.1, le développement de notre application sera fait sur une
plateforme.Net. Nous commençons alors par présenter la plateforme .Net et ses principales
composantes.
Page 51
Chapitre 3 : Implémentation Test et Validation
Le CLR est une machine virtuelle spécifique à la plate-forme. NET de Microsoft. Elle
gère l’exécution des programmes écrits en langages .Net tels que VB.NET, C#, C++ et autres.
Elle fournit des servicesqui simplifient le processus de développement. Elle assure
l'interopérabilité entre les différents codes écrits en différents langages de
programmation .NET en les convertissant en un langage intermédiaire commun baptisé MSIL
(Microsoft IntermediateLanguage). Le CLRélimine un grand nombre de problèmes logiciels
courants relatifs aux mémoires tels que le manque de mémoire et les références mémoires
non valides. Ces problèmes sont résolus grâce à la gestion automatique de la disposition des
objets assurée par le CLR [4].
Page 52
Chapitre 3 : Implémentation Test et Validation
La bibliothèque des classes .NET est une collection de types réutilisables qui s'intègrent
parfaitement au Common Language Runtime. Elle permet, avec le CLR, d’accélérer la
productivité du développeur en lui offrant la possibilité de tirer profits d’autres programmes
écrits par d’autres développeurs en langages différents.
La plate-forme.NET est destinée à être utilisée par la majorité des nouvelles applications
de Microsoft Windows.
Visual Studio est un ensemble complet d'outils de développement permettant de générer des
applications Web ASP.NET, des Services Web XML, des applications bureautiques et des
applications mobiles. Visual Basic, Visual C#et Visual C++ utilisent tous le même
environnement de développement intégré (IDE), qui permet le partage d'outils et facilite la
création de solutions à plusieurs langages. Par ailleurs, ces langages utilisent les
fonctionnalités de la plate-forme .NET , qui fournit un accès à des technologies clés
simplifiant le développement des applications[5].
Dans les deux cas, une application se compose de fenêtres nommées Forms. Pour les
applications Windows, il s'agit de WinForms tandis qu'il s'agit de WebForms pour les
applications dédiées au Web[6].
Page 53
Chapitre 3 : Implémentation Test et Validation
d’interfaces (Common User Interface Controls) tels que les boutons, les pointeurs, les boîtes
de dialogues. Quelques exemples de ces outils dont présentés dans la figure suivante [7].
Surface de conception
Les applications Windows, sont aussi dotées d’un éditeur de codes sources qui aide le
développeur à écrire rapidement son code tout en évitant les erreurs. Il lui permet aussi de
créer des codes réutilisables et de bénéficier des fonctions prédéfinies dans le but de réduire
la quantité de travail à faire.
Page 54
Chapitre 3 : Implémentation Test et Validation
Figure 3.4: Exemple de code que peut comporter un éditeur de code source
3. Implémentation
L’implémentation est la dernière étape avant de passer au test et validation du produit
final. Au cours de cette partie nous avons à définir la démarche de réalisation de notre
application en abordant les étapes de réalisation une par une. Nous allons aussi justifier le
choix technique des outils utilisés à chaque étape
– La base de données
– L’application de contrôle de modification des fichiers de test In-Situ
– L’application d’envoi d’emails aux utilisateurs
– L’interface homme machine
Page 55
Chapitre 3 : Implémentation Test et Validation
Ce contrôle d’état de modifications est exclusif aux fichiers d’extension « .objet » et aux
fichiers de types « tesplan » et « testorder », jugés les plus importants lors de la phase de test
In-Situ, comme on l’a déjà précisé dans le premier chapitre.
Cette application peut contrôler les dates de dernière modification seulement, dans le cas des
fichiers « .objet », ou contrôler la date et le type de modification, dans le cas des fichiers de
type « testplan » ou « testorder ».
Page 56
Chapitre 3 : Implémentation Test et Validation
Notre application développée en VB.NET, permet d’envoyer des emails pour des
destinataires dans et hors du domaine de l’entreprise via le serveur SMTP.
Nous allons commencer par choisir le Système de Gestion de Base de Données adéquat.
Page 57
Chapitre 3 : Implémentation Test et Validation
Il existe plusieurs SGBD tels que SQL Server, MySQL et Access. Pour pouvoir choisir parmi
cessystèmes, nous avons besoin d’une petite étude comparative illustrée dans le tableau 3.1.
Dans notre cas le volume des tables et le nombre des utilisateurs simultanés ne constituent
pas une priorité. Notre choix doit dépendre essentiellement de la disponibilité, de la
portabilité et de la faciliter de l’installation et de l’utilisation. Pour ces raisons nous avons
opté pour le SGBD Access.
3.2.3.2. Utilité
Le besoin de stoker des données (produits, utilisateurs, mot de passe …) d’une façon
structurée et la moins redondante possible, nous a amené à créer une base de données.
Page 58
Chapitre 3 : Implémentation Test et Validation
Notre Interface se compose de différentes fenêtres que nous allons décrire dans la suite.
Elle comporte :
Page 59
Chapitre 3 : Implémentation Test et Validation
Un utilisateur non identifié ne peut pas accéder à l’application. Donc dans le cas où
l’utilisateur oubli son mot de passe, le bouton numéro 5, que nous venons de décrire va lui
permettre à accéder à une fenêtre où il peut saisir un nouveau mot de passe.
Elle comporte :
Page 60
Chapitre 3 : Implémentation Test et Validation
Page 61
Chapitre 3 : Implémentation Test et Validation
- 1 : bouton qui permet d’activer la liste des tables qui se trouvent à la zone 2
Page 62
Chapitre 3 : Implémentation Test et Validation
4. Test de performance
Dans cette partie, nous allons représenter les tests que nous avons effectué pour valider
notre travail et s'assurer que notre application répond bien aux spécifications préétablies.
Et comme nous l’avons déjà décrit dans la figure 3.5 notre projet se compose d’une base
de données, d’une interface graphique, d’une application d’envoi d’emails et d’une
application de contrôle de modifications. Donc nous étions amenés à faire des tests
préliminaires de chaque application, indépendamment de l’autre, avant de passer au test de
l’application finale.
Pour la lecture et le contrôle des modifications des fichiers, nous avons utilisé comme
première méthode, la lecture ligne par ligne de ces fichiers en les comparant au fur et à
mesure avec un autre fichier de référence.
Page 63
Chapitre 3 : Implémentation Test et Validation
Dans la figure 3.12 nous présentons un extrait du code source de notre application basée
sur la méthode de lecture ligne par ligne.
Dans la figure 3.14 nous présentons un petit exemple de comparaison faite sur deux
fichiers. Le premier fichier a été déclaré dans le code source que nous venons de présenter
dans la figure 3.12 sous le nom de « test.txt ».
Pour le deuxième fichier dont le nom est « test-ref.txt », nous avons déclaré son chemin
d’accès à l’exécution de l’application dans la figure 3.14.
Le texte contenu dans le fichier « test-ref.txt » est celui affiché dans la figure suivante.
A son tour, le fichier « test.txt » contient le même texte à une différence près car nous avons
juste changé l’année 2010 par 2011.
Page 64
Chapitre 3 : Implémentation Test et Validation
Figure 3.14 : Résultat de contrôle de modifications avec la méthode lecture ligne par ligne
Tout le traitement qui suit est fait sur la variable locale. La lecture de cette variable se fait
d’une façon continue ce qui garantie un temps de réponse très court. A titre d’exemple le
traitement d’un fichier de 9589 lignes prend se déroule en une seconde. Ce qui était
impossible avec la méthode de lecture ligne par ligne.
Page 65
Chapitre 3 : Implémentation Test et Validation
La figure suivante montre les modifications que nous avons apporté au fichier « testplan »
au niveau des lignes 3, 536, 2921 et 9588.
Page 66
Chapitre 3 : Implémentation Test et Validation
Après avoir modifié le fichier « testplan » qui comporte 9589 lignes, nous passons au
contrôle de modification avec la méthode de lecture en entier de ce fichier.
Comme nous l’avons déjà montré dans le précédent chapitre, les scénarios diffèrent d’un
utilisateur à un autre, suivant ses droits d’accès.
Pour le test de conformité, nous allons nous limiter au scénario nominal, qui présente le
cas d’utilisation le plus fréquent de notre application.
4.2.1. Scénarionominal
Lors de ce scénario, l’utilisateur se connecte à l’application pour choisir un produit de la liste
des produits disponibles dans la base de données. Il exécute l’application et attend un mail de
notification s’il ya des modifications apportées aux fichiers de test associés au produit choisi.
Les figures suivantes montrent les étapes par les quelles l’utilisateur doit passer.
Page 67
Chapitre 3 : Implémentation Test et Validation
Page 68
Chapitre 3 : Implémentation Test et Validation
Le mail ne précise que le chemin d’accès et la date de modification du fichier objet. Mais
il précise en plus la ligne modifiée dans le cas de fichier « testplan » comme le montre la
figure 3.21.
Page 69
Chapitre 3 : Implémentation Test et Validation
5. Conclusion
Page 70
Conclusion Générale
Conclusion Générale
Dans une démarche de réduction des coûts et de temps induits par les non-conformités
des produits de l’activité décodeur de TV de SAGEMCOM, et dans l’objectif d’assurer la
qualité de test de ces produits, nous avons développé une application de suivi et de
surveillance des programmes de test In-Situ des cartes électroniques.
Les besoins exprimés par les spécifications élaborées à la base des besoins des
utilisateurs, ont été modélisés par des cas et des scénarios d’utilisations explicitant les
interactions des différents acteurs avec le système.
L’apport de cette modélisation est qu’elle nous a permis de saisir, plus aisément, les
différents modules de l’application lors de la phase de conception.
Une fois répertoriés, ces modules ont été codés puis intégrés ensemble pour être testés
dans l’environnement In-Situ.
Les tests de performance visent la validité du produit final. Dans notre cas, l’application
de suivi des programmes de test In-Situ répond bien aux spécifications préétablies et permet
un gain en temps et en coûts considérables. A titre d’exemple les problèmes de non-
conformité détectés en septembre 2011 qui ont coûté une perte qui s’élève à 15400 euros et
un arrêt de production de 15 jours pour les trois équipes CMS, suite aux modifications non-
souhaitées des programmes de test In-Situ.
Page 71
Références
Références
Ouvrages
[2] Agilent Technologies, « Agilent Medalist 3070. Documentation », Mars 2006.
Adresses Web
[1] www.sagemcom.com consulte le 7/12/2011
[6]http://www.labo-microsoft.org/articles/dev/vsnet_intro consulté le
12/12/2011
Page 72
Annexes
Annexes
Page 73