SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
L’ARCHITECTURE
  LOGICIELLE EN
      PRATIQUE
                                                             François Trudel, ing., M.Sc.A.
                                                             Président Fondateur
                                                             francois.trudel@aginex.com




                                                               24 mars 2009




 Weisman Art Museum de l’architecte Frank Gehry
          Photo de Chris Zubke publiée sur Flickr
                                                    © 2009                        Repenser les TI
L’architecture Logicielle en pratique                                                    2



     Évolution d’une Discipline

                                en    Client-         Publisher-   Cloud
                         par
Architecture Monolitique Lots Couches Serveur N-tiers Subscriber computing

                                                                                        m ps
                                                                                     te
                                                                              s le
                 Flux de           Flux de
Diagramme                                           ER           OO          ADL
                                                                           an
                 contrôle         données
                                                                    te d
                                                                 en
                                                         m
                                                     augobjets
                                             orienté-   orienté-       orienté-        orienté-
 Paradigme                  structuré
                                                  on
                                             donnée                    services        agents
                                         a c ti
                                    s tr
                             b
                          d’a FORTRAN                                         Ruby
  Language                                                  C++ Perl Java
                       au
                    assembleur                      SQL
              n iv e
                               COBOL                                         on Rail
           Le
    Matériel                                                          PDA
                mainframe                                 PC
                                        mini


                                                                               2010
             1940


                                                        © 2009               Repenser les TI
L’architecture Logicielle en pratique                        3



   Architecture Informatique



          L'architecture informatique définit la
          structuration d'un système informatique
           (i.e. matériel et logiciel) en termes de
            composants et d'organisation de ses
                           fonctions.


   Source: Wikipedia
                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                        4



         Architecture Logicielle



           L’architecture logicielle décrit dʼune
              manière symbolique et schématique
             les différents composants dʼun ou de
            plusieurs programmes informatiques,
           leurs interrelations et leurs interactions.


   Source: Wikipedia
                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                 5


      Place de l’Architecture
          (Traditionnelle)

                                                    Solution
                          Problème

Conceptuel                              Architecture Ingénierie



Physique                                           Construction
                           Gestion de Projet




                                          © 2009          Repenser les TI
L’architecture Logicielle en pratique                              6


       Place de l’Architecture
              Logicielle

                                                  Solution
                      Problème



Conceptuel              Analyse Architecture Design Programmation




                                         © 2009         Repenser les TI
L’architecture Logicielle en pratique                        7


       Niveaux d’Architecture
             Logicielle


          1. Un programme

          2. Une famille de programmes

          3. Un système corporatif

          4. Un système inter-entreprises


                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                                              8


           10 Mythes sur
      l’Architecture Logicielle

   Lʼarchitecture et le design, cʼest la même chose
   Lʼarchitecture et lʼinfrastructure, cʼest la même chose
   <ma technologie fétiche> est lʼarchitecture
   Une bonne architecture est lʼoeuvre dʼun seul architecte
   Lʼarchitecture est plate, une schéma est suffisant
   Lʼarchitecture de système précède lʼarchitecture logicielle
   Lʼarchitecture ne peut-être mesurée ou validée
   Lʼarchitecture est une science
   Lʼarchitecture est un art

    Source: Philippe Kruchten, Ten Common Misconceptions about Software Architecture
                                                                      © 2009           Repenser les TI
L’architecture Logicielle en pratique                        9



Rôle d’un Architecte Logiciel




  Le rôle de lʼarchitecte logiciel est de définir
            une architecture logicielle.




                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                       10



Rôle d’un Architecte Logiciel




  Le rôle de lʼarchitecte logiciel est de définir
  une architecture logicielle qui satisfasse les
                exigences du client.




                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                               11


                Modèle des
           Contraintes de Design

  Générateurs
             designer

                   client

                                                                   Fonctions
            utilisateur
                                                                   symbolique
                                                                formelle
           législateur                                       pratique
                                                           radicale
                                   interne     externe
                                       Domaines
   Source: Bryan Lawson, How Designers Think
                                                         © 2009          Repenser les TI
L’architecture Logicielle en pratique                             12



