Transcript

Slide # © 2015 Gernot Starke / Michael Mahlberg

Ökonomie und Architektur als effektives Duo

1

Gernot  Starke   Michael  Mahlberg  

The Consulting Guild

Slide # © 2015 Gernot Starke / Michael Mahlberg 2

Ökonomie   Architektur  

Op4mierungs-­‐  und  Modernisierungsprojekte,  Prozessberatung  (Logis4k,  Finanzen,  Versicherungen,  Medien,  Gesundheitswesen...)  

Reviews  &  Coaching,  Finance  /  Insurance,  Blogger,  Publika4onen,  Magazine  

(BWL-­‐orien4erte)    Reviews  +  Audits  in  Handel,  Logis4k,  Pharma,  Maschinenbau,  Telko  .…  

arc42,  Java-­‐Welt,  Informa4onssysteme,  Fachbücher,  iSAQB    

Gernot  

Michael  

Slide # © 2015 Gernot Starke / Michael Mahlberg

TAKEAWAY

Langfristige Verbesserung benötigt

Betriebswirtschaft ���und !

Technik

Technik Betriebs-���wirtschaft

Slide # © 2015 Gernot Starke / Michael Mahlberg 4

Slide # © 2015 Gernot Starke / Michael Mahlberg

MODERNISIERUNG & CO Jemand möchte mit/an IT-System: • mehr Geld verdienen • weniger Geld ausgeben • Fehler beheben • Norm/Gesetz erfüllen • … • Sourcecode oä verbessern 5

Slide # © 2015 Gernot Starke / Michael Mahlberg

KONSEQUENZ…

6

Slide # © 2015 Gernot Starke / Michael Mahlberg 7

architecture improvement method

Slide # © 2015 Gernot Starke / Michael Mahlberg

• Sammlung etablierter Praktiken + Patterns

• Open-Source

8

Slide # © 2015 Gernot Starke / Michael Mahlberg

für technische und betriebswirtschaftliche Stakeholder

9

iterativ/inkrementell!

praxiserprobt !

Slide # © 2015 Gernot Starke / Michael Mahlberg 10

iterativ/!inkrementell!

Slide # © 2015 Gernot Starke / Michael Mahlberg 11

analyze

evaluate

improve

collect…

Slide # © 2015 Gernot Starke / Michael Mahlberg 12

Improvement Backlog

Issue List(problems, risks)

analyze

evaluate

improve

collect…

Slide # © 2015 Gernot Starke / Michael Mahlberg 13

m:n!

Improvement Backlog

Issue List(problems, risks)

Slide # © 2015 Gernot Starke / Michael Mahlberg 14

Slide # © 2015 Gernot Starke / Michael Mahlberg

betriebswirtschaftlich ���bewertete Probleme

in Architektur, Code, Daten, Prozessen, Betrieb, Deployment…

15

Issue List(problems, risks)

Slide # © 2015 Gernot Starke / Michael Mahlberg

betriebswirtschaftlich ���bewertete Maßnahmen

für Architektur, Code, Daten, Prozessen, Betrieb, Deployment…

16

Improvement Backlog

Slide # © 2015 Gernot Starke / Michael Mahlberg 17

QualitativeAnalysis

ContextAnalysis

StakeholderAnalysis

StakeholderInterviewprepares

validatesexternal

stakeholder

QuantitativeAnalysis

finds risksand non-risks

gives overview

fundamental crosscutting

Legend:collectissues

collectimprovementopportunities

Development ProcessAnalysis

part of

findinput for

Slide # © 2015 Gernot Starke / Michael Mahlberg

fundamental crosscutting

Legend:

EstimateIssueCost

EstimateImprovement

Cost

Estimatein

Interval

EstimateFeatureValue

ExplicitAssumption

requiresbased upon

ImprovementBacklog

IssueList

Artifact

Slide # © 2015 Gernot Starke / Michael Mahlberg

DER ROI

19

Slide # © 2015 Gernot Starke / Michael Mahlberg 20 Photo Credit: http://de.wikipedia.org/w/index.php?title=Datei:Drehbare_Hochleistungsrichtantenne_ORF_Moosbrunn.JPG&filetimestamp=20070410160520&

