expertsystems · développer des projets spécifiques : ... par ailleurs, le progiciel de gestion...

19
EXPERTSYSTEMS ExpertSystems Embarcadero All-Access EUVRARD Cédric trimestre 2010

Upload: others

Post on 02-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

EXPERTSYSTEMS

ExpertSystems Embarcadero All-Access

EUVRARD Cédric 3è trimestre 2010

Page 2: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

1

I. Cadre du stage ................................................................................................................................. 2

A. L’entreprise.................................................................................................................................. 2

B. L’équipe de travail ....................................................................................................................... 3

C. L’environnement ......................................................................................................................... 3

II. Tâches effectuées ............................................................................................................................ 5

A. Installation et découverte d’All-Access ....................................................................................... 6

B. Développement de démonstrations ........................................................................................... 7

III. Connaissances technologiques .................................................................................................... 8

A. Delphi 2010 ................................................................................................................................. 8

B. C++Builder 2010 .......................................................................................................................... 9

C. Delphi Prism 2010 ..................................................................................................................... 10

D. JBuilder 2008 ............................................................................................................................. 10

E. 3rdRail........................................................................................................................................ 11

F. Delphi for PHP ........................................................................................................................... 12

G. Autres modules (relatifs aux bases de données, à l’optimisation de code Java et à la

modélisation des processus métiers) ................................................................................................ 12

IV. Droit du travail ........................................................................................................................... 13

V. Conclusion ..................................................................................................................................... 14

A. Embarcadero/Open Source ....................................................................................................... 14

B. Choix du langage et du Système de Gestion de Bases de Données Relationnelles .................. 15

1. Choix du langage ................................................................................................................... 15

2. Choix du SGBDR ..................................................................................................................... 15

C. Système expert ou requêtes sur bases de données .................................................................. 16

VI. Bibliographie .............................................................................................................................. 16

VII. Annexes ..................................................................................................................................... 18

Page 3: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

2

I. Cadre du stage

A. L’entreprise

ExpertSystems est une entreprise individuelle (auto-entreprise) fondée par Fabien QUANTIN,

ingénieur en génie civil, à Nice en juillet 2010. Les locaux de l’entreprise sont situés sur les hauteurs

de la ville.

Le but du stage est d’aider à la mise en place de la cellule de production de l’entreprise en

testant des outils logiciels acquis (Embarcadero All-access, moteurs de bases de données) et en

commençant l’exploitation de ces logiciels.

ExpertSystems a plusieurs objectifs commerciaux:

Développer des applications desktop, client/serveur et web sur commande à l’aide de

la suite logicielle Embarcadero All-Access sous différents langages (PHP, Delphi ou

Pascal Objet, C++, Java, .Net, Ruby) ;

Modéliser et concevoir des bases de données :

o dans un 1er temps: dBase, Paradox, MySQL, SQL Server, InterBase, Firebird,

BlackFishSQL, PostGreSQL ;

o dans un 2° temps : Oracle, IBM, Sybase, Informix ;

Administrer et optimiser de bases de données : MySQL, SQL Server, InterBase,

Firebird, PostGreSQL ;

Regrouper l’administration de plusieurs SGBD avec DBArtisan ;

Développer des projets spécifiques :

o des systèmes experts destinés à différents domaines d’application dans les

secteurs divers (ingénierie, informatique, électronique, RH, économie, finance,

banque, assurance, médecine, biologie, agriculture, agronomie, géologie,

chimie, biochimie, production, ateliers flexibles)

diagnostic et maintenance (45% des applications);

conception et planification (20% des applications) ;

contrôle, pilotage et surveillance (15% des applications)

Exemples : analyse du risque client, contrôle de dossier, analyse de bilans,

contrôle des procédés (pétrole, ciment), rédaction de contrats standards

tel que des contrats d’assurances, analyse de dossier de prêt.

Intérêt : rapidité, fiabilité et évolutivité des traitements

