-
orland
organisait les 10 et 11 décembre dernier sa
conférence annuelle destinée aux
développeurs, architectes et chefs de projet.
Je me suis inscris à cette conférence avec
l’intention de glaner quelques idées quant
aux outils et méthodes couvrant le cycle de
vie du logiciel et l’approche MDA (Model
Driven Architecture). Démonstrations,
témoignages de mise en application des
outils Borland, feed-back de la part
d’autres éditeurs... Et enfin, découvrir la
stratégie de Borland face à l’hégémonie de Visual Studio .NET de Microsoft.
Je dois avouer que cette première journée
m’a laissé un peu de marbre. En réalité, je suis
reparti conforté dans l'idée que l’offre en
matière d’outils est aujourd’hui loin d'être
mature. Celle de Borland en particulier qui
brille d'autant plus par l’absence de concurrents
sérieux mis à part Rational (mais Rational a du
RUP dans l’aile). Les méthodologies MDA ont du mal à décoller faute d’outils
cohérents et novateurs. Et Microsoft, dans un
tel contexte, est en train de fédérer toutes
les initiatives autour de Visual Studio .NET.
Borland, enfin, se contentant de brancher ses
solutions à la locomotive du géant de
Redmond. Les temps changent !
Voici un
aperçu des différentes sessions auxquelles
j’ai pu assisté :
Keynote Industrie
Promesses, bilan et
perspectives de la plate-forme .NET
Dick Lantim, .NET Architect
Evangelist - Microsoft France
Pratiquement deux ans après son
lancement officiel, Microsoft vous propose un
premier état des lieux technique de la
plate-forme .NET. Au delà des termes marketing
qui ont contribués à son lancement (simplicité,
productivité, etc.), ce keynote vous montre
comment et pourquoi le framework et son
environnement ont tenu leur promesse et comment
les termes agilité, unification,
interopérabilité, innovation prennent réellement
leur sens.
Tout en réalisant cet état des lieux, une
introduction aux évolutions sera présentée dans
le but de montrer le potentiel de vos
applications reposant sur le Framework .NET et
découvrir de nouvelles perspectives de création
de valeur.
Date : 10/12/2003 Horaire : 14h30-15h30
3004 Versionning des
applications .NET
Pierre Chalamet - Neoxia
NET ALM
C#B
Dans l'environnement .NET, il est dorénavant
possible d'exploiter sur un mÍme poste une
application installée dans des versions
différentes. Le versionning est donc un
formidable outil pour faciliter le déploiement.
Nous aborderons les règles de bases d'un bon
versionning d'assemblies : comprendre
l'algorithme de résolution des assemblies, le
rôle du Global Assemblies Cache (GAC), les
inconvénients du versionning, comment assurer
une compatibilité lors des montées de version.
Au-delà de ces règles nous verrons comment le
versionning impacte les services exposés par
Remoting, les Serviced Components, la
sérialisation des objets, les composants COM.
Connaissances requises : Les bases de .NET
Date : 10/12/2003 Horaire : 10h15
4008 Intégration des
exigences projet dans un processus de
développement UML (avec le framework Caminao)
Rémy Fannader - Caminao
MOD ALM
CRM TGR
Les processus de développement
traditionnels, unifiés ou non, reposent sur un
découpage administratif des activités qui ne
tient pas compte des contenus modélisés ; de ce
fait l'intégration des flux, entre expression
des besoins et développement des applications,
se limite généralement à un seul aspect du
problème : l'intégration des modèles et des
produits ("roundtrip").
Avec UML (pour les contenus) et XMI (pour les
formats) on dispose désormais de standards
permettant de normaliser la description des flux
échangés entre les différents outils utilisés
tout au long du cycle de vie des applications ;
on peut donc construire des processus de
développement qui soient à la fois agiles
(adaptés aux projets et à l'organisation des
équipes) et rigoureux (les flux peuvent Ítre
qualifiés).
Cette session abordera les points suivants :
- Nature des informations fournies par
l'exigence des besoins: spécifications
(exécutables ou non), activités, éléments de
qualification.
- Stéréotypage des spécifications avec le
Framework Caminao (jalons et livrables du
projet).
- Initialisation des projets à partir des
profils et tâches élémentaires définis par le
framework Caminao (activités).
- Initialisation du Plan Qualité a
Date : 10/12/2003 Horaire : 11h45
1109 Développer
rapidement dans un cadre structuré
Jean Degos - Aston
AMP
ALM
A nalyse de quelques idées préconÁues
:
" le développement objet est peu efficace", "La
modélisation, c'est bon pour les petits
projets", "La qualité et les méthodologies
projet sont chronophages", "Utiliser un
framework revient plus cher qu'un développement
spécifique"…Il n'y a pas de fumée sans feu.
Comment dépasser ces difficultés avec une
démarche projet structurée et une bonne
intégration des outils de modélisation.
La démarche sera illustrée par la présentation
d'outils et de solutions.
Date : 10/12/2003 Horaire : 15h45
Versionning des
applications .NET : Pierre CHALAMET (Neoxia)
Cette présentation
avait pour objet une présentation des
fonctionnalités du Framework .NET en matière
de versionning : le GAC, la promotion et le
chargement d'assembly, fichiers de
configuration... Un contenu intéressant pour
un néophyte mais une simple lecture de la littérature spécialisée
aurait tout aussi bien pu faire l'affaire.
Intégration des exigences projet dans un
processus de développement UML :
René FANNADER
Caminao a développé un
Framework visant à
mettre en oeuvre une approche MDA respectant
trois niveaux de modèles conceptuel,
logique, physique. Le Framework est
constitué de stéréotypes permettant de
modéliser les différents éléments des
modèles, d’assurer une traçabilité d’un
niveau à l’autre, et d’intégrer cette
modélisation dans le processus de
développement. Il s’agit là d’une initiative intéressante,
qui apparaît bien fondée sur le plan
théorique, mais moins convaincante sur le
plan des outils et de l’implémentation
pratique. René FANNADER a d’abord présenté les
fondements de la démarche MDA :
- Développement piloté par les modèles
- Phases définies par l'entreprise
(livrables)
Puis il a
ensuite identifié les tâches identifiées par modèle en fonction
du projet :
- Modèles: CIM: Computation Independent model =
conceptuel PIM: Plateform Independant Model = logique
PSM: Plateform specific model = modèle
physique Components & Application = les produits
- Gestion des exigences : une exigence est
informelle du fait qu’elle est fournie
directement par un client ou un utilisateur.
Les exigences sont liées à chaque phase de
développement :
|
Phase
de développement |
Type
d’exigence |
Modèle
|
|
Analyse
|
Métier
|
CIM
|
|
Conception
|
Fonctionnel |
PIM
|
|
Réalisation |
Technique
|
PSM
|
|
Déploiement
|
Contraintes (performance, doc, reprise,
etc.) |
Produit
|
Si l’on considère le cycle de vie complet du
produit (recueil, développement, évolution),
il est nécessaire de gérer le changement et
de maintenir une traçabilité entre les
exigences et produits. René FANNADER
a également évoqué l’utilisation des outils
Borland dans cette approche. Tout d'abord, la gestion des exigences avec Caliber RM :
Les entrées (exigences) sont filtrées en
distinguant 3 types d'exigence: métier,
fonctionnelles, non fonctionnelles :
- Métier: agent/responsabilité; domaines;
activités
- Fonctionnel: persistance/interactions
- Non fonctionnel: divers
La transition vers UML s’effectue en
définissant des stéréotypes qu’il est
possible d’associer aux exigences dans
Caliber RM. Ces stéréotypes permettent
d’instancier des objets (acteur, use case,
classe...) dans le modèle UML géré avec
Together. Il est notamment possible de spécifier
des dépendances, soit imbriquées, soit
partagées entre les éléments UML et les
exigences.
La validation des exigences quant à elle, s’effectue au
même niveau que le rattachement au modèle,
en remontant l'arborescence : saisie des
jeux d'essais (métier), création des plans
de tests d'intégration ; le développeur crée
son plan de test unitaire à partir du plan
de test métier ; Le plan de test système
part des exigences non fonctionnelles.
La solution proposée par Caminao présente
des avantages majeurs : exhaustivité,
cohérence et lisibilité. L’utilisation de
Caliber RM ne m’a toutefois pas convaincu de
par deux aspects. Tout d'abord,
l’utilisation du même outil, le modèle
conceptuel (métier), le modèle fonctionnel
et les contraintes produit se retrouvent
dans le même modèle. Il est donc nécessaire
de jouer avec la hiérarchie de classement
pour distinguer les niveaux. De plus, à la
différence de Together qui implémente UML/XMI,
Caliber RM ne propose pas de schéma
standardisé des exigences (processus métier)
ni un format de modèle normalisé.
Keynote de
Dick Lantim - Microsoft
Cette présentation de la roadmap de
MicroSoft n’avait rien de nouveau : Whidbey,
LongHorn, WinFx... Une nième contribution à
la vision de la feuille de route Microsoft
serait déplacée ici. Seul intérêt de l’évènement : le cadre ! La
promotion de Visual Studio .NET en
attraction phare de la conférence Borland ne
manquait pas de surprendre. On se demande
vraiment se que Borland compte faire de C#Builder.
D’ailleurs, nous leur avons directement posé la
question: « C#Builder s’adresse à des
organisations qui souhaitent gérer
l’ensemble du cycle de vie du produit avec
la même suite de produits ». Discours
commercial qui cache mal la réalité : Visual
Studio .NET, en se rendant incontournable,
fait obstacle à toute stratégie de
couverture horizontale de l’ingénierie du
logiciel. Les éditeurs tels Borland sont bel
et bien contraints d’adopter un modèle
commercial basé sur les plug-in de l’atelier
de développement de Microsoft.
Développer rapidement dans un cadre
structuré -
Jean Degos - Aston
Jean Degos nous a présenté la démarche
d'organisation du développement adoptée chez
Aston. Aston réalise des projets au forfait
allant de 300 à 10000 jours/hommes sur
différentes plateformes. Méthodologie de projet: La méthodologie ASTON est formalisée et
publiée au travers d'un outils interne,
Elisa. Cet outil comprend un référentiel
documentaire stockée sur une base de données
et exploité sur un site intranet. Le système
permet également de générer de la
documentation dans une forme adaptée au
client du projet. Les paragraphes ci-dessous décrivent
certains aspects de ce référentiel:
Conception: Un guide d'architecture propose une vision
de haut niveau, multi plateformes, de
conception des architectures. Le bénéfice du
guide est de faciliter l'intégration et la
communication (partage d'un même
vocabulaire…). D'autre part, des documents spécifiques à
chaque plate-forme proposent des briques de
conception permettant de résoudre des cas
courant. Enfin, des guides de mise en œuvre
fournissent une aide méthodologique
concernant les outils, les middleware, UML,
etc. Maintenance: Un outil de suivi des anomalies a été mis en
place, ainsi qu'un outil d'analyse d'impact,
d'audit qualité du code. Développement:
Le Framework interne est également documenté
dans la base de connaissance. D'autre part, des tableaux de bord projet
exploitent les données issues de MS Project
et favorisent la transparence vis à vis du
client: celui-ci peut consulter à tout
moment l'état d'avancement d'un projet.
Modélisation UML: Aston a réalisé sont propre outil de
génération de code à partir de diagrammes
UML. L'intérêt est la maîtrise interne du
code généré. Mais ce choix est avant tout
lié au fait que Aston adresse des
plateformes technologiques différentes qui
l'obligerait à multiplier les outils de
génération de code du marché. D'autre part,
le générateur maison exploite des méta
données du schéma XMI qui sont spécifiques à
ASTON. Un outil tel que Together permet en
effet de personnaliser le schéma UML en
ajoutant ses propres méta données. D'autre part, le générateur de code
développé chez Aston utilise des composants
tels que Velocity ou AxGen. La question qui reste sans réponse
concerne la
capture des règles de gestion métier dans le
modèle UML. En conclusion, Aston fait la démonstration
d’une organisation rigoureuse, bien adaptée
à l’activité de service au forfait. A base
de recettes éprouvées, et sans être
révolutionnaire, cette expérience peut être
saluée comme une mise en oeuvre réussie d’un
système qualité d’ingénierie logicielle.
Olivier Destrade est Responsable méthodes
chez l'éditeur
VcsTimeless, société spécialisée dans la
livraison de solutions informatiques pour la
distribution non alimentaire et le commerce
spécialisé. Il était l'envoyé spécial de DNG à
la Borland Conf pour la première journée.
|