Schlafe nicht Wie wir gelernt haben, 12.000 Ticketangebote pro Nacht zu veröffentlichen

Der unterbrechungsfreie Betrieb von Tausenden von Pyaterochka-Filialen hÀngt weitgehend von zuverlÀssiger und kundenspezifischer Software ab. Jetzt verwendet das Netzwerk das Produkt GK SOFTWARE, das von der Box-Version zur Entwicklung von Code in X5 verbessert wurde. In unserem Artikel erklÀren wir Ihnen, welchen Weg wir bei der Installation von Releases eingeschlagen haben, um das GeschÀftswachstum des Unternehmens von EinzelgeschÀften mit neuer Software auf derzeit 15.000 zu sichern.



FĂ€lle vergangener Tage, eine tiefe Tradition


Die zehnjĂ€hrige Periode der IT in der modernen Welt ist Geschichte. Im Jahr 2009 wechselten die ersten Pyaterochka-Filialisten gerade zu GK, die ersten Software-Update-Aufgaben traten auf. Der Prozess sah ungefĂ€hr so ​​aus: vollstĂ€ndig manuelle Arbeit, Analyse der Protokolle mit den „Augen“ in jedem GeschĂ€ft, stĂ€ndige Probleme beim Starten der Software - beim Checkout wird die Initialisierung des GerĂ€ts abgebrochen, und die GK-Dienste werden nicht auf dem Server gestartet.

WĂ€hrend sich das GK-System stabilisierte und die Tools aktualisierten, wurden wir ĂŒber die zentrale Komponente des GK-Systems - den Storemanager - in einer Anzahl von 100 bis 200 Filialen pro Nacht (pro Mitarbeiter) bereitgestellt. Dann galt es als große Leistung. Um die Aktualisierungsgeschwindigkeit in 1000 Filialen zu gewĂ€hrleisten, war bereits ein Außendienst erforderlich - nur mit einem Team von 6 Personen pro Nacht konnten wir die erforderliche Anzahl von Filialen erreichen. Um eine Update-Aufgabe zu erstellen, musste jeder Laden mit seinen HĂ€nden „durchgeklickt“ werden. Jeder Job enthielt nur 50 Objekte, da aufgrund eines internen Fehlers die Möglichkeit bestand, dass nach dem Update alle Status verloren gingen und eine vollstĂ€ndige manuelle ÜberprĂŒfung erforderlich war.



Zu diesem Zeitpunkt wurde der Gesundheitscheck des GeschĂ€fts zunĂ€chst anhand des Auftragsstatus durchgefĂŒhrt und schließlich ĂŒber die Verbindung zum Desktop des Kassierers und die visuelle Analyse des Kassiererbildschirms.

Im Jahr 2014 betrug die ArbeitsintensitĂ€t fĂŒr die Aktualisierung fĂŒr 1 Person pro Nacht 150 GeschĂ€fte.

Erster Durchbruch


Eine solche Situation mit der Geschwindigkeit und den Kosten der Aktualisierung könnte weder uns noch dem Unternehmen zusagen. Der wichtigste Arbeitsbereich war der Prozess der Verbesserung und Automatisierung des Prozesses, um eine schnelle und qualitativ hochwertige "Zustellung" von Änderungen an GeschĂ€ften zu gewĂ€hrleisten, um Unternehmen bei der effektiven Lösung von Aufgaben zu unterstĂŒtzen.

Da der GK-Code nicht zu X5 gehörte, konnten wir die Storemanager-Verbesserungen nicht selbst durchfĂŒhren, den Prozess nicht Ă€ndern oder Fehler beheben. Aus diesem Grund haben wir gemeinsam mit Auftragnehmern begonnen, ein technologisches alternatives Tool von Grund auf zu entwickeln, das wir „Booster“ nannten.

Wir sind der Analyse des Update-Prozesses umfassend nachgegangen und haben sie von allen Seiten betrachtet. Und sie erhielten ein VerstĂ€ndnis fĂŒr den Prozess, der die Grundlage fĂŒr alle zukĂŒnftigen Änderungen wurde. Der Erfolg der Implementierung der Änderungen hĂ€ngt davon ab, wie schnell wir die Distributionen der neuen Version in den Stores bereitstellen, wie wir sie fĂŒr das Upgrade vorbereiten, wie der Installationsprozess organisiert wird und wie die nachfolgende LeistungsprĂŒfung ablĂ€uft.

