Zurück

In den Warenkorb

Empfehlung per E-Mail versenden

Probeexemplar anfordern

Gerne schicken wir Ihnen ein Probeexemplar an die angegeben Adresse.
Agile ABAP-Entwicklung

Agile ABAP-Entwicklung

Testgetriebene Entwicklung, Scrum, Lean Development, Walking Skeleton u.v.m.

vonSchwarzmann, Winfried
Deutsch, Erscheinungstermin Januar 2019
lieferbar

Buch (gebunden)

79,90 €
(inkl. MwSt.)

eBook (EPUB ohne DRM)

79,90 €
(inkl. MwSt.)
Let's go agile! Geht das überhaupt mit ABAP? Dieses Buch führt Sie passgenau in die agile Entwicklung ein und setzt dabei genau da an, wo Sie sich auskennen: bei Ihrem Legacy Code. Sie lesen, wie Sie Ihre Programme Schritt für Schritt verbessern und erlernen dabei die wichtigsten Methoden der testgetriebenen...

Informationen zum Titel

978-3-8362-6186-9
Bonn
Januar 2019
2019
1
Buch (gebunden)
1188 g
575
181 mm x 246 mm x 40 mm
Color of cover: Black, Color of cover: Grey, Color of cover: Silver, Color of cover:, Color of cover: White, Bonn
Deutsch
Informationstechnik (IT), allgemeine Themen, Software Engineering, SAP (Systeme, Anwendungen und Produkte in Datenbanken), Informatik, Programmier- und Skriptsprachen, allgemein



Vorwort ... 21




Einleitung ... 23




1. Einführung ... 31



1.1 ... Nachhaltigkeit: Entwicklung und Wartung mit einer Testinfrastruktur ... 32


1.2 ... Agilität: Praktiken des Agile Software Engineerings ... 37


1.3 ... Effizienz: Einhaltung von Designprinzipien ... 38


1.4 ... Kommunikation: Diagramme als Gesprächsgrundlage ... 42







TEIL I Aufbau einer Testinfrastruktur ... 45





2. Beispielanwendung für diesen Buchteil ... 47



2.1 ... Stammdatenmanagement ... 48


2.2 ... Benutzeroberfläche ... 50


2.3 ... Backend ... 51





3. Codebasierte Verbesserung eines Tests ... 55



3.1 ... Einführung in den Testcode ... 55


3.2 ... Allgemeine Clean-Code-Prinzipien ... 67


3.3 ... Testorientierte Clean-Code-Prinzipien ... 76





4. Designbasierte Verbesserung des Tests ... 85



4.1 ... Basisklasse von Testklassen ... 85


4.2 ... Verwendung von Hilfsklassen durch Testklassen ... 91





5. Robuster Integrationstest ... 99



5.1 ... Verbesserungsprozess ... 99


5.2 ... Unabhängigkeit von Testmethoden ... 100


5.3 ... Wiederholbarkeit von Testmethoden ... 105





6. Minimierung von Abhängigkeiten ... 113



6.1 ... Vereinfachung einer Verwendung ... 114


6.2 ... Abgrenzung einer Verwendung ... 121


6.3 ... Unabhängigkeit von einer Erzeugung ... 125


6.4 ... Unabhängigkeit von einer Erweiterung ... 131





7. Isolierter Komponententest ... 137



7.1 ... Transformation des Integrationstests ... 138


7.2 ... Skalierung mit einer Testsprache ... 150


7.3 ... Testgetriebene Entwicklung ... 157


7.4 ... Liskov-Substitution-Prinzip ... 161





8. Redesign mit Unit-Tests ... 165



8.1 ... Objektorientierte API für Entitäten ... 167


8.2 ... Hervorheben von Änderungen als eigenständige Einheit ... 170


8.3 ... Tests für die Highlight-Changes-Klasse ... 177


8.4 ... Zusammenfassung des ersten Teils ... 182







TEIL II Testorientiertes ABAP-Design ... 185





9. Design von Methoden ... 187



9.1 ... Regeln zur Implementierung einer Methode ... 188


9.2 ... Regeln für die Signatur einer Methode ... 196





10. Design von Klassen ... 209



10.1 ... Erzeugung eines Objekts durch seine Klasse ... 210


10.2 ... Erzeugung eines Objekts durch eine Factory-Klasse ... 213