Radio Oesterreich International

Slide # © 2015 Gernot Starke / Michael Mahlberg 21

Republic of Ireland

Photo Credit: Some rights reserved by ConorLuddy http://www.flickr.com/photos/conorluddy/5112308189/sizes/l/

Slide # © 2015 Gernot Starke / Michael Mahlberg 22

Picture Credit: http://commons.wikimedia.org/wiki/File:ROI_Treiberbaum_Du_Pont.png

Return On Investment

Slide # © 2015 Gernot Starke / Michael Mahlberg 23

Picture Credit: http://commons.wikimedia.org/wiki/File:ROI_Treiberbaum_Du_Pont.png

Return On Investment

Slide # © 2015 Gernot Starke / Michael Mahlberg

AUS WIKIPEDIA

24

Slide # © 2015 Gernot Starke / Michael Mahlberg

DAS BEDEUTET

25

ROI = Umsatzrendite Kapitalumschlag x

Slide # © 2015 Gernot Starke / Michael Mahlberg

UMFORMEN

26

x Nettoumsatz

—————— Gesamtkapital

Gewinn ——————

Nettoumsatz ROI =

Slide # © 2015 Gernot Starke / Michael Mahlberg

UMFORMEN

27

x Nettoumsatz

—————— Gesamtkapital

Gewinn ——————

Nettoumsatz ROI =

Slide # © 2015 Gernot Starke / Michael Mahlberg

UMFORMEN

28

Gewinn —————— Gesamtkapital

ROI =

Slide # © 2015 Gernot Starke / Michael Mahlberg 29

Nettoumsatz 120.000,00 €

Gesamtkapital 50.000,00 €

Gewinn 25.000,00 €

Nettoumsatz 120.000,00 €

Kapital-umschlag = 2,4

Umsatz-rendite = 20,833 %

ROI = 0,5

=

=

Slide # © 2015 Gernot Starke / Michael Mahlberg

Ein Dollar heute…

30

Photo Credit: Some rights reserved by ceoln http://www.flickr.com/photos/ceoln/1333316/

Slide # © 2015 Gernot Starke / Michael Mahlberg

A dollar today is worth more than a dollar tomorrow.

31

Photo Credit: Some rights reserved by soozafone http://www.flickr.com/photos/gaberosiak/7012720629/

Slide # © 2015 Gernot Starke / Michael Mahlberg

9% ZINSSATZ

32

Slide # © 2015 Gernot Starke / Michael Mahlberg

9% ZINSSATZ

33

Slide # © 2015 Gernot Starke / Michael Mahlberg

4.000 - 3.000 = 1000 ?

34

Slide # © 2015 Gernot Starke / Michael Mahlberg

ZINSEN! (9%)

35

Slide # © 2015 Gernot Starke / Michael Mahlberg

9% ?

36

Quelle: http://de.wikipedia.org/wiki/Leitzins Stand 22.01.2015

Slide # © 2015 Gernot Starke / Michael Mahlberg 37

http://de.statista.com/statistik/daten/studie/261430/umfrage/umsatzrenditen-im-deutschen-mittelstand-nach-branchen/

Slide # © 2015 Gernot Starke / Michael Mahlberg

ROI BEI 10,2% ZINS: -5%

38

Slide # © 2015 Gernot Starke / Michael Mahlberg 39

http://de.statista.com/statistik/daten/studie/261430/umfrage/umsatzrenditen-im-deutschen-mittelstand-nach-branchen/

Slide # © 2015 Gernot Starke / Michael Mahlberg

ROI BEI 4,8% ZINS: 13%

40

Slide # © 2015 Gernot Starke / Michael Mahlberg

BREAK EVEN STATT ROI

41

Slide # © 2015 Gernot Starke / Michael Mahlberg

UML AUF WHITEBOARDS?

Slide # © 2015 Gernot Starke / Michael Mahlberg

Slide # © 2015 Gernot Starke / Michael Mahlberg

• Wiederholte Erklärungen: 2h pro Woche (3 Personen)

• Time to Market: im Schnitt +2 Wochen

