!         "

#       $ %   %
&




        !" #   $           % &    ' (       )       *   +,   -
        !#     .   *        / &   /             -
    0                  1   2 3          4
)               *                    +                               +




    '                                        '           (
        #   (                    ,               5
        #               9 : 3;                   5               6       #       3   7
        ;                                ,
                                                     8
                                                                             (
                    <
                                                             &
'

(




                                                             *                ,(-./0
    $       3   1* *
                 = $4                              3         ,
                    2          >                       .
    3   # 97                                           A3'
        0                                          % 7               ,   3;
    ? 3+ @$                        3   8     /;        +     &
        *                 9            " 3   #33         (   )
                                                                 )

        ;          2 3?       '5' A                ?                     9
!         "

#       $ %   %
)           *   ' 1 *2   *

   #                               %
    5                                              )
    #
         B                     (
    #:
         B             :                       9               :       ,

' 1 *
                                   C       &       -
         B         (       9                                               *
         B                             D                               E
    !          (                                       -
         B 5                               )                   @
    !                                          -
         B             :               ,                   9
         B #               &                       ,
         B                     )
%                                    3
     /                     F
         B                                            ,   (            -

)   * %                                           3           %            4
     .       .       9         7   < ,
     3                                   &   @                    &


      ,          :                            ,
      (                  :! 3' 1             4
     3                                   &   @
5
             (                 1     G #$    3    +               -4

                                                              H
2                & (



                                   classes
                                   techniques
                                 + et fichiers de




                    Génération
Conception




                                   paramétrage
Développement




                    Exécution
1                           46 7

                     46 7                                >@
&                                         0
         %                                6 7           -8 -9
$        /       &   +                              2    I@
=                     $                   2              I@
             1                        :         ;       <- -9
J   2         9
J       2 1                   #
$    3 K .      9    4
 L       >                :       M
 >          )
. & :C                    &       C       *
                                          /
0 H
                                                          @L
=

                1
5                                                 &
    B       :          9       7    <.   1(   4
    B                      9       7 <            2
!               ! 3'
!                      &


        1       (
!                          @                      )
                                                  &       )   &
        &
>

               (
                               &    .   9                     .   1
    2                  9        7   <           &   4C&   :
        ! 3'               9                &
                       = # "@5$ &                         H


                   %
    *
                   N


?                                       >

        &
?

                                                            ,@ ) 0                       1
      +        A

     ;
                                                $53

                   5
                                                                                         $
                                       6$ $             $*
                                                         #
!   6 O$   6
                   /       &
                       ;
                                                                     !    6 O$     $

                               !   6    $   $
                                                                     6$                  &5
                                                                     #                    5 '2
                                                                                 2BB'2



           L                       0            J       >                           I
                           A                        1   %
'(



                                                                                                            &
        ! 3' 6                  ! 3' 6                          ! 3' 6                                                        ! 3' 6
        $    $                  $    $                      $                    $                                        $                $



         #                      #
                                                        #                                           *                 #
                                                                                 $                                                         $
             $                      $



             P                      P                            P                                                             P
    9                       9                                9                                                             9
        1 ) $ 4                 1 ) $ 4                     1 ) $ ;' A4                                                   1 ) $ ;' A4


                                                ;      7 <                                                      ;      7 <
             ; $3 G ? " L3Q 6L                                               $       ;' A                                              $       ;' A
                                                    L3Q 6                                                           L3Q 6
              $ @$ $     #


D       E .#; .%                                                                         ; (.
*        9 )                                                                         *          9
                                                    ;       7       <1

              D       E .#; .%          8                                4
                                                                                                        )
              *        9

                  !     6                                       !        6                                                    !    6

                                            !               R!
'(                                             C #                   *< 9



                                                       …à l’architecture Flex

  d’une architecture JSF…
                                                            MXML                            Domaine d’intervention des développeurs                       Java
                                                                                                                                                    VM      AM     CM     Contexte
                                Domaine d’intervention des développeurs                                                                                                  Contexte
                                                                                                                                                   VM      AM     CM    Contexte
                                   JSP           Code                                                                                             VM      AM     CM