"Booster" enthĂ€lt eine einzige Liste aller GeschĂ€fte im Dashboard, VorabprĂŒfungen und Status fĂŒr jede Phase sowie die erste automatische PrĂŒfung nach dem Update.



Durch die Umsetzung des Projekts „Booster“ konnten die Arbeitskosten um das Sechsfache gesenkt und mit Hilfe eines Mitarbeiters (bis Ende 2016) ca. 1000 GeschĂ€fte pro Nacht aktualisiert werden. Zu dieser Zeit war es ein beispielloser Durchbruch.

Erfolgsentwicklung


Die nÀchste Etappe bestand darin, unseren Erfolg zu festigen und weiterzuentwickeln. Wir haben einen Pool von Verbesserungen mit dem Namen "Booster2" gestartet.

Die Plattform wurde auf eine neue Hardware umgestellt, die BenutzeroberflĂ€che wurde komplett ĂŒberarbeitet, wir haben das Bremsen beseitigt. Neue PrĂŒfungen und Status fĂŒr jede Stufe eingefĂŒhrt.



Wir haben dem nachts aktualisierten Mitarbeiter alle Informationen zur VerfĂŒgung gestellt, um Probleme zu identifizieren und schnell zu beheben. Die maximale Wirkung zur UnfallverhĂŒtung wurde uns durch eine automatisierte ÜberprĂŒfung der FunktionsfĂ€higkeit der Kasse anhand von Screenshots verliehen. Das System ermittelte, wo der Bildschirmzustand vom Standard abweicht, und es waren diese GeschĂ€fte, die die Mitarbeiter zuerst betrachteten.

Mit dem aktualisierten „Booster“ konnten von Ende 2017 bis Anfang 2018 1.500 GeschĂ€fte pro Mitarbeiter und Nacht aktualisiert werden.

VorwÀrts zu neuen Höhen


1.500 GeschĂ€fte pro Nacht sind gut, wir können den Release-Zeitplan problemlos verwalten, zusĂ€tzliche Sprints fĂŒr die Installation durchfĂŒhren, sind bereit, eine Fehlerkorrektur durchzufĂŒhren und bis zu 6 Baugruppen an der Kasse und im Backoffice zu installieren. Unsere Aufgabe ist es jedoch, den Einzelhandel der nĂ€chsten Generation aufzubauen . Das prozessuale, technische und technologische Fundament der Digitalisierung unseres GeschĂ€fts ist unter anderem die Geschwindigkeit der Entwicklung und Verbreitung neuer Softwareversionen. Und im MĂ€rz 2019 wurde eine ehrgeizige Aufgabe gestellt - bis zum Herbst, die Aktualisierung von 3000 Servern und 12000 Kassen in einer Nacht zu erreichen. Wir haben uns von unserer gegenwĂ€rtigen RealitĂ€t gelöst und erneut eine großartige analytische Arbeit geleistet, um EngpĂ€sse in diesem Prozess zu identifizieren. Es wurden Aufgaben identifiziert, die Automatisierung, technische Verbesserungen, die Entwicklung neuer Spezialsoftware sowie ein allgemeines Umdenken erfordern. DarĂŒber hinaus haben wir einen Pool organisatorischer Aufgaben gebildet.

Als Ergebnis wurde ein internes IT-Projekt ins Leben gerufen, eine Roadmap erstellt, ein Budget berechnet, Meilensteine ​​definiert und der Kreis der Abteilungen und Auftragnehmer fĂŒr die interne und externe Interaktion klar definiert.

Fahrplan

Lassen Sie uns die gestellten Aufgaben genauer betrachten. Wir haben 3 Bereiche identifiziert:

  • Risikominderungsziele;
  • administrative und organisatorische Aufgaben;
  • Aufgaben, um aktualisierte GeschĂ€fte pro Tag zu erhöhen.

