Généralités sur les AGL 1- AGL c’est quoi ? AGL = Atelier de Génie Logiciel Ensemble de programmes informatiques permettant de produire des programmes de manière industrielle. On parle aussi d'outils CASE*(Computer Aide Software Engineering). 2- Type d’approches : Organiser et modéliser un logiciel dans son intégralité. L’approche de développement. Programmer le logiciel. Les AGL(s) traitent plus ou moins distinctement ces deux approches 3- L’approche conceptuelle Les AGL de conception (Upper–case) s'intéressent plus particulièrement : Aux phases de conception. A l’analyse du processus logiciel. Ils sont généralement basés sur une méthode d’analyse et de conception (UML, Merise …). Approche générale AGL de conception : ∗ Des outils d’analyses (avec vérification syntaxique et cohérence entre diagrammes). ∗ Des outils d’aide à la conception (pour créer un diagramme en UML par exemple). ∗ Des gestionnaires de dictionnaires de données. ∗ Des outils pour l’édition de rapport permettant la communication. ∗ Des générateur de (squelette de) code. ∗ Des outils pour le prototypage. 4- L’approche de développement : Les AGL de développement (Lower-‐Case) s'intéressent plus particulièrement : Aux phases d'implémentation. Aux test du processus logiciel. Ils sont généralement basés sur une utilisation de langages de programmation. Approche générale AGL de développement : ∗ Génération de code à partir de représentations graphiques. ∗ Diagramme de workflow (exécution). ∗ Génération de documentation. ∗ Bibliothèque de composants. ∗ Fonctionnalités d'import/export. ∗ Test. ∗ Editeurs dédiés au langage. ∗ Gestionnaire de bugs. ∗ Gestion de versions. ∗ Suivi et maintenance. ∗ Debugger, Optimiseur de code. 5- Quelques exemples d’AGL * Quels sont les AGL les plus fréquents ? ∗ Quels sont leur utilité principale ? ∗ Utile pour la conception ou le développement ? ∗ Quel est leur prix ? ∗ Sont ils gratuits ou payants ? ∗ Avec quoi s’utilisent-‐ils ? ∗ Quels langages interprètent-‐ils ? ∗ Sur quels modèles conceptuels s’appuient-‐ils ? 6- AGL de conception Payant sinon, entre 2800 et 7100€. POWER AMC–SyBase Gratuit en lecture Payant sinon, entre 2800 et 7100€.Modèles : MCD, MOO, MLB, MPD, MAE, MSX…Langages: Java, C# et VB .NET. Rational Rose Edité par l’entreprise Rational (rachetée par IBM).Payant, à partir de 1700€.Uniquement sous Windows. Créer et éditer différents diagrammes d’un modèle UML. Générer le code source correspondant. 7- AGL de conception STAR UML Gratuit. Modèles : diagrammes de cas d'utilisation, de classes, de séquences, de collaboration (communication), d'états-transitions, d'activités, de composants, de déploiement et de structure composite. Langages : C #, C++ et JAVA.ARGO UML Gratuit. Modèles : diagrammes de cas d’utilisations, de classes, de séquences, d’état, de collaboration, d’activité et de déploiement. Langages : Java, C++, PHP, C# et SQL. 8- AGL de Développement ECLIPSE Windev Libre Extensible Universel Polyvalent Windev AGL édité par une société française : PC-‐SOFT Marche sous windows/linux Licence : propriétaire (payant) Utilise son propre langage de programmation (le WLanguage) (pseudo-‐langage) 9- AGL de Développement NetBeans Environnement de Développement Intégré Java (EDI), Placé en open source et gratuit Développé à l’origine par une équipe d’étudiants à Prague. Racheté par Sun Supporte différents langages (Python, C, C++, JavaScript, XML, Ruby, PHP et HTML) VS Conçu par Microsoft pour Windows Logiciel sous licence privée payante Une suite de logiciels de développement comprenant: (Visual Basic Visual C++ Visual C# Visual Web Développer Visual J# SQL Server) NetBeans ∗ MAJ fréquente ∗ Netbeans 7.1 ∗ Gestion de version ∗ Ajout de plugin (SVN, Mercurial, CVS) ∗ Grosse communauté derrière donc à chaque problème il y a sa solution. ∗ Compilateur. ∗ Debugger. ∗ Auto-‐complétion du code. ∗ Editeur en couleur. ∗ Refacturer son code (améliorer la structure/lisibilité du code). ∗ Editeur graphiques d’interfaces et de pages Web. ∗ Reverse engineering (rétro ingénierie). ∗ VS ∗ Payant donc aide en ligne. ∗ facilite la création de solutions faisant appel à plusieurs langages. Car Visual studio est un EDI pour : Visual Basic, Visual C++, Visual C# et Visual J# ∗ Très pratique pour faire des applications web ( ASP .NET )Compilateur ∗ Debugger ∗ Auto-‐complétion du code ∗ Modélisation UML, générateur de documentation.