|

DÉCOLLAGE
! |
 |

Présentation
du
site WEB AILES |
|
|
|
Oui, avec quoi structurer ?
Avec quels services techniques ?
Avec quelle
décomposition applicatives ?
Avec quelle répartition entre
l'aspect 'présentation', 'logique applicative' et 'données'
?
Maintenant que les sphères Métier
ont détaillés les objectifs
et procédures
à suivre, que la sphère Fonctionnelle
en a déduit les cas
d'utilisation et les services, il faut poursuivre
l'activité de structuration à la base de toute architecture.
Cette fois, l'élément structurant est
l'application, constituée d'un ensemble de composants
techniques qui supporte les besoins fonctionnels.
Et vu le nombre de ces fonctionnalités
techniques nécessaire à la réalisation concrète des
services métier... on se rend vite compte que la complexité
vient de grimper d'un cran.
« Welcome... into the Real » (Morpheus to Neo, Matrix 1999). |
|
|

Lisez-moi
et
réagissez ! |

Écrivez
à AILES ! |

Retour vers le dossier
Architecture Applicative |

Retour vers le dossier
Architecture |
|
|
Projection
Comme rappelé dans l'article sur le passage
du point de vue fonctionnel au point de vue technique,
l'Architecture Applicative représente le premier niveau d'une
projection entre une Architecture Fonctionnelle
(et ses services métiers) et des technologies logicielles qui
vont devoir supporter ces services.
Cela doit prendre la forme de services
technologiques permettant de supporter les composants
fonctionnels définis dans la sphère précédente, celle d' Architecture Fonctionnelle
et illustrés dans ses Principes Généraux.
Services Techniques
Au delà des services fonctionnels,
tout un ensemble de services techniques doivent être mises en
place pour assurer le lien entre le système (à gauche du
diagramme) et les acteurs
(à droite du schéma: les 'consumers').

