xebiconfr 15 - développer dans le cloud

36
Développer dans le Cloud #Multiplateforme #Cloud #Agilité #Devops #Traçabilité #Disponibilité #Accessibilité #OpenSource #Déploiement #Monitoring

Upload: xebia-france

Post on 07-Apr-2017

420 views

Category:

Software


0 download

TRANSCRIPT

Développer dans le Cloud #Multiplateforme #Cloud #Agilité #Devops #Traçabilité #Disponibilité

#Accessibilité #OpenSource #Déploiement #Monitoring

•  D’où l’on vient •  Les défis des usines logicielles modernes •  Et c’est pas fini… vous avez dit DevOps ?

Agenda

•  Le Cloud est une alternative pour héberger vos développements

•  Le Cloud est une alternative pour héberger vos applications

•  Une usine pour toutes les écrire

Objectifs de cette présentation

D’où l’on vient

Quand j’ai commencé à bosser, les outils c’étaient

C’est-à-dire…

Je reçois les specs

Je récupère le code que

je peux

Je code J’archive en croisant les

doigts

On file le binaire à

l’infra

On part en week end \o/

•  Chacun est dans son coin •  On ne sait pas ce qu’on livre et à quoi cela va

servir •  Beaucoup de tâches qui pourrait être

automatisées (mais ne le faisait pas ou alors chacun dans son coin)

Qu’est ce que l’on remarque

Et il se passait ça :

On a créé des « usines logicielles » ! •  Très rudimentaires : on sait tracer le source

et construire des binaires •  Les devs ont maintenant leurs outils (eux) •  Initiatives individuelles des équipes •  Aux ops de s’adapter

Ce qu’on a fait :

Avantages & inconvénients

•  On installe, ça marche •  On sait tracer le code dans les

binaires •  Les devs sont contents

•  On y touche pas de peur que cela ne marche plus

•  On ne trace pas ou peu le besoin

•  Le métier, les DBA et les OPS ne veulent pas en entendre parler

•  Chaque équipe choisit la sienne •  Cela devient petit à petit une

contrainte •  Pas toujours lié à l’infra

•  Le métier s’en mêle,

•  Les Kanbans apparaissent un peu partout,

•  La qualité logicielle n’est plus un sujet de discussion, il

faut maintenant mesurer pour s’améliorer,

•  On doit livrer plus vite (c’est ce que les consultants nous

ont vendu),

Hey les gars, on est agile maintenant !

•  Gestion agile,

•  Traçabilité (un besoin à un code à un binaire),

•  Intégration des tests dans le cycle de développement,

•  On isole par fonctionnalité et par métier (les fameuses

« feature teams »)

Donc on a intégré le métier dans le développement

Nos processus (= « les gens ne savent pas encore travailler ensemble ») •  On est dans l’urgence (on verra plus tard) •  C’est pas comme ça que l’on fait à la Cogip •  Le manifeste agile : c’est bien pour mettre au mur

Mais qu’est-ce qui nous freine finalement ? 1/…

Nos outils !

•  On n’a pas deux fois les mêmes,

•  On ne sait pas la faire évoluer,

•  Ça coute cher et on a personne pour gérer,

•  A chaque équipe ses outils, ses mesures.

Mais qu’est-ce qui nous freine finalement ? 2/…

Nous !

•  On n’est pas prêt

•  Le coût d’entrée est trop cher si cela ne convient pas

•  Il faut former les équipes

•  On ne sait pas comment commencer

Mais qu’est-ce qui nous freine finalement ? 3/…

•  Ceux qui s’en sortent se sont organisés

•  Outils propices à la collaboration § GitHub

§ Uservoice

§  Trello

§  Plusieurs outils mais des outils qui se combinent

En Open source, ils y arrivent bien

Les usines logicielles modernes

•  Traçabilité •  Multi technos •  Évolutives •  Simples à maintenir

Qu’attendre d’elles ?

Besoin

Code

Build

Dépl.

Bug

Test

Traçabilité

•  Java, .Net, Node, C++,… •  Dénominateur commun : Git •  Moteur de build multiplateforme (.Net ou

Node.js) §  Windows §  Linux (même sous Raspberry PI) §  iOS

Agnostiques

•  Éviter les produits en fin de vie

•  Les éditeurs qui proposent une version Cloud sont ceux

qui feront évoluer le plus vite leurs outils

(GitHub,MS,Atlassian, etc.)

•  Passer facilement d’une équipe à plusieurs

Évolutives

•  On ne doit pas avoir peur d’installer une nouvelle

version,

•  Passer la barrière psychologique de la mise à jour,

•  Avoir les bonnes personnes,

•  Ne pas sous-estimer l’évolution (ou la non-évolution) des

postes de travail.

Maintenance

•  On est pas l’hébergeur,

•  On a pas à gérer la QOS ou le SLA,

•  On a pas à gérer le stockage,

•  Accessible de partout,

•  Mise à jour au fil de l’eau.

Avantage d’avoir son usine dans le Cloud

La version Cloud de Team Foundation Server

•  Pure SaaS,

•  Mise à jour toutes les 3 semaines,

•  Toujours en avance sur la version On Premises (TFS).

Visual Studio Online (vs TFS)

Faisons les présentations Visual Studio Online

On ne sait pas efficacement répondre à ces questions :

•  Que s’est-il passé sur ce fichier, cette méthode ?

•  Où est-elle utilisée ?

•  Est-ce que les tests relatifs à ma méthode passent ?

Et les dev dans tout ça ?

Aperçu de l’IDE du futur Visual Studio 2015

Vous avez dit DevOps ?

Build Depl. Mesures

Après le build, il reste encore du chemin

•  Infrastructure à la demande/élastiques,

•  Multi OS,

•  Pilotage,

•  « Infra as Code ».

Avantages du cloud

Infra as Code Powershell DSC

•  Nos applications : utilisées « world wide »,

•  Nos serveurs : rarement à plusieurs endroits,

•  Infra pas adapté à un trafic dense,

•  Fabriquer ses outils de monitoring : généralement une

fausse bonne idée.

Monitoring

Monitoring applicatif Application Insight

•  Regarder ce que vous avez déjà

•  Trouver une équipe pilote

•  Commencer par les environnements de dev

•  Accumuler des données pour estimer les coûts

•  Former vos équipes

Comment choisir / comment avancer ?

Merci