Le Développement Le développement.

Slides:



Advertisements
Présentations similaires
La Conception La conception.
Advertisements

Les Systèmes d’Information Financière Atelier conjoint ACBF / Banque Mondiale / AFRITAC de l’Ouest Gérer l’application dans le temps, sur les plans fonctionnel,
La boucle for : init7.c et init71.c
Analyse et Programmation Orientées Objets
Analyse et Programmation Orientées Objets Cycle de vie dun projet.
Tests et Validation du logiciel
Eléments de Génie Logiciel
Processus d'expression du besoin
L'installation et la diffusion 1 LInstallation et la Diffusion.
La Recette La recette.
La Documentation La documentation.
La Gestion de la Configuration
Les Evolutions et la Maintenance
Identification des causes du problème
LA QUALITE LOGICIELLE Plan du cours Le Plan Qualité 1 h ½
Fin de cycle….
J. Paul Gibson Bureau A 207, Le département LOgiciels-Réseaux
Organiser des Tests dans un projet
Finalités et objectif de la sous-épreuve
Dossier Philippe FIRMIN LES NORMES Monsieur W. ANDRZEJAK Juin 2007.
Tests et Validation du logiciel
Système de gestion de bases de données. Modélisation des traitements
Les Ateliers de Génie Logiciel
La revue de projet.
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
LES OUTILS POUR LA GOUVERNANCE DES DONNÉES LA PASSION DES DONNÉES LA PRÉCISION DES RÉSULTATS.
MANAGEMENT DU PRODUIT Organisation Technique du Produit (OTP) Objet Arborescence Produits Relation autres domaines Décomposition du système Gestion.
6 - Intégration et industrialisation du SI
Introduction au Génie Logiciel
Démarche de résolution de problèmes
Algorithmique et Programmation
Sommaire Objectif de Peakup Principes de fonctionnement
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Algorithmique et Programmation
Techniques de test Boulanger Jean-Louis.
Test et débogage Tests unitaires. Gestion d’erreurs. Notion d’état, de pré-condition et de post-condition. Assertion. Traces de programme. Débogueur et.
Présentation du projet technique / sous-épreuve U62
Procédures et fonctions
Mise en oeuvre et exploitation
Le management de l'IVVQ Processus techniques IVVQ
Supports de formation au SQ Unifié
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
LE PLAN QUALITE Utilité du plan qualité :
GENIE LOGICIEL
Vérification dans le cycle de vie GEF492A 2014 Référence: [HvV §14.2, 14.9] Capt Vincent Roberge Collège Militaire Royal du Canada Génie électrique et.
2003 (revisé 2008)SEG Chapitre 11 Chapitre 1 “The Systems Engineering Context” Le contexte du génie de systèmes.
1 Emeric ROLLIN 1 Génie Logiciel GENIE LOGICIEL
Introduction au Génie Logiciel
GEF Mesures de qualité Automne 2013 Mesures de qualités - attributs et perspectives GEF492A 2014 Référence: [HvV §6.1-3] Capt Vincent Roberge.
Module I3 algorithmique et programmation
LE DOSSIER DU PROJET Le dossier du Projet.
Initiation à la conception des systèmes d'informations
Méthodes et outils de conception Introduction à la programmation Paramètre de retour Appel d’une fonction Portée des variables Définition Pourquoi les.
BTS ELECTROTECHNIQUE Etude du référentiel.
1 Emeric ROLLIN 1 Génie Logiciel GENIE LOGICIEL
Algorithmique : Introduction
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
MOCK.
Année 2006 – 2007 ENSEA © Emeric Rollin
Sites Pilotes Généralisation
Les démarches de développement
Nom de l’objet Epreuve d’admission CAPET externe
Sensibilisation aux projets logiciels
LE PLAN QUALITE Prévision du déroulement du projet (standards)
Dans le cas du développement spécifique :
1 - Gestion du projet Initialisation Préparation
ISO 9001:2000 Interprétation Article 7 Réalisation du produit
Benoit ROCQ Responsable Métrologie et Qualité
BTS IRIS Étude du référentiel. RÉCAPITULATIF PAR ACTIVITÉ DES TÂCHES réalisées en autonomie. Installation, exploitation, optimisation et maintenance T6.8Suivi.
PRÉSENTATION AGL LES TESTS LOGICIELS LES TEST LOGICIELS 1 Mickael BETTINELLI Brandon OZIOL Gaétan PHILIPPE Simon LUAIRE.
Transcription de la présentation:

Le Développement Le développement

Le cycle de vie du logiciel Spécification Conception Paramétrage Développement Recette Installation & Diffusion Evolutions & Maintenance Codage Tests unitaires Tests d’intégration Le développement