Le système contient les composants
techniques qui supportent les composant
fonctionnel métier. Ils sont regroupés au sein
d'applications (partie gauche du diagramme).
Toute la partie droite décrit les services
applicatifs transversaux qui complètent les composants
techniques.
Un certain nombre d'entre eux (les services
applicatifs) avait
déjà été décrit dans le point
de vue de l'Architecture
Technique, comme constitutif d'une plate-forme
technique d'exécution des composants. Ils sont repris
au centre de ce schéma, parfois sous des noms légèrement
différents, mais on retrouve:
* Des couches de transfert d'information:
- les devices: pour bien définir les application, il faut
déjà anticiper les moyens d'accès concrets utilisés (ordinateur,
ordinateur portable, PDA, fax-imprimante, téléphone, pager,
...);
- le réseau: il sera défini et mis par la Sphère Architecture Technique
(d'où la couleur rouge), sans doute au niveau de
l'infrastructure (lien);
- la sécurité: vaste chantier où l'on retrouve des
fonctions techniques comme l''Authorization',
'Authentification', 'Encryption', 'Certification', 'Sinhle
Sign-on', 'Virus guard', 'Location', 'User'.
- 'content dispatch': processe les données provenant
du réseau. A ce niveau, il faut prévoir la couche sans
encore fixer la technologie (HTML, WML, SMS, ...)
- 'l'Interface': gère tous les aspects middleware
(déf), toujours sans en nommer la technologie. A ce niveau,
on identifie les besoins en terme de données
distribuées sans dire s'il s'agira de Corba, RMI, MQ
ou autre broker.
- la 'Connectivity': définie et mise en place au
niveau de la Sphère Architecture Technique
(d'où la couleur rouge)
* Des couches de gestion de l'information:
- 'Browsing': permet la consultation des données (que
ce soit des données web, e-mail, 'corporate data' ou des
pages personnalisées);
- 'Synchronization': il s'agit de prévoir toutes les
possibilités de synchro entre les différents systèmes
(front, back, middle lien), mais aussi entre les différents
acteurs (internes à l'entreprise, client, partenaire lien);
Cela comprend la description dynamique des flux synchrones
et assynchrones entre les applications, avec un éventuel data
caching (sachant qu'il existe plusieurs type de cache de
données).
- 'Transaction engine': gère toutes les séries
d'actions et les regroupe au sein d'unité d'œuvre. Ceal
comprend également toute la problématique de persistence.
- 'Notification & Data push': gère les aspects
workflows, avec des évènements initiés soient par les plates-formes
de production ou par le 'back-end';
- 'Conversion & Formatting': assure la conversion
de format entre les systèmes (et en particulier entre les
front, middle et back office). Une mise en œuvre typique
consiste à transformer un message venant de l'extérieur en
un format maison.
* Des couches transverses de
management:
Ces couches managent essentiellement :
- le 'User' et
~ toutes ses préférences afin
de permettre une session personnalisée au niveau du
front-end, ou customisée au niveau du back-end.
~ son activité sur le système
(en terme de logging et de gestion d'erreur);
~ son enregistrement et ses
droits.
- le 'Hardware', c'est-à-dire les 'devices' (gestion,
enregistrement et déclaration des matériels), le 'connectivity'
(gestion du réseau, des firewalls, etc.) et les applications
(en terme de machine cible, de déploiement, etc).
- le 'Système', avec du management de session (cookie,
...), 'mediation', 'Reporting & Billing', gestion des
performances, ...
Encore une fois, toutes ces couches et services
sont prévus et détaillés dans leur principes (d'autant que
toutes ne sont pas indispensable pour chaque Système
d'Information). Leur réalisation technique sera assurée par
la Sphère Architecture Technique.
Ainsi, les couches de 'Synchronization' et
'Conversion & Data Formatting' peuvent mettre en évidence
le besoin d'un bus logiciel, voir d'un EAI, mais on ne pourra
aller plus loin. De même, le besoin de cache de donnée peut
être détecté lors de la réalisation des scénarios, mais
le type exact de cache sera laissé aux soin de l'architecture
d'exécution de la Sphère Architecture Technique.
Layering => Tiers applicatifs
Un autre rôle de cette sphère
applicative réside dans l'identification des niveaux
applicatifs nécessaire à la réalisation du SI. Il s'agit de
bien isoler les différents niveaux ('layer') fonctionne pour
les projet dans l'architecture applicative, et cela se fait
aussi bien en utilisant un point de vue physique
que matériel
ou de déploiement,
afin de mettre en évidence les tiers d'un service technique
donnée.
Vous trouverez dans l'article sur le
passage du point de vue fonctionnel au point de vue technique
un exemple
de projection concernant la persistance. Les couches mises
en évidences sont celles représentées dans le diagramme ci
dessus (présentation, logique applicative, traitements
métiers, accès aux données et bases de données). Elles
peuvent donner lieu à un ou plusieurs tiers (un poste client,
un serveur applicatif, un serveur technique).
L'architecture applicatif aide donc à
affiner les "layers fonctionnels" pour mieux
identifier les "tiers applicatifs". Cf. Layer
et Tiers (couche et niveau) -
questionnaire Architecture -.
Un autre exemple peut se trouver avec le
service technique qui se décomposera en 4 niveaux identifiés
par l'Architecture Applicative:
- DMZ1 zone frontale;
- DMZ2 zone applicative;
- intranets;
- DMZ3 zone données.
Cette même Architecture Applicative peut imposer un système
de rupture de protocole de communication entre chaque zone
afin de garantir une sécurité renforcée.
Pourquoi ?
Cette sphère permet la structuration
du système d'information en bloc applicatifs
communicant. Elle permet la description et l'organisation des
applications informatiques (avec leurs données et leurs
traitements) ainsi que les messages échangés par ces
applications.
Cela permet de bien mettre en évidence les
liens entre la partie legacy et les nouvelles applications à
mettre en place, comme illustré dans l'article sur passage
du point de vue fonctionnel au point de vue technique.
Attention: cette sphère
architecturale n'a pas vocation a construire concrètement les
applications. Une telle entreprise se fait au sein d'un
projet. |
|