Service Oriented Agility @ Italian Agile Day - Bologna 2008

Post on 17-Oct-2014

1.908 views 0 download

description

My Agile vs SOA Presentation, which I held at the Italian Agile Day 2008 in Bologna

Transcript of Service Oriented Agility @ Italian Agile Day - Bologna 2008

BuzzwordDeathmatch:

SipuòfareagileinunaSOA?

Aboutme• 10diesperienzacomeconsulentenelmondoIT.

• Hopartecipatoamol>“grossiproge@”– Pubblicaamministrazione– Bancario– Assicura>vo– ...

• Unpo’architeIura,unpo’processo,unpo’management...

• Ilmioblog:hIp://ziobrando.blogspot.com• Trainer(ItaliaeUK)

• Ar>coli,etc.

• Mye‐mail:alberto.brandolini@gmail.com

LoscenarioAgile

PerchèAgile? Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>

Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>– Waterfallè“tradizionalmente”associatoa

Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>– Waterfallè“tradizionalmente”associatoa

• cos>eleva>

Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>– Waterfallè“tradizionalmente”associatoa

• cos>eleva>

• tempidisviluppolunghi

Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>– Waterfallè“tradizionalmente”associatoa

• cos>eleva>

• tempidisviluppolunghi

• Impredicibilitàdeirisulta>ebassapercentualedisuccesso

Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>– Waterfallè“tradizionalmente”associatoa

• cos>eleva>

• tempidisviluppolunghi

• Impredicibilitàdeirisulta>ebassapercentualedisuccesso

• Difficoltànellages>onedelcambiamento

Tradurre

PerchèAgile?

• LosviluppoWaterfallsièdimostratoinefficienteeinsoddisfacentecomerisulta>– Waterfallè“tradizionalmente”associatoa

• cos>eleva>

• tempidisviluppolunghi

• Impredicibilitàdeirisulta>ebassapercentualedisuccesso

• Difficoltànellages>onedelcambiamento

• Sechiedeteingiro,nessunostapiùfacendoilwaterfall(…oalmenocosìdicono)

Tradurre

UnifiedProcess

UnifiedProcess

• Lounifiedprocesshacambiatoradicalmenteloscenario

– Iterazionicomeelementofondamentaledelprocesso.

–Definizionefinediruoliedar@fact/responsabilità

–UMLcomelinguaggio“ufficiale”

–Unadefinizioneesaus@vadituFeleaGvitàchiavedelprocesso.

UnifiedProcess

• Unfortunately,italsosetthegroundfor

– AfamilyofUMLmodellingtools

– Alotofdocumenta@ontemplates

6

IllatooscurodelloUnifiedProcess

IllatooscurodelloUnifiedProcess

• Glistrumen>sonodiventa>semprepiùimportan>,deformandoilprocessostesso.

IllatooscurodelloUnifiedProcess

• Glistrumen>sonodiventa>semprepiùimportan>,deformandoilprocessostesso.

• Analisiedesignsonodiventatea@vitàsoliste

IllatooscurodelloUnifiedProcess

• Glistrumen>sonodiventa>semprepiùimportan>,deformandoilprocessostesso.

• Analisiedesignsonodiventatea@vitàsoliste

• Carta,cartaedancoracarta...

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Sviluppatori

Glisviluppatorieranoconsidera>“risorseinterscambiabili”ilcuiunicocompitoeradiimplementarelespecifiche.

Peròitera@vamente.

Occasionalmente,gliarchite@passanoinrassegnalatruppa...

RuolieResponsabilità

RuolieResponsabilità• Lages>onefinedeiruolihafinitopertradursiinunfaIoredirallentamento– Spessosifiniscepersceglieresolo“itaskada@almioruolo”

– (implicitwaterfall)

– Tempidirispostapiùlen>

–Collidibo@gliasiglispecialis>(opresun>tali)

– Ilbuoncarovecchioscaricabarile

– ...

...Iribellinonstannoaguardare

...Iribellinonstannoaguardare

Itregus@dell’Agile

• XPha“faIoilboIo”introducendopra>cherivoluzionarienellosvilupposocware.

• Scrumhadefinitounframeworkall’internodelqualelepra>cheagilipossonoessereapplicateall’internodiunorganizzazione.

• IlmovimentoLeanhaintrodoIoconce@eprincipidall’industriamanifaIuriera,nellosvilupposocware(fornendoancheunretroterrateoricoadentrambe)

