présentation baboukweb octobre 2008 université.ppt [mode...

28
BaboukWeb BaboukWeb Présentation du 30/10/2008/IREMIA Anil CASSAM-CHENAI M I TECHNOLOGIES M.I. TECHNOLOGIES Copyright M.I.TECHNOLOGIES 2008

Upload: others

Post on 07-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

BaboukWebBaboukWebPrésentation du 30/10/2008/IREMIA

Anil CASSAM-CHENAIM I TECHNOLOGIESM.I. TECHNOLOGIES

Copyright M.I.TECHNOLOGIES 2008

Page 2: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Objectifs du projetj p jRéalisation d’une gamme de produitsg pexportablesInnovationUtilisation maximale de ressources locales– CompétencesCo péte ces– Réseau

En se mettant à un niveau technologiqueEn se mettant à un niveau technologiqueInternational– Importance de la connexion internet (permanence de p (p

la connexion plus que débit)– Demo interface Desktop

Copyright M.I.TECHNOLOGIES 2008

Page 3: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Structure globaleg

Copyright M.I.TECHNOLOGIES 2008

Page 4: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture multiplateformep

Pascal ObjetPascal ObjetNatif:

Delphi, FPC (Free Pascal Compiler)Portable

Compilateur .netDelphi PrismCompatible Mono

Indépendance de la base de donnéesIndépendance de la base de donnéesBase de donnée externe (Oracle, Access, Postgres, etc)Base de donnée intégréeg

Copyright M.I.TECHNOLOGIES 2008

Page 5: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Structure modulaire (1)( )

Logique de plug-inLogique de plug in– Le serveur d’application en lui-même n’a

aucune fonction métieraucune fonction métier– La gestion documentaire, la comptabilité sont

d l i d d’ li tides plug-in du serveur d’application– Plusieurs plug-in sont chargeables de

manière concurrente– Les plug-in sont téléchargeables et p g g

d’installation automatique (architecture P2P)

Copyright M.I.TECHNOLOGIES 2008

Page 6: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Structure modulaire (2)( )

Copyright M.I.TECHNOLOGIES 2008

Page 7: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Des plug-ins standardp gDes applications métierspp– Comptabilité– Gestion documentaireGestion documentaire– Gestion commerciale

Qui servent de preuve de concept– Qui servent de preuve de conceptUtilisables dans différents modes :– client serveur traditionnel– Interface Web– Sous forme de service Web (ASP)

Copyright M.I.TECHNOLOGIES 2008

Page 8: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Copyright M.I.TECHNOLOGIES 2008

Page 9: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture en couches

Copyright M.I.TECHNOLOGIES 2008

Page 10: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Métadonnées XML et MDA (1)( )Capacité de réaliser la structure de

File

IdFil t i

pdonnées en mode MDA : méta-données UML

+IdFile: string+ClassIdFile: string+IdFolder: string+FileName: int+FileExtension: string+FileSize: integer+IdUser: string+State: integer+CompressedFileGroup: boolean+LastChanged: dateTime

Droits

+Reader: boolean+Writer: boolean+Executor: boolean+RoleManager: boolean

+LastChanged: dateTime+ExpirationDate: dateTime+Description: string+IsModel: boolean+UseLocalRepository: boolean+IdFileRepository: string+IdServer: string+Reference: string+IdFileCategory: string+IdParentDocument: string

FileRepositoryCustomUser

10..*

+IdParentDocument: string+VERSION: string+FileDate: datetime

+EditFile()+OpenFile()+NewVersion()+ValiderDocument()+InValiderDocument()+ReInitializerDocument()+T i V lid ti D t()

Group Users0..*

+TerminerValidationDocument()

Folder

Server

FileCategory

1

0..1

11

Copyright M.I.TECHNOLOGIES 2008

Page 11: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Métadonnées XML et MDA (2)( )– Transformation en méta-données BaboukWeb

Copyright M.I.TECHNOLOGIES 2008

Page 12: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Contenu des méta donnéesLes méta données BaboukWeb contiennent à la fois :– Des informations sur la structure de donnéesDes informations sur la structure de données

et le Mappage OR• Entités, Associations, Index, Requêtes standards , , , q

(Collections)– Les états de l’objet (et les actions qui peuvent

le faire migrer d’un état à un autre)– Les actions réalisables sur cet objet– Les droits d’accès à un objet– Les évènements d’un objet

Copyright M.I.TECHNOLOGIES 2008

Les évènements d un objet

Page 13: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Interêt des méta-données

Paramétrables à la mainParamétrables à la main– Données

ti– actions• compilées • Scriptables

– Etats et icône d’étatDeux notions essentielles pour les plug-ins

Héritage des méta données XML– Héritage des méta-données XML– Redéfinition des méta-données

Copyright M.I.TECHNOLOGIES 2008

Page 14: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Et on peut aller plus loin …p p

Définition d’applications via XMLDéfinition d applications via XML– On décrit l’assemblage de plug-ins qui

donnent l’applicationdonnent l applicationDéfinition de plug-in via XML– On liste les métadonnées qui vont constituer

les objets métiers, les requêtes et même des j qscripts

Définition des interfaces via XMLDéfinition des interfaces via XML– Assemblage de frame prédéfinies

Copyright M.I.TECHNOLOGIES 2008– Au niveau application et fiche d’objet

Page 15: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture de communication

Mode client/serveurMode client/serveur– Architecture connectée

A hit t dé té– Architecture déconnectéeMode P2P (en cours de conception)( p )– Information répartie sur un réseau de pairs

Echanges– Echanges• De données

D’actions• D’actions• D’évènements

D l i• De plug-in Copyright M.I.TECHNOLOGIES 2008

Page 16: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture C/S connectéeNavigateur Serveur HTTP

HTTPHTTP

Serveur Personnel

Basepersonnelle

XML/HTTP

Cli t B b kW b S B b kW bClient BaboukWeb Serveur BaboukWeb

B

Mode ConnectéBase

Principale

Copyright M.I.TECHNOLOGIES 2008

Page 17: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture C/S déconnectéeNavigateur Serveur HTTP

Ser

veur

H

TTP

loca

l

Serveur Personnel

Basepersonnelle

Synchronisation différée

Client BaboukWeb Serveur BaboukWeb

Mode déconnectéBase

Principale

Copyright M.I.TECHNOLOGIES 2008

Page 18: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Structure P2P

Copyright M.I.TECHNOLOGIES 2008

Page 19: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture P2P(en cours de conception)

ServerGroupRoles

+DataProvider: Boolean+RelayProvider: Boolean+ActionProvider: Boolean+Pee InfoP o ide Boolean

ServerGroup Server

0..**

+PeerInfoProvider: Boolean+...

CustomUser

1..*1 0..*

0..*

0..*MandatoryPlugIns

+Active: BooleanUser UserGroup

0..*

PlugInInfo

Module Client/ServeurModule P2P

Copyright M.I.TECHNOLOGIES 2008

Page 20: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Différents rôles de pairspFournisseur de données (DataProvider)( )– Fourni des données aux autres pairs (en respectant les droits de

l'utilisateur connecté sur le pair distant)

Serveur d'operation (ActionProvider)– Peut exécuter des traitements sur la demande du poste distant

( i t t tâ h d kfl )(scripts et tâches de workflow)

Serveur de relai (RelayProvider)– Permet de relayer des demandes d'autres pairs dans le cadre

d’un groupe de pairs. Permet de contourner des firewall

S d' i (P I f P id )Serveur d'annuaire (PeerInfoProvider)Contient des informations sur les pairs connectés. Permet aussil’i i ti à d il’inscription à un groupe de pairs.

Copyright M.I.TECHNOLOGIES 2008

Page 21: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Architecture de communicationFramework de développement apportant unepp ppabstraction au niveau des services et des échangesg

Canaux de communicationEn standard utilisation de canal de communicationEn standard utilisation de canal de communication HTTP/HTTPS Flux de données au format XML

Groupes de servicesMais potentiellement

Serialization+Canaux binaires sans modification du framework

Copyright M.I.TECHNOLOGIES 2008

Page 22: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Système de vue (1)y ( )

Séparé du modèle : MVCSéparé du modèle : MVCLes vues sont définies en XML

Comme Xul, Xaml, etc

“migrable”gElle sont faites pour migrer sur le réseau entre serveur et client ou entre pairsp

Via la migration de plug-in avec de vues fortementliéesVia une requête sur une vue ayant un chemin non local (possibilité de centralisation de vues,…) dans une architecture C/S Copyright M.I.TECHNOLOGIES 2008

Page 23: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Système de vue (2)y ( )

“Fonctionnelle”FonctionnelleUne décomposition fonctionnelle. Une fonction peut être représentée par deuxfonction peut être représentée par deux composants différents

M ti l t fMutiplateformeOn choisit le composant dans une pbibliothèque compatible avec la plateforme cible

Compatible Web 2.0Interface Desktop et Web (en cours basé surInterface Desktop et Web (en cours basé sur Tibco) Copyright M.I.TECHNOLOGIES 2008

Page 24: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Structures de donnéeBaboukWeb offre une structure de donnéesrépartie entre plusieurs postesLes données sont protégées par les règles deLes données sont protégées par les règles de sécurité du serveur d’applicationOn dispose de deux modes de requêtage locauxOn dispose de deux modes de requêtage locauxet distants sur les objets

M d t X th ( i i b t G b XMLMode type Xpath (vision arborescente. Grosse base XML répartie)Mode utilisant l’algébre des collections/providersMode utilisant l algébre des collections/providersLes deux peuvent être mélangés

Illustration des conceptspCopyright M.I.TECHNOLOGIES 2008

Page 25: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Les actions

On manipule des actions au niveau le plusOn manipule des actions au niveau le plus haut de la structure en couche avant les vuesvuesIntérêt :

Undo/RedoRôles et limitation des accèsOpérations distribuées (dont même opérations séparable en éléments traités indépendemments sur p pdivers serveurs)Scriptable

Copyright M.I.TECHNOLOGIES 2008

Page 26: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Le moteur de script (1)p ( )

Raison d’être :Raison d être :Compléter le système des vues XML, en permettantla création d’actions scriptéesla création d actions scriptéesCes actions scriptées sont accessible dans un autrescript en connaissant son chemin. Donc on a unesc p e co a ssa so c e o c o a u erichesse de conception similaire à celle d’un langageobjetLes action scriptées peuvent être distantes

Le moteur de scripts donne aussi des actions pélémentaires de bas niveau chorégraphiables dans un deuxième temps par un moteur de Workflow

Copyright M.I.TECHNOLOGIES 2008

Page 27: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Le moteur de script (2)p ( )Exemple

If /ClassItem[‘BaboukWebCommon.Folder’]/ObjectItem[@name=‘racine’]/

Field[@name=‘selected’]=true then

b ibegin

/ClassItem[‘BaboukWeb.Common’]/ObjectItem[@name=‘racine’]/

Action[@name=‘createSubFolder’](‘Mon dossier’);@ ( )

end

Il existe la possibilité une notation abrégée en posant commei i l t ti i té d à l’ l d’ élé tprincipe que la notation pointée correspond à l’appel d’un élément

de chemin (paramétré)stocké dans un dictionnaire associé à un objet

Copyright M.I.TECHNOLOGIES 2008

Page 28: Présentation BaboukWeb octobre 2008 université.ppt [Mode ...lim.univ-reunion.fr/web-data/seminaire/slides/BaboukWeb-08-10.pdf · Structures de donnée BaboukWeb offre une structure

Le futur prochep

Copyright M.I.TECHNOLOGIES 2008