33
@ DevOps@Work 2016 #DOAW16 @ DevOps@Work 2016 #DOAW16 getlatestversion Agile meets IoT Felice Pescatore - Giuseppe Famiglietti agileiot.org @agileiotdoto rg

AgileIot: Agile meets IoT

Embed Size (px)

Citation preview

Page 1: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16@DevOps@Work 2016#DOAW16

getlatestversion

Agile meets IoT

Felice Pescatore - Giuseppe Famiglietti

agileiot.org@agileiotdotorg

Page 2: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

AgileIoT Crew

&

Page 3: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

The Internet of ThingsIoT Project GovernanceAgileIoT Big Picture

AgileIoT TeamArtefattiCerimonieMetriche

Risorse e Riferimenti

Agenda

Page 4: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

The Internet of Thigs

Internet of Things (IoT) sottende la possibilità di connettere tra di loro oggetti e luoghi concreti, sfruttando le infrastrutture di rete esistenti

IoT Solutions

Diffusione

Ambiti Multidisciplinari

La linfa costituente

Page 5: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Diffusione

Gartner stima che entro il 2020 nel mondo esisteranno 26 miliardi di dispositivi connessi in Rete.

Nel 2025 la Rete verrà completamente subordinata all’IoT, secondo la ricerca del Pew Research Center.

Page 6: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Ambiti Multidisciplinari

Smart Car

Smart Home

Smart City

Page 7: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

La linfa costituente

Smart Thing (la “T” di IoT), gli oggetti intelligenti sempre connessi

Cloud (la “I”, Internet, di IoT), che si occupa dell’elaborazione, dell’analisi e della persistenza delle informazioni.

Page 8: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

IoT Project Governance IoT Project Governance

Filosofia

PrincipiAgileIoT mette al centro il bisogno del cliente, armonizzando

competenze, approcci e tecnologie differenti, grazie alla definizione

di un main-set comune di strumenti che rendono economicamente

sostenibile la creazione di una soluzione Internet of Things. Pratiche

Page 9: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Filosofia

Bottega Rinascimentale

La Filosofia di AgileIoT è quella della bottega rinascimentale, ovvero la cellula in cui veniva fatto tutto quanto necessario alla realizzazione di una nuova opera: dalla progettazione alla commercializzazione, passando per la formazione e la produzione.

I membri del team sono spinti a comportarsi come gli artigiani rinascimentali che con estrema abilità utilizzavano materiali, tecniche e strumenti diversi per soddisfare il cliente che aveva commissionato l’opera.

Page 10: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Principi

It’s not software, hardware or service: it’s about jobs to be done!

Think less and do it fast!

Simple is better!Più semplice è la soluzione che si realizza, maggiori saranno

le possibilità di farla evolvere in funzione delle esigenze degli stakeholder.

Non si tratta di completare un progetto software o hardware, bensì di realizzare una soluzione intelligente che sfrutta

entrambi per risolvere un’esigenza in modo efficiente ed efficace.

Ridurre all’essenziale il tempo dedicato alla fase di analisi in favore di un rapido avvio delle attività di sviluppo della

soluzione.

Page 11: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Pratiche

Cloud

Energy

Security

Oltre a sfruttare le pratiche tipiche del mondo Agile, AgileIoT introduce la CES Oriented practice (Cloud, Energy e Security oriented practice), ponendo al centro delle attività gli aspetti di adattabilità e scalabilità, unitamente a quelli di sicurezza ed energia.

AgileIoT pone sin dalle prima fasi l’accento sugli elementi CES che devono essere esplicitamente analizzati al fine di definirne i criteri di riferimento e i livelli di qualità a supporto delle successive fasi di engineering e deployment.

Page 12: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

AgileIoT Big Picture AgileIoT Big Picture

Fasi

Goal

Make-Measure-Learn

Page 13: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

The Big Picture

Page 14: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Fasi

Si entra nel vivo della realizzazione della Soluzione.Per ogni Iterazione viene definita la Mid Picture da parte

del team, ovvero l’obiettivo a medio termine da raggiungere.

Il Prodotto viene messo in esercizio (deployment) e vengono attivati i servizi a supporto del suo

funzionamento.

Si prende atto della volontà di realizzare la nuova soluzione, definendo la Solution Vision e i

Solution Goal. Fondamentali sono le metriche di validazione.

Prototyping Phase

Engineering Phase

DeploymentPhase

Page 15: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Goal

Similarity Search

Hypothesis Validation

Vision Definition

Fast Prototyping Team Creation

Full AgileIoT Team

Solution Definition of Done

Adjust Work Environment

Define Product Backlog

CES design

Bill of Materials (BOM)

Create end-to-end full solution

Reduce uncertainty

Solution Continuous Improvement

