77
Sebastian Heuer | Globetrotter Ausrüstung Make or Buy?

PHP Summit 2013 - Make or Buy?

Embed Size (px)

DESCRIPTION

Die alte Software genügt den Anforderungen nicht mehr, eine neue muss her. Zahlreiche Standardsysteme buhlen um die Gunst der Entscheider - aber ist Standard immer das richtige? Wann lohnt sich eine individuelle Eigenentwicklung? In der Session wird beleuchtet, warum der neue Shop von Globetrotter Ausrüstung nicht mit einer Standardsoftware läuft - und welche Vorteile das Unternehmen aus dieser Entscheidung zieht.

Citation preview

Page 1: PHP Summit 2013 - Make or Buy?

Sebastian Heuer | Globetrotter Ausrüstung

Make or Buy?

Page 2: PHP Summit 2013 - Make or Buy?
Page 3: PHP Summit 2013 - Make or Buy?
Page 4: PHP Summit 2013 - Make or Buy?

@GlobetrotterDEV

FOLLOW US!

Page 5: PHP Summit 2013 - Make or Buy?

STATUS QUO

Page 6: PHP Summit 2013 - Make or Buy?

Eigenentwicklung

STATUS QUO

Page 7: PHP Summit 2013 - Make or Buy?

Eigenentwicklung Standardsoftware

STATUS QUO

Page 8: PHP Summit 2013 - Make or Buy?

URSPRÜNGLICHER PLANStandardsoftware Standardsoftware

Page 9: PHP Summit 2013 - Make or Buy?

WHAT HAPPENED?

Page 10: PHP Summit 2013 - Make or Buy?

FEATURES, FEATURES, FEATURES• Produktvergleich

• Merklisten

• Gutscheine

• Bestellhistorie

• Backoffice (Artikel- und Bestellverwaltung)

Page 11: PHP Summit 2013 - Make or Buy?

–Random Globetrotter Employee

„Die Features passen fast zu unseren Anforderungen.“

Page 12: PHP Summit 2013 - Make or Buy?

CUSTOMIZING

Page 13: PHP Summit 2013 - Make or Buy?

CUSTOMIZINGBestehende Software wird an individuelle

Anforderungen angepasst

Page 14: PHP Summit 2013 - Make or Buy?

Feature X Feature Y Feature Z

Core Code Customization

Page 15: PHP Summit 2013 - Make or Buy?

HOUSTON, …• Artikelimport

• Varianten- und Merkmalstrukturen passen nicht zusammen

• Performance

• aufwändiges Caching, Probleme bei Invalidierung

• ohne Cache ein CPU Core je Request

Page 16: PHP Summit 2013 - Make or Buy?
Page 17: PHP Summit 2013 - Make or Buy?

THE WAY OUTAlternative Eigenentwicklung

Page 18: PHP Summit 2013 - Make or Buy?

THE WAY OUTAlternative Eigenentwicklung

Page 19: PHP Summit 2013 - Make or Buy?

THE WAY OUTAlternative Eigenentwicklung

Page 20: PHP Summit 2013 - Make or Buy?

THE WAY OUTAlternative Eigenentwicklung

Page 21: PHP Summit 2013 - Make or Buy?
Page 22: PHP Summit 2013 - Make or Buy?

Die Idee wird geboren

Page 23: PHP Summit 2013 - Make or Buy?

Die Idee wird geboren

Infizierung des Teams

Page 24: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Die Idee wird geboren

Infizierung des Teams

Page 25: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Workshop wird genehmigt \o/

Die Idee wird geboren

Infizierung des Teams

Page 26: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Workshop wird genehmigt \o/

Bau eines Prototypen „Wir schaffen das!“

Die Idee wird geboren

Infizierung des Teams

Page 27: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Workshop wird genehmigt \o/

Bau eines Prototypen „Wir schaffen das!“

Die Idee wird geboren

Infizierung des Teams

Entscheidung für die Eigenentwicklung!

Page 28: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Workshop wird genehmigt \o/

Bau eines Prototypen „Wir schaffen das!“

Die Idee wird geboren

Infizierung des Teams

finaler Lasttest

Entscheidung für die Eigenentwicklung!

Page 29: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Workshop wird genehmigt \o/

Bau eines Prototypen „Wir schaffen das!“

Die Idee wird geboren

Infizierung des Teams

Produktivsystem läuft

finaler Lasttest

Entscheidung für die Eigenentwicklung!

