Sortir de facebook


Les premiers périphériques plug and play grand public au milieu des années , avec notamment Windows 95 , avaient une certaine tendance à ne pas avoir le comportement voulu [non neutre].

Table des matières


Le focus est ainsi déplacé du projet vers le produit. Scrum ancre encore davantage cette importance de l'orientation produit en répartissant les responsabilités anciennement confiées au chef de projet vers un nouveau triumvirat: Cela permet de confronter son attente à la réalisation. Ensemble, ils inspectent le travail réalisé, puis décident des adaptations nécessaires pour se rapprocher de la satisfaction du besoin. Les équipes agiles adoptent ainsi un processus qui s'appuie sur des itérations courtes deux à quatre semaines en Scrum.

Dans l'objectif de pouvoir livrer rapidement, les exigences fonctionnelles sont découpées en petits éléments qui permettront une focalisation sur de petits lots porteurs de valeur. Pas de spécification détaillée exhaustive en amont, mais une précision juste à temps au moment où les fonctions vont être réalisées sous forme de conversation entre le représentant de l'équipe et le client.

Une pratique courante consiste à formaliser ces éléments sous la forme de User Stories. Ces histoires utilisateur combinent une concision imposée doit tenir sur une carte et la détermination de tests d'acceptation par le client doit être testable. Pour déterminer le contenu fonctionnel de la prochaine itération, l'équipe agile collabore avec le client en vue de maximiser la valeur ajoutée au produit.

Ensemble, ils établissent une liste des prochains éléments à réaliser en précisant l'ordre dans lequel ces éléments doivent être produits. L'ordre déterminé tient compte en priorité de la valeur d'un élément et de l'effort nécessaire à sa réalisation. En agilité, l'estimation de l'effort n'est pas l'affaire d'un seul individu. Les personnes devant réaliser sont les mieux placées pour estimer. La pratique du Planning Poker permet par exemple d'obtenir une estimation collective de l'effort de réalisation, tout en contribuant à diffuser la compréhension du produit à réaliser.

Le manifeste insiste sur l'importance de la production d'un logiciel opérationnel: Cette réunion permet de vérifier l'adéquation de la production au besoin.

Les participants obtiennent des informations qui sont exploitées lors de la planification du contenu de la prochaine itération. Seule la mise à disposition des éléments finalisés auprès des utilisateurs finaux permet de déterminer si l'équipe a construit le bon produit porteur de valeur. En conséquence, l'objectif ultime de l'équipe agile consiste à se mettre en mesure de mettre en production immédiatement les éléments validés lors de la revue Continuous delivery , éliminant jusqu'au besoin de définir des versions releases.

La communauté agile explore de plus en plus le concept du Right Product en expérimentant des pratiques très diverses inspiration du Lean Startup , notion de Minimal Viable Product , souvent fondées sur une représentation visuelle des concepts Persona, Impact Mapping , Story Mapping , Empathy Map …. Nous avons identifié ce qui est important pour eux: Il réussit son challenge grâce à son assistante qui saisit les données au fur et à mesure de l'examen.

Notre hypothèse selon laquelle l'utilisateur premier était le dentiste se révèle erronée. Une fois rentrés, nous menons une expérimentation en navigant uniquement avec les tabulations du clavier. Sans cette visite au cabinet, là où les choses se passent, nous n'aurions pas détecté les attentes ergonomiques spécifiques de l'assistante.

Toute hypothèse sur le client doit être confrontée à la réalité du gemba. L'un d'entre eux a une intuition formidable: Lorsqu'on visite Venise l'été, plutôt que de suer dans un bain de foule sur la place Saint Marc, autant aller siroter un Spritz la boisson locale au comptoir du bacaro d'une petite place ombragée. Les Vénitiens le savent bien. Le touriste moyen, lui, ne sait pas où trouver ces bons plans.