Objectif Le développement : Les tests traduire l’architecture technique conçue (algorithmes  détaillés) en code (source) compiler le code source en un programme exécutable (compréhensible par l’ordinateur) Les tests essayer le logiciel pour en vérifier le bon fonctionnement Le développement

Trois phases s’enchaînent Le codage de chaque programme (partie indépendante d’un module)  logiciel Les tests unitaires chaque programme fonctionne-t-il ?  dossiers de tests unitaires Les tests d’intégration tous les programmes une fois assemblés fonctionnent-ils ?  dossiers de tests d’intégration Le développement

La phase de codage Traduction de la conception détaillée en code Saisie du code et des commentaires Rédaction des dossiers de tests unitaires Révision des dossiers d’exploitation et d’intégration Revue de code Le développement

Un code de qualité Respect des normes de programmation et des procédures des consignes d’utilisation définies dans le plan d’assurance qualité logiciel Code (données et traitements) structuré lisible documenté adjoint au dossier de maintenance Le développement

Traduction d’un algorithme en langage C { saisit et indique si une note est bonne } Algorithme : TraitementNote entrées : sorties : variables : note : réel { note à saisir et à tester } début { saisie de la note} lire note { indique si la note est bonne ou non } si note >= 10 alors écrire "bonne note" sinon écrire "mauvaise note" fin /* saisit et indique si une note est bonne */ void TraitNote() /* entrées : */ /* sorties : */ { /* note à saisir et à tester */ float note; /* saisie de la note */ printf("Saisissez la note : "); scanf("%d",&note); /* indique si la note est bonne */ if (note >= 10) printf("bonne note\n"); else printf("mauvaise note\n"); } Le développement

Traduction d’un algorithme en langage COBOL { saisit et indique si une note est bonne } Algorithme : TraitementNote entrées : sorties : variables : note : réel { note à saisir et à tester } début { saisie de la note} lire note { indique si la note est bonne ou non } si note >= 10 alors écrire "bonne note" sinon écrire "mauvaise note" fin DATA DIVISION. WORKING-STORAGE SECTION. * note à saisir et à contrôler 77 note PIC 99V9. PROCEDURE DIVISION. * saisit et indique si une note * est bonne Traitement-Note. * saisie de la note DISPLAY "Saisissez la note : ". ACCEPT note. * indique si la note est bonne IF note >= 10 DISPLAY "bonne note" ELSE DISPLAY "mauvaise note". Le développement

Les différentes approches Approche objet Approche à base d’objets Approche modulaire Approche structurée ... Module Type abstrait de données Héritage Le développement

Le dossier de programmation Nom du composant logiciel Description du rôle Graphe des enchaînements des opérations Eléments en entrée (relations de la BD, autres fichiers) Description des algorithmes de calcul Contrôles effectués Liste des messages sur anomalies détectées Le développement

Le dossier de programmation (suite) Eléments en sortie (relations de la BD, autres fichiers) Interfaces vers des composants logiciels standards Paramètres utilisés Maquettes des écrans et imprimés Liste des données et fichiers ayant servi aux essais Résultats des essais Procédures de tests utilisées Le développement

La revue de programmation Objectifs validation des dossiers de programmation jalon contractuel dans l’état d’avancement du projet Déclenchement périodiquement durant l’étape en fin d’étape Documents en entrée dossiers des spécifications fonctionnelles validés dictionnaire des données méthodes, outils et normes à utiliser contraintes techniques à prendre en compte Le développement

La revue de programmation (suite) Documents en sortie dossiers des programmation dossiers d’administration des données liste des références croisées Conditions de passage à l’étape suivante dossiers de programmation complets tests unitaires tous validés tests d’enchaînement techniques conformes pour le maître d’œuvre plan d’assurance qualité des tests de recette agréé par utilisateurs calendrier de l’étape suivante actualisé avis favorable du maître d’ouvrage lors du contrôle qualité Le développement

La phase des tests unitaires Installation des moyens de tests unitaires répéter Exécution des tests (et enregistrement des résultats) Comparaison des résultats Détermination du taux de couverture Modifications éventuellement (si non conformité) jusqu’à la conformité des tests Compte rendu dans les dossiers de tests unitaires Revue de tests unitaires Le développement

Le flot de contrôle d’un algorithme début lire note tant que note  [0,20] écrire "note incorrecte" fin tant que si note >= 10 alors écrire "bonne note" sinon écrire "mauvaise note" fin faux vrai début fin note >= 10 note  [0,20] lire note "bonne" "mauvaise" "incorrect" Le développement