Page 4: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

3

o des outils de management de projet destiné à un usage interne (management

des projets informatiques) et externe (projets de génie civil ou industriel)

o intégration de systèmes experts dans l’outil de mangement de projet

Ces objectifs sont complémentaires étant donné qu’All-Access pourra aider à décliner ces

projets spécifiques en différentes versions (web, client/serveur, monoposte, mobile) et plateformes

(Windows, UNIX, Linux, Apple).

B. L’équipe de travail

L’équipe est composée de :

Fabien QUANTIN : ingénieur senior en génie civil bénéficiant d’une expérience

en développement : langage Delphi (Pascal Objet), C++ et PHP ;

Florent PICARD : ingénieur développeur senior multi langages responsable de la

transposition du système expert sous différents environnements ;

Cédric EUVRARD : étudiant en 3° année à SUPINFO, spécialiste réseau et

développeur junior multi langages.

Chaque membre de l’équipe est lié par un accord de confidentialité concernant le développement du

système expert.

C. L’environnement

Au sein des locaux, le réseau informatique en place comprend:

2 PC HP avec respectivement Windows XP et un écran 17’’ et Windows Vista

et un écran 22’’ (hébergeant la suite logicielle);

2 PC portables Packard Bell 12’’ et Sony 15’’ ;

1 serveur HP Mediasmart à usage grand public pour le partage de fichiers ainsi

que la gestion des sauvegardes des ordinateurs sur le réseau et disposant d’un

accès à distance;

Page 5: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

4

1 serveur HP Mediasmart utilisé pour l’hébergement des bases de données ;

Une imprimante réseau multifonction laser Samsung.

Ce réseau informatique permet par ailleurs de réaliser les tests des applications

client/serveur en conditions réelles d’utilisation.

L’outil logiciel principal est la suite Embarcadero All-Access composée de modules

permettant :

La modélisation de processus métiers des entreprises :

o ER/Studio Business Architect 1.6.1 ;

La modélisation d’applications :

o ER/Studio Software Architect 1.0 (ex EA/Studio);

Le développement d’applications:

o Delphi ou Pascal Objet : Delphi 2010 ;

o C++ : C++Builder 2010 ;

o Delphi.Net : Delphi Prism 2010 ;

o PHP : Delphi 2.1 for PHP ;

o Ruby : 3rdRail 2.0 ;

o Java : JBuilder 2008 R2 ;

L’optimisation de développement Java :

o JOptimizer 2009 ;

L’utilisation du SGBD Interbase :

o InterBase SMP 2009 ;

La modélisation de bases de données :

o ER/Studio Data Architect 8.5.2 ;

La conception de bases de données :

o Rapid SQL 7.7.0 ;

o Rapid SQL Developer 2.1.3 (ex Power SQL);

L’administration de bases de données:

o DBArtisan 8.7.4 ;

o DB Change Manager 5.5.1 ;

L’optimisation de bases de données :

o DB Optimizer 2.5 ;

Page 6: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

5

Pour des besoins de migration sous Delphi, une organisation spécifique (logiciels et

documentation) est en place. Cette dernière comprend les versions :

Turbo Pascal 5.5 ;

Delphi 3 ;

Delphi 7 ;

Delphi 8 pour .Net ;

Delphi 2005 ;

Delphi 2006 ;

Delphi 2007 ;

Delphi 2009.

D’autres outils logiciels viennent compléter la suite All-Access :

Les packages Devart intégrés à RAD Studio (Delphi 2010, C++Builder) apportent des

composants supplémentaires pour l’interaction avec les SGBD MySQL et SQL Server;

NetBeans et Apache Tomcat ;

Apache ;

Turbo JBuilder 2007 ;

MySQL et son outil de management : MySQL Administrator ;

Microsoft SQL Server 2005 et SQL Server Management Studio ;

FireBird ;

DataBase Tour ;