Très vite, d'autres participants viennent renforcer notre petite équipe naissante et la machine s'emballe. On se retrousse les manches, et on travaille déjà sur les questions fondamentales: Comment récolte-t-on ces astuces?

Combien peut-on vendre ce guide? Tout le monde est motivé, prêt à attaquer le développement du site web et de l'application mobile correspondante. L'animateur intervient en nous demandant d'aller à la rencontre de nos futurs clients. On en a vu, des touristes. Les plans locaux, ça ne les intéresse pas. Ce qui a de la valeur pour eux, c'est de trouver le bon chemin pour aller voir la Tour Eiffel. L'histoire de cette idée géniale se termine ici.

Mais pas celle de notre équipe d'entrepreneurs: Mais cette fois-ci, en commençant par une visite terrain 4 avant de s'emballer. Voilà une belle fin, puisqu'au cours de cette histoire, aucun développeur n'a dû développer un logiciel inutile.

L'entrepreneur a pu consacrer l'énergie économisée à d'autres projets plus prometteurs. L'erreur de l'entrepreneur peut sembler évidente, mais elle est pourtant très répandue. Son idée, comme toutes les idées, reposait sur des hypothèses.

Cette illusion d'évidence, renforcée par le confort du bureau, retient bien des entrepreneurs, et au moins autant de Product Owners , d'aller se confronter à la réalité. Ils manquent ainsi l'opportunité de valider leurs hypothèses sur les besoins des utilisateurs et les problèmes que ceux-ci rencontrent dans leurs activités.

Nous avons compris que la valeur pour cette cible est ailleurs, ce qui a évité de perdre du temps à développer une application qui ne rencontre pas son marché. Plus vite nous confrontons ces hypothèses à la réalité du terrain, plus nous gagnons du temps sur la création de la valeur. Un opérateur télécom vend aux entreprises une solution de centre d'appels virtuels.

Cette solution est développée par notre équipe agile de sept personnes. Nous avons hérité d'un code de mauvaise qualité que nous améliorons progressivement. Cependant, nous sommes confrontés à environ deux signalisations 5 par jour de nos utilisateurs finaux.

Cela provoque une tension avec le management, notre commanditaire est furieux, et les relations avec les exploitants sont difficiles. Je décide de prendre le cas au sérieux. Pour cela, je commence par lire les tickets d'incidents dans l'outil de ticketing du SAV. Il y a beaucoup de types de tickets différents.

Je les compte et les catégorise. Cela constitue un bulletin de santé que j'affiche sur le mur à l'entrée de notre War Room. Deuxième surprise, il y a finalement une minorité de signalisations liées à la qualité logicielle. Par ailleurs, je me rends compte que de nombreux tickets sont restés sans réponse: Désarçonnés par le flou de ces tickets mystère, nous décidons d'avancer sur notre problème en nous donnant les moyens d'identifier l'origine des prochaines signalisations.

Nous faisons un travail important d'amélioration des logs de l'application. Les récapitulatifs quotidiens qui remontent par mail les erreurs et les warnings contiennent plusieurs centaines de lignes hétérogènes. Nous donnons un format standard à ces logs, en décrivant les informations devant y figurer client, identifiant d'appel, raison de l'erreur avec un élément de contexte.

Nous nous rendons compte qu'il est difficile de suivre un appel téléphonique entier car certaines logs sont sur les SVI Système Vocal Interactif et d'autres sont sur les serveurs d'application. Nous développons un script d'agrégation pour consolider chronologiquement ces sources différentes. Maintenant que nous voyons plus clair, un motif important de signalisation semble liée au protocole de communication avec le serveur du réseau télécom qui est basé sur de l'UDP.

Rien ne garantit dans ce protocole que l'information ne soit pas perdue. Dans un certain nombre de cas, la perte d'un événement entraîne le blocage des appelants sur une file d'attente du SVI. Il faut attendre le timeout du SVI qui est de 30 mn. C'est inacceptable pour l'équipe. Nous décidons de mettre en place un mécanisme de gestion de timeout. Cela demande d'ajouter une couche de simulation du temps pour la compatibilité avec les tests automatiques.

