drupal agile: drupal ed il mercato enterprise

79
DRUPAL AGILE DRUPAL ED IL MERCATO ENTERPRISE a.k.a “come non farsi male facendo parcour in carriola”

Upload: formez-pa

Post on 08-Jul-2015

708 views

Category:

Technology


0 download

DESCRIPTION

Twinbit e Agavee, insieme, hanno avuto la fortuna di lavorare su un progetto di dimensioni intimidenti, per un cliente Enterprise che si è rivelato inaspettatamente competente nello SCRUM. Ormai è impossibile lavorare nel web e non incappare nella voglia di lavorare in modo agile, con metodologie adeguate e moderne. Purtroppo non esiste metodo che regga l'impatto con un cliente non collaborativo o preparato. Senza più scuse, abbiamo dovuto affrontare il processo con Drupal 7. Ecco com'è andata. Autore: Marco Giacomassi

TRANSCRIPT

Page 1: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

DRUPAL AGILEDRUPAL ED IL MERCATO ENTERPRISE

a.k.a “come non farsi male facendo parcour in carriola”

Page 2: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Marco Giacomassifondatore e COO di Twinbit

@marcogiaco

photographer, climber, wanderer

www.twinbit.it

Paolo Pustorino fondatore e CEO di Agavee GmbH

@stickgrinder

drummer, gamer, father

www.agavee.com

Page 3: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Drupal va verso l’enterpriseSo what?

Page 4: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Enterprise in che senso?

Page 5: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Management multilivelloe divisione delle responsabilità

Page 6: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Progetti di lungo raggionecessità di manutenzione ed evoluzione

Page 7: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Team ibridifornitore e cliente come unico gruppo di lavoro

Page 8: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Integrazioni con sistemi legacy e di terze parti

Page 9: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Poca elasticità sul piano finanziario e temporale

e spesso anche dello scope

Page 10: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Constraint legali e contrattuali

deathlines

:)

Page 11: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Have you ever heard of...Raise your hands if so

Page 12: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Continuous integration?

Page 13: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Scrum?

Page 14: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Drupal in contesto enterprise?

o con team di 5+ persone

Page 15: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Case studyla piattaforma ELITE di Borsa Italiana

Page 16: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE
Page 17: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE
Page 18: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

EliteBorsa Italiana

5 dev 8 dev 8 dev1 pm

11 dev1 pm

2013jul

2013dec

2014jan

2014may

Drupal 7CMSDocument & task managementSocialGerarchie multilivello

Page 19: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

ScrumMaster

ProductOwner

TeamDevsPM

TrackerCliente

TrackerTeam

Page 20: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

“Fare o non fare. Non esiste tentare”Maestro Yoda

a.k.a. “Come abbiamo affrontato le sfide tecnologiche”

Page 21: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Drupal non è pensato per la CI

Page 22: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Configurazione nel database

[ problema ]

Page 23: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Il nostro build stackmake file, installation profile, drush, features, phing

[ soluzione ]

Configurazione nel database

Page 24: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Import/export di contenuti [ problema ]

Page 25: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Migrate, hook_update_Ne tanto, ma tanto, amore

[ soluzione ]

Import/export di contenuti

Page 26: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

No mocking, no partyla mancanza di Acceptance Testing

[ problema ]

Page 27: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Behat e qualche esoterismoma l’implementazione è onerosa

ed i tempi di esecuzione sono molto lunghi

[ soluzione ]

La mancanza di Acceptance Testing

Page 28: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

NienteContinuous Deploy

In mancanza di accesso ai server di produzione

Page 29: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Niente upgrade path tools

Page 30: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Forte coupling tra business data e application data

Page 31: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

“Amo le scadenze. Adoro il sibilo che fanno quando ti

passano a fianco.”Douglas Adams

a.k.a. “Cosa poteva andare meglio”

Page 32: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Deploy Hell

Page 33: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

La not-so-continuous integration

Page 34: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

La gestione dell’affanno

Page 35: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

The Gatekeeper Quest

Page 36: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Le trappole della back-integration

Page 37: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

La scarsità di competenze

Page 38: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

“Il successo è una conseguenza, non un obiettivo.”

Gustav Falaubert

a.k.a. “Dove Drupal ci ha dato una gran mano”

Page 39: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Drupal è statod’aiuto perchè...

Page 40: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

È l’unico CMS che si fa trattare come un

framework

Page 41: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Core e principali moduli contrib robusti e affidabili

Page 42: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Propone una culturadoing things the Drupal way

Page 43: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Conoscenze ed esperienze da una grande community

Page 44: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Non c’è limite alla customizzazioneanche quando costosa, è possibile

Page 45: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Sicurezzanessuno dica “drupalgeddon”!

:)

Page 46: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

“Imparare significa scoprire quello che già sai.”

Richard Bach

Page 47: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

L’affanno porta affanno

Page 48: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Sollevare i problemi! e prendere il tempo di risolverli, è la strada migliore

Page 49: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Non rinunciate alla retrospettiva

se proprio dovete rinunciare a qualcosa

Page 50: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

L’ordine sarà la vostra unica salvezza... se proprio dovete rinunciare alla retrospettiva

Page 51: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

How to pimp your Drupal

Page 52: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Abbiamo l’integrationnon troppo continuous, ma c’è

Page 53: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Chi ha bisogno di un database?

:)

Page 54: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Flusso di controllosia dell’integrazione che dei rilasci

Page 55: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Integrazione tra issue tracker

e versioning tools

Page 56: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Enforcing dell’ordinecon git hooks, PHPCS e peer review

Page 57: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Ma c’è ancora aria sotto l’acceleratore!a.k.a. “Aspettando Drupal 8”

Page 58: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Un task runner più potentelogica più potente, parallel tasks e job queue

Page 59: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Automatizzazione dei rilasci

operazioni più atomiche, status reporting, speedy packaging

Page 60: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Migrazione dei contenuti più efficiente e robusta

gli uuid non sono ancora un’opzione matura

Page 61: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Un branching model più legato allo scope

delle storie

Page 62: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Più efficienza nei flussi di informazione

Page 63: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Tracker over e-mailmeno overhead nelle informazioni

Page 64: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Dockerla nostra febbrile fantasia notturna

Page 65: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Drupal 8 to the rescue

Page 66: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

OOP to the coretest, isolamento e interoperabilità

Page 67: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Configuration exportdeploy e versioning della configurazione

“bye bye Feature?”

Page 68: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Twigun vero template engine, finalmente!

:)

Page 69: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

RESTful servicestestare la business logic in isolamento,

sviluppo mobile nativo e in-browser app

Page 70: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Drupal sta convergendo verso gli industries

standard

Page 71: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

“They say Drupal 8 is really weird!”

Senior Drupal developers

“They say Drupal 8 is finally not weird!”

Rest of the world

Page 72: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

PHP Standards Recommendation

Interoperabilità e riusabilità

Page 73: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Più competenze in ambito Enterprise

Page 74: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Delega a non-drupalistiaspetti dell’applicazione

caching, logging, REST clients, etc

Page 75: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

DOMANDE?

Page 76: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

Quindi, verdetto?

Page 77: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

siii puooò FARE!

Page 78: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

MARCHETTE

Page 79: Drupal Agile: DRUPAL ED IL MERCATO ENTERPRISE

GRAZIE!