Critères de Qualité Logicielle

                                       
    Interopérabilité                        Réutilisabilité
                                       
    Portabilité                             Extensibilité
                                       
    Compatibilité                           Efficacité
                                       
    Validité                                Autonomie
                                       
    Vérifiabilité                            Transparence
                                       
    Intégrité                               Composabilité
                                       
    Fiabilité                               Simplicité
   Maintenabilité

                                        © 2009         Repenser les TI
L’architecture Logicielle en pratique                       13



Rôle d’un Architecte Logiciel




  Le rôle de lʼarchitecte logiciel est de définir
   une architecture logicielle qui satisfasse les
      contraintes imposées sur le système.




                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                                         14


           Modélisation d’une
         Architecture Logicielle

                               Vue logique            Vue de réalisation


                                             Vue des               Gestion de configuration
     Fonctionalité
                                          cas d’utilisation

                     Vue des processus                Vue de déploiement
     Performance                                                    Topologie du Système
     Extensibilité                                                        Communication
     Débit                                                            Approvisionnement

                      Conceptuelle                             Physique
   Source: Philippe Kruchten, 4+1 Views
                                                      © 2009                 Repenser les TI
L’architecture Logicielle en pratique                       15



Rôle d’un Architecte Logiciel



Le rôle de lʼarchitecte logiciel est:
1) de définir une architecture logicielle qui
     satisfasse les contraintes du système
2) de la communiquer.



                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                       16



Rôle d’un Architecte Logiciel



Le rôle de lʼarchitecte logiciel est:
1) de définir une architecture logicielle qui
     satisfasse les contraintes du système
2) de la communiquer et la promouvoir.



                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                     17


       Essence et Accidents de
        L’Ingénierie Logicielle


 Complexité Essentielle
    Inhérente au problème (complexité, conformité,
      changeable, invisibilité)


 Complexité Accidentelle
    Associée au développement de la solution


   Source: Frederick P. Brooks Jr, No Silver Bullet
                                                      © 2009   Repenser les TI
L’architecture Logicielle en pratique                                                                       18


                       Dimensions de la
                     Complexité Logicielle
                                                      Technique
                                   embarqué, temps-réel,
                                        distribué, critique
                                                                                         centrale
                                  sur-mesure, innovateur,
                                                                                         nucléaire
                                       haute performance

                                                                                                 grande échelle,
                                                                                                 contractuel,
                                                                                                 plusieurs intervenants
                          compilateur
                                                                                                 “projets”

                                                                                                        Gestion
petite échelle,
                                                                                   système
      informel,
                                                                                   corporatif
un intervenant
    “produits”




                  chiffrier
                                                                 application PC,
                                                                 site HTML,
                                                                 interactif, standard


        Source: Grady Booch, Handbook of Software Architecture
                                                                       © 2009                    Repenser les TI
L’architecture Logicielle en pratique                       19



Rôle d’un Architecte Logiciel


Le rôle de lʼarchitecte logiciel est:
1) de définir une architecture logicielle qui
    satisfasse les contraintes du système
2) de la communiquer et la promouvoir
3) de défendre son intégrité conceptuelle


                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                       20



Rôle d’un Architecte Logiciel


Le rôle de lʼarchitecte logiciel est:
1) de définir une architecture logicielle qui
    satisfasse les contraintes du système
2) de la communiquer et la promouvoir
3) de défendre son intégrité conceptuelle
4) de la critiquer


                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                       21



Rôle d’un Architecte Logiciel

Le rôle de lʼarchitecte logiciel est:
1) de définir une architecture logicielle qui
    satisfasse les contraintes du système
2) de la communiquer et la promouvoir
3) de défendre son intégrité conceptuelle
4) de la critiquer
5) de la raffiner

                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                22



Rôle d’un Architecte Logiciel
                               Complexité

                                                     Changement

                Vision


                                                         Politique

 Contraintes



   Photo: www.sparkle4all.nl
                                            © 2009        Repenser les TI
L’architecture Logicielle en pratique                       23



Profile d’un Architecte Logiciel

                       1. Crédibilité
                       2. Pensée intégrative
                       3. Créativité
                       4. Empatie
                       5. Autodidacte
                       6. Leader/Mentor
                       7. Communicateur(Négociateur)
                       8. Excellent analyste
                       9. Designer hors pair
                       10. Bon programmeur
                                         © 2009   Repenser les TI
