LES OUTILS CASE	

Mme. Lilia SFAXI	
Mme. Abir Gallas	
L2ARS/SIL – 2011/2012

AGL – Chapitre

5
Les outils CASE
§  Les AGL intègrent différents outils d'aide
au développement de logiciels
Les outils CASE:
Computer-Aid...
Plan du Cours
§  Les Outils CASE

ü Catégories d'AGL
ü Classification des Outils CASE
ü Intégration des Outils CASE
• ...
Catégories d'AGL
§  Les AGL peuvent être classés selon plusieurs aspects
ü Richesse du support: outils intégrés, aide à ...
Catégories d’AGL
§  Certains outils interviennent durant la
totatlité du processus logiciel
§  Outils horizontaux
ü Cer...
Outils Horizontaux
§  Service pour l'ensemble du cycle de vie
ü Editeurs de texte
ü Gestion de projet
ü Gestion du dic...
Outils Horizontaux

25/12/11

Atelier de Génie Logiciel

7
Outils Verticaux
§  Fonctions propres à chaque étape du cycle de vie
ü Spécification
ü Conception
ü Génération de code...
Fonctions
Supplémentaires
§  Rétro-Ingénierie (Reverse Engineering)
ü Etudier un objet pour en déterminer le
fonctionnem...
Classification des
Outils CASE

25/12/11

Atelier de Génie Logiciel

10
Plan du Cours
§  Les Outils CASE

ü Catégories d'AGL
ü Classification des Outils CASE
ü Intégration des Outils CASE
• ...
Intégration d'Outils
CASE
§  Un AGL intègre différents outils CASE de
manière à les faire coopérer de façon
uniforme
§  ...
Intégration des Données
§  Les outils CASE manipulent des données
ü Génération
ü Utilisation
ü Transformation

§  Exe...
Intégration des Données
§  Différents outils sont amenés à partager une
même donnée, exemples:
ü Les tables générées par...
Intégration des Données
§  Un AGL doit prendre en charge la
communication de ces données entre les
différents outils
ü I...
Intégration des Données
§  Intégration Physique

ü tous les outils de l'AGL utilisent un seul format de
représentation d...
Intégration des Données
§  Intégration Logique
ü Utilisation d'un système de gestion des objets
•  Gestion automatique d...
Plan du Cours
§  Les Outils CASE

ü Catégories d'AGL
ü Classification des Outils CASE
ü Intégration des Outils CASE
• ...
Intégration de
l'Interface Utilisateur
§  Tous les outils intégrés dans l'AGL
communiquent avec l'utilisateur selon un
sc...
Plan du Cours
§  Les Outils CASE

ü Catégories d'AGL
ü Classification des Outils CASE
ü Intégration des Outils CASE
• ...
Intégration des
Activités
§  Un AGL peut gérer le séquencement des
appels aux différents outils intégrés
ü Pour assurer ...
Plan du Cours
§  Les Outils CASE

ü Catégories d'AGL
ü Classification des Outils CASE
ü Intégration des Outils CASE
• ...
Types d'AGL
§  On distingue essentiellement deux types
d'AGL selon la nature des outils intégrés

25/12/11

Atelier de Gé...
Types d’AGL

25/12/11

Atelier de Génie Logiciel

24
Environnements de
Conception(Upper-CASE)
§  Supportent les phases d'analyse et de conception du
processus logiciel
§  Gé...
Environnements de
Développement(Lower-CASE)
§  Supportent les phases d'implémentation et de test du
processus logiciel.
§...
Environnements de
Développement(Lower-CASE)
§  Environnements dédiés

ü Certains environnements, plus évolués, sont dédi...
Environnements de
Développement(Lower-CASE)
§  Générateurs d'environnements de programmation:

ü À partir de la descript...
Plan du Cours
§  Les Outils CASE

