SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Downloaden Sie, um offline zu lesen
www.omm-solutions.de
RPA:
Qualität und Wartung
meistern
1
< OMM Solutions GmbH >
www.omm-solutions.de
● Intro
● RPA in der Supportphase / Wartungsphase
● Wie kann ich die Qualität meines Codes sicherstellen und überprüfen?
● Diskussion
Was erwartet uns heute?
2
< OMM Solutions GmbH >
www.omm-solutions.de
Zusammen sind wir stark
3
Ziel des UiPath RPA Chapters Stuttgart
💪 Offenes Format
○ Kommunikation auch über LinkedIn-Gruppe
💪 Regelmäßiges Event
○ 6 Mal im Jahr
○ Einladungen via E-Mail
und auf https://community.uipath.com/stuttgart/
○ Von Erfahrung anderer RPA-Praktiker lernen
💪 Ablauf
○ Inspirierender Themen-Vortrag
○ Praxisinput
○ Diskussion
www.omm-solutions.de
Wer sind wir?
4
Fotios Karamitsos
Christian Prior-Mamulyan
www.omm-solutions.de
RPA in der
Support-/Wartungsphase
5
< OMM Solutions GmbH >
www.omm-solutions.de
● Dezentrales RPA CoE mit Process
Owner, Service Owner, Developer
● 5-20 Prozesse, Prod- & Test-Tenant
● LowCode zunehmend unter dem Einfluß
von “IT-Bürokratie”
● Es gibt ein Ticketsystem ;)
● Jährliche Reviews von Support-Budget,
Monatliche/quartalsweise Service
Meetings
Scenario
Bürokratie in der IT kann mitunter Innovation
und Umsetzung ausbremsen, aber trotzdem
behalten LowCode-Plattformen noch eine
gewisse Flexibilität und Spielraum in Bezug auf
Anpassung und Integrationsfähigkeiten
www.omm-solutions.de
Challenge Legacy Code: Embrace it!
www.omm-solutions.de
Code Inventar / Bewertung
Basics:
● Liste der Tenants
● Liste der Prozesse
○ Metadata
○ Deployment and Developer-Access
○ Konfigurierbarkeit und Testbarkeit
○ Sicherheitskonzept
● Liste der Trigger
● Liste der Robot Accounts
● Liste der Machines
● Liste der Folders
● …
Die Existenz von End-to-End-Testfällen (oder
ein Prozess zur Beschaffung neuer Testfälle) ist
entscheidend für das Change Management.
www.omm-solutions.de
Code assessment / inventory
Advanced:
Als Service Owner lassen sich aus den
Inventar-Resultaten Handlungsempfehlungen
ableiten:
● Workflow Analyzer Resultate als baseline
für Verbesserungen
● Delta zu best practices oder
Styleguide-Vorgaben
Beispiele für Inventar-Metriken
allEntrypointsAreReframework, hasCanary,
isRepoCICDenabled, hasQueue(s),
hasObjectRepository, hasPDD, hasSDD,
hasOperationalHandboook,
createsTempFoldersIfNotExist,
doesWorkOnAnyRobot,
hasSupportedDependencies
www.omm-solutions.de
Beispiel eines Inventars in Tabellenform
www.omm-solutions.de
Infrastructure and Tools
www.omm-solutions.de
Infrastructure and Tools
In der sich entwickelnden Landschaft von RPA
ist es nicht nur ein Vorteil, einen robusten
Werkzeugkoffer zu haben; es ist eine
Notwendigkeit. Die Werkzeuge, die dem
Service Owner zur Verfügung stehen, bilden
das Rückgrat für eine effiziente
RPA-Entwicklung, -Bereitstellung und
-Wartung:
● Supported UiPath product versions
● Git
● Log Analyzer (e.g. Elastic or Splunk)
● CI/CD (e.g. Jenkins)
● Code Analyzer (e.g. SonarQube)
Ein Ticket-System muss
a) vorhanden sein und
b) im Alltag gelebt werden.
www.omm-solutions.de
Vorteile ausgewählter Zusatz-Tools
Im RPA Umfeld sind Werkzeuge wie Elastic CE,
Splunk, Git und SonarQube entscheidend für
die Verbesserung von zentralisiertem Logging,
Analytik, Integration und Qualitätssicherung..
● Elastic CE: Zentralisiertes Loggin,
Erweiterte Loganalyse & Visualisierung,
Suche
● Splunk: Ähnlich Elastic, Vorteil “alerting”
● Git: Integration mit CI/CD, Upskilling der
Entwickler
● SonarQube: OTS nur xml-Analyse
Um versionierte RPA-Projekte außerhalb des
Rahmens von UiPath Studio effektiv zu
verwalten und daran zusammenzuarbeiten, ist
es wesentlich, einen dedizierten Git-Client zu
haben.
www.omm-solutions.de
Stay Updated with Updates
"Stay Updated with Updates" dient nicht nur als
Leitprinzip; es fasst den proaktiven Ansatz
zusammen, der notwendig ist, um die volle
Leistungsfähigkeit der Automatisierung
auszuschöpfen.
● Nicht nur automatisierte Systeme,
● sondern auch Komponenten der
UiPath-Plattform.
○ Einschließlich der activities!
In der IT diktiert die Produkt-Roadmap eines
Anbieters oft notwendige
Infrastrukturänderungen, insbesondere wenn
ältere Produktversionen nicht mehr unterstützt
werden. Dies erfordert Anpassungen, um neue
Funktionen, Kompatibilitätsanforderungen oder
sich entwickelnde Technologiestandards zu
berücksichtigen.
www.omm-solutions.de
Dependency Management in UiPath
Read the fine manuals
For each released version the Support Model,
the initial Release Date, the end of the
Mainstream Support and the end of the
Extended Support is published.
www.omm-solutions.de
RPA Metriken: Vorher und Jetzt
www.omm-solutions.de
RPA Metriken – bisher
Typische RPA (Robotic Process Automation)
Metriken helfen dabei, den Erfolg und die
Effizienz automatisierter Prozesse zu messen
und zu optimieren. Hier sind einige gängige
RPA-Metriken:
● Automatisierungsrate
● Erfolgsrate der Prozesse
● Durchschnittliche Bearbeitungszeit
● Kosteneinsparung
● Return on Investment (ROI)
www.omm-solutions.de
RPA Metriken v2.0
Mit der Weiterentwicklung von
RPA-Plattformen und einem tieferen
Verständnis für nachhaltige Automatisierung
sind neue Generationen von Metriken
aufgetaucht, die tiefer in die Feinheiten der
RPA-Entwicklung und -Wartung eintauchen.
● Vendor Support Abdeckung
● Workflow Analyzer Code Quality
● Abdeckung von best practices und
Styleguide-Vorgaben
www.omm-solutions.de
Sample Workflow Analyzer Code Quality Improvement
www.omm-solutions.de
Challenge: Deployment Gates
www.omm-solutions.de
Challenge: Deployment Gates
Kontrollpunkte oder Kriterien, die eine
Softwarefreigabe oder ein Update erfüllen
muss, bevor es zur nächsten Phase seines
Bereitstellungslebenszyklus übergeht:
● Qualität
● Sicherheit
● Performance und
● Compiance Standards
Als RPA Service Owner mit dem Ziel, die
Code-Qualität zu verbessern, ist eine
Vereinbarung über Deployment Gates
zwingend erforderlich.
www.omm-solutions.de
LowCode Deployments
Eine Freigabe für das Deployment von RPA
Prozessen kommt nicht ohne
Herausforderungen:
● Rapid Development vs. Thorough Testing
● Abhängigkeiten von Externen Systemen
● Vorhandenes Skillset
● Dokumentation
● u.v.a.m…
Eine mögliche Unterscheidung könnte
zwischen Code-Änderungen liegen, die die
implementierte Geschäftslogik ändern oder
nicht ändern.
www.omm-solutions.de
Conclusion: Multivariate Approach to Code Improvement
config
test cases
repo
logs
iteration
docs metadata
tickets
security
governance
structure
budget
config
cont’ improvement legacy code
www.omm-solutions.de
Wie kann ich die Qualität
meines Codes vor der
Support Phase
sicherstellen?
24
< OMM Solutions GmbH >
www.omm-solutions.de 25
Wo ist Codequalität von zentraler Bedeutung?
Deployment & Maintenance
● Den Prozess effizient und
fehlerfrei produktiv einsetzen
Testing
● Den Prozess richtig
testen und abnehmen
Development
● Den Prozess richtig
umsetzen
Analyse
● Den richtigen
Prozess auswählen
RPA Lebenszyklus
www.omm-solutions.de 26
Wie stelle ich Qualität von Beginn an sicher?
Code-
optimierung
Robustheit &
Zuverlässigkeit
Struktur & Design
Sicherheit &
Datenschutz
● Designqualität
● Lesbarkeit &
Dokumentation
● Wiederverwendbarkeit
● Performance
● Reviews
● Datensicherheit
● Zugriffskontrolle
● Frameworks
● Fehlerhandling & Logging
● Testbarkeit
● Wartbarkeit
www.omm-solutions.de
Design & Struktur
27
< OMM Solutions GmbH >
www.omm-solutions.de
Checkliste Struktur & Design
• Designqualität
☐ Architektur: Wie interagieren die Komponenten miteinander?
☐ Konsistenz: Ist der Code-Stil konsistent und standardisiert?
☐ Skalierbarkeit: Kann der Code ohne große Anpassungen erweitert werden?
• Lesbarkeit & Dokumentation
☐ Kann der Code ohne viel Aufwand nachvollzogen werden?
☐ Sind (komplexe) Codeblöcke ausreichend kommentiert?
☐ Ist der Prozess ausreichend dokumentiert, z.B. im Process Design Document
(PDD)?
• Wiederverwendbarkeit
☐ Modularität: erfüllt jeder Teilprozess genau eine Aufgabe?
☐ Variabilisierung: Sind Werte im Code hard hinterlegt oder in der Config.xlsx?
28
Wie stelle ich eine gute Struktur & Design sicher?
www.omm-solutions.de 29
Wie hilft mir das UiPath Studio Konsistenz sicherzustellen?
• Analyze Project: Überprüft ein Projekt auf mögliche
Fehler, Inkonsistenzen und Konflikte, bevor es
ausgeführt wird.
• Validate File: Prüft die Syntax und Struktur einer
einzelnen Datei in einem Projekt, um sicherzustellen,
dass sie den Anforderungen entspricht.
• Validate Project: Überprüft ein gesamtes Projekt auf
syntaktische Genauigkeit, Referenzen,
Abhängigkeiten und andere Fehler, um
sicherzustellen, dass es korrekt und ausführbar ist.
www.omm-solutions.de
Robustheit &
Zuverlässigkeit
30
< OMM Solutions GmbH >
www.omm-solutions.de
Checkliste Robustheit & Zuverlässigkeit
• Frameworks
☐ Wird ein passendes Framework eingesetzt?
• Fehlerhandling & Logging
☐ Was passiert bei einem Fehler (Business / Applikation)?
☐ Sind ausreichend Logs zur Nachvollziehbarkeit hinterlegt?
☐ Ist der Prozess so gestaltet, dass er geführt abbricht?
• Testbarkeit
☐ Unit Tests: kann ich jede Komponente separat testen?
☐ Testabdeckung: Wie hoch ist meine Testabdeckung?
• Wartbarkeit
☐ Modularität / Aktualisierbarkeit
☐ Lesbarkeit
☐ Dokumentation
31
Wie stelle ich zuverlässigen Code sicher?
www.omm-solutions.de
Unit Testing in Studio
32
❏ REF generiert in neuer Version
automatisch Testcases
❏ Kann mit dem Test Manager im
Orchestrator verbunden werden
❏ Nutzung von Variablen &
Argumenten stellt die Testbarkeit
einzelner xamls sicher
www.omm-solutions.de
Sicherheit & Datenschutz
33
< OMM Solutions GmbH >
www.omm-solutions.de
Checkliste Sicherheit & Datenschutz
• Datensicherheit
☐ Keine hard hinterlegten Passwörter im Code?
☐ Sind die verwendeten Daten sicher hinterlegt?
(Orchestrator)
• Zugriffskontrolle
☐ Wer hat Zugriff auf den Code?
• Liegt der Code in der Versionskontrolle?
☐ Werden für den Prozess Accounts nur mit nötigen
minimalen Systemrechten genutzt?
34
Nutze Assets und Ordnerstrukturen!
www.omm-solutions.de
Codeoptimierung
35
< OMM Solutions GmbH >
www.omm-solutions.de
Checkliste Codeoptimierung
• Performance
☐ Profiling: Wie lange dauert die Durchführung des Codes und welche
Teile kann ich optimieren?
• Reviews
☐ Peer-Reviews: Hat ein Kollege/ Kollegin den Code überprüft?
☐ automatisierte Codeüberprüfung:
• Studio: Analyse File / Project & validate File / Project
• Skripte & externe Tools
• Teil einer Continuous Integration/Continuous Deployment Pipeline
36
Wie stelle ich zuverlässigen Code sicher?
www.omm-solutions.de
Noch besser… ein Review-Template nutzen!
37
www.omm-solutions.de
Was haben wir gelernt?
38
www.omm-solutions.de 39
Learnings
✅ Die Qualitätssicherung endet nicht mit der Implementierung endet, sondern in der
Support- und Wartungsphase entscheidend ist
✅ Wir haben Techniken zur Qualitätsüberprüfung in der Automatisierung
kennengelernt
✅ Wir haben gelernt, wie man die Code-Qualität sicherstellt & überprüft
www.omm-solutions.de
Q&A
40
www.omm-solutions.de
Vielen Dank für Ihre Aufmerksamkeit!
41
< OMM Solutions GmbH >
www.omm-solutions.de < OMM Solutions GmbH >
The copyright for this slide is held by OMM Solutions GmbH
OMM Solutions GmbH
Vor dem Lauch 19
70567 Stuttgart
Germany
Fragen oder Interesse?
42
Ihr persönlicher Ansprechpartner
Fotios Karamitsos
fotios.karamitsos@omm-solutions.de
+49 (0)711 995 985-84
Hyperautomation Advisor
Kompetenz-Schwerpunkte:
- Robotic Process Automation
- Document Understanding
- Hyperautomation
- Artificial Intelligence
- Communicational AI
www.omm-solutions.de 43
< OMM Solutions GmbH >
OMM Solutions GmbH
Vor dem Lauch 19
70567 Stuttgart
Geschäftsführer
Dr. Martin Allmendinger
Malte Horstmann
Olaf Horstmann
Kontakt
Telefon: +49 711 995 985-80
E-Mail: info@omm-solutions.de
Umsatzsteuer-ID: DE295716572
Sitz der Gesellschaft: Stuttgart
Amtsgericht Stuttgart, HRB 749562
Impressum