L’architecture Logicielle en pratique                                                   24



             La Pensée Intégrative

                                                            Résolution
        Vision
                                                                      Chercher des solutions
 Outils Expérience                               Architecture         créatrices qui résolvent
                                                                      les tensions

                                                          Visualiser le tout en
                                          Causalité       travaillant sur des parties

                                                 Chercher des motifs et
                                                 interrelations
                        Saillance

                    Identifie les contraintes importantes

   Source: Roger Martin, The Opposable Mind
                                                        © 2009               Repenser les TI
L’architecture Logicielle en pratique                       25



      Principes Fondamentaux


 Simplicité (KISS)
 Abstractions nettes
 Division claire des rôles
 Distribution équilibrée des responsabilités
 Élégance/Esthétisme

                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                                                                 26


                Styles
       d’Architecture Logicielle

                                                                     Centré sur les Données
 Flux de Données
                                                                           • Base de données
   • Par lots
                                                                           • Blackboard
   • Tuyaux et Filtres
                                                                           • Publisher-Subscriber
 Appels et Retour
                                                                     Partage de Données
   • Fonction principale
                                                                     Hiérarchique
   • Orientée-Objets
                                                                           • En couches
 Interactif                                                               • En tiers
   • Orientée Événements                                                   • Interpréteur
   • Model-View-Controller                                           Orientée Agents

     Source: Shaw & Garlan, Software Architecture : Perspectives on an Emerging Discipline
                                                                         © 2009              Repenser les TI
L’architecture Logicielle en pratique                                        27



     Le Style le plus Répandu




   Source: Brian Foote & Joseph Yoder, Big Ball of Mud
                                                         © 2009   Repenser les TI
L’architecture Logicielle en pratique                         28


                7 Périls d’un
             Architecte Logiciel
1.   Un projet où la direction de lʼorganisation ne croie pas
     à lʼarchitecture logicielle
2.   Un projet dont les usagers ne veulent pas
3.   Embarquer sur un projet sans avoir de crédibilité
     auprès d’une équipe rebelle
4.   Un projet avec un niveau d’incertitude élevé soumis à
     un développement en cascade
5.   Un projet dont des choix technologiques clés imposés
     sont inappropriés
6.   Un projet où les analystes d’affaires produisent le
     schéma de BD
7.   Prendre la relève d’un projet en détresse
                                        © 2009     Repenser les TI
L’architecture Logicielle en pratique                       29



     L’Avenir d’une Discipline

    LʼArchitecture fera partie du curriculum
    Standardisation dʼun ADL
    Architecture Orientée-Agents
    Langages de programmation de plus haut
     niveau supportant les concepts architecturaux
    Certification professionnelle basée sur les
     niveaux de criticalité logicielle [DO-178B: A-E]

                                        © 2009   Repenser les TI
L’architecture Logicielle en pratique                       30



                       Questions?




              Merci beaucoup!



                                        © 2009   Repenser les TI

Más contenido relacionado

La actualidad más candente

diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 
Conception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceConception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceAHMEDBELGHITH4
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Addi Ait-Mlouk
 
Cours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.pptCours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.pptSylia3
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile Raoua Bennasr
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsMohamed Ayoub OUERTATANI
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Ben Abdelwahed Slim
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebHarrathi Mohamed
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Mehdi Hamime
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartisHeithem Abbes
 
Conception et réalisation d’une application Mobile banking
Conception et réalisation d’une application  Mobile banking  Conception et réalisation d’une application  Mobile banking
Conception et réalisation d’une application Mobile banking Khaled Fayala
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
les style d'architecture
les style d'architecture les style d'architecture
les style d'architecture Mouna Maazoun
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
Soutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSoutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSiwar GUEMRI
 

La actualidad más candente (20)

diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 
Conception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerceConception et réalisation d'une application web et mobile de e-commerce
Conception et réalisation d'une application web et mobile de e-commerce
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...
 
Cours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.pptCours1_Architecture_Logicielle.ppt
Cours1_Architecture_Logicielle.ppt
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clients
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école
 
Introduction aux systèmes répartis
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartis
 
Uml & cas d'utilisation
Uml & cas d'utilisationUml & cas d'utilisation
Uml & cas d'utilisation
 
