SlideShare une entreprise Scribd logo

Spécifications de webservices avec un seul outil

A l'occasion de la conférence web2day du 14 juin 2018, Julie Rollin-Moustéou, Senior Product Manager chez Fabernovel Technologies, prend la parole sur les spécifications de webservices avec un seul outil. "Sur tout projet faisant intervenir des webservices (donc presque tous les produits Web, Mobile ou Objets Connectés), Product Owner, QA Team et développeurs utilisent des outils spécifiques pour le test, la documentation et le mock de ces webservices. Comment à partir d'une spécification unique, peut-on documenter, tester et bouchonner une API ?

1  sur  57
Télécharger pour lire hors ligne
DOCUMENTER, TESTER, ET
BOUCHONNER VOS WEBSERVICES
AVEC UN SEUL OUTIL
C’est possible !
Nantes, jeudi 14 juin 2018
2//
Julie ROLLIN-MOUSTÉOU
Formation
Expériences
Développement JAVA chez Amadeus - Conseil en SI chez Deloitte -
Business Development chez Tech4Team (édition de logiciels) -
Product Management chez FABERNOVEL TECHNOLOGIES.
Projets
Senior Product Manager
# Gestion de projet
# Spécifications
fonctionnelles
# Webservices
# Process - Formation
3//
Qui a déjà rencontré un
crash en front dû à une
réponse de webservice
non conforme à la
spécification initiale ?
4//
Qui a déjà entendu parlé
des JSON Schema ?
5//
01 //
Des problèmes récurrents ?
6//
Design UX/UI
IS legacy opening and
integraton
Front end web
Big Data, Smart
Data, Fast Data
Back end web
AI
(chat bots, machine
learning…)
SaaS - PaaS / Cloud IOT
Mobile Apps
(development,
product
management)
API management
Front end web
Architecture
Devops
Publicité

Recommandé

Publier une application mobile en un clic
Publier une application mobile en un clicPublier une application mobile en un clic
Publier une application mobile en un clicFabernovel
 
Vers une nouvelle ère de vos expériences
Vers une nouvelle ère de vos expériencesVers une nouvelle ère de vos expériences
Vers une nouvelle ère de vos expériencesFabernovel
 
Le rôle du développeur front dans la User eXperience
Le rôle du développeur front dans la User eXperienceLe rôle du développeur front dans la User eXperience
Le rôle du développeur front dans la User eXperienceUX REPUBLIC
 
FLUPA UX-Days 2016 - "Quand les militaires se prennent au jeu du Design Sprin...
FLUPA UX-Days 2016 - "Quand les militaires se prennent au jeu du Design Sprin...FLUPA UX-Days 2016 - "Quand les militaires se prennent au jeu du Design Sprin...
FLUPA UX-Days 2016 - "Quand les militaires se prennent au jeu du Design Sprin...Flupa
 
Présentation UX agence Backelite
Présentation UX agence BackelitePrésentation UX agence Backelite
Présentation UX agence BackeliteIdean France
 
Club utilisateur retour_expérience_simplicité_v4
Club utilisateur retour_expérience_simplicité_v4Club utilisateur retour_expérience_simplicité_v4
Club utilisateur retour_expérience_simplicité_v4Simplicité Software
 
Séminaire Smile - Réussir son application Métier
Séminaire Smile - Réussir son application MétierSéminaire Smile - Réussir son application Métier
Séminaire Smile - Réussir son application MétierSmile I.T is open
 
Les applications de News d’aujourd’hui et de demain - Meetup
Les applications de News d’aujourd’hui et de demain - MeetupLes applications de News d’aujourd’hui et de demain - Meetup
Les applications de News d’aujourd’hui et de demain - MeetupThiga
 

Contenu connexe

Tendances

Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !Simplicité Software
 
Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)Gregory Renard
 
Offre migrer vers_flutter
Offre migrer vers_flutterOffre migrer vers_flutter
Offre migrer vers_flutterJulien Saumande
 