WireShark (monitoring réseau) ;

Tortoise SVN.

Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de

l’entreprise.

II. Tâches effectuées

Tous les modules d’All-Access ont été pris en main à travers la réalisation d’applications

concrètes.

Page 7: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

6

Par ailleurs, une sensibilisation à l’utilisation du système expert en cours de développement a été

effectuée par la rédaction d’une mini base de connaissances dédiée à l’optimisation des ressources

(développeurs) en rapport avec les caractéristiques techniques des projets informatiques. L’objectif

étant de déterminer les avantages d’un tel système par rapport à des requêtes SQL sur des bases de

données.

Les tâches suivantes ont été effectuées au cours du stage :

Installation et découverte des modules All-Access (cf Paragraphe I.c) ;

Développement d’applications concrètes (ci-après) ;

Initiation au système expert ;

Refonte du site web www.expertsystems.fr afin qu’il reflète au mieux les moyens et

les compétences techniques de l’entreprise (après remise du rapport de stage).

A. Installation et découverte d’All-Access

Au cours du stage, tous les modules ont été installés séparément sur l’ordinateur hôte.

A l’origine, les applications sont téléchargeables grâce à l’outil mis en place par Embarcadero, la

ToolBox. Cette dernière permet de télécharger et d’installer automatiquement les applications sur le

disque dur. La ToolBox permet de gérer le mode de fonctionnement des différents modules et même

de les démarrer. On peut également y visualiser les versions des produits installées, le chemin de

celles qui y sont installées et celles qu’on peut télécharger.

Cependant, cela nécessite une connexion Internet très performante car chaque exécutable

d’application fait plusieurs centaines de MégaOctets or il y en a 16 dans la suite All-Access.

Une alternative consiste à se procurer le Media Kit (DVD d’installation des applications), solution

retenue pour le stage.

La ToolBox dispose du mode Instant On qui permet de faire fonctionner les applications comme des

CDLive, c’est-à-dire, simuler leur présence sur l’ordinateur sans avoir à les installer.

Il existe une version « Réseau » de la ToolBox permettant de gérer les licences et de déployer

les outils Embarcadero auprès des utilisateurs, c’est le ToolCloud.

Les logiciels doivent ensuite être activés à leur première exécution, étant donné qu’All-Access

fonctionne avec un système de licences disponibles sur le compte de l’acheteur sur

edn.embarcadero.com. Chaque application possède son code d’activation propre sur le compte.

Page 8: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

7

Ces deux étapes (installation et activation) sont assez lourdes à réaliser parce que les installations

sont longues et que pour chaque activation, il faut fournir l’identifiant Embarcadero, le mot de passe

et le numéro de série de l’application à activer.

Enfin, la découverte d’All-Access a été effectuée en testant chaque module pour avoir un

aperçu de son fonctionnement et de son interface.

B. Développement de démonstrations

Suite à la découverte des modules, au moins une application a été réalisée, bien évidemment

dans le langage propre au module.

Ainsi, des applications ont été développées en PHP, puis en Delphi, C++, Java, .Net et Ruby.

Les modules de base de données ont servi à modéliser, créer, administrer et optimiser une

base sous InterBase, MySQL, Microsoft SQL Server et FireBird.

Pour le développement des démos, le déroulement a été le même.

La première étape a été une découverte de chaque langage avec ses spécificités propres et ses

domaines de prédilection (ex : PHPWeb). Ensuite, un apprentissage a été nécessaire pour certains

langages (Pascal, C++). Puis, des exemples ont été recherchés sur Internet pour explorer les

différentes fonctionnalités. Après, le développement de l’application a été commencé. Et enfin, des

tests ont été menés pour corriger les erreurs et améliorer l’ergonomie.

Pour Delphi, cela a été un peu différent car des tests de compatibilité des composants ont

été effectués avec des exemples livrés avec les versions antérieures de Delphi à notre disposition.