• Aufwand pro Diagramm 2 PT (2 Stunden mit 8 Personen)

IN ZAHLEN...

Slide # © 2015 Gernot Starke / Michael Mahlberg

Slide # © 2015 Gernot Starke / Michael Mahlberg

Slide # © 2015 Gernot Starke / Michael Mahlberg

Slide # © 2015 Gernot Starke / Michael Mahlberg

analy

ze

evaluate

improve

crosscuttingpractices &principles

collect issues

collect opportunities for

improvementcreate from

ExplicitAssumption

ImprovementBacklog

keep explicitlist or table

helps understand

IssueList

keep explicitlist or table

m:n mapping

ArchitecturalUnderstanding

findissues

developimprovementopportunities

Slide # © 2015 Gernot Starke / Michael Mahlberg

fundamental crosscutting

Legend:

EstimateIssueCost

EstimateImprovement

Cost

Estimatein

Interval

EstimateFeatureValue

ExplicitAssumption

requiresbased upon

ImprovementBacklog

IssueList

Artifact

Slide # © 2015 Gernot Starke / Michael Mahlberg

• Schulungskosten = 5 x interner Satz

• Teilnehmer = 16 Mitarbeiter

• Schulungsdauer = 2 Tage

=> 16 * 2 + 5 * 2 = 42 PT!

EXPLIZITE ANNAHMEN

Slide # © 2015 Gernot Starke / Michael Mahlberg

• Direkte Ersparnis:��� 2h * 3pers * 4wo = 3 PT/Monat

• Ersparnis über „Time to Market“��� Business-Einschätzung = 2 PT/Monat

• Gewinn über Erhaltung des Wertes��� 5 Skizzen * 2PT * 20% = 2 PT/Monat

=> Ersparnis pro Monat = 7 PT!

EXPLIZITE ANNAHMEN

Slide # © 2015 Gernot Starke / Michael Mahlberg

• Schulungstermin im Juni

• Nutzung ab Juli diesen Jahres ( 6 Monate)

=> Ersparnis dieses Jahr: 7 PT * 6 Monate = 42 PT!

=> Ersparnis Folgejahre: 7 PT * 12 Monate = 84 PT!

EXPLIZITE ANNAHMEN

Slide # © 2015 Gernot Starke / Michael Mahlberg

WANN RECHNET SICH UML? *

53

* In Jahren, bei 10,2%

Slide # © 2015 Gernot Starke / Michael Mahlberg

WANN RECHNET SICH UML? *

54

* In Monaten, bei 10,2% p.a. / 0,86% p.m.

Slide # © 2015 Gernot Starke / Michael Mahlberg

BEISPIEL:���„BIGSHOP“*

���42

* Projekt aus 2014 >>1.5 Mio LOC

Slide # © 2015 Gernot Starke / Michael Mahlberg

ANALYZE + EVALUATE ... Sales

Frontend

Cash Management

ClientPersonalization

ClientData / Contract

UserManagement

NationalCatalogue

Vouchers

Rebate and Reduction

Cards

EuropeanCatalogue

ExternalPartners

Sales Offices

PriceManagement

Data Warehouse

Marketing &Sales

CampaignsTravel Agents

API & UI

PricingEngine

SalesBackend

Legend:

JavaPHPPythonC/C++

Web ServerExtensions

Pricing Data Store

Lisp-ishCobolSecurity

ExtensionsPL/SQL

Slide # © 2015 Gernot Starke / Michael Mahlberg

FAKTEN AUS „BIGSHOP“

• Technologie-Zoo: • System aus >20 Subsystemen in 8+ Technologien

• Organisations-Zoo: • diverse Dienstleister, verteilte Entwicklung

• Prozess-Zoo: • Diverse „Meinungen“ über Abläufe in Entwicklung,

Release, Betrieb...

Slide # © 2015 Gernot Starke / Michael Mahlberg

PROBLEME „BIGSHOP“ Issue / Problem Description Cost Time-­‐to-­‐Market   6-­‐12  month(!!)  from  business  

requirement  to  release  /  produc4on  Sales-­‐loss  >  20-­‐250k€  /  Qtr  