10.3 ... Abhängigkeitsarten zwischen Klassen ... 217


10.4 ... Interfaces einer Klasse ... 220


10.5 ... Abstraktionsebenen innerhalb einer Klasse ... 222


10.6 ... Katalog-Entwurfsmuster ... 229


10.7 ... Innerer Zusammenhalt ... 231





11. Design von Paketen ... 237



11.1 ... Paketkonzept ... 237


11.2 ... Produktpakete ... 244


11.3 ... Testpakete ... 246





12. Testfälle ... 249



12.1 ... Testdesign ... 250


12.2 ... Testpyramide ... 253


12.3 ... Testabdeckung ... 256





13. Testdoubles ... 259



13.1 ... Vorteile von Testdoubles ... 259


13.2 ... Spezifikation von Testdoubles ... 263


13.3 ... Design von Testdoubles ... 269


13.4 ... Injektion von Testdoubles ... 275





14. Globale Testdoubles ... 289



14.1 ... Testdouble für eine DOM-Methode ... 290


14.2 ... Testdouble für zwei DOM-Methoden ... 295


14.3 ... Kombination zweier Methodendoubles ... 301


14.4 ... Globalisierung von Testdoubles ... 307


14.5 ... Design globaler Testdoubles ... 310


14.6 ... Anpassung globaler Testdoubles ... 313





15. Testklassen ... 319



15.1 ... Lokale Testklassen ... 321


15.2 ... Entwurfsmuster ... 324


15.3 ... Testklassenhierarchien ... 327


15.4 ... Globale Testklassen ... 331


15.5 ... Namenskonventionen für Testcode ... 333





16. Testdaten ... 335



16.1 ... Testdatencontainer ... 335


16.2 ... Testdatenobjekte ... 343





17. Testinfrastruktur ... 355



17.1 ... Anwendungsszenarien für eine globale Testinfrastruktur ... 357


17.2 ... Entwicklungsprozesse mithilfe einer Testinfrastruktur ... 362


17.3 ... Zusammenfassung des zweiten Teils ... 365







TEIL III Agile Neuentwicklung ... 367





18. Planung und Vorarbeit ... 369



18.1 ... Spezifikation der Beispielanwendung ... 370


18.2 ... Architektur und Design der Beispielanwendung ... 372


18.3 ... Teststrategie für die Beispielanwendung ... 377


18.4 ... Vorbereitung der testgetriebenen Entwicklung ... 380





19. Testgetriebene Entwicklung ... 393



19.1 ... Akzeptanztestgetriebene Entwicklung ... 393


19.2 ... Komponententestgetriebene Entwicklung ... 396


19.3 ... Unit-Test-getriebene Entwicklung ... 401


19.4 ... Objektbasierte Überprüfung ... 403


19.5 ... Testen des Änderns und Sicherns eines Vertrags ... 407


19.6 ... Zusammenfassung des dritten Teils ... 413







TEIL IV Agile Methoden ... 415





20. Scrum ... 417



20.1 ... Artefakte ... 417


20.2 ... Rollen ... 423


20.3 ... Meetings ... 424


20.4 ... Eigenschaften ... 429





21. Agile Software Engineering ... 433



21.1 ... Refactoring ... 434


21.2 ... Testgetriebene Entwicklung ... 437


21.3 ... Paarweise Programmierung ... 441


21.4 ... Walking Skeleton ... 447


21.5 ... Gemeinsame Codeverantwortung ... 453


21.6 ... Kontinuierliche Integration ... 459





22. Lean-Entwicklungsmodell ... 463



22.1 ... Grundlagen ... 463


22.2 ... Umsetzung der Lean-Prinzipien mit Agile Software Engineering ... 465


22.3 ... Testinfrastruktur ... 467


22.4 ... Agile Coaching ... 468





23. Entwicklung der Teams ... 469



23.1 ... Nachhaltige Ausbildung ... 469


23.2 ... Lücken in der Ausbildung ... 473


23.3 ... Agile Coaching ... 476


23.4 ... Netzwerk für Agile Coaching ... 483





24. Entwicklung des Backlogs ... 485



24.1 ... Design Thinking ... 486


24.2 ... User Story Mapping ... 492





25. Entwicklung des Produkts ... 497



25.1 ... Nachhaltige Entwicklung ... 498


25.2 ... Entwicklungsstrategien für Legacy Code ... 501


