10 Tipps um Clean-Code in der SAP-Zeit erfolgreich anzuwenden

Preview:

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.

Citation preview

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 damir_majer@majcon.de www.majcon.de @majcon

ajer Consulting

Recommended