Page HTML +                                     GénéréVM      AM         CM             Contexte
code javascript                                   De VM
                                                    VM
                                                             AM
                                                            AM
                                                                        CM
                                                                       CM
                                                                                       Contexte
                                               Navigation
                                                                             AS
                                                                                                                        Code
            ViewModel          ViewModel                                                                               Généré
          ViewModel          ViewModel                                                                                   De
         ViewModel          ViewModel                                 ViewData                                                      ViewData
                                                             Code généré
                                                             de Navigation                                            Navigat ion



    Adonis                          Adonis                                          SAMC                      F
    (client)                       (serveur)
                                                        Flash V9                  Moteur MVC                  D                                Infrastructure 3M@
                                                                                                              S
Socle javascript                                Infrastructure 3M@

Socle navigateur                                  Conteneur Web
                                                  HTML wrapper
                                                 Socle java – J2EE                                                                      Conteneur Web
       Client                                            Serveur
                                                 Socle navigateur
                                                                                                                                      Socle java – J2EE
   HTML + javascript                                               java
                                                                Client                                                                        Serveur


                                                        ActionScript + MXML                                                                              java
'(                        C #         *9 9

    % (                               %                             3

)                                                                              *
                    9         .#5                                          9    3A3'
    1           ; (%         C                             :        .#;4

D   3       (                                              *
    #                                                      *
                                                           K3              , ! 3'
        9       ,                                  .   1            :
    #       C        D           E4
                         2                ,    C                9
            1    9           (   4

       La démarche MDA nous a permis d’ « absorber » cette
    évolution technique majeure de la façon la plus transparente
      possible du point de vue des concepteurs/développeurs.
@                                               E                    ,@ ) 0F
                                                                5        C
                                                                 ! 3'

                                                                         &         3                 7




    3    +               H
                         J   3   +                  H
                                                    J   *                          3       #     JH
                                                                                                  J



        G #$ 0H H
          =                      ; (%           L                                  ; (%              L
           G/                      /                                                 /
                                       <#                                                   <#
    5        * K                      #6=                                                  #6=


                                  3                                                    3
    5            K
#
                                  5 (                              )                   5 (
             K                     K                                                    K

        !            6            !         6                                          !         6

                                                            C       :!
@   *   #   < 9
@            *                             #                               9 9

                        * S
                         %3
        B   #3 1            # 97     3       4
                              ! 3'
        B               $    1# ( #              4
        B 3            7 1 3
                          =    4
                                   #3 1          #       9 3       4                       %       (
        B ?)
                                                                                                         +
                                                                           *                   @       <(
    *
                                                                               >                        @ 9
    9                       ) 1                                4
    A          3   3                                                               (           3

&                                                    ?
                                    , ! 3'
        B ! 3'         ! 3'
                                (                                                      &
        B               :            T
1                                     (

:            ;
    '                 : (         :           2       ) 1   :               9
             4
    '                  :
                 :
    '                                         1   9             &       4
             )


                            > >
                              3
                                      3               3
    D#   )           E                            *
                                                  K3
    +                 9 ( 1 $*
                             4
    %                1 #%4                                          U


D                                     %                         (
                       G
!         "

    #           $ %   %
*

$       &
#   $ %         %


          B '            ,
          B *           (
                             &                   ,



                                     2
          B '            ,                   &
            C                :       ,   (
          B *           (
                             &
                    ,


                H       D            )
          B '            ,                   &
            C                :       ,   (
          B *           (
                    ,            (
!         "

    #           $ %   %
*

$       &
2                            (

         (       C(                              *
;            :             36   F   ; (




    #
    #    $
         $



                 L
                 L
    #
    #    %
         %



    ##

                 ' 1 *
                   5                        99       9   7   < ; (
                   #   9                &
                   #   9            (
                                          (
H9   *

        3     #               9       ; (
+                                 )
5   )   : 2           9                     )
    )             9       :
H9   *

@   +   (   #   H
H9   *

?           C ( I= "                      ?                  *                  >
    +                      &                       +                          ; (S
                                                       B $5* :
    +                      6       ? )2                B 6   ? )2
    +                   9                              B                  :*
                                                                           K3       !
        9              % 8     #                       B $
                                                   #              9        7     < 36 ; ( S
                                                       B              L
                                                       B 5   36

                                               #
                                          3;


        C(         )
          ,3           0                                                  5     36




               (
                                                                                     L
H9   *

                3     ! 3'          T       #
    9       :    9 ! 3'
*               3       7
/       9       3 #      S ! 3' T       #


                                                     #
                                                3;
H9   *

          *              #' (    T   #
    9     :          (       ,
!             A (
    B               (&
    B                    &
    B ?
    B 6                                       #
                                         3;
H9   *

      % *                                .               T             #
$                     &                                  (         1                @3    4
    B                                    .
    B ;       A3'                                              (           19        % 8 #4
/     9               3     #                S           , .       T            ,         #
    B 5                          ,

                                                                                                   #
          .       2       P% 8       #           9                                            3;
                           3;




              .       2    P% 8          #           9
H9   *

@       '       %   >
        (
        (   )
    ?
!         "

    #           $ %   %
*

$       &
H       D

>                %   H   3                   3




    ? %? '



    6%J



     HHH


             ' 1 *
               *                     :           N
               5
               3             V   :
J 3

!                #33 1#                    3          3            4        9
    B #              :? 3+ 1$                            3     8       <9       4
    B *                           9            3;             @3
*                        99                     3    *
    B 3     &                         ? %? '
    B 3     &    6%J
5 )                      &                                &
    B #         #&            (            &




     ? %? '



    6%J
                                                    #33



      HHH
J 3

     +
         S        9     :            1)        )        &    -4
     S       &          :              ,   :   &   :
                  S         :                                 ,
5>   (           S& U           U&   U
J 3

2
             5 2       S       H                H
             K )
                   #       #       1#       4
                                                                  KK
                                                                  KK                  JJ
                                                                                      JJ
                                                                        >
                                                                        >         )5 =5
                                                                                  )5 =5
                                   9                        WW2 TT WW ) TT WW                     TT
                                                            WW2 TT WW ) TT WW                     TT
                                           ? %? '   +
                               1       , #334           #
                                                                  KK
                                                                   KK                 JJ
                                                                                      JJ
                                                                 3
                                                                 3            (
                                                                              (         )5 =5
                                                                                         )5 =5
                                                                        WW
                                                                        WW         TT
                                                                                   TT
                                                                             99
                                                                    WW2 TT WW( TT
                                                                     WW2 TT WW( TT
                                                                  99
                                                                        WW2 TT
                                                                        WW2 TT
                                                             *
                                                             *                       1
                                                                                     1       44




    ? %? '                     3          ? %? '
                               1       , #334
J 3

2                        3
             5 2       S 7 7 7 H&        H
             ')      F #        Q       1 ##
                                         ;'?            4
             #     5#$ $ ;
                                                                                 33
                                                                             )5 =5
                                                                             )5 =5
                                  9                                      WW( TT
                                                                         WW( TT
                                          ? %? '   +                  99      #&
                                                                               #&
                              1       , #334           #&
                                                                       WW2 TT
                                                                       WW2 TT
                                                              99

                                                                      WW )
                                                                      WW )         TT
                                                                                   TT
                                                              3
                                                              3               99

                                                                        WW2 TT
                                                                        WW2 TT
                                                                  *
                                                                  *




    ? %? '                    3          ? %? '
                              1       , #334
D            G

          %

;             3
    B 9               Q                   97         H
          '
    B             H                   Q            9H9



3       # 97
    B 777H                    97          H
5 2 3
    B 777H                    H       @        @             @
$                                         3              8       <9
    B 777H                H       @        @
#&
    B 7 7 7 H&                H
#
    B         H                   H

Mia-Software Maaf MDDay2009

  • 2.
    ! " # $ % %
  • 3.
    & !" # $ % & ' ( ) * +, - !# . * / & / - 0 1 2 3 4
  • 4.
    ) * + + ' ' ( # ( , 5 # 9 : 3; 5 6 # 3 7 ; , 8 ( < &
  • 5.
    ' ( * ,(-./0 $ 3 1* * = $4 3 , 2 > . 3 # 97 A3' 0 % 7 , 3; ? 3+ @$ 3 8 /; + & * 9 " 3 #33 ( ) ) ; 2 3? '5' A ? 9
  • 6.
    ! " # $ % %
  • 7.
    ) * ' 1 *2 * # % 5 ) # B ( #: B : 9 : , ' 1 * C & - B ( 9 * B D E ! ( - B 5 ) @ ! - B : , 9 B # & , B )
  • 8.
    % 3 / F B , ( - ) * % 3 % 4 . . 9 7 < , 3 & @ & , : , ( :! 3' 1 4 3 & @ 5 ( 1 G #$ 3 + -4 H
  • 9.
    2 & ( classes techniques + et fichiers de Génération Conception paramétrage Développement Exécution
  • 10.
    1 46 7 46 7 >@ & 0 % 6 7 -8 -9 $ / & + 2 I@ = $ 2 I@ 1 : ; <- -9 J 2 9 J 2 1 # $ 3 K . 9 4 L > : M > ) . & :C & C * / 0 H @L
  • 11.
    = 1 5 & B : 9 7 <. 1( 4 B 9 7 < 2 ! ! 3' ! & 1 ( ! @ ) & ) & &
  • 12.
    > ( & . 9 . 1 2 9 7 < & 4C& : ! 3' 9 & = # "@5$ & H % * N ? > &
  • 13.
    ? ,@ ) 0 1 + A ; $53 5 $ 6$ $ $* # ! 6 O$ 6 / & ; ! 6 O$ $ ! 6 $ $ 6$ &5 # 5 '2 2BB'2 L 0 J > I A 1 %
  • 14.
    '( & ! 3' 6 ! 3' 6 ! 3' 6 ! 3' 6 $ $ $ $ $ $ $ $ # # # * # $ $ $ $ P P P P 9 9 9 9 1 ) $ 4 1 ) $ 4 1 ) $ ;' A4 1 ) $ ;' A4 ; 7 < ; 7 < ; $3 G ? " L3Q 6L $ ;' A $ ;' A L3Q 6 L3Q 6 $ @$ $ # D E .#; .% ; (. * 9 ) * 9 ; 7 <1 D E .#; .% 8 4 ) * 9 ! 6 ! 6 ! 6 ! R!
  • 15.
    '( C # *< 9 …à l’architecture Flex d’une architecture JSF… MXML Domaine d’intervention des développeurs Java VM AM CM Contexte Domaine d’intervention des développeurs Contexte VM AM CM Contexte JSP Code VM AM CM Page HTML + GénéréVM AM CM Contexte code javascript De VM VM AM AM CM CM Contexte Navigation AS Code ViewModel ViewModel Généré ViewModel ViewModel De ViewModel ViewModel ViewData ViewData Code généré de Navigation Navigat ion Adonis Adonis SAMC F (client) (serveur) Flash V9 Moteur MVC D Infrastructure 3M@ S Socle javascript Infrastructure 3M@ Socle navigateur Conteneur Web HTML wrapper Socle java – J2EE Conteneur Web Client Serveur Socle navigateur Socle java – J2EE HTML + javascript java Client Serveur ActionScript + MXML java
  • 16.
    '( C # *9 9 % ( % 3 ) * 9 .#5 9 3A3' 1 ; (% C : .#;4 D 3 ( * # * K3 , ! 3' 9 , . 1 : # C D E4 2 , C 9 1 9 ( 4 La démarche MDA nous a permis d’ « absorber » cette évolution technique majeure de la façon la plus transparente possible du point de vue des concepteurs/développeurs.
  • 17.
    @ E ,@ ) 0F 5 C ! 3' & 3 7 3 + H J 3 + H J * 3 # JH J G #$ 0H H = ; (% L ; (% L G/ / / <# <# 5 * K #6= #6= 3 3 5 K # 5 ( ) 5 ( K K K ! 6 ! 6 ! 6 C :!
  • 18.
    @ * # < 9
  • 19.
    @ * # 9 9 * S %3 B #3 1 # 97 3 4 ! 3' B $ 1# ( # 4 B 3 7 1 3 = 4 #3 1 # 9 3 4 % ( B ?) + * @ <( * > @ 9 9 ) 1 4 A 3 3 ( 3 & ? , ! 3' B ! 3' ! 3' ( & B : T
  • 20.
    1 ( : ; ' : ( : 2 ) 1 : 9 4 ' : : ' 1 9 & 4 ) > > 3 3 3 D# ) E * K3 + 9 ( 1 $* 4 % 1 #%4 U D % ( G
  • 21.
    ! " # $ % % * $ &
  • 22.
    # $ % % B ' , B * ( & , 2 B ' , & C : , ( B * ( & , H D ) B ' , & C : , ( B * ( , (
  • 23.
    ! " # $ % % * $ &
  • 24.
    2 ( ( C( * ; : 36 F ; ( # # $ $ L L # # % % ## ' 1 * 5 99 9 7 < ; ( # 9 & # 9 ( (
  • 25.
    H9 * 3 # 9 ; ( + ) 5 ) : 2 9 ) ) 9 :
  • 26.
    H9 * @ + ( # H
  • 27.
    H9 * ? C ( I= " ? * > + & + ; (S B $5* : + 6 ? )2 B 6 ? )2 + 9 B :* K3 ! 9 % 8 # B $ # 9 7 < 36 ; ( S B L B 5 36 # 3; C( ) ,3 0 5 36 ( L
  • 28.
    H9 * 3 ! 3' T # 9 : 9 ! 3' * 3 7 / 9 3 # S ! 3' T # # 3;
  • 29.
    H9 * * #' ( T # 9 : ( , ! A ( B (& B & B ? B 6 # 3;
  • 30.
    H9 * % * . T # $ & ( 1 @3 4 B . B ; A3' ( 19 % 8 #4 / 9 3 # S , . T , # B 5 , # . 2 P% 8 # 9 3; 3; . 2 P% 8 # 9
  • 31.
    H9 * @ ' % > ( ( ) ?
  • 32.
    ! " # $ % % * $ &
  • 33.
    H D > % H 3 3 ? %? ' 6%J HHH ' 1 * * : N 5 3 V :
  • 34.
    J 3 ! #33 1# 3 3 4 9 B # :? 3+ 1$ 3 8 <9 4 B * 9 3; @3 * 99 3 * B 3 & ? %? ' B 3 & 6%J 5 ) & & B # #& ( & ? %? ' 6%J #33 HHH
  • 35.
    J 3 + S 9 : 1) ) & -4 S & : , : & : S : , 5> ( S& U U& U
  • 36.
    J 3 2 5 2 S H H K ) # # 1# 4 KK KK JJ JJ > > )5 =5 )5 =5 9 WW2 TT WW ) TT WW TT WW2 TT WW ) TT WW TT ? %? ' + 1 , #334 # KK KK JJ JJ 3 3 ( ( )5 =5 )5 =5 WW WW TT TT 99 WW2 TT WW( TT WW2 TT WW( TT 99 WW2 TT WW2 TT * * 1 1 44 ? %? ' 3 ? %? ' 1 , #334
  • 37.
    J 3 2 3 5 2 S 7 7 7 H& H ') F # Q 1 ## ;'? 4 # 5#$ $ ; 33 )5 =5 )5 =5 9 WW( TT WW( TT ? %? ' + 99 #& #& 1 , #334 #& WW2 TT WW2 TT 99 WW ) WW ) TT TT 3 3 99 WW2 TT WW2 TT * * ? %? ' 3 ? %? ' 1 , #334
  • 38.
    D G % ; 3 B 9 Q 97 H ' B H Q 9H9 3 # 97 B 777H 97 H 5 2 3 B 777H H @ @ @ $ 3 8 <9 B 777H H @ @ #& B 7 7 7 H& H # B H H