25.3 ... Entwicklungsstrategien für neuen Code ... 502


25.4 ... Zusammenfassung des vierten Teils ... 504







TEIL V Testorientierte ABAP-Werkzeuge ... 505





26. ABAP Unit ... 507



26.1 ... Klasse CL_ABAP_UNIT_ASSERT ... 507


26.2 ... Ausführung von Tests ... 512


26.3 ... Entwicklungsobjekte ... 518





27. ABAP Development Tools ... 521



27.1 ... Einführung ... 521


27.2 ... Testgetriebene Entwicklung mit den ABAP Development Tools ... 525





28. ABAP-Werkzeuge zur Testisolierung ... 545



28.1 ... Beispielklasse ... 545


28.2 ... Open SQL Test Double Framework ... 548


28.3 ... Test Seams ... 551


28.4 ... ABAP Test Double Framework ... 553


28.5 ... Zusammenfassung des fünften Teils und des gesamten Buches ... 557







Anhang ... 559





A. Namenskonventionen ... 561




B. Literaturverzeichnis ... 563




C. Der Autor ... 564




Index ... 565


Let's go agile! Geht das überhaupt mit ABAP? Dieses Buch führt Sie passgenau in die agile Entwicklung ein und setzt dabei genau da an, wo Sie sich auskennen: bei Ihrem Legacy Code. Sie lesen, wie Sie Ihre Programme Schritt für Schritt verbessern und erlernen dabei die wichtigsten Methoden der testgetriebenen Entwicklung. Anschließend erfahren Sie, wie Sie diese und viele weitere Techniken auch in neuen Entwicklungsprojekten einsetzen können. Clean Code, Walking Skeleton, Shared Code Ownership, Executable Documentation und Co. sind schon bald keine Fremdwörter mehr für Sie! Aus dem Inhalt: Testgetriebene Entwicklung Objektorientiertes Design Test-Doubles ABAP Unit Redesign und Neuentwicklung Kontinuierliche Verbesserung Der perfekte Sprint ABAP Test Isolation Tools ABAP Development Tools (ABAP in Eclipse) Ausbildungsstrategie und Skalierbarkeit
Winfried Schwarzmann ist bei der SAP SE als Entwicklungsarchitekt im Bereich Financial Operations tätig. Parallel dazu ist er seit 2011 als Trainer und Coach für das Thema Agile Software Engineering im Einsatz. Über die Jahre hat er einen Programmierstil für gut lesbare und wartungsarme ABAP-Unit-Tests entwickelt, der objektorientierte Designprinzipien konsequent umsetzt. Zur besseren Verbreitung in der ABAP-Community hat er dazu einen Workshop für das Development-Expert-Curriculum und die Schulung "ABAP OO in der Praxis" konzipiert. In seinem Buch fasst er seine objektorientierten Entwurfsmuster und die agile Methodik vollständig zusammen. Winfried Schwarzmann studierte Mathematik mit dem Nebenfach Informatik an der Universität Ulm. Während seines Auslandsaufenthalts in Milwaukee, USA, unterrichtete er am College of Letters and Science und machte an der University of Wisconsin den Abschluss Master of Science in Mathematics. 1998 stieg er bei SAP als C++-Entwickler im Bereich Supply Chain Management (SCM) ein. Nach vier Jahren wechselte er in die ABAP-Anwendungsentwicklung.
Kundenmitteilung
EU-Datenschutzgrundverordnung

Die DSGVO stärkt die Datenschutzrechte europaweit für uns alle. Bei vub haben wir aus diesem Anlass unsere Datenschutzerklärung grundlegend verändert:

  • Wir stellen noch übersichtlicher dar, wie und wofür wir personenbezogene Daten verarbeiten (wenn überhaupt, denn das Verwerten Ihrer persönlichen Daten ist überhaupt nicht unser Geschäft!).
  • Wir informieren in unserer neuen Datenschutzerklärung über die Kundenrechte.
  • Wir haben die Datenschutzerklärung übersichtlicher gestaltet.
  • Ab dem 25. Mai 2018 können Sie in Ihrem Kundenkonto im Menü unter „mein vub - Einstellungen“ den gewünschten Datenschutz selbst einstellen.

Bei Fragen wenden Sie sich bitte jederzeit an unseren vub-Kundenservice und Ihre bekannten Ansprechpartner unter premiumservice@vub.de.

Bestätigung