Certain  product-­‐configura4ons  crash  basket  

Users  configure  certain  types  of  products,  apply  certain  rebates  -­‐>  several  backend  processes  crash  

15min  operator  4me  /  crash  

know-­‐how  drain  in  development  

(expert-­‐)developers  dissa4sfied  with  overall  architecture/implementa4on  leave  development  organisa4on(s)  

Excessive  4me  for  bugfixes  

Several  (business-­‐cri4cal)  bugs  took  2-­‐4  weeks  (!)  to  fix  (e.g:  „combined  basked  price  zero“)  

1. sales  loss  50-­‐100€/sale,  5-­‐30x/day  

2. reputa4on  loss  Overly  

heterogenous  8+  different  technologies  used  in  development  /  architecture  

2-­‐20%  of  budget  

Slide # © 2015 Gernot Starke / Michael Mahlberg 59

https://www.flickr.com/photos/celestinechua/9661913835

Slide # © 2015 Gernot Starke / Michael Mahlberg

IMPROVEMENT – DONE RIGHT

Approaches

Fundamentals

PracticesTechnik

Betriebs-���wirtschaft

Slide # © 2015 Gernot Starke / Michael Mahlberg

ImproveProcesses

ImproveIteratively

ReduceComplexity

fundamental Category

Legend:

ImproveCode

Structure

ImproveCrosscutting

Concepts

Determine Improvement

Approach

Improve Technical

Infrastructure

Improve Analysability& Evaluability

Verify AfterEvery

Change

Fast Feedback

ExplicitAssumptions

GroupImprovement

Actions

PrototypeImprovement

FUNDAMENTALS

Technik

Slide # © 2015 Gernot Starke / Michael Mahlberg

FUNDAMENTALS

Technik

Approaches

Fundamentals

Practices

ImproveIteratively

ReduceComplexity

Verify AfterEvery

Change

Fast Feedback

ExplicitAssumptions

GroupImprovement

Actions

PrototypeImprovement

Slide # © 2015 Gernot Starke / Michael Mahlberg

ImproveProcesses

Category

Legend:

ImproveCode

Structure

ImproveCrosscutting

Concepts

Improve Technical

Infrastructure

Improve Analysability& Evaluability

Practice

Improve Hardware

Improve Logging

Improve Test Automation

Measure

Extract Business Domain

Improve Use of Technology

Introduce Better Technology

Quality Driven Software

Architecture

Improve Supporting Software

Automate Release

Improve Engineering

Improve Delivery

Improve Operations

Improve Governance

Improve Flow

Schedule Work

RefactorCode

RestructureCode

Enable Team

Improve Test Infrastructure

Modularize

Technik

Slide # © 2015 Gernot Starke / Michael Mahlberg

QUALITÄTSZIELE

Q-Ziel Bedeutung / Szenarien

Flexibilität •  Neues csv-Importformat in <4h konfigurierbar

Last / Performance

•  250.000 Fotos à 5MB innerhalb von 4h verarbeitet

Sicherheit •  Mandant kann niemals Zugriff auf Daten anderer Mandanten erhalten

Architektur-/Lösungsansatz

•  Konfigurationssprache für CSV-Parser, Basis ANTLR

•  Syntaxgesteuerter Editor

•  Bilder als Dateien speichern, Links in DB

•  Lasttests im DailyBuild •  Generator für Testdaten

•  Mandantenspezifische Daten grundsätzlich in (eigener) VM

•  Datenlieferungen grundsätzlich in mandantenspezifische Verzeichnisse (ftp-Server)

•  Unix-Kennungen spezifisch für Mandanten

QUALITY-DRIVEN ARCHITECTURE

Slide # © 2015 Gernot Starke / Michael Mahlberg

ImproveCode

Structure

Category

Legend:

Practice

IntroduceInterfaces

RefactorCodeModularize

Untangle Code Remove Nested Control Structures

Deprecate Obsolete Parts

ImproveResponsibility

Improve Code Layout

Move Behavior Close To Data

Split Up Oversized Parts

Handle If-Else Chains

InterfaceSegregation

