Hendrik Lösch
Software ist, was du draus
machst!
11.06.2020
211.06.2020ZEISS Digital Innovation, Hendrik Lösch
Sprecher
Hendrik Lösch
Senior Consultant
@HerrLoesch
hendrik.loesch@zeiss.com
hendrik-loesch.de
311.06.2020ZEISS Digital Innovation, Hendrik Lösch
ZEISS Gruppe
ZEISS weltweit
31.260
Mitarbeiter
Standorte weltweit (gerundet)
100
Länder (gerundet)
50
411.06.2020ZEISS Digital Innovation, Hendrik Lösch
ZEISS Gruppe
Zukunft gestalten
Sparten
der ZEISS Gruppe
Semiconductor Manufactoring
Technology
 Semiconductor Manufactoring
Optics
 Semiconductor Mask Solutions
 Process Control Solutions
Industry Quality & Research
 Industrial Quality Solutions
 Research Microscopy Solutions
Medical Technology
 Ophthalmic Devices
 Microsurgery
Consumer Markets
 Vision Care
 Consumer Products
511.06.2020ZEISS Digital Innovation, Hendrik Lösch
ZEISS Digital Innovation
Strategische Synergien schaffen
Innovative Digitalisierungsprojekte mit und für die Kunden von ZEISS
Sparten
der ZEISS Gruppe
Semiconductor Manufactoring
Technology
Industry Quality & Research Medical Technology Consumer Markets
611.06.2020ZEISS Digital Innovation, Hendrik Lösch
300feste Mitarbeiter
in Deutschland und Ungarn
30
Jahre Erfahrung in
Individualsoftware-
entwicklung
7
Standorte
in München, Dresden, Berlin,
Hamburg, Leipzig, Görlitz und
in Miskolc (Ungarn)
ZEISS Digital Innovation
Unsere Erfahrung in Zahlen
10
Jahre agiles
Management
711.06.2020ZEISS Digital Innovation, Hendrik Lösch
Schlechter Code
811.06.2020ZEISS Digital Innovation, Hendrik Lösch
Mustererkennung
911.06.2020ZEISS Digital Innovation, Hendrik Lösch
Mustererkennung
1011.06.2020ZEISS Digital Innovation, Hendrik Lösch
Mustererkennung
1111.06.2020ZEISS Digital Innovation, Hendrik Lösch
Quelle: Ron Jeffries http://xprogramming.com/articles/refactoring-not-on-the-backlog
Schlechter Code
1211.06.2020ZEISS Digital Innovation, Hendrik Lösch http://www.objectmentor.com/resources/articles/dip.pdf
Schlechter Code
• It is hard to change because every change affects too many other parts of
the system. (Rigidity - Starr)
• When you make a change, unexpected parts of the system break. (Fragility -
Zerbrechlich)
• It is hard to reuse in another application because it cannot be disentangled
from the current application. (Immobility - Unbeweglich)
1311.06.2020ZEISS Digital Innovation, Hendrik Lösch
• It is hard to change because every change affects too many other parts of
the system. (Rigidity - Starr)
• When you make a change, unexpected parts of the system break. (Fragility -
Zerbrechlich)
• It is hard to reuse in another application because it cannot be disentangled
from the current application. (Immobility - Unbeweglich)
• It is hard to test because it cannot be disentangled from the current
application.
Schlechter Code
1411.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
1511.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
1611.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
A
X
1711.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
A
X
Z
1811.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
1911.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
2011.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
3 3
7
1 11 1
Kumulierte Komponentenabhängigkeit
(cumulated component dependency)
= 1*7 + 2*3 + 4*1 = 17
2111.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
? 3
?
1 1? 1
Kumulierte Komponentenabhängigkeit
(cumulated component dependency)
= 7² = 49
2211.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
? 3
?
1 1? 1
Kumulierte Komponentenabhängigkeit
(cumulated component dependency)
= 7² = 49
2311.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
A
X
Z
2411.06.2020ZEISS Digital Innovation, Hendrik Lösch
Abhängigkeiten
A
X
Z
2511.06.2020ZEISS Digital Innovation, Hendrik Lösch
Schulden
2611.06.2020ZEISS Digital Innovation, Hendrik Lösch
Martin Fowler http://martinfowler.com/bliki/TechnicalDebtQuadrant.html
Ward Cunningham
rücksichtslos umsichtig
überlegt
versehentlich
„Wir haben
keine Zeit für
ein Design.“
„Wir müssen jetzt
liefern und uns
später um die
Konsequenzen
kümmern.“
„Jetzt wissen wir
wie wir es hätten
machen müssen.“
„Layer? Was ist
das?“
Technische Schulden
2711.06.2020ZEISS Digital Innovation, Hendrik Lösch
Anpassbarkeit
Business Value
Featureentwicklung mit
geringem Qualitätsanspruch
Featureentwicklung
unter hohem Zeitdruck
Umfassende
Restrukturierung inkl.
neuer Features
Einsatz von
Refactoring
Start der
Entwicklung
Anpassbarkeit vs. Business Value
2811.06.2020ZEISS Digital Innovation, Hendrik Lösch
Anforderungs-
schulden
„Schulden“
Dokumentations-
schulden
Technische
Schulden
Testschulden
2911.06.2020ZEISS Digital Innovation, Hendrik Lösch
Quelle: Softwareevolution Erhaltung und Fortschreibung bestehender Softwaresysteme, Harry M. Sneed, Richard Seidl
Entwicklung
Weiter-
entwicklung
Weiter-
entwicklung
Weiter-
entwicklung
Stabilisierung Optimierung Sanierung
Stabilisierung
Stabilisierung
Optimierung
t in Jahren
Aufgaben
3011.06.2020ZEISS Digital Innovation, Hendrik Lösch
Entwicklung
Weiter-
entwicklung
Weiter-
entwicklung
Weiter-
entwicklung
Stabilisierung
Optimierung
Sanierung
Stabilisierung
Stabilisierung
Optimierung
t in Jahren
Aufgaben und Leistungsfähigkeit
LeistungsvermögendesTeams
3111.06.2020ZEISS Digital Innovation, Hendrik Lösch
Kosten
3211.06.2020ZEISS Digital Innovation, Hendrik Lösch
Development Costs
Operating Costs
Costs
t
Close
Down
ServicingEvolutionInitial Development Phase Out
Phasen & Kosten
3311.06.2020ZEISS Digital Innovation, Hendrik Lösch
Fehlerkosten
Fehlerkosten
Prozessfortschritt
Automatisierte Tests
Manuelle Tests
Abnahme durch Fachbereich
Produktiveinsatz Fachbereich
Auswirkungen auf Endkunden
Entwicklungsintern
Extern
3411.06.2020ZEISS Digital Innovation, Hendrik Lösch
Wie geht es besser?
3511.06.2020ZEISS Digital Innovation, Hendrik Lösch
Vorgehen
Problem
verstehen
Problem
lösen
Lösung
testen
Aufräumen
3611.06.2020ZEISS Digital Innovation, Hendrik Lösch
Vorgehen
Problem
verstehen
Problem
lösen
Lösung
testen
Aufräumen
3711.06.2020ZEISS Digital Innovation, Hendrik Lösch
Literatur für Softwareentwickler
Software ist was du draus machst!

Software ist was du draus machst!

Hinweis der Redaktion

  • #9 01_01 URL funktioniert nicht!!!!
  • #10 01_01 URL funktioniert nicht!!!!
  • #11 01_01