Les Ateliers de Génie Logiciel

Slides:



Advertisements
Présentations similaires
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
Advertisements

LES NOMBRES PREMIERS ET COMPOSÉS
Ma surprise du Zoo.
[number 1-100].
1. Résumé 2 Présentation du créateur 3 Présentation du projet 4.
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,
Licence pro MPCQ : Cours
Distance inter-locuteur
Eléments de Génie Logiciel
M1 MASTER GESTION Séance 3 Pilotage coûts- délais
L'installation et la diffusion 1 LInstallation et la Diffusion.
La Gestion de la Configuration
Les systèmes d’informations documentaires et les ENT Éléments de cahier des charges pour les projets nouveaux.
Les numéros
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Projet n°4 : Objecteering
Architecture de réseaux
Sirop de Liège « industriel »
1 B Système Enjeux et principes Cours DESS Nantes 04 Décembre 2002 Didier ESSAME.
Les Ateliers de Génie Logiciel
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Interface Homme Machine IHM Pro
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
-17 Anticipations économiques en Europe Septembre 2013 Indicateur > +20 Indicateur 0 a +20 Indicateur 0 a -20 Indicateur < -20 Union européenne total:
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
le profil UML en temps réel MARTE
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 1 : La notion de système.
Initiation à la conception de systèmes d'information
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Chaque use-case génère un ou des scénarios, traduits par des diagrammes objets, qui permettent d’introduire et/ou de compléter les diagrammes des catégories.
DeltaPROD Suivi des interventions Gestion de configuration
Détection de co-évolution de gènes Master 2 : Informatique à Finalité Professionnelle et Recherche Unifiée (IFPRU) Parcours Ingénierie de lIntelligence.
Titre : Implémentation des éléments finis sous Matlab
La voyage de Jean Pierre
1 Conduite du changement LA CONDUITE DU CHANGEMENT.
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
LES NOMBRES PREMIERS ET COMPOSÉS
VOC 1 CE2 Je sais utiliser des mots de la vie quotidienne.
SYSTEMES D’INFORMATION
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 7 : Les méthodes de conception.
Etude globale de système.
1 INETOP
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
Titre : Implémentation des éléments finis en Matlab
1 INETOP
Équipe 2626 Octobre 2011 Jean Lavoie ing. M.Sc.A.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
ANALYSE METHODE & OUTILS
Projet de stage d’année IIR4 sous le thème:
Les Chiffres Prêts?
Supports de formation au SQ Unifié
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
GENIE LOGICIEL
1 Emeric ROLLIN 1 Génie Logiciel GENIE LOGICIEL
© Petko ValtchevUniversité de Montréal Février IFT 2251 Génie Logiciel Conception Hiver 2002 Petko Valtchev.
SLAM 1 Exploitation d’un schéma de données
Initiation à la conception des systèmes d'informations
1 Emeric ROLLIN 1 Génie Logiciel GENIE LOGICIEL
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
Année 2006 – 2007 ENSEA © Emeric Rollin
Introduction Module 1.
Transcription de la présentation:

Les Ateliers de Génie Logiciel

Qu'est ce qu'un atelier de génie logiciel ? Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Comment faire un logiciel ? Introduction Comment faire un logiciel ? Bourbet mouloud

Introduction Le génie logiciel Autrement dit, « Le génie logiciel est l'ensemble des activités de conception et de mise en oeuvre des produits et des procédures tendant à rationaliser la production du logiciel et son suivi » (arrêté du 30 déc. 83) Autrement dit, le génie logiciel est « l'art » de produire de bons logiciels, au meilleur rapport qualité/prix. Bourbet mouloud

Le génie logiciel demande de la part de l'informaticien … utilise pour cela des principes d'ingénierie … comprend des aspects à la fois techniques et non techniques: Il est basé sur des méthodologies et des outils qui permettent de formaliser et même d'automatiser partiellement la production de logiciels, Il est également basé sur des concepts plus informels, et demande des capacités de communication, d'interprétation et d'anticipation. Le génie logiciel demande de la part de l'informaticien Une bonne formation aux différentes techniques (le « savoir ») Un certain entraînement et de l'expérience (le « savoir faire »). Bourbet mouloud

Les qualités d'un logiciel Si le génie logiciel est l'art de produire de bons logiciels, il est nécessaire de fixer les critères de qualité d'un logiciel. Les qualités d'un logiciel On peut séparer ces qualités en deux catégories lors de l'utilisation lors de la maintenance Bourbet mouloud

