Académique Documents
Professionnel Documents
Culture Documents
systèmes embarqués
Pr.Youssefi
Département GEGM
FST-Settat
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat
Chapitre II:
Cycle de vie d’un système embarqué
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 2
Plan de chapitre
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 3
Pourquoi un processus de conception des SE?
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 4
Pourquoi un processus de conception des SE?
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 5
Phases d’un processus de développement d’un SE
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 6
Phases d’un processus de développement d’un SE
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 7
Phases d’un processus de développement d’un SE
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 8
Phases d’un processus de développement d’un SE
2- Spécifications (Quoi?)
Phase Spécification
Description • Décrire ce que doit faire le système (comportement en boite
noire).
• Décrire comment vérifier en boite-noire que le système fait
bien ce qui est exigé.
Entrées • Exigences client (fonctionnelles et non fonctionnelles)
• Désir, besoins
Sorties Livrables:
• Cahier des spécifications détaillées
• Procédures de validation
Intervenants Maitre d’ouvrage (client), Maitre d’œuvre
Standards, méthodes, Nombreux formalismes: Méthode SART, UML, SysML,…
best practices,…
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 9
Phases d’un processus de développement d’un SE
2- Spécifications (Quoi?)
Spécification – bonnes pratiques
• Les livrables de la phase spéc, constituent un contrat explicite
(accord) entre le client et les architectes (maitre d’œuvre).
• Les livrables de la phase spéc, constituent une base solide pour
l’estimation des ressources nécessaires (temps, cout, équipement,
qualifications des développeurs,…).
• Eviter l’incompréhension (généralement les besoins du client
sont imprécis et changeants).
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 10
Phases d’un processus de développement d’un SE
2- Spécifications: Difficultés
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 11
Phases d’un processus de développement d’un SE
2- Spécifications: Difficultés
Les erreurs dans les exigences sont plus fréquentes que celles de
conception et d’implémentation.
Elles sont également les plus difficiles et les plus coûteuses à
corriger a posteriori. Il est donc important de les repérer le plus
rapidement possible.
Deux pratiques différentes s’opposent sur la manière de traiter le
problème d’expression imprécise des besoins du client:
• Faut-il faire un effort pour préciser et figer le besoin du client
en début de projet ? (Cycle en V)
• Faut-il développer de manière à être tolérant aux imprécisions
et aux changements de besoins ? (Méthodes Agile)
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 12
Phases d’un processus de développement d’un SE
2- Spécifications: Livrable des spécifications détaillées
Plan type (norme IEEE 830)
1. Introduction: présentation générale, motivations, définitions des termes
2. Contexte: environnement matériel et humain, acteurs et utilisateurs, interaction avec d’autres
systèmes existants.
3. Spécifications fonctionnelles: grandes fonctionnalités du système, acteurs et autres systèmes
qu’elles impliquent
4. Spécifications non fonctionnelles et contraintes:
- Matériel (SoC, µC, DSP, …) : marques, mémoires(RAM, ROM, flash), I/O,...
- Système d’exploitation: open source, commercial, embarqué, …
- Interfaçage : protocoles de communication, débit de connexion Internet, formats de fichiers, etc.,
pour l’interaction avec des matériels, logiciels, systèmes d’exploitation...
- Performances : Système interactif, Système temps réel (dur ou souple)...
- Sécurité : sauvegardes, confidentialité, ...
- Charge à supporter : volume des données, nombre d’utilisateurs simultanés, ...
- Comportement en cas de panne...
5. évolutions à prévoir
6. annexes
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 13
Phases d’un processus de développement d’un SE
2- Spécifications: Livrable des spécifications détaillées
Rédaction des spécifications
Normes selon les domaines: Exemple norme IEEE 830 (1998) pour la rédaction
des spécifications (médical, automobile,…);
organisation : Utilisation des tableaux, schémas, exemples. . . Pas uniquement
de texte (ce n’est pas un roman !) ;
Utilisation des méthodes d’analyse: Exemple UML
• Diagrammes des cas d’utilisation UML pour représenter les fonctionnalités
et les acteurs qu’elles impliquent ;
• Diagramme de séquence UML pour représenter l’enchainement des
interactions.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 14
Phases d’un processus de développement d’un SE
2- Spécifications: Livrable des spécifications détaillées
Rédaction des spécifications: Exemple
Un Guichet Automatique de Banque (GAB) offre les
services suivants :
Distribution d’argent à tout Porteur de carte de
crédit, via un lecteur de carte et un distributeur de
billets.
Consultation de solde de compte, dépôt en
numéraire et dépôt de chèques pour les clients
porteurs d’une carte de crédit de la banque.
Un opérateur de maintenance se charge de la
collecte des dépôts d’argent et de la recharge du
distributeur.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 15
Phases d’un processus de développement d’un SE
2- Spécifications: Livrable des spécifications détaillées
Rédaction des spécifications: Exemple
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 16
Phases d’un processus de développement d’un SE
2- Spécifications: Livrable des spécifications détaillées
Rédaction des spécifications: Exemple
Besoins d’interface Homme/Machine (IHM)
Les dispositifs d ’entrée/sortie à la disposition du Porteur de carte doivent
être :
• Un lecteur de carte bancaire.
• Un clavier numérique (pour saisir son code), avec des touches
• "validation", "correction" et "annulation".
• Un écran pour l’affichage des messages du GAB.
• Des touches autour de l’écran pour sélectionner un montant de retrait
• parmi ceux qui sont proposés.
• Un distributeur de billets.
• Un distributeur de tickets.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 17
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Phase Conception
Description Organiser le système afin qu’il puisse satisfaire les exigences
de la spécification.
Décrire comment tester le système.
Entrées Spécifications détaillées
Sorties Livrables:
Une description des décisions de conception.
Des procédures de tests qui permettent de vérifier que les
décisions de conception sont correctement implémentées et
qu’elles contribuent à satisfaire les exigences de la
spécification.
Intervenants Architectes du système (Maitre d’œuvre)
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 18
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Conception architecturale
Décomposer le système en sous-systèmes
Définir les interfaces, les liens entre les sous système
Résultat: Une description de l’architecture du système.
Conception fonctionnelle
Détailler le fonctionnement des sous-systèmes
Définir les algorithmes et la représentation des données
Résultat: Une description fonctionnelle du système.
Elaboration des plans de test
Comment vérifier que les sous-systèmes réalisés sont bien conformes à leurs
descriptions.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 19
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Conception architecturale
Une description de l’architecture du système.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 20
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Conception détaillée
Détailler le fonctionnement des sous-
systèmes.
Définir les algorithmes et la représentation
des données.
Résultat : pour chaque sous système, le résultat
consiste en
Un dossier de conception détaillée.
Un dossier de tests (les plans de test):
comment vérifier que les sous systèmes
réalisés sont bien conformes à leurs
descriptions. Plan détaillé
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 21
Phases d’un processus de développement d’un SE
Exercice 1
Donner la description et les entrées/sorties des phases suivantes:
Spécification
Conception
Implémentation (codage et réalisation)
Tests unitaires
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 22
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Qualité d’une conception
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 23
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Qualité d’une conception
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 24
Phases d’un processus de développement d’un SE
3- Conception (Comment?)
Qualité d’une conception
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 25
Phases d’un processus de développement d’un SE
Qualité d’une conception
Couplage
Une entité (sous système, fonction, module, classe, package, composant) est
couplée à une autre si elle dépend d’elle.
Couplage faible
• Désigne une relation faible entre plusieurs entités (sous systèmes, classes,
composants), permettant une grande souplesse de
programmation/implémentation, de mise à jour.
• Ainsi, chaque entité peut être modifiée en limitant l’impact du
changement au reste du système.
Couplage fort
au contraire, tisse un lien puissant qui rend l’application plus rigide à toute
modification de code.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 26
Phases d’un processus de développement d’un SE
Qualité d’une conception
Couplage fort
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 27
Phases d’un processus de développement d’un SE
Qualité d’une conception
Couplage faible
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 28
Phases d’un processus de développement d’un SE
Qualité d’une conception
Forte cohésion
• Cohésion entre modules dans un composant, entre services dans
un module: qui se ressemble s’assemble.
• L’idée est de vérifier que nous rassemblons bien dans une classe
des méthodes cohérentes, qui visent à réaliser des objectifs
similaires.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 29
Phases d’un processus de développement d’un SE
Qualité d’une conception
Forte cohésion
• Mauvais exemple : il serait mal venu d’implémenter une
méthode "Afficher()" ou "Tracer()" puisque l’objectif de cette
classe est de représenter le modèle d’un compte en banque et non
celui d’une fenêtre graphique ou d’un service de journalisation.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 30
Cycle de développement d’un système embarqué
Le cycle de vie de
développement d’un
système embarqué suit
plusieurs niveau
(phases) d’abstraction.
Au fur et a mesure
qu’on progresse dans
les phases, le modèle
devient plus concret
(raffinement).
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 31
Cycle de développement d’un système embarqué
Les niveaux
d’analyse
ou de
conception
Les niveaux
de validation
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 32
Cycle de développement d’un système embarqué
Exercice 2
On souhaite développer un récepteur GPS (récepteur) pour
l’assistance de conducteur par indication de la position du
véhicule sur la carte.
1. Spécification:
1.1. Donner les spécifications du système?
1.2. Donner un diagramme de contexte (acteur, les systèmes
externes)?
1.3. Donner le diagramme des cas d’utilisation du système?
2. Conception:
2.1. Donner une architecture système?
2.2. Donner une architecture hardware?
2.3. Donner une architecture software?
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 33
Cycle de développement d’un système embarqué
Exercice 2 (correction)
1- Spécifications du système
1.1. Spécifications du système (axes à détailler)
• Objectif: Assistance de conducteur par indication de la
position du véhicule sur la carte.
• Input: 1 bouton Marche/Arrét.
• Output: Affichage position sur écran LCD 400 x 600 pixels.
• Performance: Mise à jour de la position sur écran chaque
0,25 sec.
• Alimentation: < à 100 mW.
• Dimensions physiques: < à 2’’ x 6’’.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 34
Cycle de développement d’un système embarqué
Exercice 2 (correction)
1- Spécifications du système
1.1. Spécifications du système (axes à détailler)
• Déterminer la position (cordonnées) des émetteurs (satellites)
• Déterminer les caractéristiques du signal transmis par les
émetteurs (satellites): puissance d’émission, condition météo, …
• Caractéristique de la carte numérique: résolution, affinement de
l’affichage (quartier, rue,…),…
• Description de l’interface user
• Technique de calcul de position et évaluation de la précision
• …
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 35
Cycle de développement d’un système embarqué
Exercice 2 (correction)
1- Spécifications du système
1.2. Diagramme de contexte
Véhicule
Emetteur
Conducteur fixe 1
Récepteur
GPS
Emetteur
fixe 2
Emetteur
Agent de maintenance fixe 3
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 36
Cycle de développement d’un système embarqué
Exercice 2 (correction)
1- Spécifications du système
1.3. Diagramme cas d’utilisation
Visualiser la position sur carte
Agent de maintenance
Maintenir le système
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 37
Cycle de développement d’un système embarqué
Exercice 2 (correction)
2.1. Architecture système
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 38
Cycle de développement d’un système embarqué
Exercice 2 (correction)
2.2. Architecture matérielle
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 39
Cycle de développement d’un système embarqué
Exercice 2 (correction)
2.3. Architecture logicielle
Calcul position
Affichage
(x,y,z)
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 40
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
1. Cycle de vie en cascade
Le modèle en cascade (Waterfall model) est le plus classique des cycles de
vie:
Le projet est découpé en phases successives dans le temps.
A chaque phase correspond une activité principale bien précise produisant
un certain nombre de livrables.
Chaque phase ne peut remettre en cause que la phase précédente.
Aucune préparation des phases de vérification.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 41
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
1. Cycle de vie en cascade
Spécifications
Conception
préliminaire
Bien adapté lorsque
les besoins sont Conception
clairement identifiés et détaillée
stables.
Implémentation
Intégration
Validation
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 42
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
1. Cycle de vie en cascade
Inconvénients
Les vrais projets suivent rarement un développement séquentiel
Établir tous les besoins au début d’un projet est difficile
Aucune préparation des phases de vérification
• Obligation de définir la totalité des besoins au départ
• augmentation des risques car validation tardive : remise en
question coûteuse des phases précédentes
Sensibilité à l’arrivée de nouvelles exigences : refaire toutes les
étapes
Bien adapté lorsque les besoins sont clairement identifiés et stables
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 43
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
2. Cycle de vie en V
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 44
Phases d’un processus de développement d’un SE
2. Cycle de vie en V
Les phases courantes et problèmes traités :
Spécifier Valider
Qu’est-ce que le SE doit faire? Le SE fait-il ce qu’il doit faire?
Comment s’assurer qu’il le fait? Développe t on le bon logiciel?
Comment s’assurer qu’on développe le bon SE?
Concevoir Intégrer
Comment organiser le SE pour qu’il fasse ce Le SE est-il organisé et construit de
qu’il doit faire? manière à faire ce qu’il doit faire?
Quelles choix techniques faut-il faire pour que le
SE fasse ce qu’il doit faire?
Comment s’assurer que le SE est organisé et
construit de manière à faire ce qu’il doit faire?
Implémenter: Coder/Réaliser Tester unitairement
Comment traduit-on cette organisation en code Le code source est-il bien écrit?
source et hardware?
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 45
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
2. Cycle de vie en V
Tests
Spécifications
de validation
Conception Tests
préliminaire d’intégration
Conception
Tests unitaires
détaillée
3 types de tests:
Codage et réalisation - Tests unitaires
- Tests d’intégration
- Tests de validation
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 46
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
2. Cycle de vie en V
Codage et réalisation
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 47
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
Quelques exemples industriels:
Programme Aérospatiale ISO (lnfrared Space Observatory) : ensemble de
satellites destinés à une observation de l’espace dans un domaine infrarouge.
• Programme spatial de l’union européen: Lancement 1995, fin mission 1998
• Spécifications et conceptions : SART et HOOD
• Langages : Ada (15 000 lignes), Assembleur (11 000 lignes)
Programme de ministère de la défence français SENIT8 (Dassault Électronique
& DCN-Ingénierie) : équipements de gestion et de contrôle-commande du porte-
avions Charles de Gaulle (1996).
• Spécifications et conceptions : SART et Ada-Buhr (proche de DARTS)
• Langages : Ada (1 000 000 lignes), C (400 000 lignes)
Programme Rafale (Dassault Électronique) : avion militaire
• Spécifications et conceptions : SA-RT et OMT
• Langages : Ada (800 000 lignes à 1 500 000 lignes selon les versions).
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 48
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
2. Cycle de vie en V
Avantages
La préparation des dernières phases (validation-vérification) par les premières
(conception du SE), permet d’éviter d’énoncer une propriété qu’il est
impossible de vérifier objectivement après la réalisation.
Inconvénients
Construit-on le bon système ? Le système embarqué est utilisé très (trop)
tard.
• Il faut attendre longtemps pour savoir si on a construit le bon système.
• Difficile d’impliquer les utilisateurs lorsque qu’un système embarqué
utilisable n’est disponible qu’à la dernière phase
Idéal quand les besoins sont bien connus, quand l’analyse et la conception
sont claires
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 49
Phases d’un processus de développement d’un SE
2. Cycle de vie en V : Livrables des différentes phases
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 50
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
3. Cycle de vie en W
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 51
Phases d’un processus de développement d’un SE
II. Cycle de vie d’un système embarqué
3. Cycle de vie en W
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 52
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
1- Définitions
• Processus de test (testing): processus consistant en toutes les activités du
cycle de vie, concernant la planification et l’évaluation du système
embarqué, pour déterminer s’ils satisfont aux exigences, pour démontrer
qu’ils sont aptes aux objectifs et pour en détecter des anomalies [CFTL].
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 53
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
1- Définitions
• Test: un ensemble d’un ou plusieurs cas de tests [IEEE 829].
• Cas de test : un ensemble de valeurs d’entrée (données de tests), de pré
conditions d’exécution, de résultats attendus et de post conditions
d’exécution, développées pour un objectif ou une condition de tests
particulière, tel qu’exécuter un chemin particulier d’un programme ou
vérifier le respect d’une exigence spécifique [IEEE 610].
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 54
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
2- Types de tests
Tests unitaires : On teste chaque fonction de chaque module (tests
« boîte blanche » sur les instructions).
Tests d’intégration: On teste les interfaces entre modules (tests «
boîte blanche » sur les interfaces, tests « boîte noire » sur les
instructions), on dit que c’est des tests « boite grise».
Tests de validation: On teste les fonctionnalités du système (tests «
boîte noire »).
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 55
Phases d’un processus de développement d’un SE
Positionnement des types de tests
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 56
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
2- Nature de l’information utilisée pour les tests
Principes VVT
Tester exhaustivement un logiciel est généralement impossible.
Phénomènes combinatoires et coûts exponentiels
Tester correctement un logiciel est une tâche difficile qui requiert
intelligence et créativité
Choix de stratégies, critères d’arrêt + Connaissance indispensable du
contexte d’emploi réel
La planification sérieuse de la VVT est indispensable à la maîtrise du
projet:
Chaque phase du projet a sa propre VVT afin d’éviter l’effet d’avalanche
lors de l’intégration.
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 57
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
2- Nature de l’information utilisée pour les tests
Principes VVT
le but des tests est de montrer que le système fonctionne.
le but des tests est de montrer que le système ne fonctionne pas.
la testabilité du système est complètement intégrée au processus de
conception.
Il est futile de « concevoir » ce que l'on ne saura pas tester
Pièges VVT:
• croire que c’est simple et facile par rapport à la programmation jugée
plus « noble »
• croire que cela n’exige ni expérience, ni savoir-faire, ni méthodes et
qu’il est inutile de planifier cette activité
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 58
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
2- Nature de l’information utilisée pour les tests
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 59
Phases d’un processus de développement d’un SE
2- Nature de l’information utilisée pour les tests
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 60
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
2- Nature de l’information utilisée pour les tests
Parmi tous les tests possibles, identifier ceux qui sont véritablement
pertinents pour le système à tester
Construction de l'ensemble générateur
Critères de construction
• Différents niveaux de couvertures selon la fréquence
d'emploi et/ou la criticité de l'élément.
• Conditions de «bord» (i.e. contraintes) sur les données des
domaines d'entrées et/ou de sorties.
• Consommation des ressources critiques (temps, mémoire,
I/O,…).
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 61
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
3- Cycle de vie et acteurs VVT
L’activité de VVT débute dès la première phase
expression besoin et spécifications (voir cycle en V).
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 62
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
3- Cycle de vie et acteurs VVT
Parmi les acteurs, il faut distinguer ceux qui introduisent les défauts, et ceux qui
recherchent les défauts pour les corriger:
Le chef de projet: Planification des tâches et assurance qualité (système
qualité)
- Organisation de l’équipe
- Mise en œuvre de la stratégie et des méthodes.
L’architecte du projet: au sens large = expression de besoin
- Spécification
- Conception
implique le MO et/ou le client.
Les programmeurs/designers/ testeurs:
- Conception détaillée et programmation
- Composants logiciel/hardware {Données+Algorithmes +Contrôles} intégrables (i.e.
documentés et testés)
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 63
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
3- Cycle de vie et acteurs VVT
MOE/MO
Tests de validations
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 64
Cycle de développement d’un système embarqué
Exercice 3
Quels est l’input, l’output et l’intervenant dans les activités
suivantes:
Tests unitaires
Tests d’intégration
Tests de validation
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 65
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
4- Tests de validation
Exemple de tests de validation (plan des tests)
une partie ID test Description Scénario Résultat Résultat
des attendu actuel
spécifications
1 Ouverture d’un 1- Saisir code Document
état de sortie client; ouvert et
2- Cliquer sur prêt a être
bouton manipuler.
recherche;
3- Clique sur
bouton afficher
situation.
2 Modification
donnée client
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 66
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
4- Tests de validation
Plans des tests de validation sont élaborés avant conception et programmation.
Sélection des tests à partir d’une spécification du système (fonctionnelle ou non
fonctionnelle), sans connaissance de l’implémentation.
sélection Verdict
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 67
Phases d’un processus de développement d’un SE
III. Validation, vérification et tests (VVT)
4- Tests de validation
Un test de validation pour un distributeur de café (réalisation des tests).
Sélection:
Verdict:
Test ID 10 Echec
Test ID:10
Système Résultat de test:
On peut acheté un
thé à 50 c Exécution: (boite noire) On obtient un café
Insérer 50c
Chapitre II: Cycle de vie d’un système embarqué Pr.Youssefi FST Settat 68