Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils...

31
Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception, au développement et à la mise au point de logiciels d'application spécialisés. On retrouvera par exemple dans un AGL des dictionnaires de données, des outils permettant de réaliser des diagrammes, pour faciliter la phase d'analyse et de conception des applications. Puis des générateurs de code ainsi que des aides à la mise au point (encore appelés débogueurs ou débugueurs) viendront accélérer la production et la finalisation de l'application. Les AGL

Transcript of Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils...

Page 1: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Atelier de génie logicielCase, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception, au développement et à la mise au point de logiciels d'application spécialisés. On retrouvera par exemple dans un AGL des dictionnaires de données, des outils permettant de réaliser des diagrammes, pour faciliter la phase d'analyse et de conception des applications. Puis des générateurs de code ainsi que des aides à la mise au point (encore appelés débogueurs ou débugueurs) viendront accélérer la production et la finalisation de l'application.

Les AGL

Page 2: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

I - Programme: typologie des fichiers exécutables

1 - Pourquoi cette typologie

2 - Les différents types de fichiers exécutables dans Windows

•Dll, OCX, EXE, VBS…

•Les composants OLE COM et DCOM

•Le rôle du registre dans l’enregistrement des composants

3 - Les fichiers exécutables dans UNIX/LINUX

Page 3: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

I.1- Pourquoi cette typologie

• Les fichiers exécutables sont les produits crées par l’application AGL.

• Une connaissance de ses fichiers correspond à la connaissance des découpages possible de l’application

• Une connaissance de ces mécanismes permet une premier niveau de dépannage

Page 4: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

I.2 - Les différents fichiers exécutables dans Windows

• exe• dll, • ocx, • sys, • vxd, • drv, • ….

Page 5: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Qu’est qu’un Exe ?

Page 6: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

I.3 - Les fichiers exécutables dans Unix/Linux

• .a (bibliothèque statique)• .so (bibliothèque dynamique)

Remarque: Le nom d'une bibliothèque commence par 'lib', et se termine une des extensions ci-dessus.

Page 7: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

I.4 Le WEB ou les Pages Actives

• Un serveur Web va pouvoir exécuter du code pour préparer une page à afficher par le client. Ce code sera soit appelé depuis la page initiale cas du CGI soit mélangé à la page HTML cas des ASP.– Langages CGI : C, C++, Perl, Java.– Langages de script : ASP, PHP, JSP.

Page 8: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Démonstrations ASP

• <% for i=1 to 6

• Response.Write "<font size=" & i & ">" %>

• <p>Bonjour le monde </p>

• <hr>

• </font>

• <%next%>

• <p>&nbsp;</p>

Page 9: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

II - Le rôle du registre dans l’enregistrement des composants

Page 10: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

III - Le rôle des logiciels de partage de source

Un fichier modifier par une seule personne à la fois

Capable de fournir l’ensemble des sources et documentation d’une version quel conque

Garantie un espace de stockage securisé

Peut être intégrer dans un AGL

Stocke aussi bien du code que du binaire ou de la documentation

Page 11: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

III.1 - Un gestionnaire de Version dans le monde Unix/linux

• CVS - Concurrent Version System

Issue du monde libre CVS présente l’avantage de donner ces sources et donc de constituer une base de départ pour beaucoup d’ AGL Maison sur Unix/Linux.

Page 12: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

III. 2 - Un gestionnaire de Version dans le monde Windows

• Microsoft Visual SourceSafe

Parfaitement adapté au solution Microsoft cet outil s’intègre évidement dans Visual studio et Visual Studio.net les AGL Microsoft.

Page 13: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV - Les principaux AGL du marché

AS400, Unix, Windows, …

Puis Java

Page 14: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.1 - IBM iSeries (AS/400)

• Adélia iSeries Studio

• …

• Les AGL Windows exploitant des données AS400 (Delphi/400, Windev,…)

Page 15: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.2 – Unix / Linux

• Kylix 3

Kylix offre le support des langages de programmation orientés objet C++ ANSI/ISO et Delphi, dans une solution de développement unique.

Page 16: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.3 - Windows

• Visual Basic 6• Delphi 7 Studio (Pascal)

• Windev 7.5

• C++ 6

• C  #

Page 17: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Visual Basic 6

• Microsoft Visual Basic 6 est l'un des environnements le plus populaire

pour construire efficacement des programmes sous Windows. Le système de programmation Visual Basic permet aux développeurs de créer des applications qui apportent des solutions efficaces aux besoins urgents des entreprises.

Page 18: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Delphi 7 Studio

• Delphi Studio