Weitere ähnliche Inhalte

Ähnlich wie 2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität

MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software
MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software
MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software Intland Software GmbH
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
 
Vorteil: Wissen. Collaboration Solutions für Wissensmanagement in Echtzeit
Vorteil: Wissen. Collaboration Solutions für Wissensmanagement in EchtzeitVorteil: Wissen. Collaboration Solutions für Wissensmanagement in Echtzeit
Vorteil: Wissen. Collaboration Solutions für Wissensmanagement in EchtzeitIntland Software GmbH
 
Responsive Multichannel-E-Commerce: Vorgehen und Learnings aus der Praxis
Responsive Multichannel-E-Commerce: Vorgehen und Learnings aus der PraxisResponsive Multichannel-E-Commerce: Vorgehen und Learnings aus der Praxis
Responsive Multichannel-E-Commerce: Vorgehen und Learnings aus der PraxisRoberto Rizzi
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'scamunda services GmbH
 
Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...
Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...
Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...Praxistage
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudAarno Aukia
 
Lean development 04
Lean development 04Lean development 04
Lean development 04SuperB2
 
Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...
Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...
Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...inovex GmbH
 
2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
2008 - Gewinnung von OPEN SOURCE Techniken für junge UnternehmenBjoern Reinhold
 
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ..."Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...Bernhard Schimunek
 