L'équipe est satisfaite car elle a fait diminuer les signalisations liées à la perte d'appel. Elle évite à des personnes de payer 30 minutes avant de se faire raccrocher au nez.

Comme certains tickets sont toujours inexpliqués, nous décidons d'envoyer un binôme en observation chez le client ayant le trafic le plus élevé. Accueillis dans une atmosphère tendue, nous allons observer les agents du centre d'appel avec leur superviseur. Sous nos yeux, une opératrice double-clique sur le bouton de pause. Cela a pour effet de demander une pause et de sortir de pause immédiatement. Surpris, nous lui demandons pourquoi elle fait cette opération.

Elle nous explique qu'elle repasse ainsi devant ses collègues dans la file d'attribution des appels, afin de prendre plus d'appels. Le superviseur nous explique que les agents sont intéressés au nombre d'appels traités.

Sidérés, nous comprenons alors les incidents de distribution d'appels remontés par les autres, étonnés que leur collègue leur passe devant. Devant nous, un autre agent prend un appel et souhaite appuyer sur une touche de fonction pour afficher une information de leur outil de CRM.

Nous venons de résoudre un autre ticket non reproductible. Le superviseur qui nous accompagne a assisté à la scène et comprend que le problème ne vient pas de l'application, mais de l'ergonomie des postes de travail.

Il fait rehausser les postes téléphoniques pour qu'ils soient plus éloignés des claviers. Plus tard dans l'après-midi, une opératrice redirige un appel vers l'hôtel de Roissy. Une personne de l'équipe de développement qui nous assiste à distance précise que l'appel est perdu.

Nous allons voir la configuration de l'application et réalisons que le numéro de l'hôtel est erroné. Voilà l'explication des erreurs de type RouteSelectFailure.

Nous avions longtemps privilégié la fausse piste des problèmes de standard chez le client. Nous partons dans un climat plus détendu: Cela s'est traduit par une baisse drastique de signalisations en passant de deux par jour à une par semaine.

Nous avons également ajouté une couche de simulation du temps qui nous a servi ultérieurement. Aller sur le gemba est inconfortable, notamment chez un client insatisfait, mais d'une grande richesse d'apprentissage. Paradoxalement, c'est aussi un gain de motivation. En sortant du périmètre de l'équipe pour aller voir le client, nous avons pu aboutir à la résolution définitive d'un grand nombre de problèmes qui paraissaient hors de notre portée.

Cet objectif est construit en prenant comme première référence la satisfaction complète des clients du projet. Il lui est difficile de formuler les exigences du logiciel sans y ajouter ses propres préférences ou interprétations. Le lean propose un ensemble de pratiques et principes efficaces pour cibler les besoins réels du client et affiner la compréhension de ses préférences.

Il en existe trois grandes familles:. Le commanditaire, qui paie la prestation de développement et en attend un retour économique. Dans de nombreux cas le Product Owner désigné pour le projet est plutôt un représentant du commanditaire et des utilisateurs.

Le lean offre une structure pour guider cette exploration, basée sur cinq axes:. Les pratiques qui suivent constituent un bon point de départ pour entamer ce travail de détective. Le véritable besoin du client ne se déniche pas dans une salle de réunion. Quelques points doivent être respectés pour éviter cet écueil:. Pour éviter cela, il est nécessaire de procéder à de nouvelles observations terrain après les livraisons. En pratique, le travail sur les réclamations se traduit par la recherche de la cause racine du problème qui a amené le client à se plaindre.