Risikominderung. Unsere Aufgabe - unabhÀngig vom Erfolg oder Misserfolg des Updates - ist es, den Betrieb des Geldknotens und die FÀhigkeit zur Kundenbetreuung sicherzustellen, d. H. Morgens ein GeschÀft eröffnen. Mit der Zunahme der Anzahl der Verkaufsstellen steigt das Risiko um ein Vielfaches, dass etwas schief geht.

Ein Mitarbeiter der Release Distribution Group ist wie ein Flugzeugpilot oder Fluglotse, der viel Verantwortung trÀgt. Unter solchen Bedingungen ist es notwendig, einfache und automatisierte Tools zu entwickeln, die den Faktor menschlicher Fehler minimieren.
In diesem Bereich wurden Aufgaben formuliert, um ein neues System fĂŒr Ladeninspektionen zu entwickeln, die Vorbereitung von Einrichtungen fĂŒr die Aktualisierung zu automatisieren, Mechanismen fĂŒr die Aufzeichnung von Arbeiten an der Netzwerkinfrastruktur und fĂŒr die automatische Wiederherstellung zu erstellen.

Mit dem neuen ÜberprĂŒfungstool können Sie schnell den Zustand des gesamten GeschĂ€fts bestimmen, einen Bericht ĂŒber eine grĂ¶ĂŸere Anzahl von Parametern erstellen und dem Supportmitarbeiter sofort die Objekte anzeigen, die am Morgen nach der Aktualisierung nicht geöffnet werden können. Wir analysieren sowohl den Start der Software als auch die Schritte des Herunterladens. Wir ĂŒberprĂŒfen die Bildung der Basis fĂŒr den Kassierer auf der Seite des Backoffices, die Initialisierung des Equipments, das Verlassen der Registrierkassensoftware in den Registrierkassenmodus usw. Der Prozess basiert auf dem neuesten Stand unseres Unternehmenssystems - „Business Monitoring“ unter Verwendung eines modernen Technologie-Stacks (Filebeat, Kafka, ClickHouse, Grafana).

In dem Tool (System) zur umfassenden Vorbereitung der Filialen fĂŒr die Aktualisierung haben wir alle verstreuten ÜberprĂŒfungsskripte zusammengefasst, die sich sogar auf verschiedenen Servern befinden könnten. Wir haben automatische Skripte angeschlossen, um typische Fehler zu korrigieren (es gibt nicht genĂŒgend Speicherplatz, es gibt keine erforderlichen Rechte usw.) und an verantwortliche Mitarbeiter in verschiedenen Richtungen zu senden, wenn das Problem nicht automatisch behoben wird. Wir haben einen Roboter hinzugefĂŒgt, der "unermĂŒdlich" Wollanfragen in MFSM bearbeitet und Registrierkassen aus VerbrauchermĂ€rkten von der Aktualisierung der Kasse ausschließt. Ein solcher Roboter spart jeden Tag mehr als drei Stunden Arbeitszeit.

Robotertool fĂŒr die Abrechnung von Arbeiten an der Netzwerkinfrastruktur : Es bietet die Analyse von vollstĂ€ndig verteilten Briefen von Anbietern, die Identifizierung von GeschĂ€ftscodes an den angegebenen SAP-Adressen und das Laden von Daten zu Datum und Uhrzeit der Arbeit in die Datenbank. Auf der Grundlage dieser Informationen wird der Verbreitungsplan aktualisiert. Dies beseitigt nach und nach die Momente, in denen 300 GeschĂ€fte ohne Kommunikation bleiben und wir den Status von Aktualisierungen oder ÜberprĂŒfungen nicht erhalten können.

Automatischer Wiederherstellungsmechanismus : Auf der Seite des GeschÀfts wird die Selbstdiagnose des Geldknotens ermöglicht, die Unmöglichkeit des Startens der Kasse ermittelt und das System von einem Backup wiederhergestellt, wodurch das GeschÀft in den meisten FÀllen morgens geöffnet werden kann, selbst wenn das Support-Personal keine Remote-Verbindung zur Lösung des Problems herstellen kann.