ü Catégories d'AGL
ü Classification des Outils CASE
ü Intégration des Outils CASE
• ...
Integrated Development
Environement
§  IDE: Environnement intégré de développement
ü  Ensemble d'outils qui facilitent l...
Integrated Development
Environement
§  En outre, quelques IDEs font les tâches suivantes

ü Fournir des templates pour l...
Avantages d'un IDE
§  Productivité

ü Un développement plus rapide
ü Peu d'erreur de syntaxe et de structure de code (a...
Inconvénients d'un IDE
§  Coût des outils
§  Temps d'exécution
§  Attachement à un module de base de
données, à une pla...
Quand utiliser un IDE?
§ 
§ 
§ 
§ 

L'utilisation d'un IDE n'est pas toujours appropriée
Un IDE est le plus utile quan...
Langages des IDEs
§  Certains IDEs sont basés sur des langages
spécifiques, tels que
ü Eclipse ou Netbeans: basés sur Ja...
Prochain SlideShare
Chargement dans…5
×

Chp5 - Les outils CASE

2 349 vues

Publié le

Visitez http://liliasfaxi.wix.com/liliasfaxi

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
2 349
Sur SlideShare
0
Issues des intégrations
0
Intégrations
300
Actions
Partages
0
Téléchargements
88
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Chp5 - Les outils CASE

  1. 1. LES OUTILS CASE Mme. Lilia SFAXI Mme. Abir Gallas L2ARS/SIL – 2011/2012 AGL – Chapitre 5
  2. 2. Les outils CASE §  Les AGL intègrent différents outils d'aide au développement de logiciels Les outils CASE: Computer-Aided Software Engineering 25/12/11 Atelier de Génie Logiciel 2
  3. 3. Plan du Cours §  Les Outils CASE ü Catégories d'AGL ü Classification des Outils CASE ü Intégration des Outils CASE •  Intégration des données •  Intégration de l'interface •  Intégration des activités ü Types d'AGL •  Environnements de Conception (Upper-CASE) •  Environnements de Développement (Lower-CASE) §  Les IDEs 25/12/11 Atelier de Génie Logiciel 3
  4. 4. Catégories d'AGL §  Les AGL peuvent être classés selon plusieurs aspects ü Richesse du support: outils intégrés, aide à la démarche ü Type de problèmes: logiciels embarqués, temps réel, applications métiers... ü Type de projet d'ingénierie logicielle: développement logiciel (cf. cycle de vie), intégration de systèmes, système à base de connaissance... ü Ampleur du projet: complexité, nombre de participants, durée... ü Gestion des ressources du projet: management des ressources du projet (planification, ordonnancement,..) ü Phase du cycle de développement prise en compte: conception et/ou développement. 25/12/11 Atelier de Génie Logiciel 4
  5. 5. Catégories d’AGL §  Certains outils interviennent durant la totatlité du processus logiciel §  Outils horizontaux ü Certains outils interviennent lors d'une ou plusieurs phases du cycle de vie du logiciel §  Outils verticaux 25/12/11 Atelier de Génie Logiciel 5
  6. 6. Outils Horizontaux §  Service pour l'ensemble du cycle de vie ü Editeurs de texte ü Gestion de projet ü Gestion du dictionnaire de données ü Administration et droit d'accès ü Gestion des configurations ü Documentation ü Service de communication 25/12/11 Atelier de Génie Logiciel 6
  7. 7. Outils Horizontaux 25/12/11 Atelier de Génie Logiciel 7
  8. 8. Outils Verticaux §  Fonctions propres à chaque étape du cycle de vie ü Spécification ü Conception ü Génération de code ü IDE ü Compilateurs ü Génération d'IHM ü Génération de tests ü Validation ü Prototypage ü Maintenance 25/12/11 Atelier de Génie Logiciel 8
  9. 9. Fonctions Supplémentaires §  Rétro-Ingénierie (Reverse Engineering) ü Etudier un objet pour en déterminer le fonctionnement interne ou la méthode de fabrication §  Réutilisation (Reuse) ü Gestion des bibliothèques de composants 25/12/11 Atelier de Génie Logiciel 9
  10. 10. Classification des Outils CASE 25/12/11 Atelier de Génie Logiciel 10
  11. 11. Plan du Cours §  Les Outils CASE ü Catégories d'AGL ü Classification des Outils CASE ü Intégration des Outils CASE •  Intégration des données •  Intégration de l'interface •  Intégration des activités ü Types d'AGL •  Environnements de Conception (Upper-CASE) •  Environnements de Développement (Lower-CASE) §  Les IDEs 25/12/11 Atelier de Génie Logiciel 11
  12. 12. 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 s'effectuer à trois niveaux: ü Intégration des données ü Intégration de l'interface utilisateur ü Intégration des activités 25/12/11 Atelier de Génie Logiciel 12
  13. 13. 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... 25/12/11 Atelier de Génie Logiciel 13
  14. 14. Intégration des Données §  Différents outils sont amenés à partager une même donnée, exemples: ü 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 ü A partir d'une spécification algébrique on peut générer des jeux de tests ü … 25/12/11 Atelier de Génie Logiciel 14
  15. 15. Intégration des Données §  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 25/12/11 Atelier de Génie Logiciel 15
  16. 16. Intégration des Données §  Intégration 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 25/12/11 Atelier de Génie Logiciel 16
  17. 17. Intégration des Données §  Intégration 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 des configuration 25/12/11 Atelier de Génie Logiciel 17
  18. 18. Plan du Cours §  Les Outils CASE ü Catégories d'AGL ü Classification des Outils CASE ü Intégration des Outils CASE •  Intégration des données •  Intégration de l'interface •  Intégration des activités ü Types d'AGL •  Environnements de Conception (Upper-CASE) •  Environnements de Développement (Lower-CASE) §  Les IDEs 25/12/11 Atelier de Génie Logiciel 18
  19. 19. 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 25/12/11 Atelier de Génie Logiciel 19
  20. 20. Plan du Cours §  Les Outils CASE ü Catégories d'AGL ü Classification des Outils CASE ü Intégration des Outils CASE •  Intégration des données •  Intégration de l'interface •  Intégration des activités ü Types d'AGL •  Environnements de Conception (Upper-CASE) •  Environnements de Développement (Lower-CASE) §  Les IDEs 25/12/11 Atelier de Génie Logiciel 20
  21. 21. 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 25/12/11 Atelier de Génie Logiciel 21
  22. 22. Plan du Cours §  Les Outils CASE ü Catégories d'AGL ü Classification des Outils CASE ü Intégration des Outils CASE •  Intégration des données •  Intégration de l'interface •  Intégration des activités ü Types d'AGL •  Environnements de Conception (Upper-CASE) •  Environnements de Développement (Lower-CASE) §  Les IDEs 25/12/11 Atelier de Génie Logiciel 22
  23. 23. Types d'AGL §  On distingue essentiellement deux types d'AGL selon la nature des outils intégrés 25/12/11 Atelier de Génie Logiciel 23
  24. 24. Types d’AGL 25/12/11 Atelier de Génie Logiciel 24
  25. 25. Environnements de Conception(Upper-CASE) §  Supportent les phases d'analyse et de conception du processus logiciel §  Généralement basés sur une méthode d'analyse et de conception §  Exemple: Rational Rose, AnalyseSI §  Intègrent généralement ü Des outils pour l'édition de diagrammes ü Des dictionnaires de données ü Des outils pour d'édition de rapports ü Des générateurs de squelettes de code ü Des outils de prototypage ü ... 25/12/11 Atelier de Génie Logiciel 25
  26. 26. Environnements de Développement(Lower-CASE) §  Supportent les phases d'implémentation et de test du processus logiciel. §  Exemple : Code::Blocks, KompoZer §  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, ü Des optimiseurs, ü Des debuggers, ü ... 25/12/11 Atelier de Génie Logiciel 26
  27. 27. Environnements de Développement(Lower-CASE) §  Environnements dédiés ü Certains environnements, plus évolués, sont dédiés à un langage particulier ü Exemple: C++ Builder, Smalltalk ü Ces différents environnements proposent •  Des bibliothèques de composants •  Une interface graphique •  Des éditeurs dédiés au langage •  Des interprètes •  Des debuggers •  … 25/12/11 Atelier de Génie Logiciel 27
  28. 28. Environnements de Développement(Lower-CASE) §  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, ... ü Exemple: •  Centaur •  SmartTools 25/12/11 Atelier de Génie Logiciel 28
  29. 29. Plan du Cours §  Les Outils CASE ü Catégories d'AGL ü Classification des Outils CASE ü Intégration des Outils CASE •  Intégration des données •  Intégration de l'interface •  Intégration des activités ü Types d'AGL •  Environnements de Conception (Upper-CASE) •  Environnements de Développement (Lower-CASE) §  Les IDEs 25/12/11 Atelier de Génie Logiciel 29
  30. 30. Integrated Development Environement §  IDE: Environnement intégré de développement ü  Ensemble d'outils qui facilitent le développement d'application §  Permettent de: ü  Ecrire et éditer le code source ü  Voir les erreurs pendant la saisie ü  Voir la syntaxe spécifique du code ü  Automatiser les tâches réitérées ü  Compiler le code ü  Accéder à la documentation, exemples... ü  Offrir des utilitaires drag & drop pour la création facile des dispositifs tels que les objets graphiques, ou créer des connexions avec les bases de données 25/12/11 Atelier de Génie Logiciel 30
  31. 31. Integrated Development Environement §  En outre, quelques IDEs font les tâches suivantes ü Fournir des templates pour la création rapide des composantes ü Fournir le code completion au moment de la saisie ü Produire automatiquement du code, des rapports, des connexions avec les données... ü S'intégrer avec des dépôts de code source, tels que CVS ü S'intégrer avec des serveurs d'application tel que Apache Tomcat ü S'intégrer avec des utilitaires de construction tels que Apache Ant. 25/12/11 Atelier de Génie Logiciel 31
  32. 32. Avantages d'un IDE §  Productivité ü Un développement plus rapide ü Peu d'erreur de syntaxe et de structure de code (améliorer le code et corriger plus vite les erreurs) ü Aide des programmeurs inexpérimentés §  Consistance ü Structure du code consistante ü Look & Feel §  Courbe d'apprentissage accélérée ü Possibilité de vérifier les résultats immédiatement ü Accès immédiat à l'aide de contexte, aux portions de code visées 25/12/11 Atelier de Génie Logiciel 32
  33. 33. Inconvénients d'un IDE §  Coût des outils §  Temps d'exécution §  Attachement à un module de base de données, à une plateforme,... §  Manque de personnel expérimenté et des ressources §  L'incapacité de certains IDEs à fournir toutes les possibilités de langages 25/12/11 Atelier de Génie Logiciel 33
  34. 34. Quand utiliser un IDE? §  §  §  §  L'utilisation d'un IDE n'est pas toujours appropriée Un IDE est le plus utile quand: La vitesse de développement est un facteur Les coûts de développement et de cycle de vie sont un facteur §  De grandes équipes travaillent sur un même projet §  Les demandes de l'application ne dépassent pas les limites de l'environnement de déploiement de l'IDE utilisé. 25/12/11 Atelier de Génie Logiciel 34
  35. 35. Langages des IDEs §  Certains IDEs sont basés sur des langages spécifiques, tels que ü Eclipse ou Netbeans: basés sur Java ü MonoDevelop: basé sur C# §  L'ajout des langages alternatifs est souvent fourni par des plugins, leur permettant d'être installés sur le même IDE en même temps ü Exemple: Plugin C/C++ pour Eclipse 25/12/11 Atelier de Génie Logiciel 35

×