Deux de ces pratiques principales sont présentées dans les chapitres suivants. Quel est le bénéfice attendu du logiciel? Dans le bureau d'une équipe de développeurs agiles, personne ne s'étonne de voir les murs couverts de post-its et de posters dessinés à la main. Le principe est simple: Un projet de développement logiciel en équipe se confronte à la fois à un besoin de communication intense et aux limites de la communication verbale, qu'elle soit formelle ou informelle.

Les méthodes classiques ont recours à des outils de gestion de projet informatisés ou à des fichiers sur des répertoires partagés. En interne, ces éléments visuels sont des outils avec lesquels les développeurs interagissent et à l'aide desquels ils se coordonnent entre eux. Par exemple, sur un taskboard , on fait avancer le post-it représentant une tâche au fur et à mesure de sa progression. La culture agile regorge d'exemples que les équipes de développement peuvent reprendre à leur propre compte, comme le montrent les spécimens suivants.

Les équipes plus avancées commencent à créer des affiches sur mesure pour répondre à leurs problématiques spécifiques. Les rétrospectives sont des moments privilégiés pour faire évoluer les affichages, pour en créer et en supprimer.

Tous les formats sont bons tant que les éléments affichés restent utiles et utilisés. Tous les jours, l'équipe se réunit devant le tableau d'avancement des tâches pour une courte réunion d'inspection et d'adaptation. Le support visuel matérialise les informations orales fournies rituellement par chacun des membres de l'équipe:.

Les équipes agiles en posture d'amélioration continue sont en expérimentation permanente sur leur management visuel. Aujourd'hui, pour aller plus loin elles ont recours de plus en plus à l'approche kanban: Le niveau de performance demandé est très élevé: Pendant les 3 années suivantes, nous réussissons au prix de gros efforts à tenir nos engagements.

Nous ne capitalisons pas sur ce que nous avons appris les années précédentes. Je veux savoir sur quoi je dois porter une attention particulière afin de satisfaire totalement mon client. Je décide de ne pas décider à sa place et de lui poser la question.

Le client investit dans une campagne de communication TV, radio, publicité sur le lieu de vente, etc. La disponibilité du site. Nous affichons et faisons vivre ces indicateurs dans notre Open Space. La situation est rendue visible. Tous les matins, nous faisons un point sur la situation. Elle est capable de répondre aux exigences du client le plus rapidement possible.

Les enjeux de mise en service de ce nouveau système sont critiques:. Le suivi comptable a mis à jour un écart considérable entre les cotisations, les remboursements et l'encours. Il faut très rapidement clarifier la situation, puis la corriger. Cette situation se traduit par une crise dans l'équipe de réalisation: L'équipe doit se mettre en capacité de produire le prochain lot dans un délai de trois mois, sans retard, en assurant une qualité acceptable du point de vue du client final.

Elle doit également parvenir à livrer des lots intermédiaires toutes les deux semaines pour rassurer le client. Ce challenge 11 se traduit tout d'abord par l'affichage d'un objectif de production pour la première itération:. L'enjeu de l'itération en cours consiste à sortir toutes les pièces présentes sur le tableau Depuis plusieurs semaines, l'équipe bute sur une somme croissante d'obstacles bloquants sans arriver à s'organiser pour les surmonter.

La frustration qui en résulte se transforme progressivement en antagonisme envers la cellule d'analyse fonctionnelle. Celle-ci, délocalisée auprès du client final, est rendue responsable du blocage. L'équipe de réalisation lui reproche de laisser s'accumuler les demandes d'informations, sans les traiter dans un temps acceptable.

Les premières réunions quotidiennes confirment que la majorité des développeurs sont en attente de clarification sur des questions d'ordre fonctionnel. Ces demandes sont transmises par l'intermédiaire d'un outil électronique, mais la plupart restent indéfiniment sans réponse. L'équipe réalise que l'outil ne lui permet pas d'appréhender la situation. Pour y voir plus clair, elle décide de rendre visibles ces obstacles sur son management visuel.