Page 30: PHP Summit 2013 - Make or Buy?

„das wird niemals bewilligt“

Workshop wird genehmigt \o/

Bau eines Prototypen „Wir schaffen das!“

Wir sind live!

Die Idee wird geboren

Infizierung des Teams

Produktivsystem läuft

finaler Lasttest

Entscheidung für die Eigenentwicklung!

Page 31: PHP Summit 2013 - Make or Buy?

–Green Lantern

„With great power comes great responsibility“

Page 32: PHP Summit 2013 - Make or Buy?

ARCHITECTURE IS THE KEY

Page 33: PHP Summit 2013 - Make or Buy?

ARCHITECTURE IS THE KEY• Wenn man bei NULL anfängt, muss man sich gut

vorbereiten. Kein „just do it“ in dieser Phase.

Page 34: PHP Summit 2013 - Make or Buy?

ARCHITECTURE IS THE KEY• Wenn man bei NULL anfängt, muss man sich gut

vorbereiten. Kein „just do it“ in dieser Phase.

• Wichtig: nicht sofort in Technologien denken („Webprojekte macht man jetzt mit Rails“)

Page 35: PHP Summit 2013 - Make or Buy?

ARCHITECTURE IS THE KEY• Wenn man bei NULL anfängt, muss man sich gut

vorbereiten. Kein „just do it“ in dieser Phase.

• Wichtig: nicht sofort in Technologien denken („Webprojekte macht man jetzt mit Rails“)

• Technologieunabhängige Architektur steht am Anfang

Page 36: PHP Summit 2013 - Make or Buy?

ARCHITECTURE IS THE KEY

Webserver StoreFront

Middleware

DataPool

Search

StoreBack

Page 37: PHP Summit 2013 - Make or Buy?

TEAM SETUP

Page 38: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Coding Guidelines

Page 39: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Coding Guidelines

• PHP CodeSniffer Ruleset erarbeiten

Page 40: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Coding Guidelines

• PHP CodeSniffer Ruleset erarbeiten

• Welche Metriken sind uns wichtig und warum?

Page 41: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Coding Guidelines

• PHP CodeSniffer Ruleset erarbeiten

• Welche Metriken sind uns wichtig und warum?

• CI aufsetzen

Page 42: PHP Summit 2013 - Make or Buy?

TEAM SETUP

Page 43: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Definition of Done festlegen und leben

Page 44: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Definition of Done festlegen und leben

• interne QA durch zweiten Entwickler

Page 45: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Definition of Done festlegen und leben

• interne QA durch zweiten Entwickler

• Deploymentkonzept

Page 46: PHP Summit 2013 - Make or Buy?

TEAM SETUP• Definition of Done festlegen und leben

• interne QA durch zweiten Entwickler

• Deploymentkonzept

• so früh wie möglich ins CI integrieren

Page 47: PHP Summit 2013 - Make or Buy?

DEPLOYMENT

Page 48: PHP Summit 2013 - Make or Buy?

THINK ITERATIVE

Page 49: PHP Summit 2013 - Make or Buy?

THINK ITERATIVE• Mit minimalem Featureset starten

Page 50: PHP Summit 2013 - Make or Buy?

THINK ITERATIVE• Mit minimalem Featureset starten

• Stabiles Fundament errichten

Page 51: PHP Summit 2013 - Make or Buy?

THINK ITERATIVE• Mit minimalem Featureset starten

• Stabiles Fundament errichten

• Stabilen Stand nach und nach um Features erweitern

Page 52: PHP Summit 2013 - Make or Buy?

THINK ITERATIVE• Mit minimalem Featureset starten

• Stabiles Fundament errichten

• Stabilen Stand nach und nach um Features erweitern

• regelmäßige Reviews

Page 53: PHP Summit 2013 - Make or Buy?

DAS MINIMUM

Page 54: PHP Summit 2013 - Make or Buy?

DAS MINIMUM• Navigation

Page 55: PHP Summit 2013 - Make or Buy?

DAS MINIMUM• Navigation

• Produktlisting

Page 56: PHP Summit 2013 - Make or Buy?

DAS MINIMUM• Navigation

• Produktlisting

• Produktdetailseite

Page 57: PHP Summit 2013 - Make or Buy?

DAS MINIMUM• Navigation

• Produktlisting

• Produktdetailseite

• Warenkorb

Page 58: PHP Summit 2013 - Make or Buy?

DAS MINIMUM• Navigation

• Produktlisting