Conception et réalisation d’une application Mobile banking
Conception et réalisation d’une application  Mobile banking  Conception et réalisation d’une application  Mobile banking
Conception et réalisation d’une application Mobile banking
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
les style d'architecture
les style d'architecture les style d'architecture
les style d'architecture
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
Soutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logicielSoutenance PFE ingénieur génie logiciel
Soutenance PFE ingénieur génie logiciel
 

Similar a L Architecture Logicielle En Pratique

Innovative Architecture Design
Innovative Architecture DesignInnovative Architecture Design
Innovative Architecture DesignAirmis
 
Modélisation et simulation des réseaux L2 Info UKA 2024.pptx
Modélisation et simulation des réseaux L2 Info UKA 2024.pptxModélisation et simulation des réseaux L2 Info UKA 2024.pptx
Modélisation et simulation des réseaux L2 Info UKA 2024.pptxBernardKabuatila
 
informatique_logiquarchitecture_applicative
informatique_logiquarchitecture_applicativeinformatique_logiquarchitecture_applicative
informatique_logiquarchitecture_applicativeNarjes Weslati
 
Exibri Software Product Lines Aosd
Exibri Software Product Lines AosdExibri Software Product Lines Aosd
Exibri Software Product Lines AosdCédric WILLIAMSON
 
Tk07 Les Apports Du Bpm Dans Une DéMarche Soa Fr
Tk07 Les Apports Du Bpm Dans Une DéMarche Soa FrTk07 Les Apports Du Bpm Dans Une DéMarche Soa Fr
Tk07 Les Apports Du Bpm Dans Une DéMarche Soa FrValtech
 
Flow Line En route vers l'herbergement, la revolution des services et l'optim...
Flow Line En route vers l'herbergement, la revolution des services et l'optim...Flow Line En route vers l'herbergement, la revolution des services et l'optim...
Flow Line En route vers l'herbergement, la revolution des services et l'optim...Flow Line Groupe
 
Introduction colloque ALPI sur la maquette numérique
Introduction colloque ALPI sur la maquette numériqueIntroduction colloque ALPI sur la maquette numérique
Introduction colloque ALPI sur la maquette numériqueALPI
 
[TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte![TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte!Alexandre Touret
 
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...Ojdoc Quen
 
Ar si-c1-2
Ar si-c1-2Ar si-c1-2
Ar si-c1-2azraf
 
Séminaire processus métiers 20 avril 2013
Séminaire processus métiers 20 avril 2013Séminaire processus métiers 20 avril 2013
Séminaire processus métiers 20 avril 2013Hassan Ou-aly
 
La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...
La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...
La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...Tech-IT Maroc
 
Soirée SOA - 2010-06-15 - Introduction par Logica
Soirée SOA - 2010-06-15 - Introduction par LogicaSoirée SOA - 2010-06-15 - Introduction par Logica
Soirée SOA - 2010-06-15 - Introduction par LogicaNormandy JUG
 
Le management d’une équipe UX par le profil en T
Le management d’une équipe UX par le profil en TLe management d’une équipe UX par le profil en T
Le management d’une équipe UX par le profil en TGuillaume Abel
 
Dictionnaire des termes techniques de la business intelligence v6
Dictionnaire des termes techniques de la business intelligence v6Dictionnaire des termes techniques de la business intelligence v6
Dictionnaire des termes techniques de la business intelligence v6pformosa
 
DCS : La solution de Cloud Privé par Microsoft Services
DCS : La solution de Cloud Privé par Microsoft ServicesDCS : La solution de Cloud Privé par Microsoft Services
DCS : La solution de Cloud Privé par Microsoft ServicesMicrosoft Technet France
 

Similar a L Architecture Logicielle En Pratique (20)

3 architecte-si
3 architecte-si3 architecte-si
3 architecte-si
 
Innovative Architecture Design
Innovative Architecture DesignInnovative Architecture Design
Innovative Architecture Design
 
Modélisation et simulation des réseaux L2 Info UKA 2024.pptx
Modélisation et simulation des réseaux L2 Info UKA 2024.pptxModélisation et simulation des réseaux L2 Info UKA 2024.pptx
Modélisation et simulation des réseaux L2 Info UKA 2024.pptx
 
informatique_logiquarchitecture_applicative
informatique_logiquarchitecture_applicativeinformatique_logiquarchitecture_applicative
informatique_logiquarchitecture_applicative
 
Cours erp pgi_2010
Cours erp pgi_2010Cours erp pgi_2010
Cours erp pgi_2010
 
Exibri Software Product Lines Aosd
Exibri Software Product Lines AosdExibri Software Product Lines Aosd
Exibri Software Product Lines Aosd
 
Tk07 Les Apports Du Bpm Dans Une DéMarche Soa Fr
Tk07 Les Apports Du Bpm Dans Une DéMarche Soa FrTk07 Les Apports Du Bpm Dans Une DéMarche Soa Fr
Tk07 Les Apports Du Bpm Dans Une DéMarche Soa Fr
 
Flow Line En route vers l'herbergement, la revolution des services et l'optim...
Flow Line En route vers l'herbergement, la revolution des services et l'optim...Flow Line En route vers l'herbergement, la revolution des services et l'optim...
Flow Line En route vers l'herbergement, la revolution des services et l'optim...
 
Introduction colloque ALPI sur la maquette numérique
Introduction colloque ALPI sur la maquette numériqueIntroduction colloque ALPI sur la maquette numérique
Introduction colloque ALPI sur la maquette numérique
 
040401+seminar+gelo+diro.ppt
040401+seminar+gelo+diro.ppt040401+seminar+gelo+diro.ppt
040401+seminar+gelo+diro.ppt
 
[TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte![TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte!
 
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
Conception Et Mise En œUvre D’Une Plate Forme Edi Pour La Communaté Portuaire...
 
Ar si-c1-2
Ar si-c1-2Ar si-c1-2
Ar si-c1-2
 
Séminaire processus métiers 20 avril 2013
Séminaire processus métiers 20 avril 2013Séminaire processus métiers 20 avril 2013
Séminaire processus métiers 20 avril 2013
 
La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...
La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...
La Structure de l’entreprise Tech-IT Maroc - SSII, Intégrateur de Solutions I...
 
Projet carriere
Projet carriereProjet carriere
Projet carriere
 
Soirée SOA - 2010-06-15 - Introduction par Logica
Soirée SOA - 2010-06-15 - Introduction par LogicaSoirée SOA - 2010-06-15 - Introduction par Logica
Soirée SOA - 2010-06-15 - Introduction par Logica
 
Le management d’une équipe UX par le profil en T
Le management d’une équipe UX par le profil en TLe management d’une équipe UX par le profil en T
Le management d’une équipe UX par le profil en T
 
Dictionnaire des termes techniques de la business intelligence v6
Dictionnaire des termes techniques de la business intelligence v6Dictionnaire des termes techniques de la business intelligence v6
Dictionnaire des termes techniques de la business intelligence v6
 
DCS : La solution de Cloud Privé par Microsoft Services
DCS : La solution de Cloud Privé par Microsoft ServicesDCS : La solution de Cloud Privé par Microsoft Services
DCS : La solution de Cloud Privé par Microsoft Services
 

L Architecture Logicielle En Pratique

  • 1. L’ARCHITECTURE LOGICIELLE EN PRATIQUE François Trudel, ing., M.Sc.A. Président Fondateur francois.trudel@aginex.com 24 mars 2009 Weisman Art Museum de l’architecte Frank Gehry Photo de Chris Zubke publiée sur Flickr © 2009 Repenser les TI
  • 2. L’architecture Logicielle en pratique 2 Évolution d’une Discipline en Client- Publisher- Cloud par Architecture Monolitique Lots Couches Serveur N-tiers Subscriber computing m ps te s le Flux de Flux de Diagramme ER OO ADL an contrôle données te d en m augobjets orienté- orienté- orienté- orienté- Paradigme structuré on donnée services agents a c ti s tr b d’a FORTRAN Ruby Language C++ Perl Java au assembleur SQL n iv e COBOL on Rail Le Matériel PDA mainframe PC mini 2010 1940 © 2009 Repenser les TI
  • 3. L’architecture Logicielle en pratique 3 Architecture Informatique L'architecture informatique définit la structuration d'un système informatique (i.e. matériel et logiciel) en termes de composants et d'organisation de ses fonctions. Source: Wikipedia © 2009 Repenser les TI
  • 4. L’architecture Logicielle en pratique 4 Architecture Logicielle L’architecture logicielle décrit dʼune manière symbolique et schématique les différents composants dʼun ou de plusieurs programmes informatiques, leurs interrelations et leurs interactions. Source: Wikipedia © 2009 Repenser les TI
  • 5. L’architecture Logicielle en pratique 5 Place de l’Architecture (Traditionnelle) Solution Problème Conceptuel Architecture Ingénierie Physique Construction Gestion de Projet © 2009 Repenser les TI
  • 6. L’architecture Logicielle en pratique 6 Place de l’Architecture Logicielle Solution Problème Conceptuel Analyse Architecture Design Programmation © 2009 Repenser les TI
  • 7. L’architecture Logicielle en pratique 7 Niveaux d’Architecture Logicielle 1. Un programme 2. Une famille de programmes 3. Un système corporatif 4. Un système inter-entreprises © 2009 Repenser les TI
  • 8. L’architecture Logicielle en pratique 8 10 Mythes sur l’Architecture Logicielle  Lʼarchitecture et le design, cʼest la même chose  Lʼarchitecture et lʼinfrastructure, cʼest la même chose  <ma technologie fétiche> est lʼarchitecture  Une bonne architecture est lʼoeuvre dʼun seul architecte  Lʼarchitecture est plate, une schéma est suffisant  Lʼarchitecture de système précède lʼarchitecture logicielle  Lʼarchitecture ne peut-être mesurée ou validée  Lʼarchitecture est une science  Lʼarchitecture est un art Source: Philippe Kruchten, Ten Common Misconceptions about Software Architecture © 2009 Repenser les TI
  • 9. L’architecture Logicielle en pratique 9 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est de définir une architecture logicielle. © 2009 Repenser les TI
  • 10. L’architecture Logicielle en pratique 10 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est de définir une architecture logicielle qui satisfasse les exigences du client. © 2009 Repenser les TI
  • 11. L’architecture Logicielle en pratique 11 Modèle des Contraintes de Design Générateurs designer client Fonctions utilisateur symbolique formelle législateur pratique radicale interne externe Domaines Source: Bryan Lawson, How Designers Think © 2009 Repenser les TI
  • 12. L’architecture Logicielle en pratique 12 Critères de Qualité Logicielle   Interopérabilité Réutilisabilité   Portabilité Extensibilité   Compatibilité Efficacité   Validité Autonomie   Vérifiabilité Transparence   Intégrité Composabilité   Fiabilité Simplicité  Maintenabilité © 2009 Repenser les TI
  • 13. L’architecture Logicielle en pratique 13 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est de définir une architecture logicielle qui satisfasse les contraintes imposées sur le système. © 2009 Repenser les TI
  • 14. L’architecture Logicielle en pratique 14 Modélisation d’une Architecture Logicielle Vue logique Vue de réalisation Vue des Gestion de configuration Fonctionalité cas d’utilisation Vue des processus Vue de déploiement Performance Topologie du Système Extensibilité Communication Débit Approvisionnement Conceptuelle Physique Source: Philippe Kruchten, 4+1 Views © 2009 Repenser les TI
  • 15. L’architecture Logicielle en pratique 15 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est: 1) de définir une architecture logicielle qui satisfasse les contraintes du système 2) de la communiquer. © 2009 Repenser les TI
  • 16. L’architecture Logicielle en pratique 16 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est: 1) de définir une architecture logicielle qui satisfasse les contraintes du système 2) de la communiquer et la promouvoir. © 2009 Repenser les TI
  • 17. L’architecture Logicielle en pratique 17 Essence et Accidents de L’Ingénierie Logicielle  Complexité Essentielle Inhérente au problème (complexité, conformité, changeable, invisibilité)  Complexité Accidentelle Associée au développement de la solution Source: Frederick P. Brooks Jr, No Silver Bullet © 2009 Repenser les TI
  • 18. L’architecture Logicielle en pratique 18 Dimensions de la Complexité Logicielle Technique embarqué, temps-réel, distribué, critique centrale sur-mesure, innovateur, nucléaire haute performance grande échelle, contractuel, plusieurs intervenants compilateur “projets” Gestion petite échelle, système informel, corporatif un intervenant “produits” chiffrier application PC, site HTML, interactif, standard Source: Grady Booch, Handbook of Software Architecture © 2009 Repenser les TI
  • 19. L’architecture Logicielle en pratique 19 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est: 1) de définir une architecture logicielle qui satisfasse les contraintes du système 2) de la communiquer et la promouvoir 3) de défendre son intégrité conceptuelle © 2009 Repenser les TI
  • 20. L’architecture Logicielle en pratique 20 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est: 1) de définir une architecture logicielle qui satisfasse les contraintes du système 2) de la communiquer et la promouvoir 3) de défendre son intégrité conceptuelle 4) de la critiquer © 2009 Repenser les TI
  • 21. L’architecture Logicielle en pratique 21 Rôle d’un Architecte Logiciel Le rôle de lʼarchitecte logiciel est: 1) de définir une architecture logicielle qui satisfasse les contraintes du système 2) de la communiquer et la promouvoir 3) de défendre son intégrité conceptuelle 4) de la critiquer 5) de la raffiner © 2009 Repenser les TI
  • 22. L’architecture Logicielle en pratique 22 Rôle d’un Architecte Logiciel Complexité Changement Vision Politique Contraintes Photo: www.sparkle4all.nl © 2009 Repenser les TI
  • 23. L’architecture Logicielle en pratique 23 Profile d’un Architecte Logiciel 1. Crédibilité 2. Pensée intégrative 3. Créativité 4. Empatie 5. Autodidacte 6. Leader/Mentor 7. Communicateur(Négociateur) 8. Excellent analyste 9. Designer hors pair 10. Bon programmeur © 2009 Repenser les TI
  • 24. L’architecture Logicielle en pratique 24 La Pensée Intégrative Résolution Vision Chercher des solutions Outils Expérience Architecture créatrices qui résolvent les tensions Visualiser le tout en Causalité travaillant sur des parties Chercher des motifs et interrelations Saillance Identifie les contraintes importantes Source: Roger Martin, The Opposable Mind © 2009 Repenser les TI
  • 25. L’architecture Logicielle en pratique 25 Principes Fondamentaux  Simplicité (KISS)  Abstractions nettes  Division claire des rôles  Distribution équilibrée des responsabilités  Élégance/Esthétisme © 2009 Repenser les TI
  • 26. L’architecture Logicielle en pratique 26 Styles d’Architecture Logicielle  Centré sur les Données  Flux de Données • Base de données • Par lots • Blackboard • Tuyaux et Filtres • Publisher-Subscriber  Appels et Retour  Partage de Données • Fonction principale  Hiérarchique • Orientée-Objets • En couches  Interactif • En tiers • Orientée Événements • Interpréteur • Model-View-Controller  Orientée Agents Source: Shaw & Garlan, Software Architecture : Perspectives on an Emerging Discipline © 2009 Repenser les TI
  • 27. L’architecture Logicielle en pratique 27 Le Style le plus Répandu Source: Brian Foote & Joseph Yoder, Big Ball of Mud © 2009 Repenser les TI
  • 28. L’architecture Logicielle en pratique 28 7 Périls d’un Architecte Logiciel 1. Un projet où la direction de lʼorganisation ne croie pas à lʼarchitecture logicielle 2. Un projet dont les usagers ne veulent pas 3. Embarquer sur un projet sans avoir de crédibilité auprès d’une équipe rebelle 4. Un projet avec un niveau d’incertitude élevé soumis à un développement en cascade 5. Un projet dont des choix technologiques clés imposés sont inappropriés 6. Un projet où les analystes d’affaires produisent le schéma de BD 7. Prendre la relève d’un projet en détresse © 2009 Repenser les TI
  • 29. L’architecture Logicielle en pratique 29 L’Avenir d’une Discipline  LʼArchitecture fera partie du curriculum  Standardisation dʼun ADL  Architecture Orientée-Agents  Langages de programmation de plus haut niveau supportant les concepts architecturaux  Certification professionnelle basée sur les niveaux de criticalité logicielle [DO-178B: A-E] © 2009 Repenser les TI
  • 30. L’architecture Logicielle en pratique 30 Questions? Merci beaucoup! © 2009 Repenser les TI