Au cours de ce travail d'analyse, elle fait une découverte surprenante: Chacun saisit la demande à sa manière, puis, déléguant la responsabilité au système, ne se préoccupe plus du suivi du processus de résolution. En particulier, les tickets sur lesquels le service destinataire est mal renseigné, ne sont pas traités correctement. Ensuite, l'équipe met au point un standard de rédaction d'une fiche de demande.

Je passe voir chaque collaborateur pour le former à la bonne façon de faire. Les réunions quotidiennes, qui étaient auparavant centrées sur les tâches, font maintenant une large place au traitement des obstacles en cours. Chaque jour, un point est effectué sur les obstacles non levés. Deux semaines après cette découverte, les questions en attente de réponse de la part de la cellule d'analyse fonctionnelle ont toutes été traitées. L'équipe peut vérifier visuellement au quotidien que cette équipe n'est pas source de blocage de leur processus, les tensions sont apaisées, les relations fluidifiées.

L'équipe a appris à gérer les obstacles, ce qui lui a permis de retrouver sa capacité à produire. Une bonne partie des tâches en attente ont pu avancer dans les étapes suivantes du processus.

Peut-être ne consacrons-nous pas le temps prévu initialement à réaliser nos sprints? Certains membres de l'équipe interviennent en effet sur plusieurs activités management, réunions transverses…. En tant que Team Leader , je n'échappe pas à cet éparpillement. Pour clarifier la situation, nous enrichissons notre management visuel en ajoutant un graphique des jours consommés, copie quasi-conforme de notre burndown chart d'itération.

Notre hypothèse se confirme: L'équipe croyait disposer d'une capacité de jours avant l'itération, mais n'a pu en fournir réellement que Il faut maintenant agir. Je trace, sprint après sprint, la différence entre les jours consommés et les jours planifiés. Sur les 24 derniers sprints, j'observe une forte variabilité. Je pense que les membres de l'équipe n'ont aucun moyen de détecter un écart en cours de sprint.

En début de sprint, nous imprimons un graphique qui montre pour chaque personne le nombre de jours qu'elle a annoncé en sprint planning. Durant chaque daily scrum meeting , un développeur remplit les lignes. Quand Romain dit "je suis intervenu sur telle tâche toute la journée", le développeur surligne en fluo une journée supplémentaire consommée sur la ligne de Romain.

Chaque couleur représente un jour de la semaine: Ce suivi permet d'alerter Romain: Chaque membre de l'équipe est maintenant en mesure de suivre au jour le jour un éventuel écart de son implication dans le sprint. Objectifs Le cours visera à développer les compétences suivantes: Objectifs Ce cours vise à développer les compétences suivantes C2.

Contenu Induction magnétique, force exercée par une induction magnétique sur un courant. Flux magnétique, force électromotrice induite, loi de Lenz Coefficient de self induction Champ magnétique, milieux aimantés, phénomènes d'hystérésis Courant alternatif: Objectifs Ce cours vise à développer, entre autre, les compétences suivantes: Distinction entre un conducteur, un isolant et un semi-conducteur, semi-conducteur intrinsèque, semi-conducteurs dopés N et P, jonction PN.

Les diodes à semi-conducteurs: Application des diodes en informatique et en télécommunications: Régulation par diodes Zéner. Diodes optiques LED, photodiode, opto-coupleur, transmission sur fibre optique , diodes à capacité variable accord des récepteurs. Constitution et principe de fonctionnement, polarisation des transistors. Application des transistors bipolaires en informatique et en télécommunications: Constitution, caractéristiques et principe de fonctionnement.

Les circuits à amplificateurs opérationnels: Contenu 1 Les diodes à semi-conducteurs: Contenu Le cours comporte une partie théorique et des laboratoires. Il traite essentiellement de 3 parties. Partie 1- Introduction objectif des télécommunications, historique, normalisation, exemples de système de télécommunication.

