
Trent Taylor est le Vice-Président de StrataFrame. Dans cet éditorial, il nous donne des informations très importantes sur l'avenir de StrataFrame, et en particulier sur la version 2.0 qui est prévue pour 2012.
Calendrier
Pour commencer, je voudrais vous dire que 2012 sera une année extraordinaire !
nos utilisateurs nous ont fait savoir qu’ils attendaient impatiemment le
StrataFrame 2.0. la bonne nouvelle, c’est que... c’est sur les rails ! je vais
vous expliquer pourquoi nous avons mis aussi longtemps, mais j’aurai du mal à
exprimer tout l’enthousiasme de l’équipe de développement, qui voit enfin
arriver l’étape de la concrétisation de tous nos projets.
Nous venons de tenir une des meilleures réunions de l’équipe de développement depuis très longtemps (à mon avis, en tout cas). La version 2.0 de StrataFrame a été inscrite au calendrier. Ceci signifie que tout au long de l’année prochaine, vous allez commencer à voir apparaître plein de nouvelles fonctionnalités extraordinaires, que je vais vous décrire ci-dessous.
Une telle attente, pour quelles raisons ?
Que ce soit par mail ou dans des messages sur le forum, vous avez été nombreux à
vous interroger sur le développement de StrataFrame, et sur les raisons pour
lesquelles nous n’avons pas livré de nouvelle version. Votre questionnement
était parfaitement justifié. Sachez que StrataFrame a été considérablement
amélioré (c’est plutôt une bonne nouvelle), mais que vous n’avez pas encore
bénéficié de ces améliorations, vous, les utilisateurs de base ordinaires.
Souvenez vous, nous aussi nous utilisons StrataFrame ; nous l’avons d’ailleurs
créé en premier lieu pour nos besoins internes, en tant qu’éditeur de logiciels.
Notre plus grosse application s’appelle Practice Studio, c’est une application de gestion du dossier médical informatisé, quelque chose de très important. Et si vous avez suivi l’actualité des USA ces trois ou quatre dernières années, vous aurez surement entendu parler des changements radicaux qui sont intervenus dans le domaine de la santé. Et bien évidemment nous avons été directement touchés par ces réformes législatives, puisqu’une bonne part de celles-ci concerne précisément la réglementation du dossier médical informatisé. Il nous fallait atteindre un sommet très lointain, par des voies escarpées ! il nous a fallu créer de toutes pièces de très nombreux nouveaux logiciels, sans rien sur quoi s’appuyer. Nous y avons consacré toutes nos forces, tout notre temps, toutes nos disponibilités. Nous avons réellement travaillé 6 ou 7 jours par semaine, 10 à 12 heures par jour, pendant plus de deux ans. Mais nous y sommes arrivés, nous avons atteint le sommet ! et si on se fie au dicton qui dit « tout ce qui ne vous tue pas vous rend plus fort», alors nous sommes maintenant les super-héros du développement !
Globalement
Maintenant que je vous ai expliqué ce qui s’était passé, voyons ce qui va
arriver. Ainsi que je l’ai déjà dit, nous utilisons nous-mêmes StrataFrame
quotidiennement, et de ce fait nous sommes parfaitement au courant de ce qui est
nécessaire pour passer au niveau supérieur en termes de performances,
d’extensibilité, et de fonctionnalités. Et je ne parle pas du gain de temps sur
les tâches les plus courantes.
Prenons un peu de hauteur
Dans cet éditorial, je vais rester en haute altitude, pour vous donner une
vision générale. Mais dans les mois qui viennent, je serai beaucoup plus terre à
terre, vous aurez des informations détaillées, des vidéos et des exemples. Donc
revenez visiter cette page fréquemment, en particulier après les fêtes de Noël.
Réécriture de la Couche Métier
La Couche Métier actuelle est très bien, mais elle pourrait être fabuleuse !
Pour commencer, les Business Object vont être encore plus orientés objet. Pour
le moment, les composants internes du Business Object sont basés sur une data
table ADO.NET ; nous allons utiliser un modèle objet d’entité bien à nous,
beaucoup plus rapide, énumérable, bien plus facile à lier à quasiment n’importe
quoi. Ne vous inquiétez pas, vous pourrez toujours continuer à créer des data
tables et à importer des data tables dans des Business Object.
Ensuite, nous mettrons en place des collections d’entités, et des vues de collections qui seront indépendantes, avec un lien vers la collection. Ceci vous permettra d’avoir plusieurs listes filtrées et triées, qui pointeront toutes vers la même entité.
Amélioration de la Couche de Données
La couche de données sera remodelée pour être davantage découplée du fournisseur
de données. Vous bénéficierez ainsi de plus d’options lors du choix du
fournisseur de données (par exemple utiliser le fournisseur Oracle plutôt que le
fournisseur .NET pour Oracle).
Amélioration de Enterprise Server
Enterprise Server est un produit vraiment très solide, mais pour
améliorer son extensibilité, nous allons y implémenter le streaming des données,
pour remplacer le mode d’envoi par blocs que nous utilisons. De ce fait, il lui
faudra moins de mémoire, et il sera alors possible de l’utiliser dans des
déploiements de plus grande échelle.
Intégration
de LINQ
StrataFrame 2.0 supportera complètement LINQ. Que ce soit pour la
définition des requêtes qui sont traduites et exécutées sur les bases de
données, ou bien pour la définition dynamique des vues de collection, LINQ sera
complètement intégré dans StrataFrame 2.0.
Stockage XML des Méta-Données des Business Object
Les méta-données des Business Object seront désormais stockées dans des
fichiers XML qui seront intégrés au projet. Il ne sera donc plus nécessaire
d’utiliser un serveur SQL Server pour le stockage de ces méta-données ; le
travail en équipe sur des sites distants sera ainsi beaucoup plus simple, il
sera plus facile de mettre à jour un projet puisqu’il n’y aura besoin ni de
disposer de la base de données source, ni de se connecter à une base de données
source.
Le XML comme source de données pour les Business Object
Bien qu’il vous soit possible aujourd'hui, en utilisant d’anciens fournisseurs
OLE, de faire une liaison aux fichiers XML, nous allons vous fournir une vraie
liaison aux données XML avec un mappage des données. Fondamentalement, ça vous
permettra d’utiliser des fichiers XML comme sources de données quasiment sans
aucune réécriture. Les structures des fichiers XML seront modifiables
dynamiquement, de la même façon que Database Deployment Toolkit met à jour
dynamiquement SQL Server.
Liaison Native pour les Business Object
Il sera possible de lier les Business Object à n’importe quel contrôle
tiers, sans avoir à implémenter l’interface IBusinessBindable. La liaison aux
données native .NET sera intégrée, pour les grids comme pour d’autres contrôles
énumérables. La création des rapports sera ainsi simplifiée.
Nouvelle collection de contrôles WPF
Nous allons lancer une collection de contrôles solides, qui inclura
tous les contrôles StrataFrame actuels, mais aussi de nouveaux contrôles.
Nouvelle collection de Contrôles Winform
Les contrôles Winform actuels seront maintenus et améliorés, pour exploiter les
avantages du nouveau framework. Il y aura de nouvelles fonctionnalités RAD et de
nouveaux éditeurs, pour accélérer la réalisation des tâches fastidieuses et
répétitives.
Des collections de contrôles complètement découplées
Sur le fond, ça veut simplement dire qu’il sera possible d’utiliser facilement
les collections de contrôles avec d’autres entités que StrataFrame.
Techniquement, c’est déjà faisable, mais la nouveauté sera que les collections
de contrôles pourront fonctionner en tant qu’ensemble disjoint de la couche de
données. En d’autres termes (et en bref), on pourra acheter les collections de
contrôles sans le framework.
Des Thèmes nouveaux et améliorés
Nous allons ajouter de nouveaux thèmes visuels, dont la granularité sera plus
fine, pour pouvoir mieux les utiliser et les intégrer aux contrôles de façon
plus précise. Nous ferons appel à des graphistes experts, que ce soit pour la
conception générale, les jeux de couleurs ou le rendu final. Les thèmes actuels
seront continués et améliorés. Vous pourrez comme maintenant créer vos thèmes
personnalisés.
Modèles en mode de Design
Ne vous est-il jamais arrivé de poser un contrôle et de redéfinir les
mêmes propriétés, encore et à nouveau ? nous, si ! Désormais, vous allez créer
des modèles, et en mode de conception, il suffira de choisir et d’appliquer un
modèle à un contrôle ou à un groupe de contrôles. Prenons un exemple : si vous
avez l’habitude de désactiver le redimensionnement automatique des étiquettes,
et de leur définir un alignement à droite, créez ce modèle. Ensuite, au lieu de
définir les valeurs de chacune de ces propriétés, un simple click sur la flèche
du concepteur vous permettra de choisir le modèle voulu. Un seul click pour
définir les propriétés que vous voulez.
Drag and Drop depuis une colonne d’un Business Object
un écran de conception vous permettra de faire glisser une colonne ou un groupe
de colonnes depuis le business object vers la surface d’un form. Une étiquette
et le contrôle adéquat seront automatiquement créés à l’emplacement cible, avec
la liaison aux données. C’est une fonctionnalité qui vous fera gagner énormément
de temps.
Assistant pour les Forms et les Dialogues
Il n’est absolument pas question pour nous de changer notre philosophie, ou de
modifier le cœur de StrataFrame. Cela dit, il doit vous arriver fréquemment de
devoir répéter les mêmes étapes pendant la création d’une Form ou d’une Boite de
Dialogue. C’est pour éviter cette répétition que nous allons proposer un
Assistant Form et Dialogue, pour choisir les en-têtes, les titres, les Business
object, les champs, etc... et qui générera la Form à son niveau élémentaire. Le
but ici est d’essayer de ganer un maximum de temps dans ce travail de base. Une
fois que la Form aura été créée, vous continuerez manuellement en partant de ce
point. Il faudra probablement faire un peu de « nettoyage », mais le plus gros
sera fait, en vous évitant un bon nombre d’étapes manuelles !
Un DTE complètement rénové
L’environnement de conception va être complètement repensé. Vous
pourrez maintenir en une seule manipulation plusieurs tables, procédures
stockées, vues, etc... Disons que cet environnement ressemblera à un
environnement de développement.
Déploiement sans utilisation de SMO
À l’heure actuelle, le Database Deployment Toolkit utilise le module SMO (SQL
Server Management Objects) aussi bien pour obtenir des informations depuis SQL
Server que pour mettre à jour certaines parties des structures. En supprimant
l’utilisation de SMO, la distribution des applications sera plus facile, et les
mises à jour seront parfois plus rapides.
Conçu pour supporter de nombreuses Bases de Données
Pour le moment, Database Deployment Toolkit ne gère que SQL Server. Mais nous
allons réviser sa conception de façon à pouvoir lui ajouter d’autres SGBDR dans
le futur. Quels SGBDR ? Quand ? la question est toujours en suspens.
Logique de Validation
Il n’y a actuellement aucun contrôle SQL dans le Database Deployment
Toolkit. Nous ajouterons des vérifications de base, ainsi qu’un contrôle général
des erreurs les plus fréquentes. La gestion d’erreurs personnalisée sera
également implémentée.
Une présentation modernisée
Que ce soit les dialogues, les dessins, ou la mise en page, tout sera
redessiné pour présenter un aspect plus moderne et plus actuel.
Intégration des API personnalisées
Vous disposerez d’ancrages pour créer des boites de dialogues jamais vues. Il
est assez fréquent d’avoir à ajouter et à utiliser des champs personnalisés dans
une application. Ces nouveaux ancrages vous permettront de créer des boites de
dialogues personnalisées et de les utiliser tout en restant dans l’interface
RBS.
La suite sera encore meilleure !
Ce qui sera implémenté dans StrataFrame 2.0 dépasse de très loin tout
ce que j’ai pu écrire ici. Nous voulions juste vous donner un avant-goût de la
suite. Nous publierons de nouveaux articles plus détaillés, au fur et à mesure.
Alors, si vous ne voyez pas l’amélioration que vous attendiez, il est tout à
fait possible qu’elle soit prévue dans notre calendrier de livraison, n’hésitez
pas, interrogez-nous... ou bien patientez jusqu’aux publications suivantes.