2022-12_RPA-ChapterEvent_WhatsNew
2022-12_RPA-ChapterEvent_WhatsNew2022-12_RPA-ChapterEvent_WhatsNew
2022-12_RPA-ChapterEvent_WhatsNewFotiosKaramitsos
 
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...Mayflower GmbH
 
Enterprise Git Adoption Webinar - German
Enterprise Git Adoption Webinar - GermanEnterprise Git Adoption Webinar - German
Enterprise Git Adoption Webinar - GermanCollabNet
 
SAP IdM Wartungsende 2027... und was nun?
SAP IdM Wartungsende 2027... und was nun?SAP IdM Wartungsende 2027... und was nun?
SAP IdM Wartungsende 2027... und was nun?IBsolution GmbH
 
Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?Manuel Blechschmidt
 
Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)CollabNet
 
Node.js - Von der Entwicklugn bis zum produktiven Einsatz
Node.js - Von der Entwicklugn bis zum produktiven EinsatzNode.js - Von der Entwicklugn bis zum produktiven Einsatz
Node.js - Von der Entwicklugn bis zum produktiven EinsatzKai Donato
 

Ähnlich wie 2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität (20)

MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software
MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software
MediaInfo: Git DVCS & Requirements Management InfoDay@Intland Software
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform Engineering
 