Ceci a permis de retracer l’historique de l’EDI Delphi et les évolutions qu’il a connu depuis sa création

en 1995.

Pour les modules de bases de données, aucune application n’a été développée mais

différentes tâches ont été effectuées selon la spécificité de chacun. En effet, ils ont tous des

fonctions différentes et ciblent une phase spécifique de la vie des bases de données.

Page 9: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

8

III. Connaissances technologiques

Plusieurs types d’applications ont été réalisés. Selon le langage et les outils disponibles dans les

modules de développement :

une application de gestion d’entreprise: carnet d’adresse liée à une base de données d’abord

locale puis distante. Développement réalisé en langage Pascal Objet sous Delphi, C++, PHP ;

un convertisseur de devises. Développement réalisé en Pascal Objet sous Delphi, C++, PHP,

Java, Pascal Objet sous Delphi Prism ;

une application client/serveur (envoi de messages du client vers le serveur) en Java ;

une application type « HelloWorld » déclinée en servlet (HTML encapsulé dans du Java) et en

JSP (appel Java encapsulé dans du HTML).

Par ailleurs d’autres applications ont été importées (voir annexe All-Access) et modifiées sous

l’environnement All-Access dans le cadre de test de migration et de compatibilité (open source/All-

Access).

Pour les besoins de l’application de gestion d’entreprise, une base de données a été construite

pour interagir avec cette application développée en différents langages. C’est le SGBDR MySQL qui a

été utilisé. La base de données contient 3 tables :

la table « clients » ;

la table « employés » ;

la table « user ».

Cette dernière contient des login et des mots de passe. Elle sert uniquement pour l’authentification

pour l’application en PHP.

La base de données a d’abord été crée et utilisée en local puis ensuite exportée sur un serveur

distant.

A. Delphi 2010

Deux applications ont été réalisées en Pascal Objet, appelé aussi langage Delphi, sur cet EDI :

une application de gestion d’entreprise liée à la base de données ;

Page 10: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

9

un convertisseur de devises.

L’application de gestion permet de visualiser les tables « clients » et « employés ». On peut

également ajouter, supprimer ou modifier les lignes dans ces 2 tables.

Pour réaliser cette application, certains composants ont été utilisés. Ces composants sont des

composants DBExpress et doivent remplacer à terme les composants BDE (Borland Database Engine).

DBExpress est apparu dans la version Delphi 7 en 2002 mais est encore peu utilisé à cause de la

complexité de son utilisation. En effet, cinq composants (TDatasource, TClientdataset ou TSQLQuery

ou TSQLTable, TDatasetProvider, TSQLDataset, TSQLConnexion) sont nécessaires pour arriver au

même résultat qu’avec trois pour le BDE (TDatasource, TTable ou TQuery, TDatabase) mais les

ressources sont beaucoup moins sollicitées. Dans DBExpress, un composant TSimpleDataSet existe

pour regrouper les fonctionnalités des composants TClientDataset, TDatasetProvider et TSQLDataset

et ainsi rappeler l’esprit du BDE mais finalement, ce composant est plus complexe que les 3 pris

séparément.

Avec le BDE, les changements dans les données de la base étaient transférés directement

entrainant des accès et du transfert d’informations permanents entre l’application et la base. La

bande passante était donc tout le temps occupée par ces transferts. Avec DBExpress, les

changements sont enregistrés dans un cache (composant TClientDataset) via la commande « post »

et sont transférés via la commande « applyupdates ».

Le convertisseur permet de convertir en euros, dollars US, livres Sterling et francs en

affichant le taux de change.

B. C++Builder 2010

Les applications développées sont les mêmes que pour Delphi. C’est-à dire une application de

gestion d’entreprise et un convertisseur de devises.

Cependant, l’application de gestion est plus ergonomique que sous Delphi et plus aboutie.

Elle utilise différentes fenêtres plutôt que des onglets corrigeant ainsi l’absence de rafraichissement