eXtremeProgramming• UserStories

– LessformalthanUsecases,actlikeplaceholderforarealdiscussion

• Frequentsmallreleases– Itera7onsareshorterandtargetedtoproduc7on,

• Frequentplanningandes4ma4on– Eachitera7onisre‐plannedaccordingtothecurrentlyavailableinforma7on

• Noan4cipateddevelopment– Noframeworksorlayeredarchitecture

• Testfirst– Testsuitesrunpreservingapplica7onintegrity,andproducingbeAerinterfaces

• Customeravailability– Realfeedbackisthekeytomaketherightthing

• Nocodeownership

• Con4nuousintegra4on– Thewholesystemisfrequentlyintegratedandtested

• Pairprogramming– Programmersworkinpairs,incodingsessions

• Noover4me

• ...

XP

• Ilfeedbackèl’elementochiavepermoltedellepra>cheproposte– dalcodice

– daicolleghi

– dalcliente

– dalprogeFo

– dalteam

• Ilteamèresponsabilizzatoedincoraggiatoaproporresoluzionicrea>ve

• Lostessoprocessopuòesseremodificato

Scrum

• ScrumnonsiriferiscestreIamenteallosvilupposocware,maoffreunframeworkperlages>oneada@vadeiproge@.

• AdifferenzadiUP,cisonosolo3ruoli:

– IlTeam

– IlProductOwner

– LoScrumMaster

Loscenario@picodiunteam

Ilteamagile

• Gruppidipiccoledimensioni

• Cross‐func>onal

• Ilteamèliberodiprenderequalsiasidecisionedidesign

• InScrum,ilteamriferiscesoloalP.O.– Uncerimonialedefinitoeduninsiemedipossibiliazionigaran>sconocheilgruppononprendadirezioniindesiderate.

Mol@stakeholders?

IlProductOwnerèl’unicoresponsabileperilgruppodisviluppo.

IprincipidellosviluppoLean• Eliminatewaste

– TuAociòchenonforniscealcunvaloreperl’utente.

• Amplifylearning– LosviluppoèunaIvitàdiesplorazioneediricercadisoluzioni.

• Decideaslateaspossible– Evitareledecisioniirreversibili,oprenderlesoloquandosidispondedi

tuAeleinformazioninecessarie.

• Deliverasfastaspossible– Ciclidisviluppovelociaiutanoilfeedback.Spessolavelocitàèmeglio

dellaqualità.

• Empowertheteam– Ilteamdiventeràilmassimoespertosull’argomento.

• Buildintegrityin– IlsoNwaredeveessereu7le,eadaAoalcompito.

• Seethewhole– InassenzadiunavisionecomplessivaavremosolooFmilocali.

Spreco

• Lospreco(waste)puòapparireinvarieforme– Documentazionenonnecessaria– Designan7cipato– Overengineering– AIese– Comunicazioniinefficien>– Dife@– Handoff– Complessità– blame(scaricabarile)– Qualità(?)– ...

L’approccioLo‐Fi

• Comeconseguenza,alcunitoolssonosta>abbandona>,infavorediunapprocciopiùmateriale.– Carta(userstories,CRCcards,burndownchart)

– Post‐it

– Lavagne

• GliInforma@onradiatorssfruIanolaprossimitàfisicaperpermeIereunoscambiodiinformazionipiùefficienteecompleto

• AlcuniStrumen>sonosta>bandi>(es.MSProject),altrisonoapparsi(es.Wikis)

TheboFom‐uprevolu@on• Agilepreparailterrenoperfareemergereproposteinteressan>dalteam

• Ilteamimparaandsiconcentrasuundeterminatospaziodiproblemi,spessodiventandoilmassimoespertodisponibilesull’argomento

Col@varelacollaborazione

• Raramentesilavoraisola>

• Moltea@vitàsonosvolteingruppo,incoppieoinmanieravisibile.

• LatrasparenzamiglioralafiduciaepremeIeunacollaborazionepiùefficace.

• Gliscambidiinformazioneavvengonoinentrambiisensi

Loscenarioideale• NontuIelecondizionidipartenzasonoo@maliper“diventareagili”:perpotersfruIarepienamenteilpotenzialedell’agiledovremmo(idealmente)– Essereassun>inun’aziendalacuimassimaprioritàsiailsocware.

– lavorarenellostessoposto

– Avereaccessoagliuten>(qualsiasicosasignifichi)