Akoa unternemensprofil
Akoa unternemensprofilAkoa unternemensprofil
Akoa unternemensprofil
 
Vorteil: Wissen. Collaboration Solutions für Wissensmanagement in Echtzeit
Vorteil: Wissen. Collaboration Solutions für Wissensmanagement in EchtzeitVorteil: Wissen. Collaboration Solutions für Wissensmanagement in Echtzeit
Vorteil: Wissen. Collaboration Solutions für Wissensmanagement in Echtzeit
 
Responsive Multichannel-E-Commerce: Vorgehen und Learnings aus der Praxis
Responsive Multichannel-E-Commerce: Vorgehen und Learnings aus der PraxisResponsive Multichannel-E-Commerce: Vorgehen und Learnings aus der Praxis
Responsive Multichannel-E-Commerce: Vorgehen und Learnings aus der Praxis
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's
 
Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...
Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...
Michael Jäger (Techsoft), Dipl.-Ing. Bernd Kuntze (Franz Haas Waffel- und Kek...
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
 
Lean development 04
Lean development 04Lean development 04
Lean development 04
 
Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...
Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...
Hilfe! Agile und die Digitale Transformation haben meinen Job gefressen ...
 
2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
2008 - Gewinnung von OPEN SOURCE Techniken für junge Unternehmen
 
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ..."Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
 
2022-12_RPA-ChapterEvent_WhatsNew
2022-12_RPA-ChapterEvent_WhatsNew2022-12_RPA-ChapterEvent_WhatsNew
2022-12_RPA-ChapterEvent_WhatsNew
 
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
 
Enterprise Git Adoption Webinar - German
Enterprise Git Adoption Webinar - GermanEnterprise Git Adoption Webinar - German
Enterprise Git Adoption Webinar - German
 
SAP IdM Wartungsende 2027... und was nun?
SAP IdM Wartungsende 2027... und was nun?SAP IdM Wartungsende 2027... und was nun?
SAP IdM Wartungsende 2027... und was nun?
 
Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?Was macht ein Start Up erfolgreich?
Was macht ein Start Up erfolgreich?
 
Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)
 
Zinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.deZinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.de
 
Node.js - Von der Entwicklugn bis zum produktiven Einsatz
Node.js - Von der Entwicklugn bis zum produktiven EinsatzNode.js - Von der Entwicklugn bis zum produktiven Einsatz
Node.js - Von der Entwicklugn bis zum produktiven Einsatz
 

2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität

  • 2. www.omm-solutions.de ● Intro ● RPA in der Supportphase / Wartungsphase ● Wie kann ich die Qualität meines Codes sicherstellen und überprüfen? ● Diskussion Was erwartet uns heute? 2 < OMM Solutions GmbH >
  • 3. www.omm-solutions.de Zusammen sind wir stark 3 Ziel des UiPath RPA Chapters Stuttgart 💪 Offenes Format ○ Kommunikation auch über LinkedIn-Gruppe 💪 Regelmäßiges Event ○ 6 Mal im Jahr ○ Einladungen via E-Mail und auf https://community.uipath.com/stuttgart/ ○ Von Erfahrung anderer RPA-Praktiker lernen 💪 Ablauf ○ Inspirierender Themen-Vortrag ○ Praxisinput ○ Diskussion
  • 4. www.omm-solutions.de Wer sind wir? 4 Fotios Karamitsos Christian Prior-Mamulyan
  • 6. www.omm-solutions.de ● Dezentrales RPA CoE mit Process Owner, Service Owner, Developer ● 5-20 Prozesse, Prod- & Test-Tenant ● LowCode zunehmend unter dem Einfluß von “IT-Bürokratie” ● Es gibt ein Ticketsystem ;) ● Jährliche Reviews von Support-Budget, Monatliche/quartalsweise Service Meetings Scenario Bürokratie in der IT kann mitunter Innovation und Umsetzung ausbremsen, aber trotzdem behalten LowCode-Plattformen noch eine gewisse Flexibilität und Spielraum in Bezug auf Anpassung und Integrationsfähigkeiten
  • 8. www.omm-solutions.de Code Inventar / Bewertung Basics: ● Liste der Tenants ● Liste der Prozesse ○ Metadata ○ Deployment and Developer-Access ○ Konfigurierbarkeit und Testbarkeit ○ Sicherheitskonzept ● Liste der Trigger ● Liste der Robot Accounts ● Liste der Machines ● Liste der Folders ● … Die Existenz von End-to-End-Testfällen (oder ein Prozess zur Beschaffung neuer Testfälle) ist entscheidend für das Change Management.
  • 9. www.omm-solutions.de Code assessment / inventory Advanced: Als Service Owner lassen sich aus den Inventar-Resultaten Handlungsempfehlungen ableiten: ● Workflow Analyzer Resultate als baseline für Verbesserungen ● Delta zu best practices oder Styleguide-Vorgaben Beispiele für Inventar-Metriken allEntrypointsAreReframework, hasCanary, isRepoCICDenabled, hasQueue(s), hasObjectRepository, hasPDD, hasSDD, hasOperationalHandboook, createsTempFoldersIfNotExist, doesWorkOnAnyRobot, hasSupportedDependencies
  • 12. www.omm-solutions.de Infrastructure and Tools In der sich entwickelnden Landschaft von RPA ist es nicht nur ein Vorteil, einen robusten Werkzeugkoffer zu haben; es ist eine Notwendigkeit. Die Werkzeuge, die dem Service Owner zur Verfügung stehen, bilden das Rückgrat für eine effiziente RPA-Entwicklung, -Bereitstellung und -Wartung: ● Supported UiPath product versions ● Git ● Log Analyzer (e.g. Elastic or Splunk) ● CI/CD (e.g. Jenkins) ● Code Analyzer (e.g. SonarQube) Ein Ticket-System muss a) vorhanden sein und b) im Alltag gelebt werden.
  • 13. www.omm-solutions.de Vorteile ausgewählter Zusatz-Tools Im RPA Umfeld sind Werkzeuge wie Elastic CE, Splunk, Git und SonarQube entscheidend für die Verbesserung von zentralisiertem Logging, Analytik, Integration und Qualitätssicherung.. ● Elastic CE: Zentralisiertes Loggin, Erweiterte Loganalyse & Visualisierung, Suche ● Splunk: Ähnlich Elastic, Vorteil “alerting” ● Git: Integration mit CI/CD, Upskilling der Entwickler ● SonarQube: OTS nur xml-Analyse Um versionierte RPA-Projekte außerhalb des Rahmens von UiPath Studio effektiv zu verwalten und daran zusammenzuarbeiten, ist es wesentlich, einen dedizierten Git-Client zu haben.
  • 14. www.omm-solutions.de Stay Updated with Updates "Stay Updated with Updates" dient nicht nur als Leitprinzip; es fasst den proaktiven Ansatz zusammen, der notwendig ist, um die volle Leistungsfähigkeit der Automatisierung auszuschöpfen. ● Nicht nur automatisierte Systeme, ● sondern auch Komponenten der UiPath-Plattform. ○ Einschließlich der activities! In der IT diktiert die Produkt-Roadmap eines Anbieters oft notwendige Infrastrukturänderungen, insbesondere wenn ältere Produktversionen nicht mehr unterstützt werden. Dies erfordert Anpassungen, um neue Funktionen, Kompatibilitätsanforderungen oder sich entwickelnde Technologiestandards zu berücksichtigen.
  • 15. www.omm-solutions.de Dependency Management in UiPath Read the fine manuals For each released version the Support Model, the initial Release Date, the end of the Mainstream Support and the end of the Extended Support is published.
  • 17. www.omm-solutions.de RPA Metriken – bisher Typische RPA (Robotic Process Automation) Metriken helfen dabei, den Erfolg und die Effizienz automatisierter Prozesse zu messen und zu optimieren. Hier sind einige gängige RPA-Metriken: ● Automatisierungsrate ● Erfolgsrate der Prozesse ● Durchschnittliche Bearbeitungszeit ● Kosteneinsparung ● Return on Investment (ROI)
  • 18. www.omm-solutions.de RPA Metriken v2.0 Mit der Weiterentwicklung von RPA-Plattformen und einem tieferen Verständnis für nachhaltige Automatisierung sind neue Generationen von Metriken aufgetaucht, die tiefer in die Feinheiten der RPA-Entwicklung und -Wartung eintauchen. ● Vendor Support Abdeckung ● Workflow Analyzer Code Quality ● Abdeckung von best practices und Styleguide-Vorgaben
  • 21. www.omm-solutions.de Challenge: Deployment Gates Kontrollpunkte oder Kriterien, die eine Softwarefreigabe oder ein Update erfüllen muss, bevor es zur nächsten Phase seines Bereitstellungslebenszyklus übergeht: ● Qualität ● Sicherheit ● Performance und ● Compiance Standards Als RPA Service Owner mit dem Ziel, die Code-Qualität zu verbessern, ist eine Vereinbarung über Deployment Gates zwingend erforderlich.
  • 22. www.omm-solutions.de LowCode Deployments Eine Freigabe für das Deployment von RPA Prozessen kommt nicht ohne Herausforderungen: ● Rapid Development vs. Thorough Testing ● Abhängigkeiten von Externen Systemen ● Vorhandenes Skillset ● Dokumentation ● u.v.a.m… Eine mögliche Unterscheidung könnte zwischen Code-Änderungen liegen, die die implementierte Geschäftslogik ändern oder nicht ändern.
  • 23. www.omm-solutions.de Conclusion: Multivariate Approach to Code Improvement config test cases repo logs iteration docs metadata tickets security governance structure budget config cont’ improvement legacy code
  • 24. www.omm-solutions.de Wie kann ich die Qualität meines Codes vor der Support Phase sicherstellen? 24 < OMM Solutions GmbH >
  • 25. www.omm-solutions.de 25 Wo ist Codequalität von zentraler Bedeutung? Deployment & Maintenance ● Den Prozess effizient und fehlerfrei produktiv einsetzen Testing ● Den Prozess richtig testen und abnehmen Development ● Den Prozess richtig umsetzen Analyse ● Den richtigen Prozess auswählen RPA Lebenszyklus
  • 26. www.omm-solutions.de 26 Wie stelle ich Qualität von Beginn an sicher? Code- optimierung Robustheit & Zuverlässigkeit Struktur & Design Sicherheit & Datenschutz ● Designqualität ● Lesbarkeit & Dokumentation ● Wiederverwendbarkeit ● Performance ● Reviews ● Datensicherheit ● Zugriffskontrolle ● Frameworks ● Fehlerhandling & Logging ● Testbarkeit ● Wartbarkeit
  • 28. www.omm-solutions.de Checkliste Struktur & Design • Designqualität ☐ Architektur: Wie interagieren die Komponenten miteinander? ☐ Konsistenz: Ist der Code-Stil konsistent und standardisiert? ☐ Skalierbarkeit: Kann der Code ohne große Anpassungen erweitert werden? • Lesbarkeit & Dokumentation ☐ Kann der Code ohne viel Aufwand nachvollzogen werden? ☐ Sind (komplexe) Codeblöcke ausreichend kommentiert? ☐ Ist der Prozess ausreichend dokumentiert, z.B. im Process Design Document (PDD)? • Wiederverwendbarkeit ☐ Modularität: erfüllt jeder Teilprozess genau eine Aufgabe? ☐ Variabilisierung: Sind Werte im Code hard hinterlegt oder in der Config.xlsx? 28 Wie stelle ich eine gute Struktur & Design sicher?
  • 29. www.omm-solutions.de 29 Wie hilft mir das UiPath Studio Konsistenz sicherzustellen? • Analyze Project: Überprüft ein Projekt auf mögliche Fehler, Inkonsistenzen und Konflikte, bevor es ausgeführt wird. • Validate File: Prüft die Syntax und Struktur einer einzelnen Datei in einem Projekt, um sicherzustellen, dass sie den Anforderungen entspricht. • Validate Project: Überprüft ein gesamtes Projekt auf syntaktische Genauigkeit, Referenzen, Abhängigkeiten und andere Fehler, um sicherzustellen, dass es korrekt und ausführbar ist.
  • 31. www.omm-solutions.de Checkliste Robustheit & Zuverlässigkeit • Frameworks ☐ Wird ein passendes Framework eingesetzt? • Fehlerhandling & Logging ☐ Was passiert bei einem Fehler (Business / Applikation)? ☐ Sind ausreichend Logs zur Nachvollziehbarkeit hinterlegt? ☐ Ist der Prozess so gestaltet, dass er geführt abbricht? • Testbarkeit ☐ Unit Tests: kann ich jede Komponente separat testen? ☐ Testabdeckung: Wie hoch ist meine Testabdeckung? • Wartbarkeit ☐ Modularität / Aktualisierbarkeit ☐ Lesbarkeit ☐ Dokumentation 31 Wie stelle ich zuverlässigen Code sicher?
  • 32. www.omm-solutions.de Unit Testing in Studio 32 ❏ REF generiert in neuer Version automatisch Testcases ❏ Kann mit dem Test Manager im Orchestrator verbunden werden ❏ Nutzung von Variablen & Argumenten stellt die Testbarkeit einzelner xamls sicher
  • 34. www.omm-solutions.de Checkliste Sicherheit & Datenschutz • Datensicherheit ☐ Keine hard hinterlegten Passwörter im Code? ☐ Sind die verwendeten Daten sicher hinterlegt? (Orchestrator) • Zugriffskontrolle ☐ Wer hat Zugriff auf den Code? • Liegt der Code in der Versionskontrolle? ☐ Werden für den Prozess Accounts nur mit nötigen minimalen Systemrechten genutzt? 34 Nutze Assets und Ordnerstrukturen!
  • 36. www.omm-solutions.de Checkliste Codeoptimierung • Performance ☐ Profiling: Wie lange dauert die Durchführung des Codes und welche Teile kann ich optimieren? • Reviews ☐ Peer-Reviews: Hat ein Kollege/ Kollegin den Code überprüft? ☐ automatisierte Codeüberprüfung: • Studio: Analyse File / Project & validate File / Project • Skripte & externe Tools • Teil einer Continuous Integration/Continuous Deployment Pipeline 36 Wie stelle ich zuverlässigen Code sicher?
  • 37. www.omm-solutions.de Noch besser… ein Review-Template nutzen! 37
  • 39. www.omm-solutions.de 39 Learnings ✅ Die Qualitätssicherung endet nicht mit der Implementierung endet, sondern in der Support- und Wartungsphase entscheidend ist ✅ Wir haben Techniken zur Qualitätsüberprüfung in der Automatisierung kennengelernt ✅ Wir haben gelernt, wie man die Code-Qualität sicherstellt & überprüft
  • 41. www.omm-solutions.de Vielen Dank für Ihre Aufmerksamkeit! 41 < OMM Solutions GmbH >
  • 42. www.omm-solutions.de < OMM Solutions GmbH > The copyright for this slide is held by OMM Solutions GmbH OMM Solutions GmbH Vor dem Lauch 19 70567 Stuttgart Germany Fragen oder Interesse? 42 Ihr persönlicher Ansprechpartner Fotios Karamitsos fotios.karamitsos@omm-solutions.de +49 (0)711 995 985-84 Hyperautomation Advisor Kompetenz-Schwerpunkte: - Robotic Process Automation - Document Understanding - Hyperautomation - Artificial Intelligence - Communicational AI
  • 43. www.omm-solutions.de 43 < OMM Solutions GmbH > OMM Solutions GmbH Vor dem Lauch 19 70567 Stuttgart Geschäftsführer Dr. Martin Allmendinger Malte Horstmann Olaf Horstmann Kontakt Telefon: +49 711 995 985-80 E-Mail: info@omm-solutions.de Umsatzsteuer-ID: DE295716572 Sitz der Gesellschaft: Stuttgart Amtsgericht Stuttgart, HRB 749562 Impressum