10 tipps um clean-code in der sap-zeit erfolgreich anzuwenden
DESCRIPTION
Dies ist ein Erfahrungsbericht, wie Clean Code im SAP-Umfeld angewendet werden kann. Es zeigt den Wunsch die Vorteile von Clean Code wie Stabilere Programme, bessere Lesbarkeit, bessere Wartbarkeit von existierender und neu zu entwickelnder Software im SAP-Umfeld pragmatisch und praktikabel umzusetzen. Der Vortrag zeigt 10 Tipps, die von der Einführung bis zur Umsetzung und Vermarktung von Clean Code gehen.TRANSCRIPT
10 Tipps um Clean Code in der SAP-Zeit erfolgreich anzuwenden
Damir Majer Agile ABAP Developer www.majcon.de @majcon
Clean Code Days 2014
Unit-Tests mit ABAP® Unit dpunkt.verlag
Besseres ABAP Schnell, sicher, robust SAP Press
[aˈɡiːl]agil
Bedeutung von großer Beweglichkeit zeugend; regsam und wendig
Herkunft lateinisch agilis von agere, „tun, machen, handeln“
adjektiv
> „Being Agile means adapting successfully to new circumstances“
Tom Gilb
Software ist komplex
Was ist unser status quo?
Lerne aus Fehlern
Lerne aus ErfolgenClean Code
5Kenne dein Spielfeld
Wofür steht SAP?
> Fünf ehemalige IBM-Mitarbeiter, darunter Dietmar Hopp und Hasso Plattner, gründeten 1972 die Firma SystemAnalyse und Programmentwicklung GbR
> Größter europäischer und weltweit viertgrößter Softwarehersteller
> ca. 65.000 Mitarbeiter
> Tätigkeitsschwerpunkt ist die Entwicklung von Software im Betriebswirtschaftlichem Umfeld
> Derzeit ca. 750 Betriebswirtschaftliche Module, wie z.B. Finanzwesen, Controlling, Personalwirtschaft, Logistik usw..
Spaceshuttle
Windows 95
Windows XP
SAP R/3
SAP NW
0 Mio 60 Mio 120 Mio
120 Mio
80 Mio
45 Mio
10 Mio
3 Mio
Lines of Code
SAP im Vergleich zu anderer Software
Programmiersprache ABAP> Advanced Business Application Programming> Prozedurales- und Objektorientiertes Programmierparadigma> Hauseigene Programmiersprache der SAP AG> Abwärtskompatibel
Besonderheiten von ABAP
smalltalk
Java
C++
ABAP
0 400 800 1200 1600
1600
70
60
6
Sprachelemente
Standard- und Individualsoftware
Was heißt das?
SAP-FI Custom Code
SAP-Co
Custom Code
SAP-HR
Custom Code
SAP-System
Becoming an ABAP DeveloperClean Code
Methoden Kommunikation
Attitude
Be pragmatic
ABAP Skills
1. Step
Kenne die Methoden
VorgehensmodellePraktiken
Prinzipien
Vorgehensmodelle
XP
Scrum
Kanban
Scrumban
V-Modell
Praktiken
Continuous Delivery
Continuous Testing
Test-Driven-Development
Refactoring
Continuous Integration
DSLDomain-Driven-Design
Coding Katas
Methoden Kommunikation
Attitude
Be pragmatic
ABAP Skills
2. Step
Attitude / Einstellung
Permanentes Lernen
Wenn du ein Problem hast, versuche es zu lösen. Kannst du es nicht lösen, dann mache kein Problem daraus.
Gautama Buddha
KommunikationMethoden
Attitude
Be pragmatic
ABAP Skills
3. Step
> Face-to-Face > Austausch mit Anderen > Anforderungen besprechen
Kommunikation
ABAP Skills
Methoden Kommunikation
Attitude
Be Pragmatic
4. Step
Copyright Majer Consulting
ABAP Skills
ABAP Skills
ABAP Objects
ABAP Unit
Unit-Testing
SAP Hana
Design Pattern
Testautomatisierung
New Technologies
eCATT
SAP TAO
ATC
Code smells
Copyright Majer Consulting
clean-code-developer Kreislauf
http://michael.hoennig.de/2009/08/08/clean-code-developer-ccd/
Be pragmaticMethoden Kommunikation
Attitude
ABAP Skills
5. Step
Be pragmatic
starte einfach, statt kompliziert
Leg einfach los!
Fokus
Erreiche das Ziel
„Nimm an, was nützlich ist. Lass weg, was unnütz ist.Und füge das hinzu, was dein Eigen ist.“ - Bruce Lee
Methoden Kommunikation
Attitude
Be pragmatic
ABAP Skills
und nun?
ABAP
Welches Spielfeld bringt Sie weiter?
Pair Programming zum Know-how Aufbau
Eigene Metriken erstellen
Fortschritt dokumentieren
PR & Marketing planen…
Tue Gutes und rede darüber!
Clean Code in SAP
… auch Clean Code in SAP
Damir Majer Agile ABAP Developer mail [email protected] www.majcon.de @majcon
ajer Consulting