automatique des pages après modification.

Les composants sous C++Builder 2010 sont identiques aux composants sous Delphi 2010.

Page 11: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

10

C. Delphi Prism 2010

Seul le convertisseur a été développé mais en 2 versions. Delphi Prism est un plugin de Visual

Studio 2008, 2010 et MonoDevelop et permet de développer pour les OS Windows et Mac. Une

version pour chaque OS a été réalisée.

Les développements pour Mac nécessitent une compilation en langage natif (Mono) et le

respect de la charte graphique Apple disponible sous AppleStore.

Le passage par MonoDevelop permet de développer pour MacOS X et iPhone OS.

La syntaxe du Pascal Objet sous Delphi Prism présente quelques différences par rapport à

celle sous Delphi.

Par exemple, les méthodes de « cast » des variables (chaîne de caractèresentiers) sont

différentes (cf code source). Les noms changent également : méthode remplace procédure et

fonction. Sous Delphi Prism, la syntaxe se rapproche des langages totalement orientés objet comme

Java ou C#.

D. JBuilder 2008

Java offre également de nombreuses possibilités, il permet de développer des applications

monoposte, web ou client/serveur. Aussi, différentes types d’applications sont présentées :

un convertisseur de devises (monoposte);

un programme de calcul de matrice en mode console a été récupéré et la classe matrice qu’il

utilise a été adaptée (monoposte);

une application client/serveur où le client envoie des messages au serveur ;

un annuaire téléphonique qui interroge un fichier texte contenant les données

(client/serveur) ;

un jeu simulant de l’intelligence artificielle (monoposte) ;

une application type « HelloWorld » en servlet et JSP (web).

Il est possible d’exporter des projets Java sous différents formats selon les besoins :

Page 12: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

11

les fichiers JAR (Java ARchive) est un fichier ZIP utilisé pour distribuer un ensemble de classes

Java. Ce format est utilisé pour stocker les définitions des classes, ainsi que des

métadonnées, constituant l'ensemble d'un programme.

les fichiers WAR (Web Application aRchive) sont des archives JAR contenant des fichiers XML,

des classes Java, des JSP (Java Server Page) et d'autres objets pour les applications Web ;

les fichiers EAR (Enterprise Application aRchive) sont des archives JAR contenant des fichiers

XML, des classes Java et d'autres objets pour les applications d'entreprise ;

les fichiers RAR (Resource Adapter aRchive) sont des archives JAR contenant des fichiers

XML, des classes Java et d'autres objets pour l'architecture de connecteurs (JCA) de la

plateforme J2EE ;

les fichiers AAR (Axis ARchive) sont des archives JAR spécifiques pour le déploiement de

service web sous Axis 2.

Les fichiers WAR, EAR, RAR, AAR sont également des fichiers JAR mais de structure différente.

Tous les outils Java Embarcadero (JBuilder2008, RapidSQL Developer, J Optimizer) reprennent l’EDI

Eclipse.

E. 3rdRail

3rdRail est un EDI destiné à faire du Ruby, un langage uniquement pour faire du web.

Des difficultés rencontrées lors de la configuration ne permettent pas d’exploiter l’ensemble des

fonctionnalités de ce module. Une alternative à 3rdRail consiste à utiliser l’EDI NetBeans.

Ainsi, sous 3rdRail, il n’est actuellement pas possible de réaliser des projets Rail toutefois des projets

Ruby restent envisageables.

Pour mémoire, Ruby on Rail est un framework open source, c’est-à dire des bibliothèques de classes,

qui se greffe sur l’interpréteur Ruby. 3rdRail est son équivalent en Embarcadero.

Attention, Delphi On Rails n’est ni un framework, ni un module lié à 3rdRail mais un modèle

d’architecture basé sur MVC (Modèle Vue Contrôleur) et REST (Representational State Transfert).

