{"id":30589,"date":"2021-08-26T19:10:08","date_gmt":"2021-08-26T17:10:08","guid":{"rendered":"https:\/\/www.blue.works\/?p=30589"},"modified":"2024-05-22T10:15:54","modified_gmt":"2024-05-22T08:15:54","slug":"alm-kaffekraenzchen-iii-charm-warum-weshalb-wieso-teil-3","status":"publish","type":"post","link":"https:\/\/www.blue.works\/de\/alm-kaffekraenzchen-iii-charm-warum-weshalb-wieso-teil-3\/","title":{"rendered":"ALM Kaffeekr\u00e4nzchen III \u2013 ChaRM, warum, weshalb, wieso? \u2013 Teil 3"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">Philosophie<\/h1>\n\n\n\n<blockquote class=\"wp-block-quote is-style-large is-layout-flow wp-block-quote-is-layout-flow\"><p>\u201cCulture eats strategy for breakfast\u201d<\/p><cite><em>Peter Drucker<\/em><\/cite><\/blockquote>\n\n\n\n<p>Eine ChaRM-Einf\u00fchrung bedeutet immer einen Kulturschock. Die wohl gr\u00f6\u00dfte Herausforderung einer ChaRM Implementierung ist daher die notwendige Ver\u00e4nderung der Mentalit\u00e4t bei den Beteiligten.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kulturschock<\/h2>\n\n\n\n<p>Zun\u00e4chst reagieren die alten Haudegen mit Schock, gehen dann in eine ignorierende Haltung \u00fcber und versuchen, wie bisher an den Transporten herumzuschrauben \u2013 genau das versucht aber der ChaRM zu unterbinden.<\/p>\n\n\n\n<p>Es gibt Konflikte und Schuldzuweisungen an den ChaRM, der wie ein enges Korsett empfunden wird. Auch kommen Selbstzweifel hoch.<\/p>\n\n\n\n<p>Doch nach einer Gew\u00f6hnungsphase macht sich Akzeptanz breit, man beginnt, die neue &#8211; anfangs unheimliche &#8211; Strukturiertheit des \u00c4nderungsprozesses zu sch\u00e4tzen, findet Gefallen am Komfort der m\u00e4chtigen Werkzeuge, die man langsam f\u00fcr sich entdeckt, um schlie\u00dflich erfreut den positiven Sprung bei der eigenen Produktivit\u00e4t anzuerkennen. Manuelle Pflege von Transportlisten f\u00fcr die Revision war gestern.&nbsp;<strong>Der ChaRM vergisst nichts.<\/strong>&nbsp;Aufw\u00e4ndige Kommunikation zwischen Entscheidern, Entwicklern, Testern und Operatoren ist obsolet geworden.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Einzel\u00e4nderung<\/h3>\n\n\n\n<p>Die meisten ABAP Entwickler und Customizer sind Artisten der Einzel\u00e4nderung, sie jonglieren mit den Transportobjekten in \u201eihren\u201c Transporten und verbringen viel Zeit mit der Analyse der richtigen Importreihenfolge, um schlie\u00dflich akrobatisch Transporte ein- oder auszuplanen.<\/p>\n\n\n\n<p>Irgendwann verknotet sich das Ganze derart, dass man sich gezwungen sieht, das Entwicklungssystem per Systemkopie dem Produktivsystem wieder anzugleichen.<\/p>\n\n\n\n<p>Das SAP-ABAP Transportwesen folgt hingegen seit R\/3 Einf\u00fchrung einem&nbsp;<a href=\"https:\/\/timbryce.com\/bryces-laws\/\">industriellen Paradigma<\/a>. Alles was im Startsystem automatisch aufgezeichnet wird,&nbsp;muss&nbsp;in identischer Reihenfolge bis zum Zielsystem durchtransportiert werden. Keine Ausnahmen: M\u00f6chte man&nbsp;<a href=\"https:\/\/help.sap.com\/viewer\/8b923a2175be4939816f0981b73856c7\/7.2.12\/de-DE\/4d7411ee8fd75d91e10000000a15822b.html\">eine \u00c4nderung zur\u00fccknehmen<\/a>, so muss man diese&nbsp;und ihre L\u00f6schung&nbsp;durchtransportieren. Der ChaRM folgt diesem Paradigma und verst\u00e4rkt es.<\/p>\n\n\n\n<p>Das muss erstmal sacken. Denn das Denken in Einzel\u00e4nderungen ist sehr z\u00e4h.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Phasen<\/h3>\n\n\n\n<p>Ein Aspekt der Einzel\u00e4nderung ist die besonders hartn\u00e4ckige Gewohnheit, die \u201eeigene\u201c \u00c4nderung sofort nach erfolgreichem Funktionstest produktiv setzen zu wollen.&nbsp;<strong>Man vergisst dabei gerne, dass jeder Import von Workbench-Objekten das Produktivsystem stresst.<\/strong>&nbsp;Anfangs reagiert man allergisch auf die Einf\u00fchrung von \u00c4nderungszyklen mit Phasen, weil sie ein gemeinsames Vorgehen erzwingen: Bei der Test-Phase wird gemeinsam getestet, in der Go-Live Phase wird alles was getestet wurde, gleichzeitig in das Produktivsystem importiert.<\/p>\n\n\n\n<p>Doch in den Phasen steckt eine Weisheit, die beim Testen sichtbar wird.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Test-Phase<\/h2>\n\n\n\n<p>Nachdem ein Fehler die Neu-Inventarisierung des Stockholmer Hochregallagers erzwungen hat und man wegen des wochenlangen Ausfalls seinen besten schwedischen Kunden verloren hat (ist echt passiert!), macht man sich Gedanken, ob der alte Witz, dass der echte Test sowieso erst im Produktivsystem erfolgt, nicht doch ziemlich bl\u00f6d sei, und man beginnt \u2013 ganz gebranntes Kind -, den nicht unerheblichen Aufwand von Integrations- und Regressionstests mit dem Risiko eines heftigen Umsatzr\u00fcckgangs ernsthaft abzuw\u00e4gen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Integrations- und Regressionstests<\/h3>\n\n\n\n<p>Diese \u00fcberlebenswichtigen Tests haben aber eigene Regeln, die der ChaRM mit der Test-Phase unterst\u00fctzt: In dieser Phase (und auch in der Go-Live Phase) k\u00f6nnen keine weiteren Transporte mehr freigegeben und in das QA-System importiert werden. Denn jeder Import nach dem Beginn dieser Tests w\u00fcrde die Ergebnisse der bereits ausgef\u00fchrten Testskripte invalidieren; man m\u00fcsste sie wiederholen (im validierten Umfeld wird das gesetzlich erzwungen).<\/p>\n\n\n\n<p><strong>\u00dcbrigens, nur in diesen zwei Phasen hat der Hotfix seinen Sinn. Da er einen eigenen Aufgabenplan hat, kann er trotz Export-Import Sperre eine Notkorrektur produktiv setzen.<\/strong><\/p>\n\n\n\n<p>Auch hier wirft das Denken in Einzel\u00e4nderungen seinen \u00fcblen Schatten. Wird in der Test-Phase ein Fehler gefunden, so sucht man gleich das \u00c4nderungsdokument, das daran schuld gewesen sein muss. Oft werden viele neue Status angelegt, um diese Identifizierung zu erleichtern.<\/p>\n\n\n\n<p>Man vergisst bei diesem Tunnelblick auf das einzelne \u00c4nderungsdokument, dass man w\u00e4hrend der Test-Phase nicht mehr in die Richtung der Entwicklung schaut, um m\u00f6glichst viele Fehler korrigieren zu lassen, denn die Fehlerfreiheit einer neuen oder ge\u00e4nderten Funktion wurde ja bereits vom Einzeltester best\u00e4tigt.<\/p>\n\n\n\n<p>Nein: W\u00e4hrend der Integrations- und Regressionstests, bei denen die E2E-Prozesse durchgetestet werden,&nbsp;dreht man sich um 180\u00b0&nbsp;und schaut jetzt in die Richtung der Produktion. Ziel ist es jetzt, dem Business zu beweisen, dass der n\u00e4chste Go-Live funktional vollst\u00e4ndig und fehlerfrei sein wird (h\u00f6rte ich hier homerisches Lachen ausbrechen?).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Testmeldung<\/h3>\n\n\n\n<p>Sollten in der Test-Phase dennoch Fehler auftauchen, die nur durch eine Korrektur behoben werden k\u00f6nnen, so sind das Seiteneffekte; es hat keinen tieferen Sinn, sie einem \u00c4nderungsdokument zuzuordnen.<\/p>\n\n\n\n<p>Um trotzdem einen importierbaren Korrektur-Transport erzeugen zu k\u00f6nnen, gibt es die nette kleine \u201eTestmeldung\u201c (alt: SDMT, neu SMTM), die ohne Zuordnung zu einem \u00c4nderungsantrag extra zum Korrigieren und Nachtesten angelegt wird. Dessen Korrekturtransporte werden beim sp\u00e4teren Go-Live automatisch mit importiert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Go-Live Phase<\/h2>\n\n\n\n<p>Der Hauptvorteil einer Go-Live Phase mit dem Massenimport der getesteten \u00c4nderungen ist, dass das Produktivsystem nur ein einziges Mal gestresst wird. Wenn man diesen Zyklus-Import zu regelm\u00e4\u00dfigen Terminen durchf\u00fchrt (z.B. jeden Mittwoch um 11:00), wird dieser Zeitpunkt wohlbekannt und das Business reagiert nicht mehr mit Panik, wenn es mit Abbr\u00fcchen wegen veralteter Ladephasen konfrontiert wird.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Aufwiedersehen<\/h2>\n\n\n\n<p>Ich hoffe, dass man, wenn man dieses zugegebenerma\u00dfen etwas l\u00e4ngere Kaffeekr\u00e4nzchen verl\u00e4sst, die Frage \u201eChaRM, warum, weshalb, wieso? \u2013 Ein kurzer Abriss eines ALM-Enthusiaten \u201c nicht mehr zu stellen haben wird.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Eine ChaRM-Einf\u00fchrung bedeutet immer einen Kulturschock. Die wohl gr\u00f6\u00dfte Herausforderung einer ChaRM Implementierung ist daher die notwendige Ver\u00e4nderung der Mentalit\u00e4t bei den Beteiligten.<\/p>\n","protected":false},"author":16,"featured_media":30590,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[344],"tags":[295,336],"class_list":["post-30589","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-alm-kaffeekraenzchen-das-alm-magazin","tag-charm","tag-kaffeekraenzchen"],"acf":[],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/www.blue.works\/wp-content\/uploads\/2021\/08\/the-academy-of-athens.jpg","_links":{"self":[{"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/posts\/30589","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/comments?post=30589"}],"version-history":[{"count":2,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/posts\/30589\/revisions"}],"predecessor-version":[{"id":30600,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/posts\/30589\/revisions\/30600"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/media\/30590"}],"wp:attachment":[{"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/media?parent=30589"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/categories?post=30589"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blue.works\/de\/wp-json\/wp\/v2\/tags?post=30589"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}