devops - qualité, performance et télémétrie avec visual studio 2015
TRANSCRIPT
tech.days 2015#mstechdaysSESSION
Philippe PUSCHMANNArchitecte SolutionCTO OfficeAvanade France
Cédric GOUGEArchitecte Solution
Application IntegrationAvanade France
Sergio VILLEN GALERASCRUM Developer
Application IntegrationAvanade France
tech.days 2015#mstechdaysSESSION
AvanadeLeader mondial dans l’intégration des technologies Microsoft, présent dans 24 pays
La mission d’Avanade consiste à aider les entreprises à optimiser leurs investissements informatiques et à développer des solutions complètes, génératrices de bénéfices concrets, autour des technologies Microsoft.
tech.days 2015#mstechdaysSESSION
Scrum.org And Avanade
Improve the Profession of Software Development
The Agile ManifestoScrum Values
agility transparency
tech.days 2015#mstechdaysSESSION
AGENDA
DEVOPS: Quoi, Quand et Pourquoi?Le Problème
Agile Manifesto
SCRUM
[DevOps] Une première définition
[DevOps] Les outils
Clean Coding
/praɡˈmatɪk/ Architecture
Démo
tech.days 2015#mstechdaysSESSION
DEVOPS: Quoi, Quand et Pourquoi?Le Problème
Agile Manifesto
SCRUM
[DevOps] Une première définition
[DevOps] Les outils
Clean Coding
/praɡˈmatɪk/ Architecture
Démo
AGENDA
tech.days 2015#mstechdaysSESSION
Always
7%
Seldom
19%
Sometimes
16%
Often
13%
Never
45%
Functionalities Usage Statistics
Principales Causes d’échecs
Time to Market
toujours plus agressif
Métier du client et technologies
utilisées toujours plus complexes
Manque de réactivité
face au changement
1
2
3
Manque d’innovation, Dette
technique non remboursable4
PROJETS INFORMATIQUES : LA SITUATION
Gaspillage de Ressources (64%)
Forte part de livrables sans valeur métier
au détriment de livrables à haute valeur
ajoutée
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%Standish Group Chaos Report
Successful Challenged Failed
tech.days 2015#mstechdaysSESSION
Quelles sont les fondations de l’agilité?
Agile est un terme parapluie qui englobent un certain
nombre de méthodes agiles dont Scrum au travers d’une
approche incrémentale, itérative, flexible et hautement
collaborative, cette approche repose sur 12 principes qui
constituent le Manifest Agile
tech.days 2015#mstechdaysSESSION
Le Framework Scrum Le Process Scrum
Les Valeurs de Scrum Les Piliers de Scrum
tech.days 2015#mstechdaysSESSION
Qu’est ce que DevOps
DevOps est un nouveau terme qui émerge de la collision entre deux nouvelles
tendances majeures : La première est connu sous le terme « Agile System
Administration » qui consiste à appliquer une approche Agile et/ou Lean au
métier des opérations, et la seconde est une meilleure compréhension de la
valeur d’une collaboration entre les équipes Developpement et d’Opérations
tout au long du cycle de vie du développement
ProductionDeveloppementCollaboration
BACKLOG
PBIIs
Obstacles connus
Planifier
Developper + Tester
Monitor + Learn
Détecter rapidement et
traiter les incidents de
Production
MTTD
Des informations
actionnables et contextuelles
pour résoudre les incidents
MTTR
Prioriser et valider les
investissements à partir de
données réelles
Continuous learning
Release
Outils & Processus
Collaboration
1. Collecte de Télémétrie sur
chaque tiers: application Mobile,
server d’applications, et
navigateur web
2. Les données de télémétrie sont
transmises à Application Insights
service pour processing &
stockage
3. Vue 360° de l’application sur la
disponibilité, la performance,
l’usage, les erreurs etc.
Application
Insights
Application Insights pour MTTD
tech.days 2015#mstechdaysSESSION
DEVOPS: Quoi, Quand et Pourquoi?Le Problème
Agile Manifesto
SCRUM
[DevOps] Une première définition
[DevOps] Les outils
Clean Coding
Démo
/praɡˈmatɪk/ Architecture
AGENDA
tech.days 2015#mstechdaysSESSION
CompetingConsumers
Pipes and Filter
Priority QueuesQueue based load-leveling
tech.days 2015#mstechdaysSESSION
https://msdn.microsoft.com/en-us/library/hh680934%28v=pandp.50%29.aspx
https://github.com/michael-wolfenden/Polly
Circuit BreakerRetry
tech.days 2015#mstechdaysSESSION
Cache-asside
Circuit Breaker
Compensation
Transaction
Competing
Consumers
Compute
Resource
Consolidation
CQRS –
Command Query
Responsability
Segregation
Event Sourcing External
Configuration
Federated
Identity
Gatekeeper
Health endpoint
monitoring
Index Table
tech.days 2015#mstechdaysSESSION
Leader Election
Materialized
Veiws
Pipes and Filter Priority Queues
Queue based
load-leveling
Retry
Runtime
reconfiguration
Scheduler
Agent
Supervisor
Sharding
Static Content
Hosting
Throttling
Valet Key
tech.days 2015#mstechdaysSESSION
DEVOPS: Quoi, Quand et Pourquoi?Le Problème
Agile Manifesto
SCRUM
[DevOps] Une première définition
[DevOps] Les outils
/praɡˈmatɪk/ Architecture
Clean Coding
AGENDA
Démo
tech.days 2015#mstechdaysSESSION
Pourquoi ‘bad code’?
Parce que le bad code fait
beaucoup des choses, et parfois il
les fait bien.
Quoi?
Le code qu’on pense améliorer
demain
tech.days 2015#mstechdaysSESSION
Pourquoi ‘clean code’?
Parce que le clean code fait une
chose et il le fait bien.
Quoi?
Elégant
Efficient
Sans dépendances
tech.days 2015#mstechdaysSESSION
Fast: Les tests doivent être rapides.
Independent: Les tests doivent être indépendants les un
de les autres.
Repeatable: Les tests doivent pouvoir être re-exécutés
dans n’importe quel environnement.
Self-Validate: Les tests doivent s’auto valider (asserts).
Timely: Les tests doivent être implémentés avant que le
code soit capable de les passe.
tech.days 2015#mstechdaysSESSION
DEVOPS: Quoi, Quand et Pourquoi?Le Problème
Agile Manifesto
SCRUM
[DevOps] Une première définition
[DevOps] Les outils
Clean Coding
/praɡˈmatɪk/ Architecture
Démo
AGENDA