Partie 3 - Les supports de transmission - leurs principales caractéristiques bande passante, atténuation, diaphonie, … ; - introduction à la théorie des lignes de transmission en cuivre ; - caractéristiques des principaux supports paires torsadées, câbles coaxiaux, fibres optiques, ondes, liaisons infrarouges ; et la propagation le long des lignes: Grace à des exercices en classe et des réalisations pratiques, les laboratoires permettent de voir concrètement des supports de télécommunication, et de faire des échanges d'informations en utilisant différents supports lignes en cuivre, fibre optique, ondes électromagnétiques.

Bases du shell programming. Initiation à la programmation système. Objectifs Ce cours vise à développer les compétences suivantes o C2. Date, Tableaux, Tableaux associatifs - étudié en tant que support de la programmation événementielle dans les pages web DOM L'aspect importance du "débogage" sera également mis en avant. Mener une discussion, argumenter et convaincre de manière constructive.

Utiliser le vocabulaire adéquat. Utiliser une langue étrangère. Contenu Ce cours vise à développer les compétences suivantes: Objectifs Ce cours vise à développer les compétences suivantes o C5. Au départ de la couche transport dont les concepts seront vus de manière approfondie transport fiable, datagrammes, contrôle de congestion, … , nous explorerons tous les services réseaux qui peuvent être mis en place dans un réseau hétérogène.

Classes, objets, interface, héritage, polymorphisme, encapsulation, … Modélisation orientée-objet avec UML Concepts avancés de programmation: Objectifs Ce cours, et les travaux pratiques associés, visent à développer les compétences suivantes: Objectifs Ce cours vise à développer les compétences suivantes C5.

Les valeurs sociétales actuelles. Objectifs Ce cours vise à développer, entre autres, les compétences suivantes: Elaborer une méthodologie de travail Planifier des activités Contenu Historique de la gestion de projet Concepts de gestion de projet Méthodologies légères Méthodologies agiles. Contenu Techniques de présentation orales: Analyser une situation donnée sous ses aspects techniques et scientifiques Proposer des solutions qui tiennent compte des contraintes Analyser le schéma, installer et exploiter une base de données informatisée Contenu Ce cours se subdivise en 4 parties: Introduction et modélisation conceptuelle.

Cette partie présente une longue introduction aux concepts des systèmes de bases de données en général architecture trischématique et indépendance des données, langages et interface de SGBD, … et des systèmes de bases de données relationnelles en particulier relations et relvars, transactions, …. Théorie et méthodologie de la conception de bases de données. Elle présente et discute également la traduction de requêtes exprimées en algèbre relationnelle vers le SQL.

Objectifs La compétence commune à toutes les semaines internationales est o C1. Les semaines internationales se déroulent en anglais uniquement. Contenu - Le signal numérique: Active directory, application pratiques. Prévention des problèmes et engorgements: Virtualisation de serveurs et de réseaux. Méthodes et outils pour la résolution des problèmes.

Attaques réseaux Portscan et fingerprinting Vulnérabilités logicielles Outils de monitoring et de sécurisation: Mots de passe, certificats, PKI…. Analyser une situation donnée sous ses aspects techniques et scientifiques C4. Respecter les normes, les procédures et les codes de bonne pratique C5. Analyser le schéma, installer et exploiter une base de données informatisée Contenu Ce cours se subdivise en 5 parties: Concepts de traitement des transactions.

Cette partie concerne la gestion des transactions. Stockage des données, indexation, traitement des requêtes et conception physique. Modèles avancés, bases de données distribuées et Internet.

Utiliser le vocabulaire adéquat C2. Analyser une situation donnée sous ses aspects techniques et scientifiques Contenu Signal analogique: Proposer des solutions qui tiennent compte des contraintes C5.

Il leur est également demandé de procéder à une étude de rentabilité de leur produit. Planifier des activités C3. La gestion de projet est également importante. Ainsi que la réalisation des rapports techniques et de présentations.