Les qualités du logiciel lors de l'utilisation fiabilité (correction et robustesse), adéquation aux besoins (y compris aux besoins implicites !), ergonomie (simplicité et rapidité d'emploi, personnalisation), efficacité, convivialité, faible coût et respect des délais bien entendu, etc. Bourbet mouloud

Les qualités du logiciel lors de la maintenance: un logiciel doit pouvoir être maintenu pour le corriger, l'améliorer, l'adapter aux changements de son environnement, ... Pour cela, il doit être: Flexible utilisation du paramétrage, de la généricité, de l'héritage, Portable éviter l'assembleur et les langages trop confidentiels, Structuré utilisation de modules ou de classes, de procédures ou de fonctions Avec une indépendance maximum entre les structures utilisation de l'abstraction, et bien sur, documenté. Bourbet mouloud

Nécessaire de trouver des compromis. Ces différentes qualités ne sont pas toujours compatibles ni même réalisables Nécessaire de trouver des compromis. Les objectifs de qualité doivent être définis pour chaque logiciel. La qualité du logiciel doit être contrôlée par rapport à ces objectifs. Bourbet mouloud

Activités de développement Les activités relevant du génie logiciel sont bien définies : l'analyse des besoins; la spécification globale; la conception architecturale et détaillée. représentent environ 40% de l'effort dans un projet bien conduit; la programmation représentant 15 à 20% de l'effort; la validation et vérification représentent de l'ordre de 40% de l'effort; la gestion de configuration et intégration. Bourbet mouloud

Problématique: Les AGL! Acronymes: Comment faciliter la réalisation de ces étapes ? Comment assurer la cohérence ? Les AGL! Acronymes: AGL : Atelier de Génie Logiciel CASE : Computer Aided Software Engineering Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Définitions Logiciel aidant à la réalisation de logiciels. Système pour le développement logiciel assisté par ordinateur. Catégorie de logiciels offrant un environnement complet de développement de logiciels en équipe. Ensemble d’outils permettant de couvrir le cycle de vie du logiciel Analyse Conception Réalisation Maintenance, … Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Objectif des AGL ? Améliorer la productivité, Améliorer le suivi, Améliorer la qualité fiabilité, maintenance, évolutivité. Comment ? En faisant le suivi des différentes phases du processus logiciel En offrant un cadre cohérent et uniforme de production. Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Un AGL intègre des outils « Case tools » Adaptés aux différentes phases de la production d'un logiciel Facilite la communication et la coordination entre ces différentes phases. Un AGL est basé sur des méthodologies pour formaliser Le processus logiciel Chacune des phases qui le composent. Bourbet mouloud

Quelques exemples d’AGL Vous connaissez quels AGL ? Bourbet mouloud

PowerDesigner et PowerAMC Bourbet mouloud

Objecteering Bourbet mouloud

Rational Rose Bourbet mouloud

Visual Studio .Net Bourbet mouloud

Windev Bourbet mouloud

Et encore beaucoup d’autres Liste AGL.pdf http://www.cs.queensu.ca/Software-Engineering Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Les outils « CASE » Les AGL intègrent différents outils d'aide au développement de logiciels Les « outils CASE » Certains outils interviennent durant la totalité du processus logiciel Outils horizontaux Ces différents outils interviennent lors d'une ou plusieurs phases du cycle de vie du logiciel Outils verticaux Bourbet mouloud

Exemples d’outils CASE Outils horizontaux : Service pour l’ensemble du cycle de vie Éditeurs de texte Gestion de projet Gestion du dictionnaire de données Administration et droits d’accès Gestion des configurations Documentation Service de communication Bourbet mouloud

Outils verticaux: fonctions propres à chaque étapes du cycle de vie Spécification Conception Génération de code IDE Compilateurs Génération d'interfaces homme-machine Génération de tests Validation Prototypage Maintenance Bourbet mouloud

Fonctions supplémentaires Reverse engineering Réutilisation, gestion des bibliothèques de composants Bourbet mouloud

Classification des outils CASE IHM Outils de planning Outils d’analyse Outils de conception Outils de réalisation Outils de tests Outils d’évolution Outils de traces Outils de documentation Outils de gestion de configuration Outils de gestion de projet Dictionnaire des données Système d’exploitation Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Les différents types d'AGL Exemples D’AGL Bourbet mouloud