Page 13: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

12

F. Delphi for PHP

PHP est un langage orienté web. Ainsi les pages php obtenues sont destinées à être

hébergées sur un serveur web. Il est impossible de créer des fichiers exécutables.

Deux applications ont été développées en PHP :

une application de gestion d’entreprise similaire à celle réalisée sous Delphi et

C++Builder avec une fonction d’authentification supplémentaire pour accéder à la page

d’administration ;

un convertisseur de devises.

Dans le cadre de la refonte du site web www.expertsystems.fr, Delphi for PHP sera utilisé pour

créer des pages web pouvant accéder à la base de données du système expert.

G. Autres modules (relatifs aux bases de données, à

l’optimisation de code Java et à la modélisation des processus

métiers)

Nous avons abordé précédemment (points A, B, C, D, E, F) les modules relatifs au

développement d’applications pour lesquels des exemples concrets ont été réalisées.

Les autres modules relatifs à la modélisation, à la conception, à l’administration et à

l’optimisation de bases de données ou applications Java et également de modélisation de processus

métiers faisant partie d’All-Access sont détaillés dans le cadre de l’annexe All-Access jointe au

présent rapport.

Page 14: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

13

IV. Droit du travail

ENVIRONNEMENT JURIDIQUE (DROIT SOCIAL) :

OIT: Organisation Internationale du Travail

-> www.ilo.org

JURIDICTION COMPETENTE: CONSEIL DES PRUD'HOMMES

-> www.justice.gouv.fr

DDTEFP : Direction départementale du travail et de la formation pro DDTEFP

-> www.travail-solidarite.gouv.fr

INSPECTION DU TRAVAIL: inspecteur du travail, contrôleur du travail, médecins-inspecteurs

-> www.travail-solidarite.gouv.fr

CONVENTION COLLECTIVE

-> www.ma-convention-collective.com

MEDECINE DU TRAVAIL

->www.travail-solidarite.gouv.fr

->www.inrs.fr

HIERARCHIES DES SOURCES

DROIT COMMUNAUTAIRE (REGLES, TRAITES BILATERAUX) ET DROIT INTERNATIONAL

CONSTITUTION DE 1958

LOIS ET ORDONNANCES

REGLEMENTS ET DECRETS

JURISPRUDENCES

CONVENTIONS COLLECTIVES, REGLEMENT INTERIEUR

CONTRAT DE TRAVAIL

CODES www.legifrance.gouv.fr

CODE DU TRAVAIL

CODE DE LA SECUTITE SOCIALE

Page 15: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

14

Exemples : L1221-1

L: partie législative (loi)