Jeu d’essai et résultats attendus 12.5 bonne note - 30 note incorrecte 8 mauvaise note 10 bonne note 0 mauvaise note 20 bonne note -5 note incorrecte bonjour interruption du programme faux vrai début fin note >= 10 note  [0,20] lire note "bonne note" Le développement

La revue de tests unitaires Objectif validation (à la charge du programmeur) des tests unitaires (de chaque programme) Déclenchement périodiquement durant l’étape en fin d’étape Conditions de passage à l’étape suivante tests unitaires tous effectués calendrier de l’étape suivante actualisé avis favorable du maître d’ouvrage lors du contrôle qualité Le développement

La phase des tests d’intégration Installation des moyens de tests d’intégration répéter Exécution des tests (et enregistrement des résultats) Comparaison des résultats Détermination du taux de couverture Modifications éventuellement (si non conformité) jusqu’à la conformité des tests Compte rendu dans dossiers de tests d’intégration Revue de tests d’intégration Le développement

Le graphe des appels d’une application Algo : a b(7) c(3.1416,x) b(y) d Algo : b (entrée : entier) c(x^0.5,z+1) e Algo : c (entrées : réel , entier ) e f Algo : d d f Algo : e Algo : f c(4.0,4) a b d c e f Le développement

Scénario de test d’intégration b(7) c(7.523^0.5,4+1) e c(2.72,-1) c(1.44,3) c(3.1416,2) d a b c d e f Le développement

La revue de tests d’intégration Objectif validation des tests d’intégration dans le système d’information Déclenchement à la fin de la phase des tests d’intégration Contrôles effectués conformité par rapport aux exigences des spécifications exhaustivité des tests Conditions de passage à l’étape suivante tests d’enchaînement effectués et reconnus conformes par le maître d’œuvre avis favorable du maître d’ouvrage lors du contrôle qualité Le développement

Evaluation de la réalisation Les dossiers de réalisation sont-ils conformes aux standards ? Les dossiers de tests unitaires sont-ils complets et conformes aux standards ? Les spécifications fonctionnelles détaillées ont-elles été mises à jour ? Le schéma général de fonctionnement est-il à jour ? Tous les thèmes ont-ils fait l’objet d’une validation maîtrise d’œuvre ? Le développement

Evaluation de la réalisation (suite) L’exécution des tests unitaires a-t-elle répondu aux exigences ? Les tests d’intégration ont-ils été effectués ? Reste-il des anomalies maîtrise d’œuvre non corrigées ? Les corrections d’anomalies demandées par l’équipe de recette ont-elles été effectuées et ont-elles été validées par la maîtrise d’œuvre ? Les tests de non régression sont-ils faits ? Les documents de conception et de paramétrage sont-ils à jour ? Le développement

Normes Le développement

Critères (facteurs qualité) utilisés Vue de l’utilisateur Vue de la maîtrise d’ouvrage Utilisabilité - Rendement - Maintenabilité - Portabilité - Réutilisabilité - Interopérabilité Vue de la maîtrise d’œuvre Fiabilité - Efficacité - Intégrité - Testabilité Le développement

Qualification du produit : qualité d’exploitation Validité Cohérence - Complétude - Précision - Lisibilité - Traçabilité Efficacité Efficacité d’exécution - Efficacité de stockage - Instrumentation Robustesse Tolérance aux pannes - Précision Le développement

Qualification du produit : qualité d’exploitation (suite) Confidentialité Maniabilité Convivialité - Exploitabilité - Facilité d’utilisation - Facilité d’apprentissage Couplabilité Banalisation des communications - Standardisation des données - Standardisation des interfaces - Modularité Le développement

Qualification du produit : qualité d’évolution Maintenabilité Auto-description - Concision - Instrumentation - Lisibilité - Modularité - Observabilité - Réutilisabilité - Traçabilité Evolutivité Auto-description - Cohérence - Concision - Expansibilité - Lisibilité - Modularité - Réutilisabilité - Traçabilité Le développement

Qualification du produit : qualité de transfert Portabilité Indépendance vis à vis de l’environnement logiciel - Indépendance vis à vis de l’environnement matériel - Modularité Le développement

Qualification du processus de fabrication Capacité à gérer Capacité à estimer les délais, à estimer les charges, à décider - Gestion des événements - Structure de projet Capacité à produire Maîtrise des délais, des charges et ressources, de la mise en œuvre de la qualité du produit - Structure de projet Capacité à mettre en œuvre les techniques Utilisation des méthodes, normes et standards, des outils - Utilisation effective des techniques de contrôle Le développement