UX Republic UX-Radar - juin 2018
UX Republic UX-Radar - juin 2018 UX Republic UX-Radar - juin 2018
UX Republic UX-Radar - juin 2018 romain landsberg
 
Le Rapid Prototyping, ça marche !
Le Rapid Prototyping, ça marche !Le Rapid Prototyping, ça marche !
Le Rapid Prototyping, ça marche !Catherine Verfaillie
 
Erellis- Agence en communication interactive
Erellis- Agence en communication interactiveErellis- Agence en communication interactive
Erellis- Agence en communication interactiveERELLIS
 
Panorama des solutions mobile hybrides
Panorama des solutions mobile hybridesPanorama des solutions mobile hybrides
Panorama des solutions mobile hybridesekino
 
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletSPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletaOS Community
 
Convivialité (UX) pour les affichages et services numériques dans le processu...
Convivialité (UX) pour les affichages et services numériques dans le processu...Convivialité (UX) pour les affichages et services numériques dans le processu...
Convivialité (UX) pour les affichages et services numériques dans le processu...Immacon
 
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...Flupa
 
Star d'UX bordeaux #1 - en UXmmersion
Star d'UX bordeaux #1 - en UXmmersion Star d'UX bordeaux #1 - en UXmmersion
Star d'UX bordeaux #1 - en UXmmersion UX Republic Bordeaux
 
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...Niji
 
Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...
Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...
Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...Remi Rivas
 
Talk Red Hat Entreprise Numerique - Eip Designer - 20160323
Talk Red Hat Entreprise Numerique - Eip Designer - 20160323Talk Red Hat Entreprise Numerique - Eip Designer - 20160323
Talk Red Hat Entreprise Numerique - Eip Designer - 20160323Laurent Broudoux
 
Mutation des usages > Mutation des métiers - UXdays16 - FLUPA
Mutation des usages > Mutation des métiers - UXdays16 - FLUPAMutation des usages > Mutation des métiers - UXdays16 - FLUPA
Mutation des usages > Mutation des métiers - UXdays16 - FLUPAChristophe Cotin Valois
 
Guide de survie en milieu responsive - Paris Web 2013
Guide de survie en milieu responsive - Paris Web 2013Guide de survie en milieu responsive - Paris Web 2013
Guide de survie en milieu responsive - Paris Web 2013Guillaume Abel
 
