• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Disic mars2014

Disic mars2014



Conférence donnée le 6 Mars 2014 lors des petits déjeuners de la DISIC

Conférence donnée le 6 Mars 2014 lors des petits déjeuners de la DISIC



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NoDerivs LicenseCC Attribution-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • Complexity: key challenge for management + key challenge for CIO <br />
  • Complicated -&gt; Taylor -&gt; B&S <br /> Complex -&gt; collaboration <br />
  • Anecdotal evidence: Japan arm robot -&gt; speed beats brains in complex situations <br /> Key thought: Need for agility comex from complexity <br /> When the world is complicated, you can be slow & smart, when the world is complex, you must be fast <br />
  • Les processus formalisent la coopération <br />
  • Complexity: key challenge for management + key challenge for CIO <br />
  • Complexity means that forecasting is at best extremely slippery and difficult, and most often outright impossible. This is, for instance, the key lesson from Nassim Taleb’s books, such as The Black Swan. The non-linearity of complex system interactions causes the famed butterfly effect, in all kinds of disciplines. If you line up a series of queues, such as in the Beer Game supply chain example, each queue amplifies the variations produced by the previous one and the result is very hard to forecast, hence to control (this depends, obviously, of the system load). <br /> Complex systems most often live in a complex environment which makes homeostasis an (increasingly) complex feast of change management. Homeostasis describes the process through which a complex system continuously adapts to its changing environment. The characteristic of successful complex systems, in a business context, is the ability to react quickly, with a large range of possible reactions. This applies both at the level of what the system does and what it is capable of doing. This is illustrated by the rise of the word “agility” in the business vocabulary. The law of requisite variety tells us why detailed perception is crucial for a complex system (which is clearly exemplified by recent robots) : the system’s representation of the environment should be as detailed/varied as the sub-space from the outside environment that the homeostatis process needs to react to. <br /> Complex systems, because of the non-linear interaction in general, and because its components have both memory and the capability to learn, exhibit statistical behaviors which are quite different from “classical” (Gaussian) distribution. This is one of the most fascinating insights from complex systems theory: fat tails (power laws) are the signature of intelligent behavior (such as learning).   In classical physics or statistics, all individual events are (most often) assumed to be independent, which yields the law of large numbers and Gaussian distributions. But when the individual events are caused by actors who can learn or influence each other, this is no longer true. Rather than the obvious reference to Nassim Taleb, the best book I have read on this is The Physics of Wall Street. This works both ways: it warns us that “black swans” should be expected from complex systems, but also tells us that some form of coordinated behavior is probably at work when we observe a fat tail. <br />
  • Resilience in complex systems often comes from the distribution of the whole system purpose to each of its subcomponents. This is another great insight from complex system theory: control needs to be not only distributed (to sub-systems) but also declarative, that is, the system’s purpose is distributed and the control (deriving the action from the purpose) is done “locally” (at the sub-system level). This idea of embedding the whole system’s purpose into each component is often referred as the holographic principle, with a nice hologram metaphor (in each piece of a hologram, there is a “picture” of the whole object). <br /> J.C. Fauvet: l’holomorphisme est la propriété d’ine sous-ensemble de porter en lui-même la forme du tout. <br /> Efficiency in a complex system is strongly related to the capability to support information exchange flows. There is a wealth of information about the structure of information networks that best support these flows. Scale-free networks, for instance, occur in many complex systems, ranging from the Web to the molecular interactions in living cells and including social networks. Scale-free networks reduce the average diameter, among other interesting properties, and can be linked to avoiding long paths in communication chains, both for agility and resilience. The challenge that these information flows produce is represented by the product of the interaction richness (essence of complexity in a complex system) and the high frequency of these interaction (our key #2) – the product of two large numbers being an even larger number.  <br /> Complexity in time is something that is difficult to appreciate for humans. One of the most critical aspect of complex systems are the loops, mostly feedback loops. Peter Senge and John Sterman have writtenfamous books about this.  Reinforcement and stabilizing loops are what matter the most when trying to describe a complex system, precisely because of their non-linear natures. The combination of loops, memory and delays cause surprises to human observers. John Sterman gives many examples of overshooting, which happen when human over-react because of the delay. Kevin Kelly gives similar examples related to the management of wildlife ecosystem. The lesson from nature is a lesson of humility : we are not good at understanding delays and their systemic effects in a loop. In the world of business, we have a difficulty to understand long-term consequences of our actions, or simply to visualize long-term equilibriums. Many people think that user market share and sales market share should converge, given enough years, without seeing the bigger picture and the influence of attrition rate (churn). Even simple laws such a Little’s Law may produce counter-intuitive behaviors. <br /> Efficient control for complex systems is an emergent property. Control strategies must be grown and learned, in a bottom-up approach as opposed to a top-down design. We are back to autonomous computing : top-down or centralized control does not work. It may be seen as another consequence of Ross Ashby law of requisite variety: complete control is simply impossible. Adaptive control required autonomy and leaning. This is, according to me, the key insight from Kevin Kelly’s book, Out of Control : “« Investing machines with the ability to adapt on their own, to evolve in their own directions, and grow without human oversight is the next great advance in technology. Giving machines freedom is the only way we can have intelligent control».   <br />
  • Companies absorbe complexity from their environment <br />
  • Cf. Kelly <br />
  • Complexity: key challenge for management + key challenge for CIO <br />
  • Distance dans le code: lié à l’organisation physique : fichier / module (repository) / sous-système <br />
  • s’exprime comme « le développement qui répond aux besoins du présent sans compromettre la capacité des générations futures à répondre aux leurs&quot;. <br /> Extreme IT ! Extreme programming at IS level <br />
  • Abstraction: définir les bons niveaux d’abstraction <br /> Trop haut = trop d’effort d’adaptation <br /> Trop bas = trop spécifique pas de réutilisation <br /> Modularité des service = question du bon découpage, en services indépendant - aussi peu de co-évolution que possible <br /> S’appuper sur les process et les events ! <br /> Composabilité <br /> Faite du LISP : apprendre le parametrage fonctionnel  <br />
  • Complexity: key challenge for management + key challenge for CIO <br />
  • 10 Things Agile Executives Need To Do Differently <br /> by Kelly Waters, 12 March 2012 | Agile Adoption, Agile Leadership <br /> Agile adoption is sometimes driven from the top by courageous executives boldly declaring “We’re going agile!”.  They see a vision of a better, happier place, where development is better, faster, cheaper, and they want it.  That’s understandable, of course.  But some don’t realise the implications.  When moving to agile methods, it’s not just teams that need to change.  Executives need to change too. <br /> Here are 10 things agile executives need to do differently: <br /> 1.  Do Less - limit work in progress at portfolio level, eliminate waste, create focus, do less in parallel, keep things simple. <br /> 2.  Explore & Adapt - rather than follow a plan. <br /> 3.  Learn Fast - short feedback loops, tolerate mistakes, value learning and continuous improvement. <br /> 4.  One Team, One Goal - avoid silos by setting up product oriented, co-located, multi-disciplined teams with shared purpose; squash politics. <br /> 5.  Focus On Value - focus on value over cost, deliver value earlier/incrementally, concentrate on building the right product. <br /> 6.  Empower Teams - inspire and engage, provide opportunity for intrinsic motivators: autonomy, mastery and purpose. <br /> 7.  Accept Hard Truths - be open, accept difficult messages, support the team in resolving them; agile doesn’t solve your problems, it highlights them. <br /> 8.  Think Big, Start Small - have the big vision, but deliver it in small bite-sized pieces. <br /> 9.  Collaborate - play nicely, be supportive, give your people’s time, actively participate in projects. <br /> 10.  Lead By Example - be agile yourself, use agile techniques, exhibit agile principles, adopt a servant leadership style. <br />

Disic mars2014 Disic mars2014 Presentation Transcript

  • Comment concevoir efficacement des systèmes d’information dans un monde complexe ? Architecture, Jardinage et Lean Software Development DISIC 6 Mars 2014 (v0.1) Yves Caseau Académie des Technologies Yves Caseau - présentation DISIC – Mars 2014 1/31
  • Outline 1. 2. 3. 4. Gouvernance et Complexité Le défi des entreprises du 21e siècle et de leurs systèmes d’information Complexité et Organisation Ce que la science des systèmes complexes nous propose Architecture d’Entreprise, SOA and durabilité L’anticipation dans un monde complexe n’est pas de la prévision, mais la construction d’un “potentiel de situation” Lean Software Factory L’adaptation des méthodes de développement aux nouveaux défis, dont celui de la complexité Yves Caseau - présentation DISIC – Mars 2014 2/31
  • 1ère Partie : Gouvernance et Complexité Les entreprises face à un monde complexe Un monde complexe:  Hyper-competition, mondialisation, le temps se “racourcit”  La puissance passe du coté du consommateur (F. Dupuy)  T. Friedman : « All that is easy has been done, what’s left is the hard stuff » Les problèmes compliqués requièrent des spécialistes, les problèmes complexes font appel à tous  Diversité des compétences et des points de vues …  … organisés en équipe Les problèmes complexes se traitent “sur le terrain” (gemba) un à la fois, là où ils se trouvent  Les abstractions cachent trop de choses, la décomposition ne marche pas!  “les conditions reproductibles” … ne le sont pas (isolation impossible)  La communication est difficile (ex: spécifier plus difficile que réaliser) Yves Caseau - présentation DISIC – Mars 2014 3/31
  • 1ère Partie : Gouvernance et Complexité Les entreprise du 21e siècle doivent être agiles Court-terme (satisfaire ses clients)    Vitesse (lead time) Zéro défauts (juste du premier coup) Orienté-client Moyen-terme (suivre ses clients)   Flexibilité (s’adapter aux nouveaux besoins) Réactivité (le faire rapidement) Long-terme (apprendre à évoluer)    Apprentissage (nouvelles compétences) Travail d’équipe Développement des collaborateurs Yves Caseau - présentation DISIC – Mars 2014 Systemic Challenge : continuous adaptation to environment 4/31
  • 1ère Partie : Gouvernance et Complexité L’entreprise en réseau: S’adapter à la complexité selon la biologie Organisation et Management doivent évoluer:   Control & command → recognition & response (L. Morris) Organisation dynamique sur des thèmes, auto-organisation (C. Shirky) Strength of Weak Ties (M. Granovetter)   Pour innover / réagir à une crise, il faut s’appuyer sur ses relations distantes (liens faibles: les personnes que l’on voit rarement) Homophilie : “tendance à s’associer à des personnes qui vous ressemblent ” raison pour ne pas s’appuyer uniquement sur ses « liens forts »  Développer son « potentiel de situation » (« Stratégie Chinoise » )    Passer d’une planification détaillée à une réaction opportuniste Bénéfice des exercices, travaux pratiques et “serious games” Construire des “reflexes” (A.N. Whitehead, N. Taleb) Yves Caseau - présentation DISIC – Mars 2014 5/31
  • 1ère Partie : Gouvernance et Complexité Collaboration & Coopération : « Nouveau Management Scientifique » L’approche de F. Taylor a atteint ses limites :    Projection de l’œuvre collective sur les individus (décomposition & spécialisation) Il s’agit maintenant de travailler autrement, en équipe Passe du compliqué au complexe … Un travail complexe requière une forme d’orchestration   Multiple flux d’information (il faut dire ce que l’on fait) Plus on décompose/spécialise, plus il faut parler ! Collaboration vs. Coopération: les deux sont nécessaires   Collaboration: résultat commun, objectif partagé, responsabilité indistincte Coopération: résultat commun, mais les buts et les responsabilités sont distinctes (… d’ou les “processus métiers ) Yves Caseau - présentation DISIC – Mars 2014 6/31
  • 1ère Partie : Gouvernance et Complexité La révolution de la motivation La motivation extrinsèque ne fonctionne plus au 21e siècle « There is a gap between what science knows and business does »  Du « simple » & répétitif au complexe & créatif  De l’algorithme à l’heuristique La Signature de la complexité  motivation extrinsèque s’appuie sur  Autonomy: choisir ses actions  Mastery: le plaisir de se sentir progresser  Purpose: replacer son action dans un ensemble plus large qui donne le sens Le lean (façon Toyota) est une philosophie qui intègre ces idées  Autonomie: rôle des équipes, SCRUM (petits lots)  Maîtrise : Kaizen, 5S, Kanban  Finalité : Orientation client, amour du produit Yves Caseau - présentation DISIC – Mars 2014 7/31
  • 2ème Partie 1. 2. 3. 4. Gouvernance et Complexité Le défi des entreprises du 21e siècle et de leurs systèmes d’information Complexité et Organisation Ce que la science des systèmes complexes nous propose Architecture d’Entreprise, SOA and durabilité L’anticipation dans un monde complexe n’est pas de la prévision, mais la construction d’un “potentiel de situation” Lean Software Factory L’adaptation des méthodes de développement aux nouveaux défis, dont celui de la complexité Yves Caseau - présentation DISIC – Mars 2014 8/31
  • 2ème Partie : Complexité et Organisation Que nous dit la science des systèmes complexes ? Yves Caseau - présentation DISIC – Mars 2014 9/31
  • 2ème Partie : Complexité et Organisation Sept principes qui gouvernent les systèmes complexes (1) 1. La complexité rend la prévision illusoire, voire impossible  1. Le défi d’un système complexe est en premier lieu son adaptation continue à son environnement  1. Nassim Taleb: attention à la « narrative fallacy » Homéostasie et Loi de la variété requise La loi des grands nombres, et les statiques classiques (courbes de Gauss) ne s’appliquent plus  On observe des « power laws » qui sont les signatures de la complexité (interaction et apprentissage) Yves Caseau - présentation DISIC – Mars 2014 10/31
  • 2ème Partie : Complexité et Organisation Sept principes qui gouvernent les systèmes complexes (2) 4. Pour rendre un système complexe robuste, il faut distribuer la finalité  4. Le fonctionnement d’un système complexe se traduit par des flux importants d’information qui conduisent à des structures de réseau multi-échelle  4. La richesse des interactions est la signature de la complexité (par opposition à la complication : nombre de parties) La complexité se développe dans le temps  4. Chaque composant possède une représentation des objectifs du système dans son ensemble (holomorphisme) Nous (humains) avons beaucoup de mal à apprécier les différentes échelles de temps et les boucles de rétroactions avec délais. Le contrôle d’un système complexe est une propriété émergente  Kevin Kelly : control is grown, not designed Yves Caseau - présentation DISIC – Mars 2014 11/31
  • 2ème Partie : Complexité et Organisation L’enterprise est un “système complexe” Complexité numérique (nombre de choses)  Multi-échelle  Complexité temporelle  Richesse des interactions avec l’environnement  Exemples de symptômes:     Coûts (Systèmes d’information)  Exemple: évolution non-linéaire des coûts projets vs. leur taille Taux d’erreurs et de pannes  Difficulté à « garantir » la robustesse et la résistance aux pannes  Ross Ashby « la régulation d’un système (complexe) requière un système de contrôle qui est aussi complexe que le système lui-même » Time-to-market  La première manifestation de la complexité interne  Le temps pour intégrer un nouveau composant dépend de la taille de l’hôte : – Complexité humaine (organisation) – Absence de modularité (impacts inattendus & interaction entre composants)  Loi des “conséquences inattendues”– Feature Interaction Problem Yves Caseau - présentation DISIC – Mars 2014 12/31
  • 2ème Partie : Complexité et Organisation Conséquences d’une “vision systémique” “Emergence” de propriétés et caractéristiques  Des « systèmes obtenus par design et agencement » …  .. à la « culture de systèmes » (K. Kelly)  Humilité and Amélioration continue  Expliciter les « politiques/règles »   SLA, contrats de services, règles gouvernance OM, … “Enterprise Architecture” comme discipline d’entreprise  Alignement des parties prenantes  Importance de l’environnement externe Complexité  Gouvernance de la complexité  Reconnaitre le problème !  S’y attaquer avec méthode / Exécution dans le Monde Réel persévérance   Cf. le cube du CEISAR’s Modèle  Synergie Yves Caseau - présentation DISIC – Mars 2014 Agilité Eléments Partageables ou Réutilisables Eléments Spécifiques Operations Transformations 13/31
  • 2ème Partie : Complexité et Organisation Gouvernance de la complexité  Réfléchir en « potentiel de situation » vs « schéma directeur »   Scénarios Jeux (serious games)  … si nous étions … un de nos compétiteurs ?    … si nous « out-sourcions » cette activité ? … si nous offrions ce service à une autre entreprise (SaaS) Développement durable de l’entreprise et de son SI  Cf. 3e partie – éviter le « mur » de l’obésité Rythme durable de l’effort continu de réorganisation (urbanisation)  Subsidiarité     Autonomie, Encapsulation et Gouvernance déclarative « Thing globally, act locally » Management visuel (éducation systémique) Yves Caseau - présentation DISIC – Mars 2014 14/31
  • 2ème Partie : Complexité et Organisation Manager l’émergence = Jardinage  La transformation ne se décrète pas, elle se favorise ….    Le SI « idéalement adapté à son environnement » n’est pas (seulement) le résultat d’une conception, mais d’un processus de « croissance »     Bottom-up, même s’il existe une confiance top-down Comme le jardinage, agir sur les facteurs favorables Cf. Tom Kelly : « grown, not designed » Culture de l’essai rapide (MVP) Apprentissage, donc mesure ! Conditions favorables    Outillage irréprochable (industrialisation du code) Devops: liberté de mise en production continue Compétences techniques Yves Caseau - présentation DISIC – Mars 2014 15/31
  • 3ème Partie 1. 2. 3. 4. Gouvernance et Complexité Le défi des entreprises du 21e siècle et de leurs systèmes d’information Complexité et Organisation Ce que la science des systèmes complexes nous propose Architecture d’Entreprise, SOA and durabilité L’anticipation dans un monde complexe n’est pas de la prévision, mais la construction d’un “potentiel de situation” Lean Software Factory L’adaptation des méthodes de développement aux nouveaux défis, dont celui de la complexité Yves Caseau - présentation DISIC – Mars 2014 16/31
  • 3e Partie: Architecture d’Entreprise Enterprise Architecture Architecture: Pourquoi ?     Communiquer une vision  Outil de transformation Maitriser la complexité  Simplicité et modularité  Promouvoir la standardisation  Favoriser la réutilisation Aligner les parties prenantes  Éviter les outils complexes et formalismes obscurs  Dépend de la maturité propre de chaque entreprise Asynchronie / Diachronie  Sert de mémoire d’entreprise  Management visuel du changement Yves Caseau - présentation DISIC – Mars 2014 Architecture: Comment ?   « Enterprise Architecture »  Mise en cohérence de trois niveaux  Stratégie: objectifs  Opérations: processus et données  Systèmes d’information: applications et services Réduire la complexité (toolbox)  Approche composants  Orientation processus (extraction de la logique métier)  Découplage temporel (messages asynchrones)  Découplage fonctionnel (intermédiation) 17/31
  • 3e Partie: Architecture d’Entreprise Données et Fonctions Architecture de données  Modèle de données         Sémantique Modèle conceptuel Ontologies: hiérarchies de classes (UML) Architecture de données  Architecture fonctionnelle    Distribution Formats (ex: XML) Cycle de vie   Distribution / synchronisation Sauvegarde / restauration Flux de données Yves Caseau - présentation DISIC – Mars 2014    Fonctions et sous-fonctions, approche « top-down » Normalisation descriptive: (entrées, sorties, invariants, pre/post-conditions, …) L’architecture fonctionnelle n’est pas isolée (une leçon des 20 dernière années)  Gestion dynamique des objets métiers  Décomposition Un focus étroit sur l’architecture fonctionnelle conduit à prendre en compte trop tard les données et les processus. Une architecture fonctionnelle trop poussée conduit à des silos L’approche fonctionnelle « top-down » est mal adaptée à l’utilisation de progiciels Design orienté-objet au niveau du SI : mélanger fonctionnel et données 18/31
  • 3e Partie: Architecture d’Entreprise Processus et Services Architecture de Processus  Structure temporelle:     Récursif (“fractal”)      Evénements Chaînage et dépendances ⇒ logique métier Réifier les buts en processus Processus/sous-processus Familles de processus  Partagent des ressources: données, IHM, … Rôles (alignement organisationnel) description-> services, fonctions, Normaliser / Standardiser   Partager / réutiliser / BPO Meilleure approche pour l’intégration de progiciels Yves Caseau - présentation DISIC – Mars 2014 Architecture de Services Service = Fonction + Interface + Contrat  Service Architecture     SOA local = service-based architecture    Structure (organiser le graphe d’appels) Fournir du sens (simplifier la gestion du changement et la réutilisation) Souvent lié à une technologie, L’objectif est le système (et son architecture), les services sont un moyen) SOA global = architecture-based catalog   Indépendant des technologies Le but est d’obtenir un catalogue de services durables, l’architecture (l’organisation) est un moyen (qui varie au cours du temps) 19/31
  • 3e Partie: Architecture d’Entreprise Construire une architecture modulaire Objectif: minimiser la dispersion des impacts (nouveau service)  “Définition”: la modularité est une corrélation:     « Distance dans le code » & fréquence des interactions « Distance dans code » & « coévolution » Bonnes pratiques:      Architectures en couches (définir des niveaux d’abstraction) Architecture de processus (définir une grammaire de composition)  Même objectif pour partage/réutilisation et modularité: identifier les sous-processus communs Event-Oriented Architecture  « Pub/sub » reste un des meilleurs motif modulaire Model-Driven Architecture: design d’un modèle de données « future-proof » L’architecture de services réduit les interactions non-pilotées  Réification de l’architecture fonctionnelle  Abstraction/ encapsulation Yves Caseau - présentation DISIC – Mars 2014 20/31
  • 3e Partie: Architecture d’Entreprise Systèmes d’information durables  « développer les services du SI correspondant aux besoins d’aujourd’hui sans diminuer la capacité future de développer ceux de demain, à travers une sur-utilisation de ressources ou la production d’une complexité non gérable ».   Librement inspiré de la définition de la commission Brundtland  (global) SOA est la seule méthode pour un développement durable   Pas la seule façon de faire de l’architecture d’entreprise (d’autres méthodes sont efficace pour réduire la complexité) Mais la meilleure façon pour le faire de façon continue, avec l’ensemble des parties prenante, dans une démarche de long terme qui génère ses propres récompenses (cercle vertueux) Nettoyage : apprendre à supprimer et alléger (classique )  Cf. Extreme programming (Agile Manifesto – 4 e Partie) :    Lisser l’effort, intégration continue, privilégier la simplicité Simplification en continu, pas un effort héroïque de dernier ressort Yves Caseau - présentation DISIC – Mars 2014 21/31
  • 3e Partie: Architecture d’Entreprise SOA comme discipline: Services “orientés-architecture”  Comment obtenir la réusabilité, à travers l’entreprise (partage) et au cours du temps ?     Discipline: gérer des modèles d’API     Abstraction  Un compromis entre la spécificité et la généricité  Réification des rôles et de (certaines) relations Modularité  S’appuyer sur les processus et sur les graphes d’événements  Penser “ontologie” plus que “description” Composabilité  Horizontale (Processus) : Modèle Objet Commun (Pivot)  Verticale (Fonctionnelle) : Polymorphisme Paramétrique  Gérer les versions ! Méta modèle des API: mérite quelques efforts ! Chaque DSI doit penser en tant qu’éditeur de logiciel Plus un art qu’une science  Yves Caseau - présentation DISIC – Mars 2014 22/31
  • 4ème Partie 1. 2. 3. Gouvernance et Complexité Le défi des entreprises du 21e siècle et de leurs systèmes d’information Architecture d’Entreprise, SOA and durabilité L’anticipation dans un monde complexe n’est pas de la prévision, mais la construction d’un “potentiel de situation” Lean Software Factory L’adaptation des méthodes de développement aux nouveaux défis, dont celui de la complexité Yves Caseau - présentation DISIC – Mars 2014 23/31
  • 4 e Partie: Lean Software Factory Software Factory  Intégration continue      Structure plateau projet (« one Roof »)   Automatisation des tests et des configurations Le travail des développeurs est intégrée et testé chaque nuit Automatisation de la qualimétrie Vers un déploiement continu … complètement automatisé Cohabitation des différents rôles: développement / intégration / test / architecture / Devops : une nouvelle culture pour une nouvelle organisation    Opérations pilotées par programme  Adapté au Cloud Computing Fusion des cultures développement / production  Production adaptée au développement agile Inspiré des approches lean → petits lots Source: Wikipedia Yves Caseau - présentation DISIC – Mars 2014 24/31
  • 4 e Partie: Lean Software Factory Développement Agile - SCRUM La spécification du produit est remplacé par un « backlog » des attentes  Utilisation de « story boards » Pourquoi des « petits lots » ?  Travail en lots courts (sprints) Complexité + évolution rapide ⇒ Avancer par petits pas & réévaluer  Time-boxing  Voir ce que l’on construit / éviter le tunnel  Participation active du client/utilisateur sur le lieu de développement.  Besoin/ architecture / design / code  Spécification / conception se font en continu / collectif  Réunion d’équipe quotidienne, management visuel (murs)  Yves Caseau - présentation DISIC – Mars 2014 25/31
  • 4 e Partie: Lean Software Factory Extreme Programming  Remettre le code à l’honneur    Rôle central du test pour développer du code de qualité    Source: Wikipedia Penser test en premier – savoir ce que l’on veut Application du « lean thinking » - pull vs. Push – et ça marche ! Valeurs (cf. Wikipedia)      « the innovation is the code » Un code élégant, maitrisé et revu fréquemment Communication Simplicité – seules les architectures simples sont durables Feedback – cf. méthodes agiles + test en continu Courage & respect Pratiques    Agile: itératif, « user stories », petits lots, espace ouvert et dédié à l’équipe, … Travailler avec un rythme durable (« set a sustainable pace ») Pair programming Yves Caseau - présentation DISIC – Mars 2014 26/31
  • 4 e Partie: Lean Software Factory Lean Startup / Pretotyping / Google Values Innovator Build in all else will follow cus on the user and Fo s beat ide as g be at s t alkin g It’s best t o do one t hing really , rea lly well committees Commitment beats nion ts opi ea Data b Fast is better than slow Rough Consensus and Working Cod e The Lean Startup : le best-seller mondial d’Eric Ries  Validated learning   Minimum viable product   Innovation : machine à produire des “idées qui marchent” Collecter et analyser des faits, le plus tôt possible Synchronicité  L’efficacité d’une équipe calée sur un takt time commun Yves Caseau - présentation DISIC – Mars 2014 27/31
  • (2) Streamline Single Piece Flow, Small batches process (1) Eliminate muda Focus on value Why ? (meaning) Customer focus: • value analysis • done right on the first time • reduce lead time • increase flexibility Yves Caseau - présentation DISIC – Mars 2014 « Lean Engine » processu s (2) Streamline (fluidifier) Fractionner (réduire la taille des lots) (1) Éliminer muda Focus sur valeur Subtle interaction  between all factors 28/31 Lean Engine (3) Pull – flux tendus Juste-à-temps Problem Solving Continous Improvement (4) Heijunka (lissage) Lean « Work Philisophy » • Go and see the gemba • Search for deep causes • Continuous improvement • Teamwork Skills Learning Lean Engine (3) Pull – Just-in-Time How ? (4) Heijunka (leveling) 4 e Partie: Lean Software Factory Lean Schematic Vision 
  • 4 e Partie: Lean Software Factory Lean Software Development (I)  « Faire juste du premier coup »    Client « sur place » - au cœur du processus de développement    Tests unitaires – cf. extreme programming Tests clients – cf. Lean Startup « Time-boxing » : Utiliser le levier du « lead time »    Cf. SCRUM/XP – « le client est toujours disponible » Tester dès que possible   Mise en valeur du code, focus sur la qualimétrie Mode agile : faire moins, pas « moins bien » Pour la satisfaction client (agilité / pertinence) Pour augmenter la qualité (défi permanent) Kaizen   Culture de l’amélioration continue (cf. SCRUM – retour d’expérience) Outil d’apprentissage du travail en équipe Yves Caseau - présentation DISIC – Mars 2014 29/31
  • 4 e Partie: Lean Software Factory Lean Software Development (II)  Pas d’attentes   Synchronicité    Production > Intégration > Développement > Architecture > Conception Ne faire que ce qui est utile, au bon moment – « just in time » Management visuel    « Talk time » : temps commun Priorité à l'aval (pull)   Minimiser les ruptures (action / responsabilité) Utiliser les murs : planning, liste des problèmes, architecture, …. Outil de pilotage systémique (cf. Kanban pour le JIT) Simplicité    KISS ( paradoxe → cf. Ashby) moins de code Éliminer le « muda » Yves Caseau - présentation DISIC – Mars 2014 30/31
  • Conclusion  Les modèles et l’architecture sont la clé pour :     La science de la complexité donne des pistes pour évoluer:     Agilité Potentiel de situation (saisir les opportunités) Conduire une transformation en maîtrisant les coûts Besoin d’une vision globale et partagée (« True North ») … … mais distribuée en laissant de l’autonomie locale l’évolution se construit comme un apprentissage, dans une démarche de progrès Il faut adopter les méthodes et les outils des « géants du Web »    Agile & lean software development Devops et mise en production continue Big Data, Web programming, open source tools … Yves Caseau - présentation DISIC – Mars 2014 31/31