R: partie réglementaire (décrets en Conseil d'Etat)

D: partie réglementaire (décrets simples)

1: partie

2: livre

2: titre

1: chapitre

-1: article

ANNEXE : CODE DE TRAVAIL

CDT ENTREE PAR THEMES

CDT ENTREE PAR ARTICLES

V. Conclusion

A. Embarcadero/Open Source

Bien qu’All-Access soit un environnement propriétaire, les outils de développement qu’il

intègre sont assez proches d’EDI disponibles en open source. Seul Delphi et Delphi Prism restent des

environnements propriétaires propres à Embarcadero. Ces derniers utilisent le langage Pascal Object

avec des modifications mineures sous Delphi Prism.

Delphi Prism ouvre aux développeurs Pascal Object des possibilités de réaliser aisément des

applications pour des plateformes différentes (Windows, Linux, MacOS, UNIX). En effet, Delphi Prism

n’est pas un EDI mais un plugin intégré à Visual Studio et MonoDevelop.

All-Access permet un développement d’applications plus rapide en apportant des

bibliothèques de composants fournies et des interfaces graphiques conviviales.

Page 16: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

15

B. Choix du langage et du Système de Gestion de Bases de

Données Relationnelles

1. Choix du langage

Le choix d’un langage est conditionné par les paramètres suivants :

type d’application : web, client/serveur, monoposte ;

type de plateforme : Windows, Linux, MacOS, UNIX ;

fonctionnalités spécifiques (unicode, gesture, multitouch…).

Java et Pascal Object (sous Delphi Prism) permettent de réaliser tous les types d’application sur

toutes les plateformes. Java restant un langage interprété s’adapte plus facilement à différentes

plateformes grâce à la JVM (Java Virtual Machine). Par contre, Pascal Object doit être écrit et compilé

de manière spécifique pour chacune des plateformes.

PHP et Ruby sont uniquement destinés à développer des applications web.

Delphi et C++ restent des langages très performants pour des applications monoposte et

client/serveur.

2. Choix du SGBDR

L’histoire des SGBDR est mouvementée (cf http://fadace.developpez.com/sgbdcmp/story/)

Le choix des SGBDR est vaste (cf http://fadace.developpez.com/sgbdcmp/).

Le classement 2005 Winter TopTen Award Winners représente les plus gros volumes de données et

leur SGBDR (cf www.wintercorp.com/VLDB/2005_TopTen_Survey/2005TopTenWinners.pdf).

Les SGBDR compatibles avec les outils de développement Embarcadero sont les suivants:

Open Source Oracle MySQL ;

Oracle Database ;

Microsoft SQL Server ;

Sybase ASA/ASE ;

IBM DB2 ;

IBM Informix ;

Embarcadero BlackFish ;

Embarcadero InterBase ;

Page 17: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

16

Open Source FireBird.

Les caractéristiques propres à ces SGBDR (embarqué, volume, fiabilité, prix, plateforme)

déterminent le choix d’un de ces SGBDR.

Les SGBDR compatibles avec les outils de bases de données Embarcadero sont :

Open Source Oracle MySQL ;

Oracle Database ;

Microsoft SQL Server (licence retenue) ;

Sybase ASA/ASE ;

IBM DB2 ;

IBM Informix ;

Embarcadero BlackFish ;

Embarcadero InterBase ;

Open Source FireBird.

C. Système expert ou requêtes sur bases de données

La refonte du site web www.expertsystems.fr aura pour objectif de présenter les apports en terme

de fonctionnalités (et non de développement) d’un système expert par rapport à une application

effectuant des requêtes sur des bases de données.

VI. Bibliographie

Documentation interne

http://www.developpez.com/

http://www.codes-sources.com/

http://www.commentcamarche.net

http://edn.embarcadero.com/

http://cc.embarcadero.com/

Page 18: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

17

Delphi:

http://docwiki.embarcadero.com/CodeSamples/en/Category:Delphi

http://delphi.dev-dz.com/codesource.php

Delphi Prism :

http://www.codeproject.com/KB/net-languages/delphiPrismDemo.aspx

http://delphi.dev-dz.com/codesource.php

http://www.prestwoodboards.com/ASPSuite/KB/CrossRef.asp?LangID=13

JBuilder :

http://b.kostrzewa.free.fr/java/

http://download.oracle.com/javase/tutorial/index.html

http://www.cui.unige.ch/java/exemples/index.html

http://www.eclipsetotale.com/

http://www.jmdoudoux.fr/accueil_java.htm

http://www.jgoodies.com/downloads/

http://triton.towson.edu/~schmitt/server/servlet/

http://www.objis.com/formation-java/

http://www.courses.coreservlets.com/

Delphi for PHP :

http://www.delphi-php.net/

http://paul.versayo.free.fr/

3rdRail :

http://www.opensourcerails.com/projects/upcoming

http://snippets.dzone.com/tags/rails

Page 19: ExpertSystems · Développer des projets spécifiques : ... Par ailleurs, le progiciel de gestion intégré (OpenERP) a été retenu comme système d’information de l’entreprise

18

VII. Annexes

Annexe All-Access

Annexe Code du Travail

Applications