Full Working Solution

Solution Support

Company Improvement

Team Improvement Company Agility

Buffer Budget

Prototyping Phase Engineering Phase Deployment Phase

Cross Phases

Page 16: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Make-Measure-Learncreare un prototipo per testare le ipotesi annesse alla Vision e per iniziare a consolidare il team.

analizzare il prototipo in funzione dei Goal e delle relative metriche, verificando se l’organizzazione aziendale ed il team sono a proprio agio per la realizzazione del progetto.

attuare le opportune modifiche in funzione dei risultati.

Prototyping Phase

Page 17: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Elements AgileIoT Core

AgileIoT Team

Artefatti

Cerimonie

Metriche

Page 18: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

AgileIoT Team

Primary RolesCloser RolesTemporary Team

L’ AgileIoT Team è composto da un numero variabile di 4:8 membri afferenti ai Primary Roles:

• T-Shape Maker :: 2, 4, 6 • Prime Maker :: 1 • Product Owner :: 1

a cui è possibile aggiungere ulteriori 4 Closer Roles: • Cloud Closer, Data Flow Closer, Security Closer,

Energy Closer

per un totale di 8:12 membri totali.

Page 19: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Primary Roles

Makers

Prime Maker

Product Owner

Ogni AgileIoT Team contempla un numero pari di maker caratterizzati da 2 skill primari: Software Makers Oriented

- Hardware Makers Oriented.

Il Prime Maker è il Team Lead Metodologico e Tecnologico dell’AgileIoT Team, indossando alternativamente il

“cappello” più adatto in funzione delle esigenze temporalmente localizzate. Il Product Owner ha il compito primariom di

massimizzare il Valore della soluzione prodotta dal team in funzione di quelle che sono le necessità del cliente e dei

key stakeholder.

Page 20: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Closer Roles

Cloud Closer

Data Flow Closer

Security Closer

Supporta le attività di analisi dei dati/eventi e la generazione di opportune rappresentazioni e action di

risposta. Supporta l’analisi delle tecnologie e degli strumenti necessari per la “raccolta”, la “pulizia” e la “gestione” dei RawData

provenienti dai dispositivi. Supporta l’analisi e la gestione degli aspetti di security, particolarmente rilevanti vista l’importanza dei dati, degli

eventi e delle relative azioni che ne scaturiscono.

Energy Closer

Supporta la gestione degli aspetti energetici a cui sottendono l’operatività dello smart thing, al fine di garantire

una sufficiente continuità operativa.

Page 21: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Temporary Team

Fast Prototyping Temporary Team

Signal Temporary Team

Si occupa del Fast Prototyping. E’ costituto da un Prime Maker, da due T-Shape Maker e,

possibilmente, dai Closer.Si va così a delineare il nucleo del futuro AgileIoT

Team.

Il team temporaneo a cui è affidato lo sviluppo del singolo Signal, tipicamente Cloud Oriented o Smart Thing

Oriented, in funzione del Signal da realizzare.

Page 22: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Artefatti

Work Item

Visual Management

Delivery Item

Gli Artefatti sono gli elementi che caratterizzano il processo. Consentono di concentrare l’attenzione e gli sforzi del team e implicitamente descrivono lo stato di avanzamento di realizzazione della soluzione.

Ogni artefatto ha una governance specifica che appartiene ad uno o più membri dell’AgileIoT Team ed è soggetto a continue azioni di review per allinearlo allo stato corrente del progetto ed al know-how maturato sulla soluzione.

Page 23: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Work Item

enfatizza il Valore in funzione del Cliente, cogliendo aspetti relativi sia ai Software Maker che agli Hardware Maker.

è l’elemento su cui si concentra l’attività dei Maker, in particolare del Signal Temporary Team. Si tratta di un’attività descrivibile in funzione di elementi di input/output dei dispositivi IoT specifici.

è l’unità minima di lavoro, possibilmente specializzata per singola area applicativa: hardware [slot], firmware [slot], service [slot] e cloud [slot].

Page 24: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Visual Management

Product Backlog

Makers Backlog

Signals Board

Contiene le Value Story della soluzione ordinate in chiave top-down: l’elemento al top è quello a maggior

valore relativo.Contiene i Signal da realizzare nell’iterazione in avvio.

L’ordinamento è derivato da quello delle Value Story, combinato con la gestione del Rischio.Consente di orchestrare lo sviluppo dei Signal in funzione

del loro stato. Di base sono previste tre colonne: To Do, Doing, Completed.

Technical Debt & Risk Board

Supporta gli aspetti realizzativi della soluzione, andando ad evidenziare il Debito Tecnico e i Rischi annessi in

essere.BurndownChart

Consente di monitorare l’avanzamento delle attività correlando gli Slot (o le Value Story) al fattore “tempo”.