• Produktdetailseite

• Warenkorb

• Checkout (Adresse + Zahlart Vorkasse)

Page 59: PHP Summit 2013 - Make or Buy?

SOLVING CONFLICTS• Diskussionen über mögliche Lösungswege

brauchen einen Moderator und einen Entscheider, dessen Urteil akzeptiert wird

Page 60: PHP Summit 2013 - Make or Buy?

SOLVING CONFLICTS

Page 61: PHP Summit 2013 - Make or Buy?

SOLVING CONFLICTS• Alleingänge vermeiden und stoppen

Page 62: PHP Summit 2013 - Make or Buy?

SOLVING CONFLICTS• Alleingänge vermeiden und stoppen

• Ablehnung von kreativen Vorschlägen aus dem Team ist manchmal notwendig, aber demotivierend

Page 63: PHP Summit 2013 - Make or Buy?

SOLVING CONFLICTS• Alleingänge vermeiden und stoppen

• Ablehnung von kreativen Vorschlägen aus dem Team ist manchmal notwendig, aber demotivierend

• <insert anecdote here>

Page 64: PHP Summit 2013 - Make or Buy?

THE SKY TEAM IS THE LIMIT

Page 65: PHP Summit 2013 - Make or Buy?

THE SKY TEAM IS THE LIMIT• Bei der Umsetzung von Features gibt es quasi™

keine Grenzen mehr

Page 66: PHP Summit 2013 - Make or Buy?

THE SKY TEAM IS THE LIMIT• Bei der Umsetzung von Features gibt es quasi™

keine Grenzen mehr

• Das Team kennt jede einzelne Codezeile

Page 67: PHP Summit 2013 - Make or Buy?

THE SKY TEAM IS THE LIMIT• Bei der Umsetzung von Features gibt es quasi™

keine Grenzen mehr

• Das Team kennt jede einzelne Codezeile

• Schnelles Team = schnelle Weiterentwicklung

Page 68: PHP Summit 2013 - Make or Buy?

THE SKY TEAM IS THE LIMIT• Bei der Umsetzung von Features gibt es quasi™

keine Grenzen mehr

• Das Team kennt jede einzelne Codezeile

• Schnelles Team = schnelle Weiterentwicklung

• Langsames Team = langsame Weiterentwicklung

Page 69: PHP Summit 2013 - Make or Buy?

non-comment lines of code (NCLOC)

Magento CE 1.8.0.0 (/app)

Symfony 2.3.7 (/vendor)

globetrotter.de

0 125.000 250.000 375.000 500.000

ermittelt mit phploc 2.0.0

Page 70: PHP Summit 2013 - Make or Buy?

non-comment lines of code (NCLOC)

Magento CE 1.8.0.0 (/app)

Symfony 2.3.7 (/vendor)

globetrotter.de

0 125.000 250.000 375.000 500.000

ermittelt mit phploc 2.0.0

Page 71: PHP Summit 2013 - Make or Buy?

FAZITWarum war die Eigenentwicklung die richtige Entscheidung für uns?

Page 72: PHP Summit 2013 - Make or Buy?

FAZITWarum war die Eigenentwicklung die richtige Entscheidung für uns?

• Wir wollen kein „me too commerce“

Page 73: PHP Summit 2013 - Make or Buy?

FAZITWarum war die Eigenentwicklung die richtige Entscheidung für uns?

• Wir wollen kein „me too commerce“

• Wir haben die Chance, mit Innovationen den Markt mitzugestalten

Page 74: PHP Summit 2013 - Make or Buy?

FAZITWarum war die Eigenentwicklung die richtige Entscheidung für uns?

• Wir wollen kein „me too commerce“

• Wir haben die Chance, mit Innovationen den Markt mitzugestalten

• Wir wollen die volle Kontrolle über unsere Applikation

Page 75: PHP Summit 2013 - Make or Buy?

FAZITWarum war die Eigenentwicklung die richtige Entscheidung für uns?

• Wir wollen kein „me too commerce“

• Wir haben die Chance, mit Innovationen den Markt mitzugestalten

• Wir wollen die volle Kontrolle über unsere Applikation

• Wir haben die richtigen Leute!

Page 76: PHP Summit 2013 - Make or Buy?

WE ARE HIRING! (THIS IS THE Q&A SLIDE)

Page 77: PHP Summit 2013 - Make or Buy?

Sebastian Heuer | Globetrotter Ausrüstung

Make or Buy?