Une solution MDA (Model Driven Architecture) complète, de la conception jusqu’au développement, qui intègre la modélisation, le développement et le déploiement de solutions professionnelles et de e-commerce Windows.

Page 19: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Windev 8

• WINDEV 8 est unique. C’est le seul environnement de développement

totalement intégré. Un seul environnement prend en compte toutes les phases du développement, du cahier des charges à la maintenance.

                                                                                        

Page 20: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

C++

• C++ Builder (Borland)est un environnement de développement C++

ANSI, dédié à la conception d'applications Internet ou distribuées.

• Visual C++ (Microsoft)se présente comme l'un des outils C++ les plus

productifs pour le développement d'applications hautes performances pour Windows et pour le Web.

Page 21: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.4 - Java

• Visual Age for Java (IBM)

• Jbuilder (Borland)

• Visual J++ (Microsoft)

Page 22: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.5 - J2EE

• J2EE, c'est un standard ? En fait, c'est un ensemble de standards. J2EE (pour Java 2 Enterprise Edition) peut être considéré comme un intitulé générique qui couvre plus d'une dizaine de services techniques. Ces services définissent par exemple comment accéder à un annuaire, à une base de données, comment faire dialoguer des machines virtuelles Java ou encore quelles interfaces un composants doit présenter pour être réutilisable dans un tel environnement. C'est la combinaison de tous ces services techniques qui constitue l'architecture J2EE.

Page 23: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IBM Websphere (WSAD)

• Une famille de plus de 100 produits dont certains tournent même sur Windows

L’AGL se nommeIBM WebSphere® Studio

Le système est centré sur Java et les outils du libre tel que CVS. Il incorpore des outils venu de chez National (racheté par IBM) et remplace le célèbre VisualAge for Java.

Page 24: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IBM Websphere Studio

+• Offre très riche• Création de Site et

service Web simplifié• Unix / Linux /AIX

-

Offre complexe et intégration des solutions plus ou moins réussie

Page 25: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.6 – Les Services Web

• Qu'est-ce qu'un Service Web ?Il s'agit d'une technologie permettant à des applications de dialoguer à distance via Internet, et ceci indépendamment des plates-formes et des langages sur lesquelles elles reposent. Pour ce faire, les services Web s'appuient sur un ensemble de protocoles standardisant les modes d'invocation mutuels de composants applicatifs. Un projet qui passe notamment par l'élaboration de WSDL et de SOAP.

Page 26: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

• .NET, c'est l'intégration. Fondée sur des standards de l'industrie (http,

XML, SOAP, WSDL), la plate-forme .NET est un moyen simple de normaliser la coopération des services logiciels entre eux (services Web XML), quelle que soit leur localisation, leur implémentation technique, qu'ils soient internes ou externes, existants ou à inventer. "

Visual Studio .NET

Page 27: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

IV.7 - iPlanet by Sun

• Cette solution de bout en bout marque une nouvelle étape dans le développement des services web au sein de SunOne (Sun Open Net Environment), l'alternative à la plate-forme de services web proposée par Microsoft, .NET.

• Ou le serveur Web devient l’environnement de développement.

• Iplanet n’est en fait que le serveur Netscape réinventé auquel on a ajouté des produits libres repackagés.

• Toujours du Java (Sun oblige) et du Web• Une base de donné, un débuggeur

Page 28: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Critères de choixLe choix d’un AGL est un véritable casse tête

Comment choisir sans tout essayer ?

L’objectif: le web , une application, une base de donnée, du transactionnel …

Les compétences techniques des équipes

La plateforme (Windows / Linux/Unix)

La documentation ….

Page 29: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Comparaison AGL/LangagesServeur WEB !

Langage ASP JSP PERL PHP3

Complexité d'apprentissage

moyen élevé élevé faible

Puissance moyen bon/élevé élevé moyen

Complexité /Puissance

bon faible bon élevé

Portabilité faible élevé élevé Bonne

AGL MS Visual InterDev

IBM VisualAge for Java,

Perl Builder

Ressources Peu Peu Beaucoup énormément

Page 30: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Sources

Page 31: Atelier de génie logiciel Case, Computer aided software environment Ensemble cohérent d'outils informatiques formant un environnement d'aide à la conception,

Glossaire

• API Application Programming Interface:Bibliothèque de fonctions disponibles pour le développeur d’une application et lui permettant de

s’affranchir de la programmation de tâches déjà réalisées par l’API.

• L3GLangage de développement de bas niveau (boucles, tests, calculs, manipulation de variables ou

d’enregistrements). COBOL ou le langage C sont des L3G.

• L4GLangage automatisé proposant des fonctions de haut niveau, généralement graphique, et

permettant la sélection et les mises à jour de données en général issues d’un SGBD relationnel.