présentation aspectize pour alt.net

21
En route vers l’Agilité Mercredi 18 février 2009

Upload: aspectize

Post on 03-Jul-2015

429 views

Category:

Technology


1 download

DESCRIPTION

Cette présentation avait lieu dans le cadre des réunions Alt.Net. Aspectize présentait son approche et son produit.

TRANSCRIPT

En route vers l’Agilité

Mercredi 18 février 2009

Le problème

La différence

Maitriser l’Entropie

DRY KISSYAGNI

Technical Debt ?

Difficulté

Les éléments techniques

• appels typés et non typés, synchrone et asynchrone

• bouchons, intercepteurs, factory, publish/subscribe

• trace, log, gestions des exceptions

• accès aux données, communications interprocess,

sécurité

• DataBinding, conversion de données

• …

Les éléments métiers

• Sont toujours flou et sujet à interprétation

• Ne sont pas connus d’avance

• Ont besoin de Dynamisme

• Approche non objet, souple, runtime

Distinguer et isoler

Les éléments techniques réutilisables…

… des éléments métiers qui évoluent

Notre Approche

Données

Traitements Présentation

Architecture

Service S1

Service S3

Service S2

Service S4

Les ruses

• Disponible dans .Net• Proxy Dynamic• AOP• DataBinding• Chargement dynamique• DataSet

• Hollywood principle• « Don’t call us, we’ll call you »

Proxy Dynamic

• Pour écrire une Factory générique• Pour implémenter la plupart des design

pattern

• Point de passage unique dans tous les appels

DRY

AOP

• Dynamic • Les Attributs ne sont pas dans le code

• Découverte de types par introspection • Services• Contrôles• Données

• Configuration dynamique de Méta-Données techniques• Stockage, Sécurité

DataBinding Dynamique

• Data Binding Relationnel

• Point de passage unique mémoire -> IHM

• Point de passage unique IHM -> mémoire

• Command Binding

• Point de passage unique pour que l'IHM appelle le métier

DRY

Chargement dynamique

• Ne pas connaître les Types d’avance• Serveur d’Applications• Déploiement automatique• Indépendance des DLL

DataSet

• Données Relationnelles en mémoire• Dynamique (on les connait pas d’avance)• Néanmoins typées• Sérialisable• Change Tracking• Merge, Filtre, Tri

• Aspects négatifs: intellisense, verbosité

Features

• Traitements• ExecuteCommand générique• Distribution, gestion d’exceptions, bouchons, trace, log,

sécurité, conversion

• Données• GetData• Save• Données Temporelles, Multiples, Enum…

• Présentation• DataBinding, Validation• IHM sans code, indépendant de la techno

• WinForm et Ajax, WPF et SilverLight (à venir)

What Else ?

Démo

Cycle de développement

Entity Designer

Binding Studio

1 Design du Schema

2 Ecriture Code Métier

3 Design IHM Client

4 Configuration & BindingConfiguration

Cycle extrêmement agile Application disponible le 1er jour Non Intrusif

Bénéfices

• Eliminateur de code• Livraison le 1er jour• Tolérance aux changements• Séparation Technique/Métier

• Complètement ouvert sur le monde .Net.

Questions