L'intégration d'outils CASE Un AGL intègre différents outils CASE, de manière à les faire coopérer de façon uniforme. Cette intégration peut (devrait) s'effectuer à trois niveaux: Intégration des données Intégration de l’interface utilisateur Intégration des activités Bourbet mouloud

Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Intégration des données Intégration de l'interface utilisateur Intégration des activités Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Intégration des données Les outils CASE manipulent des données Génération Utilisation Transformation, … Exemple Spécification, Modèle conceptuel des données, Jeux de test, Code, Manuel utilisateur,.... Bourbet mouloud

Différents outils sont amenés à partager une même donnée Exemple Les tables générées par un éditeur de diagrammes sont utilisées par un SGBD. Le code généré par un éditeur de texte est compilé par un compilateur. À partir d'une spécification algébrique on peut générer des jeux de test, ... Bourbet mouloud

L’intégration des données peut être Un AGL doit prendre en charge la communication de ces données entre les différents outils. Intégration des outils CASE par celle des données L’intégration des données peut être Physique Logique Bourbet mouloud

L’intégration des données peut être physique: tous les outils de l'AGL utilisent un seul format de représentation des données Ex: des fichiers sur une même machine. Cette approche implique que tous les outils de l'AGL connaissent la structure logique (l'organisation) des fichiers qu'ils sont amenés à utiliser Il est nécessaire de normaliser la structure logique des fichiers. Bourbet mouloud

L'intégration des données peut être logique: Utilisation d’un système de gestion des objets Gestion automatique des différentes entités et leurs inter-relations. Cette approche nécessite la définition des différents types de données manipulées. L’AGL doit également gérer la cohérence entre les différentes versions de ces données gestion de configuration. Bourbet mouloud

Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Intégration des données Intégration de l'interface utilisateur Intégration des activités Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Intégration de l'interface utilisateur Tous les outils intégrés dans l'AGL communiquent avec l'utilisateur selon un schéma uniforme Facilite leur utilisation Intégration des outils CASE par celle des interfaces Bourbet mouloud

Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Intégration des données Intégration de l'interface utilisateur Intégration des activités Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Intégration des activités Un AGL peut gérer le séquencement des appels aux différents outils intégrés Pour assurer la cohérences entre les différentes phases du processus logiciel. Cet aspect implique que l'on dispose d'un modèle du processus de développement bien accepté et partagé. Intégration des outils CASE par celle des activités Bourbet mouloud

Qu'est ce qu'un atelier de génie logiciel ? Plan Introduction Qu'est ce qu'un atelier de génie logiciel ? Les outils « CASE » L'intégration d'outils CASE Les différents types d'AGL Exemples D’AGL Bourbet mouloud

Les différents types d'AGL On distingue essentiellement deux types d'AGL selon la nature des outils intégrés: Les environnements de conception (upper-case) Les environnements de développement (lower-case) Bourbet mouloud

Les environnements de conception Les environnements de conception (upper-case) Supportent les phases d'analyse et de conception du processus logiciel. Ils intègrent généralement : des outils pour l'édition de diagrammes (avec vérification syntaxique), des dictionnaires de données, des outils pour l'édition de rapports, des générateurs de (squelettes de) code, des outils pour le prototypage, ... Bourbet mouloud

Les environnements de conception Ils sont généralement basés sur une méthode d'analyse et de conception (UML, Merise, ...) Ex: Objecteering Bourbet mouloud

Les environnements de développement Les environnements de développement (lower-case) Supportent les phases d'implémentation et de test du processus logiciel. Ils intègrent généralement des éditeurs (éventuellement dirigés par la syntaxe), des générateurs d'interfaces homme/machine, des SGBD, des compilateurs, optimiseurs, debugger, ... Bourbet mouloud

Les environnements de développement Exemple : Unix/Linux Il intègre différents outils pour la programmation et le test. L'intégration des données est faite par l'intermédiaire des fichiers Unix La gestion (limitée) de configurations est faite par make. Bourbet mouloud

Les environnements de développement Les environnements dédiés: Certains environnement, plus évolués, sont dédiés à un langage particulier. Exemples: Eclipse, Smalltalk, … Ces différents environnements proposent: des bibliothèques de composants, une interface graphique, des éditeurs dédiés au langage, des interprètes, debuggers, ... Bourbet mouloud

Les environnements de développement Enfin, il existe des générateurs d'environnements de programmation: À partir de la description formelle d'un langage, ils génèrent un environnement de programmation dédié au langage Contenant: un éditeur dédié au langage, un pretty-printer, un debugger, un interpréteur, ... Ex: Centaur SmartTools Bourbet mouloud