AnticorruptionLayer

Hide Unmaintainable

Code

IntroduceLayering

Extract Reusable Component

Integrate Reusable Component

Remove Unused Parts

Eliminate Navigation Code

Bridge to New Town

Toggle Feature

RestructureCode

Technik

Slide # © 2015 Gernot Starke / Michael Mahlberg

APPROACHES Determine Improvement

Approach

Strangulate Bad Parts

Big Bang

Frontend Switch

Change Via Copy

Keep Data,Toss Code

ManagedEvolution

Change Via Split

Data Migration

Betriebs-���wirtschaft

Slide # © 2015 Gernot Starke / Michael Mahlberg

Slide # © 2015 Gernot Starke / Michael Mahlberg

APPROACHES Determine Improvement

Approach

Strangulate Bad Parts

Big Bang

Frontend Switch

Change Via Copy

Keep Data,Toss Code

ManagedEvolution

Change Via Split

Data Migration

Betriebs-���wirtschaft

Slide # © 2015 Gernot Starke / Michael Mahlberg

CHANGE-VIA-SPLIT Determine Improvement

Approach

Strangulate Bad Parts

Big Bang

Frontend Switch

Change Via Copy

Keep Data,Toss Code

ManagedEvolution

Change Via Split

Data Migration

Copy

1.

2a

2b

3a

3b

Legend:

bad medium good Split Improve

Slide # © 2015 Gernot Starke / Michael Mahlberg

OPTIONEN UND REALE OPTIONEN

Slide # © 2015 Gernot Starke / Michael Mahlberg

Das Recht, aber nicht die Verpflichtung, «etwas» zu «einer bestimmten Zeit» zu

einem «bestimmten Preis» von einer spezifische «Partei» zu kaufen.

(CALL) OPTION

Slide # © 2015 Gernot Starke / Michael Mahlberg

Das Recht, aber nicht die Verpflichtung, «etwas» zu «einer bestimmten Zeit» zu

einem «bestimmten Preis» von einer spezifische «Partei» zu kaufen.

OPTION

Slide # © 2015 Gernot Starke / Michael Mahlberg

OPTIONSTHEORIE REAL OPTIONS

73

Nach Chris Matts und Olav Maassen

Zu finden unter http://commitment-thebook.com

Slide # © 2015 Gernot Starke / Michael Mahlberg

• Hotelbuchungen

• Flugtickets

• Datenbank-Zugriffsschicht

• Etc.

BEISPIELE

Photo Credit: Some rights reserved by Kevin Dooley

https://www.flickr.com/photos/pagedooley/1577999575

Slide # © 2015 Gernot Starke / Michael Mahlberg

REAL OPTIONS

75

Optionen haben einen Wert Optionen laufen ab

Keine frühen Festlegungen, es sei denn, man weiß warum

Slide # © 2015 Gernot Starke / Michael Mahlberg

FAZIT (1)

Bewerte Probleme und Lösungsvorschläge

getrennt

Slide # © 2015 Gernot Starke / Michael Mahlberg

FAZIT (2)

verbessere ���iterativ / inkrementell

Slide # © 2015 Gernot Starke / Michael Mahlberg

FAZIT (3)

Führe ���Problem-Liste und

Improvement-Backlog

Slide # © 2015 Gernot Starke / Michael Mahlberg

FAZIT (4)

Investiere heute um reale Optionen in der

Zukunft zu haben

Slide # © 2015 Gernot Starke / Michael Mahlberg

FAZIT (5)

Langfristige Verbesserung���benötigt

Betriebswirtschaft + Technik

Slide # © 2015 Gernot Starke / Michael Mahlberg

Photo Credit: Some rights reserved by Bettina Braun soozafone https://www.flickr.com/photos/bettina-braun/277386361/

Slide # © 2015 Gernot Starke / Michael Mahlberg

Dr. Gernot Starke

[email protected]

http://gernotstarke.de http://innoq.com

http

s://w

ww

.flick

r.com

/pho

tos/f

oto_

db/1

6000

6360

92

Michael Mahlberg

[email protected]

http://michaelmahlberg.de


Recommended