Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Spinnaker est un outil open source de déploiement continu multi-cloud développé par Netflix.
Vous savez déjà construire vos applications avec Jenkins, venez découvrir comment automatiser tous vos déploiements.
Nous verrons ensemble comment créer une plate forme complète de déploiement continu jusqu'en production, à base de canary, blue/green et rollback.
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Spinnaker est un outil open source de déploiement continu multi-cloud développé par Netflix.
Vous savez déjà construire vos applications avec Jenkins, venez découvrir comment automatiser tous vos déploiements.
Nous verrons ensemble comment créer une plate forme complète de déploiement continu jusqu'en production, à base de canary, blue/green et rollback.
Le Test Driven Infrastructure, c'est un peu le TDD pour les projets DevOps. Il va vous permettre de tester votre infrastructure unitairement, de bout en bout et à chaque changement.
On se demande toujours comment allons-nous mesurer notre qualité logicielle? Bien que ce soit assez subjectif, nous pouvons mettre des mots et aussi des valeurs sur des concepts qui définissent la qualité de notre logiciel. Nous allons explorer une méthode qui permet d'ouvrir les yeux sur les qualités internes et externes de nos logiciels, en expliquant comment un modèle de qualité se construit, nous impliquons les équipes lors de la création qui permet une bonne adoption et encore mieux, une appropriation de la qualité par les équipes.
Quelques rappels de cours sur les bonnes pratiques liées à la modularisation des applications C/C++. Je présente en plus quelques astuces pour structurer une application C/C++ et son packaging.
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Pourquoi vous ne pouvez pas tester votre codeRémi Lesieur
"Non mais nous, on ne peut pas tester"
Vous avez déjà entendu cette phrase ? Parce que moi, oui, très souvent.
Il y a toujours au moins une bonne raison évoquée. Et si on en parlait ?
Introduction à la qualité logicielle (1/5)Sylvain Leroy
Présentation / Sensibilisation à la qualité logicielle, à l'assurance qualité et au contrôle du code des applications.
Cette présentation est le premier chapitre introductif du thème. Elle rappelle les principaux écueils que rencontre tout projet de développement informatique.
[Agile Testing Day] Test Driven Development (TDD)Cellenza
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Plutôt que de parler CI d'entreprise et de rentrer dans les détails de Jenkins et du workflow typique d'un équipe de dév, pourquoi ne pas déjà aborder toutes les bonnes pratiques et méthodologies à employer pour soi-même créer un produit testé et fiable ? Bienvenue dans l'intégration continue pour tous !
Le Test Driven Infrastructure, c'est un peu le TDD pour les projets DevOps. Il va vous permettre de tester votre infrastructure unitairement, de bout en bout et à chaque changement.
On se demande toujours comment allons-nous mesurer notre qualité logicielle? Bien que ce soit assez subjectif, nous pouvons mettre des mots et aussi des valeurs sur des concepts qui définissent la qualité de notre logiciel. Nous allons explorer une méthode qui permet d'ouvrir les yeux sur les qualités internes et externes de nos logiciels, en expliquant comment un modèle de qualité se construit, nous impliquons les équipes lors de la création qui permet une bonne adoption et encore mieux, une appropriation de la qualité par les équipes.
Quelques rappels de cours sur les bonnes pratiques liées à la modularisation des applications C/C++. Je présente en plus quelques astuces pour structurer une application C/C++ et son packaging.
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Pourquoi vous ne pouvez pas tester votre codeRémi Lesieur
"Non mais nous, on ne peut pas tester"
Vous avez déjà entendu cette phrase ? Parce que moi, oui, très souvent.
Il y a toujours au moins une bonne raison évoquée. Et si on en parlait ?
Introduction à la qualité logicielle (1/5)Sylvain Leroy
Présentation / Sensibilisation à la qualité logicielle, à l'assurance qualité et au contrôle du code des applications.
Cette présentation est le premier chapitre introductif du thème. Elle rappelle les principaux écueils que rencontre tout projet de développement informatique.
[Agile Testing Day] Test Driven Development (TDD)Cellenza
Soyons honnête : nous aimerions tous tester nos plateformes, nos codes, mais personne ne le fait vraiment bien. Heureusement, ce n’est pas une fatalité, et il n’est jamais trop tard pour tester ! La vraie question est : comment tester ? Derrière toute stratégie de tests efficace, il y a une connaissance de tous les types de tests disponibles, de leurs coûts et de leurs utilités. Tout au long de cette journée, nous allons vous détailler les différents types de tests, du test unitaire au test de charge, afin que vous puissiez évaluer la pertinence de chacun dans votre propre contexte.
Plutôt que de parler CI d'entreprise et de rentrer dans les détails de Jenkins et du workflow typique d'un équipe de dév, pourquoi ne pas déjà aborder toutes les bonnes pratiques et méthodologies à employer pour soi-même créer un produit testé et fiable ? Bienvenue dans l'intégration continue pour tous !
Ha zut, le DevOps a mangé ma vélocité par Jean-Marc Lavoie & Sylvie TrudelAgile Montréal
Plusieurs s'engagent dans un projet DevOps avec espoir de voir la vélocité augmenter au fil du temps, remplissant la promesse légendaire de Scrum. La réalité est souvent tout autre, car opérer un système en production apporte son lot de surprises, et si l'on y ajoute de la dette technique et quelques années de vie utile, alors on peut facilement se retrouver dans une tempête parfaite. Voyons ensemble ces éléments qui viennent affecter notre précieuse vélocité.
Le monde de l'informatique est divisé depuis toujours en deux univers : les personnes qui créent (Dev) et celles qui exploitent en production (Ops). Cette séparation peut générer stress et frustration. Les équipes n'ont pas l'impression d'aller dans le même sens et cela nuit à la productivité. Pour les réconcilier, un ensemble de pratiques et d'outils ont été imaginées: elles se cachent derrière le terme DevOps. Qu'est-ce que c'est exactement ? Quels problèmes est-ce que cela résout ? Quelle est la bonne approche pour le mettre en place? Nous vous proposons de découvrir notre vision sur ce sujet lors de cette session d'introduction.
Comment boucher le trou entre le développement et la production en PHP ? Quels outils de développement, quels outils de suivi de qualité, comment réussir l'intégration continue ? Nous terminerons par les us et coutumes de la mise en production.
Paris Web 2015 - Atelier désendettement Javascript legacyFrançois Petitit
par Michael Akbaraly et François Petitit - OCTO Technology
Vous avez récupéré un projet JavaScript de plusieurs milliers de lignes, on vous demande des évolutions et des corrections de bugs, et rien ne va.
Code illisible, régressions en pagaille, structure des répertoires incompréhensibles : vous ne savez pas par où commencer !
Au long des 90 minutes de cet atelier, nous vous proposons de découvrir les techniques et les outils qui vont vous sauver la vie via des travaux pratiques de code JavaScript côté back-end avec NodeJS, et côté front-end avec AngularJS.
Débutants ou ayant déjà une connaissance de ces technologies sont les bienvenus. Les travaux pratiques seront disponibles si vous souhaitez coder vous-mêmes pendant l'atelier.
Présentation de Maven et de son utilisation en entreprise dans le cadre du Ch'ti JUG, le 15 juin 2009.
Pourquoi Maven ? Pourquoi l'adopter ? Les bonnes et mauvaise pratiques. Son avenir ...
Les tests fonctionnels avec Visual Studio 2010Microsoft
L’objectif de cette session est de présenter les tests fonctionnels « codés » écrits avec Visual Studio 2010. Cette fonctionnalité est encore méconnue malgré son utilité dans les tests de non-régression et dans l’automatisation des tests. Nous passerons en revue les points suivants : comment se place cette fonctionnalité dans l’offre de test de Visual Studio ? A qui s’adresse-t-elle ? Quelles sont les intégrations avec les autres outils ? Quelles sont les technologies supportées et les limites de l’outil ? Comment mettre en œuvre ces tests sur son projet et quelles sont les bonnes pratiques pour maximiser le retour sur investissement ? La session sera illustrée par des démonstrations.
À l'issue de cette formation, vous détiendrez les clés pour la mise en œuvre pratique d’une démarche DevOps au sein de votre organisation.
• Appréhender l'intérêt de la culture DevOps
• Découvrir les patterns de conception DevOps
• Identifier les enjeux de l’industrialisation des déploiements applicatifs
• Savoir fluidifier les interactions entre les différentes équipes projet
• Mettre en place une chaine de production CI/CD fiable grâce à des outils open source
Développement d'un grand projet piloté par les tests (BDD)Laurent PY
Déploiement de l'approche BDD (Behavior Driven Development) dans un grand projet billettique de 150 années/hommes avec des équipes distribuées. Par Hiptest et Parkeon
Similaire à Omnilog 2016 - Apéro techno : Rex Identicar sur l'intégration continue (20)
Le Comptoir OCTO - Équipes infra et prod, ne ratez pas l'embarquement pour l'...OCTO Technology
par Claude Camus (Coach agile d'organisation @OCTO Technology) et Gilles Masy (Organizational Coach @OCTO Technology)
Les équipes infrastructure, sécurité, production, ou cloud, doivent consacrer du temps à la modernisation de leurs outils (automatisation, cloud, etc) et de leurs pratiques (DevOps, SRE, etc). Dans le même temps, elles doivent répondre à une avalanche croissante de demandes, tout en maintenant un niveau de qualité de service optimal.
Habitué des environnements développeurs, les transformations agiles négligent les particularités des équipes OPS. Lors de ce comptoir, nous vous partagerons notre proposition de valeur de l'agilité@OPS, qui embarquera vos équipes OPS en Classe Business (Agility), et leur fera dire : "nous ne reviendrons pas en arrière".
OCTO TALKS : 4 Tech Trends du Software Engineering.pdfOCTO Technology
En cette année 2024 qui s’annonce sous le signe de la complexité, avec :
- L’explosion de la Gen AI
-Un contexte socio-économique sous tensions
- De forts enjeux sur le Sustainable et la régulation IT
- Une archipélisation des lieux de travail post-Covid
Découvrez les Tech trends incontournables pour délivrer vos produits stratégiques.
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Laurent Speyser
(Conférence dessinée)
Vous êtes certainement à l’origine, ou impliqué, dans un changement au sein de votre organisation. Et peut être que cela ne se passe pas aussi bien qu’attendu…
Depuis plusieurs années, je fais régulièrement le constat de l’échec de l’adoption de l’Agilité, et plus globalement de grands changements, dans les organisations. Je vais tenter de vous expliquer pourquoi ils suscitent peu d'adhésion, peu d’engagement, et ils ne tiennent pas dans le temps.
Heureusement, il existe un autre chemin. Pour l'emprunter il s'agira de cultiver l'invitation, l'intelligence collective , la mécanique des jeux, les rites de passages, .... afin que l'agilité prenne racine.
Vous repartirez de cette conférence en ayant pris du recul sur le changement tel qu‘il est généralement opéré aujourd’hui, et en ayant découvert (ou redécouvert) le seul guide valable à suivre, à mon sens, pour un changement authentique, durable, et respectueux des individus! Et en bonus, 2 ou 3 trucs pratiques!
L'IA connaît une croissance rapide et son intégration dans le domaine éducatif soulève de nombreuses questions. Aujourd'hui, nous explorerons comment les étudiants utilisent l'IA, les perceptions des enseignants à ce sujet, et les mesures possibles pour encadrer ces usages.
Constat Actuel
L'IA est de plus en plus présente dans notre quotidien, y compris dans l'éducation. Certaines universités, comme Science Po en janvier 2023, ont interdit l'utilisation de l'IA, tandis que d'autres, comme l'Université de Prague, la considèrent comme du plagiat. Cette diversité de positions souligne la nécessité urgente d'une réponse institutionnelle pour encadrer ces usages et prévenir les risques de triche et de plagiat.
Enquête Nationale
Pour mieux comprendre ces dynamiques, une enquête nationale intitulée "L'IA dans l'enseignement" a été réalisée. Les auteurs de cette enquête sont Le Sphynx (sondage) et Compilatio (fraude académique). Elle a été diffusée dans les universités de Lyon et d'Aix-Marseille entre le 21 juin et le 15 août 2023, touchant 1242 enseignants et 4443 étudiants. Les questionnaires, conçus pour étudier les usages de l'IA et les représentations de ces usages, abordaient des thèmes comme les craintes, les opportunités et l'acceptabilité.
Résultats de l'Enquête
Les résultats montrent que 55 % des étudiants utilisent l'IA de manière occasionnelle ou fréquente, contre 34 % des enseignants. Cependant, 88 % des enseignants pensent que leurs étudiants utilisent l'IA, ce qui pourrait indiquer une surestimation des usages. Les usages identifiés incluent la recherche d'informations et la rédaction de textes, bien que ces réponses ne puissent pas être cumulées dans les choix proposés.
Analyse Critique
Une analyse plus approfondie révèle que les enseignants peinent à percevoir les bénéfices de l'IA pour l'apprentissage, contrairement aux étudiants. La question de savoir si l'IA améliore les notes sans développer les compétences reste débattue. Est-ce un dopage académique ou une opportunité pour un apprentissage plus efficace ?
Acceptabilité et Éthique
L'enquête révèle que beaucoup d'étudiants jugent acceptable d'utiliser l'IA pour rédiger leurs devoirs, et même un quart des enseignants partagent cet avis. Cela pose des questions éthiques cruciales : copier-coller est-il tricher ? Utiliser l'IA sous supervision ou pour des traductions est-il acceptable ? La réponse n'est pas simple et nécessite un débat ouvert.
Propositions et Solutions
Pour encadrer ces usages, plusieurs solutions sont proposées. Plutôt que d'interdire l'IA, il est suggéré de fixer des règles pour une utilisation responsable. Des innovations pédagogiques peuvent également être explorées, comme la création de situations de concurrence professionnelle ou l'utilisation de détecteurs d'IA.
Conclusion
En conclusion, bien que l'étude présente des limites, elle souligne un besoin urgent de régulation. Une charte institutionnelle pourrait fournir un cadre pour une utilisation éthique.
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...OCTO Technology
Par Nicolas Bordier (Consultant numérique responsable @OCTO Technology) et Alaric Rougnon-Glasson (Sustainable Tech Consultant @OCTO Technology)
Sur un exemple très concret d’audit d’éco-conception de l’outil de bilan carbone C’Bilan développé par ICDC (Caisse des dépôts et consignations) nous allons expliquer en quoi l’ACV (analyse de cycle de vie) a été déterminante pour identifier les pistes d’actions pour réduire jusqu'à 82% de l’empreinte environnementale du service.
Vidéo Youtube : https://www.youtube.com/watch?v=7R8oL2P_DkU
Compte-rendu :
4. Définition
« L'intégration continue est une pratique en
génie logiciel, qui consiste à faire en sorte que
les développeurs intègrent fréquemment
leurs travaux à l'application »
8. Panorama
Référentiel de sources
Automatisation
du build
Des tests et encore des tests
Contrôle de la
qualité du code
Packaging
Indicateurs,
métriques et tableau
de bord
Gestion de
configuration
Gestion des
dépendances
9.
10. Pourquoi ?
Nombreuses taches répétitives et pénibles
Perte de temps à traiter les problèmes de livraison, de configuration
Risque élevé d’erreurs humaines
Conflits récurrents entre Dev et Ops sur les problématiques de déploiement
Besoin d’augmenter la fréquence des livraisons #Agilité
« Les gros changements
créent de gros
problèmes, des petits
changements créent de
petits problèmes »
11. Par quoi commencer ?
Savoir définir et s’approprier collectivement des règles de développement
=> tests unitaires, codage, nommage,…
Toute activité qui n'apparaît qu'au moment d'une livraison intermédiaire et que l'équipe vit comme longue et pénible est
candidate pour être prise en compte au titre de l'intégration continue
Avoir une stratégie de test partagée (développeur, métier, exploitants)
Partager les objectifs de l’intégration continue
Compléter et améliorer en continu le processus d’intégration et de déploiement
Disposer des bonnes compétences pour avancer de manière efficace
Identifier les outils disponibles en fonction du contexte techno
13. Exemple
Définition d’objectifs de qualité :
Couverture de tests de 80%
D’ici à 3 mois, tous les développeurs ont écrit 20 tests unitaires
D’ici à 3 mois, tous les bugs rencontrés amèneront à l’écriture d’un test
Tests automatiques :
Tests unitaires demandés à chaque dev sur tous les nouveaux développements
Tests fonctionnels Bihat sur les fonctionnalités clés
Qualité du code :
Scrutinizer sur tous les projets GitHub PHP
Relecture systématique du code par 2 dévs avant chaque merge
Lancement automatique des tests et de l’analyse de qualité lors de chaque PR (Pull Request)
15. Release X.Y.Z
Service A
Service B
Site web
Fixtures
Deploy
BuildCommit
Deploy
Dépot
Intégration
US/Workitems
Pré-recette
Tests fonctionnels
automatiques
Build
Analyse qualité du code
Test
Recette
Demande de déploiement
Approbation
Deploy
16. Pourquoi ?
• Besoin d’avoir des résultats de tests fonctionnels en temps réel
=> validation US
• Besoin d’avoir un environnement dispo et à jour pour la pré-
recette
• Diminuer le temps perdu par l’équipe OPS à faire des
copier/coller et mise en conformité pour les déploiement sur les
environnements
• Sécuriser le process, éviter les erreurs humaines
• Améliorer la communication DEV-OPS
• Focaliser le temps des devs et des ops sur des tâches utiles
17. Etapes de mises en oeuvre
Obtenir des droits d’admin complet sur un serveur (IC)
Obtenir la confiance des OPS, expliquer la démarche
Mettre en place un build auto au commit sur un serveur de build
Déployer ces build auto sur le moteur de tests fonctionnels
Exécuter une analyse automatique et régulière du code
Etudier l’écosystème réseau / Droits / Domaines / AD / zones DMZ
avec les OPS, étudier leur process de déploiement manuel
Mettre en place un déploiement automatique sur
l’environnement d’intégration
Mettre en place un déploiement automatique à la
demande sur l’environnement de recette
Définir un workflow d’approbation consensuel
Mettre en place un déploiement automatique à
la demande sur l’environnement de production
18. Difficultés rencontrées
• Infrastructure réseau en mouvement
• VSTS en constante et rapide évolution
• Trouver un projet en pause, ou qui tolère une perte d’efficacité pendant la
transition
• Découvrir l’ancien rôle et définir le nouveau rôle du Release Manager
• Rassurer les DBA
19. Prochaines étapes
• Ajout dans le process auto de la seule partie manquante : SQL
Permettre aux DBA de continuer d’assurer leur rôle de validateur des livraisons
Poc terminé, RedGate sur la rampe de lancement
• Passage de TFS à GIT
une branche par US
Pull request forcés sur MASTER & DEV
« Commiteur d’acier » ou relecture de code croisée
• IaC (Infrastructure as Code)
Créer à la volée les environnements à la demande : 1 par branche de code