Page 25: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Delivery Item

Smart Thing

Solution to Delivery

Solution Definiton of Done Document

E’ il componente intelligente di base: l’hardware può essere acquistato o progettato e realizzato specificamente.

E’ la Soluzione funzionante ed incrementale da mostrare al raggiungimento della Mid Picture, durante la

Solution Overview:Smart Thing, Soluzioni Cloud a Supporto,

Componentistica di Delivery.Si tratta del live-document che definisce gli elementi chiave per considerare la soluzione

completa.

Smart ThingBill of Material

E’ l’elenco di tutti i componenti, sottoinsiemi, semilavorati e materie prime necessari per realizzare l’hardware.

Page 26: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Cerimonie

Fast Prototyping

Planning

Retrospectives

Le Cerimonie sono momenti ben precisi in cui si concentrano specifiche azioni di pianificazione o di review.Sono fondamentali per allineare le attività alle necessità del cliente e degli stakeholder.

In funzione alla specifica Cerimonia, ad essa partecipa l’intero AgileIoT o solo parte di esso. Anche la governance stessa varia in funzione del tipo di evento tenuto.

Page 27: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Fast PrototypingEnergy Prototyping: incentrato sulla verifica delle ipotesi relative agli aspetti energetici.Hardware Prototyping: incentrato sulla validazione delle ipotesi hardware tramite uno o più Evaluation Kit (EVK). Code Prototyping: incentrato sulla prototipazione del firmware e dei servizi a supporto per i dati/eventi.Data Flow Prototyping: incentrato sugli aspetti legati alla gestione dei Raw Data provenienti dai device.Cloud Prototyping: incentrato sugli aspetti cloud della soluzione, intesa come piattaforma elaborativa a supporto.Security Prototyping: incentrato sulla verifica delle ipotesi relative agli aspetti centrali di security.Delivery Prototyping: incentrato sull’analisi di vincoli normativi/ambientali del dispiegamento degli Smart Thing.

Page 28: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Planning

Product e MakersBacklog planning

Grooming

Flashback

Vengono popolati e ordinati il Product Backlog il Makers Backlog.

Obiettivo: identificare e scegliere le Value Story e i Signal da realizzare.Vengono aggiornati il Product Backlog e il Makers Backlog.

Obiettivo: allineare I funzione dei feedback e del know-how maturato.

Cerimonia on-site di overview delle attività in corso.Obiettivo: allineare tutti i membri del team sulle stato

delle attività

Page 29: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Retrospettive

Solution Overview

Technical Retrospective

Methodology Retrospective

Viene mostrare la Solution to Delivery al committente e agli stakeholder.

Obiettivo: raccoglie i feedback per il grooming del Product Backlog.Viene fatto il punto sulle tecnologie e sugli strumenti di

sviluppo utilizzati. Obiettivo: preserve or pivot in funzione dei risultati ottenuti.

Viene valutata l’applicazione della metodologia e l’organizzazione del team.

Obiettivo: continuous improvement.

Page 30: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Retrospettive

Rhythm

Lead TimeThroughput

Definisce la cadenza di esecuzione del flashback, calcolato in funzione del Signal con minor numero di Slot associati:

• Signal di 1 - 2 Slot: Daily Rhythm, flashback giornaliero• Signal di 4 - 8 Slot: b-Daily Rhythm, flashback bi-giornalieri

Il Lead Time è il tempo medio impiegato da un Signal per essere completato.

Il Throughput è la stima del tempo necessario a completare il Makers Backlog:

Throughput = All Signal * Lead Time

Le Metriche consentono all’AgileIoT Team di monitorare l’andamento delle attività e di pianificare le cerimonie e le altre azioni a supporto di esse.

Page 31: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Risorse e Riferimenti

Agile Application Lifecycle Management con VSO/TFSPubblicare un package nuget grazie alla buildGestire la Semantic Versioning con GitFlow e GitVersion in una vNext BuildLean Startup, Jump Start!

Agile@Scale: visione olistica del valoreLean Philosophy Introduzione a KanbanApplication Lifecycle Management (ALM) con VSO

https://paolopatierno.wordpress.com/ https://github.com/ppatierno/azuresblite http://mattvsts.blogspot.it/ http://blogs.dotnethell.it/suxstellino/ http://www.codewrecks.com/

http://www.felicepescatore.it/

getlatestversion

Page 32: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

Grazie agli sponsor

Page 33: AgileIot: Agile meets IoT

@DevOps@Work 2016

#DOAW16

http://bit.ly/DOAW16FEED1

Dedicateci 2 minuti del vostro tempo, e ci aiuterete a crescere e migliorare!

Track Introhttp://bit.ly/DOAW16FEED2

Track Avanzata