– Essereliberidicrescerecometeamedassumersiresponsabilità.

– Essereliberidisceglierelogis>ca,hardware,etc.

LoscenarioSOA

SOARa@onale• Organizzazionidigrandidimensionieranoappesan>tedalfardellodi– Svaria>legacysystems– Fusioniandacquisizioni

• Necessitàdiintegraresistemieterogenei• Sistemiduplica@eridondan@

– Elevatacomplessità(nonnecessaria)• Cos@opera@vi• Cos@dievoluzione

– Tempidireazioneestremamentelen>,...sviluppisostanzialmenteblocca>,incapacitàdiprodurrevalore.

• ...Ricordaqualcosa?

Incercadell’uniformità

Standard,frameworks,regoleedintegrazionenonhannogaran>tolanecessariaagilitàalbusiness.Conilrisultatodiessereunulteriorefardelloconcuifareicon>primaancoradidiprogeIareunaqualsiasisoluzione.

ServiceOrientedArchitecture

• SOAhacomeobie@vodiridurreledipendenzefraleapplicazioni:

– Languagecoupling XML

– Protocolcoupling WS,SOAP

– Networkcoupling ESB

– Availabilitycoupling messages

• Standardebassoaccoppiamentoconcorronoadefinireun’architeIurabasatasucomponen@sos@tuibili

Lowcoupling

• Iservizipossonodialogaretraloroconilpiùbassolivellodiconoscenzareciprocapossibile En

terpriseServiceBus

Lowcoupling

• Iservizipossonodialogaretraloroconilpiùbassolivellodiconoscenzareciprocapossibile En

terpriseServiceBus

Lapromessainiziale

Lapromessainiziale

• SOAeraunostrumentoper

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”– “lomeAoinagendaperil2010”

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”– “lomeAoinagendaperil2010”

– “Adessononc’ètempo”

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”– “lomeAoinagendaperil2010”

– “Adessononc’ètempo”

– “Possiamofarlo”

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”– “lomeAoinagendaperil2010”

– “Adessononc’ètempo”

– “Possiamofarlo”

– “Perchènonfarequest’altracosa,invece?”

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”– “lomeAoinagendaperil2010”

– “Adessononc’ètempo”

– “Possiamofarlo”

– “Perchènonfarequest’altracosa,invece?”

– “...Abbiamounidea...”

Lapromessainiziale

• SOAeraunostrumentoper– PermeIerelenecessarieoperazionidipulizia– PermeIereall’ITdidiventareunfaKorechiaveperilbusiness,invececheunpeso.

– “èuncasino”– “lomeAoinagendaperil2010”

– “Adessononc’ètempo”

– “Possiamofarlo”

– “Perchènonfarequest’altracosa,invece?”

– “...Abbiamounidea...”

– PermeIerealleimpresediridurreilvandorlock‐inedirecuperareilcontrollosulbudgetdell’IT.

...deFainunaltromodo

• SOAèunostrumentoperpermeIereallegrandiaziendediraggiungerelabusinessagility– Ciclidirilasciodeiprodo@piùbrevi

– OIenereilfeedbackdireIamentedalmercato

– Sperimentarenuovimodidifarebusiness

Alberto Brandolini 01/09/08Qui ci pouò stare l'esempio di Amazon

...deFainunaltromodo

• SOAèunostrumentoperpermeIereallegrandiaziendediraggiungerelabusinessagility– Ciclidirilasciodeiprodo@piùbrevi

– OIenereilfeedbackdireIamentedalmercato

– Sperimentarenuovimodidifarebusiness

• SOAnonèunostrumentoperricostruireun’architeFuraesistenteconunanuovatecnologia

Alberto Brandolini 01/09/08Qui ci pouò stare l'esempio di Amazon

Il@picoscenarioSOA...LoscenarioidealeAgile

• Essereassun>inun’aziendalacuimassimaprioritàsiailsocware.

• lavorarenellostessoposto• Avereaccessoagliuten>(qualsiasicosasignifichi)

• Essereliberidicrescerecometeamedassumersiresponsabilità.

• Essereliberidisceglierelogis>ca,hardware,etc.

LoscenarioSOA

• Generalmentelamassimaprioritàdell’aziendaNONèilsocware

• consulen>,risorseaprogeIo,etc.sonolaregola.

• Losviluppospessoavvieneinpiùsedi,frequenteilricorsoall’offshore.

• Pochiincen>viallacrescitaedall’assunzionediresponsabilità