Administrative und organisatorische Aufgaben. Effektive Arbeit des Systems ist die halbe Miete, fĂŒr den Erfolg ist es notwendig, die effektive Arbeit des Teams sicherzustellen.

Die Lösung sind zusÀtzliche Schulungen, zusÀtzliche Wochenenden zum Arbeitszeitplan und die Einrichtung der Interaktion mit allen Linien. Am Wochenende bereitstellen.

Wir haben interne Schulungen fĂŒr Mitarbeiter durchgefĂŒhrt, um die Austauschbarkeit und die Möglichkeit der Neuverteilung von Aufgaben sicherzustellen. Der Arbeitsplan des Teams wurde ebenfalls ĂŒberarbeitet: Alle Mitarbeiter wurden nachts in die Schicht versetzt, was die Möglichkeit bot, kontinuierliche Aktualisierungen sicherzustellen. Diese Option haben wir in diesem Jahr umgesetzt. Jetzt finden GK-Updates 7 Tage die Woche statt, ohne dass zusĂ€tzliches Personal hinzukommt.

Aufgaben zum Erhöhen der Anzahl der GeschĂ€fte pro Nacht. Hier lösen wir das Problem der schnellen und garantierten Lieferung von Distributionen, um die Aktualisierung einer beliebigen Anzahl von Filialen zu gewĂ€hrleisten, unabhĂ€ngig davon, wie schnell die Änderungen veröffentlicht werden. Dies beinhaltet auch Verbesserungen am System.

ZunĂ€chst haben wir begonnen, das aktuelle Update-Tool „Booster“ so effizient wie möglich zu nutzen. Auslastungstests haben die schwierigsten VorgĂ€nge ergeben. Wir haben die Grenzen der Möglichkeiten ermittelt und Optionen fĂŒr die horizontale Skalierung von Aktualisierungsinstanzen gefunden.

Außerdem haben wir im Rahmen des Projekts entschieden, welches Tool aktualisiert und welches weiterentwickelt werden soll. Als Zieltool wurde der Storemanager ausgewĂ€hlt, da wir mit dem Erwerb des GK-Quellcodes eigenstĂ€ndig Standardtools entwickeln und verbessern konnten.

Seit dem Start des Projekts haben wir Schritte zur Implementierung aller „Booster“ -Funktionen in Storemanager festgelegt und in diesem Jahr zusĂ€tzliche Anforderungen fĂŒr Verbesserungen festgelegt, um die Aktualisierung der erforderlichen Anzahl von Filialen sicherzustellen.

Wir haben auch Optionen fĂŒr die Verwendung aktueller Tools ausgearbeitet, diese verbessert und die Zielinfrastruktur exklusiv fĂŒr den Download-Server auf Linux portiert. Und gemeinsam mit Kollegen haben sie ein zusĂ€tzliches neues Tool eingefĂŒhrt, das unsere FĂ€higkeiten erheblich erweitert hat.

Was ist schon passiert


Im Moment sind die meisten Aufgaben aus unserem Plan bereits umgesetzt:

  • AufrĂŒstung und Verbesserung des Pumpensystems.
  • Reduzierung der GrĂ¶ĂŸe von GK-Verteilungen.
  • Administrative und organisatorische Aufgaben im Team.
  • Automatisierung der Vorbereitung der GeschĂ€fte fĂŒr die Aktualisierung.
  • Buchhaltung fĂŒr Netzwerkarbeit.

Es bleibt die Aufgabe, eine neue ÜberprĂŒfung der Speicher einzufĂŒhren und das Zielaktualisierungstool zu verfeinern.



Was kommt als nÀchstes


Weiter mehr. Jetzt zielen unsere BemĂŒhungen darauf ab, 20.000 (+) GeschĂ€fte pro Nacht zu aktualisieren, aber es wird bereits eine neue Plattform mit neuen Tools und Methoden geben. Wir werden in Zukunft definitiv darĂŒber berichten.

Die Autoren

Vasily Golubev, Leiter der Software Release Distribution Group # ITX5
Evgeny Lapshin, Leiter der Abteilung Support fĂŒr Store Solutions # ITX5

Source: https://habr.com/ru/post/de483800/


All Articles