[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...
[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...
[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...Niji
 

Tendances (20)

Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
Meetup #1 low-code, Pourquoi ? Pour qui ? Comment ? Rencontrons-nous !
 
Le Lean UX avec K2
Le Lean UX avec K2Le Lean UX avec K2
Le Lean UX avec K2
 
Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)
 
Offre migrer vers_flutter
Offre migrer vers_flutterOffre migrer vers_flutter
Offre migrer vers_flutter
 
UX Republic UX-Radar - juin 2018
UX Republic UX-Radar - juin 2018 UX Republic UX-Radar - juin 2018
UX Republic UX-Radar - juin 2018
 
Le Rapid Prototyping, ça marche !
Le Rapid Prototyping, ça marche !Le Rapid Prototyping, ça marche !
Le Rapid Prototyping, ça marche !
 
Erellis- Agence en communication interactive
Erellis- Agence en communication interactiveErellis- Agence en communication interactive
Erellis- Agence en communication interactive
 
Lean UX
Lean UX Lean UX
Lean UX
 
Panorama des solutions mobile hybrides
Panorama des solutions mobile hybridesPanorama des solutions mobile hybrides
Panorama des solutions mobile hybrides
 
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletSPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
 
Convivialité (UX) pour les affichages et services numériques dans le processu...
Convivialité (UX) pour les affichages et services numériques dans le processu...Convivialité (UX) pour les affichages et services numériques dans le processu...
Convivialité (UX) pour les affichages et services numériques dans le processu...
 
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
Atelier FLUPA UX-Days 2016 - "Test utilisateur d'accessibilité, par vous, pou...
 
Star d'UX bordeaux #1 - en UXmmersion
Star d'UX bordeaux #1 - en UXmmersion Star d'UX bordeaux #1 - en UXmmersion
Star d'UX bordeaux #1 - en UXmmersion
 
Sprint0
Sprint0Sprint0
Sprint0
 
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
 
Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...
Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...
Pourquoi l'Expérience Utilisateur va Révolutionner votre Entreprise - Rémi Ri...
 
Talk Red Hat Entreprise Numerique - Eip Designer - 20160323
Talk Red Hat Entreprise Numerique - Eip Designer - 20160323Talk Red Hat Entreprise Numerique - Eip Designer - 20160323
Talk Red Hat Entreprise Numerique - Eip Designer - 20160323
 
Mutation des usages > Mutation des métiers - UXdays16 - FLUPA
Mutation des usages > Mutation des métiers - UXdays16 - FLUPAMutation des usages > Mutation des métiers - UXdays16 - FLUPA
Mutation des usages > Mutation des métiers - UXdays16 - FLUPA
 
Guide de survie en milieu responsive - Paris Web 2013
Guide de survie en milieu responsive - Paris Web 2013Guide de survie en milieu responsive - Paris Web 2013
Guide de survie en milieu responsive - Paris Web 2013
 
[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...
[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...
[Webinar Niji] Performance web & mobile : Automatisez les tests pour ne pas r...
 

Similaire à Spécifications de webservices avec un seul outil

Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouazInes Ouaz
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureNicolas Georgeault
 
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de JonasJava dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de JonasMicrosoft
 
Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012Alexandre Morgaut
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiquesJohan Moreau
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Cédric Leblond
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8davrous
 
Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18
Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18
Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18Vincent Biret
 
2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...
2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...
2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...Modern Workplace Conference Paris
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !VISEO
 
Play framework - Human Talks Grenoble - 12.02.2013
Play framework - Human Talks Grenoble - 12.02.2013Play framework - Human Talks Grenoble - 12.02.2013
Play framework - Human Talks Grenoble - 12.02.2013Xavier NOPRE
 
Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Laurent Guérin
 
JUG Nantes - Telosys Tools - Avril 2014
JUG Nantes - Telosys Tools - Avril 2014 JUG Nantes - Telosys Tools - Avril 2014
JUG Nantes - Telosys Tools - Avril 2014 telosys
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Tugdual Grall
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans DrupalAdyax
 
Octo RefCard test front-end
Octo RefCard test front-endOcto RefCard test front-end
Octo RefCard test front-endClément Dubois
 

Similaire à Spécifications de webservices avec un seul outil (20)

CV REBAI Hamida
CV REBAI HamidaCV REBAI Hamida
CV REBAI Hamida
 
Intégration Continue et PHP
Intégration Continue et PHPIntégration Continue et PHP
Intégration Continue et PHP
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouaz
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
 
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de JonasJava dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de Jonas
 
Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012Carnet de Route du Développeur - ENSIMAG 2012
Carnet de Route du Développeur - ENSIMAG 2012
 
Production logicielle, outils et pratiques
Production logicielle, outils et pratiquesProduction logicielle, outils et pratiques
Production logicielle, outils et pratiques
 
HTML5 en projet
HTML5 en projetHTML5 en projet
HTML5 en projet
 
Do you speak technique ?
Do you speak technique ?Do you speak technique ?
Do you speak technique ?
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !
 
L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8L'histoire d'html5 pour les développeurs windows phone 8
L'histoire d'html5 pour les développeurs windows phone 8
 
Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18
Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18
Introduction au #MicrosoftGraph demarrez vite et livrez rapidemment #MWCP18
 
2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...
2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...
2018-10-17 J1 7D - Introduction au Microsoft Graph démarrez vite et livrez ra...
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Play framework - Human Talks Grenoble - 12.02.2013
Play framework - Human Talks Grenoble - 12.02.2013Play framework - Human Talks Grenoble - 12.02.2013
Play framework - Human Talks Grenoble - 12.02.2013
 
Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2Telosys tools jug-nantes-2014-v1.2
Telosys tools jug-nantes-2014-v1.2
 
JUG Nantes - Telosys Tools - Avril 2014
JUG Nantes - Telosys Tools - Avril 2014 JUG Nantes - Telosys Tools - Avril 2014
JUG Nantes - Telosys Tools - Avril 2014
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans Drupal
 
Octo RefCard test front-end
Octo RefCard test front-endOcto RefCard test front-end
Octo RefCard test front-end
 

Plus de Fabernovel

GAFAnomics Tesla Volume 2 - Is Tesla the disruptor we need?
GAFAnomics Tesla Volume 2 -  Is Tesla the disruptor we need?GAFAnomics Tesla Volume 2 -  Is Tesla the disruptor we need?
GAFAnomics Tesla Volume 2 - Is Tesla the disruptor we need?Fabernovel
 
Lancement de ReCOVery - Sortie de crise - Les nouveaux raisonnables
Lancement de ReCOVery - Sortie de crise - Les nouveaux raisonnablesLancement de ReCOVery - Sortie de crise - Les nouveaux raisonnables
Lancement de ReCOVery - Sortie de crise - Les nouveaux raisonnablesFabernovel
 
[Extract] Study - Talent KPIs
[Extract] Study - Talent KPIs [Extract] Study - Talent KPIs
[Extract] Study - Talent KPIs Fabernovel
 
Fabernovel analyse les tendances publicitaires du super bowl de 2020
Fabernovel analyse les tendances publicitaires du super bowl de 2020Fabernovel analyse les tendances publicitaires du super bowl de 2020
Fabernovel analyse les tendances publicitaires du super bowl de 2020Fabernovel
 
Amazon is eating the world
Amazon is eating the worldAmazon is eating the world
Amazon is eating the worldFabernovel
 
Gafanomics - Quarterly - Episode 4 (Q4FY19)
Gafanomics - Quarterly - Episode 4 (Q4FY19) Gafanomics - Quarterly - Episode 4 (Q4FY19)
Gafanomics - Quarterly - Episode 4 (Q4FY19) Fabernovel
 
Fabernovel study on SoftBank
Fabernovel study on SoftBankFabernovel study on SoftBank
Fabernovel study on SoftBankFabernovel
 
The new retail: apocalypse or new era?
The new retail: apocalypse or new era?The new retail: apocalypse or new era?
The new retail: apocalypse or new era?Fabernovel
 
L’aventure iOS - tvOS myCANAL
L’aventure iOS - tvOS myCANALL’aventure iOS - tvOS myCANAL
L’aventure iOS - tvOS myCANALFabernovel
 
WeChat Social Ads Playbook
WeChat Social Ads PlaybookWeChat Social Ads Playbook
WeChat Social Ads PlaybookFabernovel
 
[Extract] Study The We Company: is real estate a disruptable industry?
[Extract] Study The We Company: is real estate a disruptable industry?[Extract] Study The We Company: is real estate a disruptable industry?
[Extract] Study The We Company: is real estate a disruptable industry?Fabernovel
 
Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...
Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...
Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...Fabernovel
 
Study Ardian & Fabernovel - The Augmented Infrastructure: Digital for climate?
Study Ardian & Fabernovel - The Augmented Infrastructure:  Digital for climate?Study Ardian & Fabernovel - The Augmented Infrastructure:  Digital for climate?
Study Ardian & Fabernovel - The Augmented Infrastructure: Digital for climate?Fabernovel
 
Services urbains : faut il vraiment penser utilisateur ?
Services urbains : faut il vraiment penser utilisateur ?Services urbains : faut il vraiment penser utilisateur ?
Services urbains : faut il vraiment penser utilisateur ?Fabernovel
 
[Fabernovel study] New economy, new KPI: the customer era
[Fabernovel study] New economy, new KPI:  the customer era[Fabernovel study] New economy, new KPI:  the customer era
[Fabernovel study] New economy, new KPI: the customer eraFabernovel
 
Gafanomics - The Quarterly - Episode 2 (Q2FY19)
Gafanomics - The Quarterly - Episode 2 (Q2FY19)Gafanomics - The Quarterly - Episode 2 (Q2FY19)
Gafanomics - The Quarterly - Episode 2 (Q2FY19)Fabernovel
 
The Future of Corporate Learning: from Training to Learning Experience
The Future of Corporate Learning: from Training to Learning ExperienceThe Future of Corporate Learning: from Training to Learning Experience
The Future of Corporate Learning: from Training to Learning ExperienceFabernovel
 
Gafanomics - The Quarterly - Episode 1 (Q1FY19)
Gafanomics - The Quarterly - Episode 1 (Q1FY19)Gafanomics - The Quarterly - Episode 1 (Q1FY19)
Gafanomics - The Quarterly - Episode 1 (Q1FY19)Fabernovel
 
Slack, the future workplace
Slack, the future workplaceSlack, the future workplace
Slack, the future workplaceFabernovel
 
Arbre à palabres #1 - Do things that don’t scale
Arbre à palabres #1 - Do things that don’t scaleArbre à palabres #1 - Do things that don’t scale
Arbre à palabres #1 - Do things that don’t scaleFabernovel
 

Plus de Fabernovel (20)

GAFAnomics Tesla Volume 2 - Is Tesla the disruptor we need?
GAFAnomics Tesla Volume 2 -  Is Tesla the disruptor we need?GAFAnomics Tesla Volume 2 -  Is Tesla the disruptor we need?
GAFAnomics Tesla Volume 2 - Is Tesla the disruptor we need?
 
Lancement de ReCOVery - Sortie de crise - Les nouveaux raisonnables
Lancement de ReCOVery - Sortie de crise - Les nouveaux raisonnablesLancement de ReCOVery - Sortie de crise - Les nouveaux raisonnables
Lancement de ReCOVery - Sortie de crise - Les nouveaux raisonnables
 
[Extract] Study - Talent KPIs
[Extract] Study - Talent KPIs [Extract] Study - Talent KPIs
[Extract] Study - Talent KPIs
 
Fabernovel analyse les tendances publicitaires du super bowl de 2020
Fabernovel analyse les tendances publicitaires du super bowl de 2020Fabernovel analyse les tendances publicitaires du super bowl de 2020
Fabernovel analyse les tendances publicitaires du super bowl de 2020
 
Amazon is eating the world
Amazon is eating the worldAmazon is eating the world
Amazon is eating the world
 
Gafanomics - Quarterly - Episode 4 (Q4FY19)
Gafanomics - Quarterly - Episode 4 (Q4FY19) Gafanomics - Quarterly - Episode 4 (Q4FY19)
Gafanomics - Quarterly - Episode 4 (Q4FY19)
 
Fabernovel study on SoftBank
Fabernovel study on SoftBankFabernovel study on SoftBank
Fabernovel study on SoftBank
 
The new retail: apocalypse or new era?
The new retail: apocalypse or new era?The new retail: apocalypse or new era?
The new retail: apocalypse or new era?
 
L’aventure iOS - tvOS myCANAL
L’aventure iOS - tvOS myCANALL’aventure iOS - tvOS myCANAL
L’aventure iOS - tvOS myCANAL
 
WeChat Social Ads Playbook
WeChat Social Ads PlaybookWeChat Social Ads Playbook
WeChat Social Ads Playbook
 
[Extract] Study The We Company: is real estate a disruptable industry?
[Extract] Study The We Company: is real estate a disruptable industry?[Extract] Study The We Company: is real estate a disruptable industry?
[Extract] Study The We Company: is real estate a disruptable industry?
 
Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...
Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...
Insight Report by Fabernovel - The Hidden consumption force of Overseas Chine...
 
Study Ardian & Fabernovel - The Augmented Infrastructure: Digital for climate?
Study Ardian & Fabernovel - The Augmented Infrastructure:  Digital for climate?Study Ardian & Fabernovel - The Augmented Infrastructure:  Digital for climate?
Study Ardian & Fabernovel - The Augmented Infrastructure: Digital for climate?
 
Services urbains : faut il vraiment penser utilisateur ?
Services urbains : faut il vraiment penser utilisateur ?Services urbains : faut il vraiment penser utilisateur ?
Services urbains : faut il vraiment penser utilisateur ?
 
[Fabernovel study] New economy, new KPI: the customer era
[Fabernovel study] New economy, new KPI:  the customer era[Fabernovel study] New economy, new KPI:  the customer era
[Fabernovel study] New economy, new KPI: the customer era
 
Gafanomics - The Quarterly - Episode 2 (Q2FY19)
Gafanomics - The Quarterly - Episode 2 (Q2FY19)Gafanomics - The Quarterly - Episode 2 (Q2FY19)
Gafanomics - The Quarterly - Episode 2 (Q2FY19)
 
The Future of Corporate Learning: from Training to Learning Experience
The Future of Corporate Learning: from Training to Learning ExperienceThe Future of Corporate Learning: from Training to Learning Experience
The Future of Corporate Learning: from Training to Learning Experience
 
Gafanomics - The Quarterly - Episode 1 (Q1FY19)
Gafanomics - The Quarterly - Episode 1 (Q1FY19)Gafanomics - The Quarterly - Episode 1 (Q1FY19)
Gafanomics - The Quarterly - Episode 1 (Q1FY19)
 
Slack, the future workplace
Slack, the future workplaceSlack, the future workplace
Slack, the future workplace
 
Arbre à palabres #1 - Do things that don’t scale
Arbre à palabres #1 - Do things that don’t scaleArbre à palabres #1 - Do things that don’t scale
Arbre à palabres #1 - Do things that don’t scale
 

Spécifications de webservices avec un seul outil

  • 1. DOCUMENTER, TESTER, ET BOUCHONNER VOS WEBSERVICES AVEC UN SEUL OUTIL C’est possible ! Nantes, jeudi 14 juin 2018
  • 2. 2// Julie ROLLIN-MOUSTÉOU Formation Expériences Développement JAVA chez Amadeus - Conseil en SI chez Deloitte - Business Development chez Tech4Team (édition de logiciels) - Product Management chez FABERNOVEL TECHNOLOGIES. Projets Senior Product Manager # Gestion de projet # Spécifications fonctionnelles # Webservices # Process - Formation
  • 3. 3// Qui a déjà rencontré un crash en front dû à une réponse de webservice non conforme à la spécification initiale ?
  • 4. 4// Qui a déjà entendu parlé des JSON Schema ?
  • 5. 5// 01 // Des problèmes récurrents ?
  • 6. 6// Design UX/UI IS legacy opening and integraton Front end web Big Data, Smart Data, Fast Data Back end web AI (chat bots, machine learning…) SaaS - PaaS / Cloud IOT Mobile Apps (development, product management) API management Front end web Architecture Devops
  • 7. 7// Clients, Product/Project Managers et Développeurs Quand un client rencontre un crash sur son application mobile... Mon application a crashé !!!
  • 8. 8// Clients, Product/Project Managers et Développeurs En tant qu’interlocuteur opérationnel privilégié du client, le Project Manager cherche la source du problème Nous investiguons la source du problème. Mon application a crashé !!!
  • 9. 9// Clients, Product/Project Managers et Développeurs Le Project Manager regarde les logs du crash et identifie que le crash se produit lors d’un appel au webservice D’où cela peut-il bien venir ? Regardons les logs... Cela semble lié à un appel côté webservice ! Mon application a crashé !!! Nous investiguons la source du problème.
  • 10. 10// Clients, Product/Project Managers et Développeurs Le Project Manager demande à son développeur la source exacte du problème et comment il peut régler ce crash ! Tu pourrais m’en dire plus ? Et tu pourrais corriger le souci stp ? J’ai remarqué que le crash se produisait lorsqu’on faisait cet appel… C’est assez critique pour ma cliente...
  • 11. 11// Clients, Product/Project Managers et Développeurs Le développeur donne son diagnostic... yes je vois tout à fait pourquoi l’application crash à cet endroit précis...
  • 12. 12// Clients, Product/Project Managers et Développeurs Le développeur donne son diagnostic : la spécification webservice initiale ne correspond pas à la réponse actuelle ! … c’est parce que la réponse actuelle que je reçois du webservice n’est pas la même que celle contenue dans les spécifications utilisées au moment du développement !
  • 13. 13// Clients, Product/Project Managers et Développeurs Chacun se demande quelle est la source de vérité… ??? À quelles spécifications faisons-nous référence ? À quelles spécifications faisons-nous référence ? À quelles spécifications faisons-nous référence ? C’est la version 1.5.0 envoyée début Avril non ? La dernière que j’ai reçue c’est la version 1.9.8 ! Moi j’avais la version 1.9.7...
  • 14. 14// Hier : différents outils pour documenter, tester ou bouchonner des webservices #2 TESTER #1 DOCUMENTER #3 BOUCHONNER
  • 15. 15// Hier : différents outils pour documenter, tester ou bouchonner des webservices DOCUMENTER (e.g. Word, Swagger)
  • 16. 16// Hier : différents outils pour documenter, tester ou bouchonner des webservices DOCUMENTER (e.g. Word, Swagger) TESTER (e.g. POSTMan)
  • 17. 17// Hier : différents outils pour documenter, tester ou bouchonner des webservices BOUCHONNER (e.g. WireMock) DOCUMENTER (e.g. Word, Swagger) TESTER (e.g. POSTMan)
  • 18. 18// Hier : différents outils pour documenter, tester ou bouchonner des webservices BOUCHONNER (e.g. WireMock) DOCUMENTER (e.g. Word, Swagger) TESTER (e.g. POSTMan)
  • 20. 20// Avoir une seule et unique source de vérité ! Quel est notre but ?
  • 21. 21// Trois options possibles Trouver un outil du marché (POSTMan, Restlet intègrent de plus en plus de features !) 01
  • 22. 22// Trois options possibles Trouver un outil du marché (POSTMan, Restlet intègrent de plus en plus de features !) Synchroniser différents outils Forte dépendance aux autorisations d’accès pour chaque outil 01 02
  • 23. 23// Trois options possibles Trouver un outil du marché (POSTMan, Restlet intègrent de plus en plus de features !) Synchroniser différents outils Forte dépendance aux autorisations d’accès pour chaque outil Construire un nouvel outil 01 02 03
  • 24. 24// Trois options possibles Trouver un outil du marché (POSTMan, Restlet intègrent de plus en plus de features !) Synchroniser différents outils Forte dépendance aux autorisations d’accès pour chaque outil Construire un nouvel outil 01 02 03
  • 25. 25// 02 // Comment spécifier un unique JSON ?
  • 26. 26// JSON { "user": { "id": 1200, "firstname": "Arthur", "lastname": "Martin", "age": 17 } } Exemple
  • 27. 27// JSON Schema { "title": "user", "type": "object", "properties": { "id": { "type": "integer" }, "firstname": { "type": "string" }, "lastname": { "type": "string" }, "age": { "type": "integer", "minimum": 0 } } } Représente la structure d’un JSON spécifique
  • 28. 28// JSON Schema À quoi sert un JSON Schema ? DOCUMENTER JSON Schema TESTER BOUCHONNER
  • 29. 29// 03 // Comment spécifier toute une API avec des JSON Schemas ?
  • 30. 30// Ressources Exemple : un utilisateur User
  • 31. 31// Attributs d’une ressource Exemple : un utilisateur { "user": { "id": 1200, "firstname": "Arthur", "lastname": "Martin", "age": 17 } } Exemple de JSON User id firstname lastname age
  • 32. 32// LIRE les données d’un utilisateur GET /users/:id Routes Exemple : un utilisateur CRÉER un nouvel utilisateur POST /users METTRE À JOUR les données d’un utilisateur PUT /users/:id SUPPRIMER les données d’un utilisateur DELETE /users/:id
  • 33. 33// Documentation d’un webservice Tout un projet ! PROJET RESSOURCES ATTRIBUTS ROUTES
  • 34. 34// Documentation d’un webservice Tout un projet ! PROJET RESSOURCES ATTRIBUTS ROUTES REQUÊTES RÉPONSES
  • 35. 35// Représentations de ressource Exemple : CRÉER un nouvel utilisateur User firstname lastname
  • 36. 36// Représentations de ressource Exemple : CRÉER un nouvel utilisateur { "title": "user", "type": "object", "properties": { "firstname": { "type": "string" }, "lastname": { "type": "string" }, "required": ["firstname", "lastname"] } } User firstname lastname POST /users - Corps de la requête
  • 37. 37// Représentations de ressource Exemple - LIRE les données d’un utilisateur { "title": "user", "type": "object", "properties": { "id": { "type": "integer" }, "firstname": { "type": "string" }, "lastname": { "type": "string" }, "age": { "type": "integer", "minimum": 0 }, "required": [“id”,"firstname", "lastname"] } } User id firstname lastname age GET /users/:id - Corps de la réponse
  • 38. 38// Documentation d’un webservice L’ensemble des requêtes et des réponses peuvent être décrites par des représentations de ressource. REPRÉSENTATIONS DE RESSOURCES PROJET RESSOURCES ATTRIBUTS ROUTES REQUÊTES RÉPONSES
  • 39. 39// Spécifications d’un webservice au global TOUTES les routes du projet utilisent des représentations de ressource
  • 40. 40// Spécifications d’un webservice au global TOUTES les routes du projet utilisent des représentations de ressource
  • 41. 41// Spécifications d’un webservice au global TOUTES les routes du projet utilisent des représentations de ressource {defaultUser} {userCreation} {userUpdate} {defaultHouse} {userHouseUpdate} ... {defaultCar} {userCarUpdate} ... {defaultJob} {userJobUpdate} ...
  • 42. 42// Documentation d’un webservice Tout un projet spécifié grâce aux représentations de ses ressources ! Collection de JSON SCHEMA REPRÉSENTATIONS DE RESSOURCES PROJET RESSOURCES ATTRIBUTS ROUTES REQUÊTES RÉPONSES
  • 43. 43// 04 // Pourquoi le JSON Schema est si peu utilisé ?
  • 44. 44// Il peut s’avérer très complexe à écrire...
  • 45. 45// La clef du succès est dans l’ombre ! ABSTRACTION DES JSON SCHEMA INTERFACE UTILISATEUR SCHÉMA MANAGEMENT
  • 47. 47// Clients et Product/Project managers Perte de temps infinie en tentant de reproduire le cas qui a causé le crash... Mon application crash encore et toujours... Je regarde ! OK je suis partie pour des heures de tests pour tenter de reproduire le cas qui a causé le crash...
  • 48. 48// Des tests facilités grâce à au proxy intégré dans la solution Client ServeurProxy
  • 49. 49// Product/Project managers et Développeurs Perte de temps infinie dans la mise à jour de la documentation et des bouchons des webservices... Pourrais-tu mettre à jour les spécifications webservices du coup stp ? Bien sûr... Je dois modifier tout un tas de fichiers, des bouchons et de la documentation... Quel cauchemar !
  • 50. 50// Une documentation à jour et téléchargeable
  • 51. 51// BouchonClient Des bouchons de webservices mis à jour quand la documentation est modifiée
  • 52. 52// Clients, Products/Project managers et Développeurs Il n’y a plus de souci - gain de temps effectif pour tout le monde ! Mes spécifications sont toujours à jour Je peux savoir rapidement quand la documentation est obsolète Mettre des spécifications et des bouchons à jour est devenu beaucoup plus simple !
  • 54. 54//
  • 56. 56// https://github.com/applidium/pericles Btw : on recrute !!!! https://careers.fabernovel.com/
  • 57. Merci. 57// Julie ROLLIN-MOUSTÉOU Senior Product Manager @FABERNOVELTECHNOLOGIES julie.rollin@fabernovel.com https://www.linkedin.com/in/julie-rollin-mousteou/ @JulieRolMous