• Controllomoltolimitatosulogis>ca,hardware,etc.

LatecnologiadiSOA

Libertà!?

• Bassoaccoppiamentoestandarddicomunicazioneindipenden>dallinguaggiooffronolapossibilitàdiimplementareapplicazioninelletecnologiepiùappropriate.

EnterpriseServiceBus

Libertà!?

• Bassoaccoppiamentoestandarddicomunicazioneindipenden>dallinguaggiooffronolapossibilitàdiimplementareapplicazioninelletecnologiepiùappropriate.

EnterpriseServiceBus

...Forsesiamoancoraaccoppia@...?• L’accoppiamentotecnologicoèsolounodeivarifaIoridiaccoppiamentosullascena:– Budgetperlelicenze

– Opera>ons&Support

– Standardaziendali,Regoleeprescrizionigiàinessere

– Strategieperlages>onedelpersonale

– ArchiteIura

– Culturaaziendale

Inchelinguaparliamo?

• UMLnonèsufficienteperleesigenzediSOA

• Emergeunnuovogergo,nuovidiagrammi,nuovenotazioni,nuovilayer...

Inchelinguaparliamo?

• UMLnonèsufficienteperleesigenzediSOA

• Emergeunnuovogergo,nuovidiagrammi,nuovenotazioni,nuovilayer...

Inchelinguaparliamo?

• UMLnonèsufficienteperleesigenzediSOA

• Emergeunnuovogergo,nuovidiagrammi,nuovenotazioni,nuovilayer...

Mettiamolecoseassieme

AgileandSOA

AgileandSOA

“EnterprisesexperiencemoresuccesswithSOAwhentheyeschewbigtop‐downdeliveryprojectsandinsteadgetdowninthetrencheswithanevolu7onaryapproach.Agileprocessesprovideabasicstructureforthiskindofincrementaldelivery.”• CareySchwaber,ForresterResearch

...nonmol>ar>coliinvececidiconoquantoiprocessiagilipossanotrarrebeneficiodaSOA

AgilecomeGiocoCoopera@vo• Losvilupposocwarepuòesseredefinitocomeungiococoopera@vo,finito,direFoadunobieGvo(Cockburn)

Finite,Non‐goal‐directed

Finite,goal‐directed

Carpetwrestling

Infinite

Jazz

TennisSoLware

Development

Dolls

Compe@@ve Coopera@ve

Organiza>onSurvival

Careermanagement

