DRUPAL AGILE DRUPAL ED IL MERCATO ENTERPRISE a.k.a “come non farsi male facendo parcour in carriola”
Jul 08, 2015
DRUPAL AGILEDRUPAL ED IL MERCATO ENTERPRISE
a.k.a “come non farsi male facendo parcour in carriola”
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
Drupal va verso l’enterpriseSo what?
Enterprise in che senso?
Management multilivelloe divisione delle responsabilità
Progetti di lungo raggionecessità di manutenzione ed evoluzione
Team ibridifornitore e cliente come unico gruppo di lavoro
Integrazioni con sistemi legacy e di terze parti
Poca elasticità sul piano finanziario e temporale
e spesso anche dello scope
Constraint legali e contrattuali
deathlines
:)
Have you ever heard of...Raise your hands if so
Continuous integration?
Scrum?
Drupal in contesto enterprise?
o con team di 5+ persone
Case studyla piattaforma ELITE di Borsa Italiana
EliteBorsa Italiana
5 dev 8 dev 8 dev1 pm
11 dev1 pm
2013jul
2013dec
2014jan
2014may
Drupal 7CMSDocument & task managementSocialGerarchie multilivello
ScrumMaster
ProductOwner
TeamDevsPM
TrackerCliente
TrackerTeam
“Fare o non fare. Non esiste tentare”Maestro Yoda
a.k.a. “Come abbiamo affrontato le sfide tecnologiche”
Drupal non è pensato per la CI
Configurazione nel database
[ problema ]
Il nostro build stackmake file, installation profile, drush, features, phing
[ soluzione ]
Configurazione nel database
Import/export di contenuti [ problema ]
Migrate, hook_update_Ne tanto, ma tanto, amore
[ soluzione ]
Import/export di contenuti
No mocking, no partyla mancanza di Acceptance Testing
[ problema ]
Behat e qualche esoterismoma l’implementazione è onerosa
ed i tempi di esecuzione sono molto lunghi
[ soluzione ]
La mancanza di Acceptance Testing
NienteContinuous Deploy
In mancanza di accesso ai server di produzione
Niente upgrade path tools
Forte coupling tra business data e application data
“Amo le scadenze. Adoro il sibilo che fanno quando ti
passano a fianco.”Douglas Adams
a.k.a. “Cosa poteva andare meglio”
Deploy Hell
La not-so-continuous integration
La gestione dell’affanno
The Gatekeeper Quest
Le trappole della back-integration
La scarsità di competenze
“Il successo è una conseguenza, non un obiettivo.”
Gustav Falaubert
a.k.a. “Dove Drupal ci ha dato una gran mano”
Drupal è statod’aiuto perchè...
È l’unico CMS che si fa trattare come un
framework
Core e principali moduli contrib robusti e affidabili
Propone una culturadoing things the Drupal way
Conoscenze ed esperienze da una grande community
Non c’è limite alla customizzazioneanche quando costosa, è possibile
Sicurezzanessuno dica “drupalgeddon”!
:)
“Imparare significa scoprire quello che già sai.”
Richard Bach
L’affanno porta affanno
Sollevare i problemi! e prendere il tempo di risolverli, è la strada migliore
Non rinunciate alla retrospettiva
se proprio dovete rinunciare a qualcosa
L’ordine sarà la vostra unica salvezza... se proprio dovete rinunciare alla retrospettiva
How to pimp your Drupal
Abbiamo l’integrationnon troppo continuous, ma c’è
Chi ha bisogno di un database?
:)
Flusso di controllosia dell’integrazione che dei rilasci
Integrazione tra issue tracker
e versioning tools
Enforcing dell’ordinecon git hooks, PHPCS e peer review
Ma c’è ancora aria sotto l’acceleratore!a.k.a. “Aspettando Drupal 8”
Un task runner più potentelogica più potente, parallel tasks e job queue
Automatizzazione dei rilasci
operazioni più atomiche, status reporting, speedy packaging
Migrazione dei contenuti più efficiente e robusta
gli uuid non sono ancora un’opzione matura
Un branching model più legato allo scope
delle storie
Più efficienza nei flussi di informazione
Tracker over e-mailmeno overhead nelle informazioni
Dockerla nostra febbrile fantasia notturna
Drupal 8 to the rescue
OOP to the coretest, isolamento e interoperabilità
Configuration exportdeploy e versioning della configurazione
“bye bye Feature?”
Twigun vero template engine, finalmente!
:)
RESTful servicestestare la business logic in isolamento,
sviluppo mobile nativo e in-browser app
Drupal sta convergendo verso gli industries
standard
“They say Drupal 8 is really weird!”
Senior Drupal developers
“They say Drupal 8 is finally not weird!”
Rest of the world
PHP Standards Recommendation
Interoperabilità e riusabilità
Più competenze in ambito Enterprise
Delega a non-drupalistiaspetti dell’applicazione
caching, logging, REST clients, etc
DOMANDE?
Quindi, verdetto?
siii puooò FARE!
MARCHETTE
GRAZIE!