So[waredevelopmentasaGame

• Finito:unprogeIocominciaefinisce(inunmodoonell’altro)

• DireFoadunobieGvo:es.consegnareintempo

• Collabora@vo:s>amogiocandoinsiemeaglialtrimembridelteam

• …manons>amofacendosoloquesto:– S>amoinvestendosullacarriera

– Giochiamoafareigenitori

– Etc.etc.

Unteamdisuccesso

Alcunielemen@chiave

• IlTeam– Miglioritalen>disponibili

– Obie@videllasquadraprimadiquellipersonali

– Elevatamo>vazione

• L’obieGvo– Obie@vochiaro

– esperienzalimitataneltempo

– Risultatomisurabile

Unteamunpo’menodisuccesso...

Unteamunpo’menodisuccesso...

Elemen@chiave

• Ilteam– Imiglioritalen>?

– Obie@viindividuali(odipar>to)primadiquellidelteam,...odelcliente...:‐(

• L’obieGvo– Noncosìbendefinito(amenodicredereaiproclamieleIorali)

– Intervalloditempocasuale

– Risultatononmisurabile(aiposteri...)

Giocoarisorselimitate

• Loscenarioèlimitatosusvaria>parametrichiave:– Budget

– Tempo

– Esperienza

– Talento

– Quan@tàdiinformazioniges@bili

QualèilgiocodiSOA?

• SOAègeneralmenteungiocogiocatoadunlivellodifferentedallosviluppo:– Gliobie@visonolega>adunastrategiadilungoperiodo

– Irisulta>dimedioterminepossonorisultarenonosservabiliomisurabiliperilteam.

• Es.Budget

• Eliminazionediunsistemaesterno

TheSOAGame

Unacri>cacomuneallemetodologieAgili,èchesifocalizzanosuobie@viabrevetermine.

SOAvuolevedereilquadrocomplessivo,concentrandosisuobie@viavoltenoncompletamentetrasparen>.

Laculturadominante

• laculturaaziendalepuòesseremoltolontanadaiprincipiagili

• SOApuòaverel’appoggiodelmanagement,manonèdeIocheanchelemetodologieagilicel’abbiano.

• Carriere,ruoliespecializzazionipossonorisultaresoIopressione.

DimensionedelprogeFo

• SOAspessoimplicalapresenzadimol>teamdisviluppoallostessotempo

DimensionedelprogeFo

• SOAspessoimplicalapresenzadimol>teamdisviluppoallostessotempo

Piùrealis@camente...

51

IlritornodelTopDown

• Alcunstrumen>reintroduconolafilosofiatop‐down– Ruoliprefissa>

– Tooldrivendesign

– Sviluppobasatosullespecifiche

• UnulterioresgradevoleeffeIo...– Ilfeedbackdalbassoèscoraggiato

– Ideepotenzialmentebuonevannoperdute

IlritornodelTopDown

• Alcunstrumen>reintroduconolafilosofiatop‐down– Ruoliprefissa>

– Tooldrivendesign

– Sviluppobasatosullespecifiche

• UnulterioresgradevoleeffeIo...– Ilfeedbackdalbassoèscoraggiato

– Ideepotenzialmentebuonevannoperdute

IlritornodelTopDown

• Alcunstrumen>reintroduconolafilosofiatop‐down– Ruoliprefissa>

– Tooldrivendesign

– Sviluppobasatosullespecifiche

• UnulterioresgradevoleeffeIo...– Ilfeedbackdalbassoèscoraggiato

– Ideepotenzialmentebuonevannoperdute

IlritornodelTopDown

• Alcunstrumen>reintroduconolafilosofiatop‐down– Ruoliprefissa>

– Tooldrivendesign

– Sviluppobasatosullespecifiche

• UnulterioresgradevoleeffeIo...– Ilfeedbackdalbassoèscoraggiato

– Ideepotenzialmentebuonevannoperdute

CominciareAgileeSOA?

• Benchèsianoortogonali,duerivoluzioniallostessotemposonoprobabilmentetroppoperunteam

• Ma...agilesicomportabeneinpresenzadiesplorazioniedincertezza:– processoada@vo

– spikes

– approcciotestdriven

Prepariamolascena

• NongeneriamoaspeIa>vedifficilidasoddisfare

• Manteniamoilmanagementalcorrentedeipossibiliproblemi– LetransizioniaimetodiagilimeIonosoIopressioneleorganizzazioni,esponendoproblemichesonosempresta>nascos>soIoiltappeto.

– Cer>problemisonosempresta>lì(magarisoIoiltappeto),meIerliinevidenzapuòappariresgradito.

• Scegliamoobie@viraggiungibiliinuntemporagionevole

• Raggiungiamoli

• Costruiamosuirisulta>

• sicurezza• affiatamento

• reputazione

Sceglieteunobie@vofacile

Viaggiamoleggeri

Viaggiamoleggeri

• ladisponibiltàdistrumen>perges>relacomplessitàdiSOAnonsignificachedobbiamoincoraggiarelacomplessità

Viaggiamoleggeri

• ladisponibiltàdistrumen>perges>relacomplessitàdiSOAnonsignificachedobbiamoincoraggiarelacomplessità

• IllatooscurodiSOAnonèmegliodiciòchel’hapreceduta...

Viaggiamoleggeri

• ladisponibiltàdistrumen>perges>relacomplessitàdiSOAnonsignificachedobbiamoincoraggiarelacomplessità

• IllatooscurodiSOAnonèmegliodiciòchel’hapreceduta...

Appoggiamocisustandard

• Comecorollarioa“decideaslateaspossible”:– Sviluppiamosustandardconsolida>sepossibile

• Miglioredocumentazione

• Rimpiazzabili

• ...s>amofacendstrategiedilungotermine.

– Evitareletentazionidifeaturesvendor‐specific

– ManteniamosoIocontrolloladeviazionedaglistandard

Ladecisionepiùirreversibile...

Ladecisionepiùirreversibile...

Nonsepariamocidainostrisoldi!

Noncompriamonullalacuinecessitànonsiaprovata!!!

Evi@amol’approccioBig‐Bang

• Un’approcciosulargascalaintroducepiùproblemilega>alcoordinamentoedallacondivisionediinformazioniinevoluzione.

• Piccoliguerrilla‐teamspossonofareunlavoromiglioreconunusopiùefficientedellerisorse

59

Evi@amol’approccioBig‐Bang

• Un’approcciosulargascalaintroducepiùproblemilega>alcoordinamentoedallacondivisionediinformazioniinevoluzione.

• Piccoliguerrilla‐teamspossonofareunlavoromiglioreconunusopiùefficientedellerisorse

• Ognifrasechecominciacon“ogni”èpotenzialmentepericolosa!

59

Neverbeblocked

60

Neverbeblocked

• Leinterdipendezetrasistemipossonorallentarciindefinitamente

60

Neverbeblocked

• Leinterdipendezetrasistemipossonorallentarciindefinitamente

• NonaspeFarequalcosaaldifuoridelnostroscopediprogeIo.

60

Neverbeblocked

• Leinterdipendezetrasistemipossonorallentarciindefinitamente

• NonaspeFarequalcosaaldifuoridelnostroscopediprogeIo.– Mockiamola

60

Neverbeblocked

• Leinterdipendezetrasistemipossonorallentarciindefinitamente

• NonaspeFarequalcosaaldifuoridelnostroscopediprogeIo.– Mockiamola

– implemen>amola

60

Neverbeblocked

• Leinterdipendezetrasistemipossonorallentarciindefinitamente

• NonaspeFarequalcosaaldifuoridelnostroscopediprogeIo.– Mockiamola

– implemen>amola

– facciamoneameno

60

Neverbeblocked

• Leinterdipendezetrasistemipossonorallentarciindefinitamente

• NonaspeFarequalcosaaldifuoridelnostroscopediprogeIo.– Mockiamola

– implemen>amola

– facciamoneameno

• ...qualsiasicosafacciamo,facciamolopubblicamente.

60

RipensiamoagliSprechi

• Alcuneformedispreco“fareduevoltelastessacosa”possonoesserepreferibilia“documentacos’haifaKo”

• Losvilupposulargascalacambialepriorità

• Iconfiniaziendalielogis>cicambiano– Cos>dicomunicazione

– Passaggidiconsegne

Ilcostodicomunicare• Leinformazioninonsipropaganoconladocumentazione,masapendocosastannofacendoglialtri.– Mantenerepiùteamallinea>

• ScrumofScrums

• Informa>onradiators

• Prossimità

• Endofitera>ondemo

• Quandoècomunquemeglioscrivere,iWikipermeIonodiscriveredocumentazioneon‐demand.

Condividiamoilpiano

• Impedireaglisviluppatoridivedereilquadrocomplessivoimpediscedidaredeicontribu@significa@vi.– SonopossibilisolooGmizzazionilocali

– Sonopossibilierrorimadornali

Pianificazionedialtolivello

• SOAèunprocessoditrasformazionealungotermine

• Ognipassocambialoscenario– Maggioreconoscenzadelcontesto– Pesieprioritàdifferen>– Differen>opportunità

• E’necessarioaggiornareeri‐pianificaredifrequente,percentraregliobie@vi(nonnecessariamentequellioriginali)– Misuriamo,nonassumiamo– Ges@amoirischi,nonfacciamoprevisioni– Noniniziamonulladicuinoncisiabisognoora

Alberto Brandolini 02/09/08fioniore

SOATes@ng

• SOAèbasatasuiprincipidiDesignbyContract...ilparadisodeltester!– Definizionedell’interfacciabasatasustandard.

– AIesebendefinitesulcomportamentoespostodaiservizi

Tes@suSOA:challenges

• Testsuiteindipendentedallinguaggio

• MockseStubscheimplementanoiservizi

• Selezionedelleareechiaveperiltest

• Definizioneeges>onedell’ambienteditest

Definizionedegliambien@

• Indetermina>contes>,gliambien>ditestpossonoesseretroppocomplessiocostosiperesserereplica>– Teniamosempreinfunzioneitooldicon>nuousintegra>on

– Estendiamogliambien>diintegrazionefindovepossibile

– TroviamounpuntodiequilibriotracorreIezzaeges>bilità

– Manteniamosempreitestaggiorna>

Indueparole...

Indueparole...

• Impediamoallevecchieabitudinidifarladapadrone

• Prepariamociacompromessi(temporanei)– Teniamotracciadelprezzodapagare

– Siamopron>acambiare,cogliendonuoveopportunità

• Coinvolgiamoigius>sponsor

• Comunicare!!!

• PrepariamociadunoIovolante!

... finito?

... finito?Grazie a tutti!