11
1 sd&m, 28.03.2007 SE 2007 Effizientes Prozess- Monitoring im Supply Chain Management Dr. Frank Wietek, Tim Lüecke SE 2007 – Software Engineering Forum Universität Hamburg 28. März 2007 Unternehmensportrait Herausforderungen für global agierende Logistik-Provider Anforderungen an eine Monitoring-Lösung Effiziente Umsetzung einer Komponenten-Architektur Zusammenfassung 2 sd&m, 28.03.2007 Unternehmensportrait Agenda Effizientes Prozess-Monitoring im Supply Chain Management

Effizientes Prozess-Monitoringim SupplyChain Management

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Effizientes Prozess-Monitoringim SupplyChain Management

1 sd&m, 28.03.2007

SE 2007

Effizientes Prozess-Monitoring imSupply Chain Management

Dr. Frank Wietek, Tim LüeckeSE 2007 – Software Engineering ForumUniversität Hamburg 28. März 2007

Unternehmensportrait

Herausforderungen für global agierende Logistik-Provider

Anforderungen an eine Monitoring-Lösung

Effiziente Umsetzung einer Komponenten-Architektur

Zusammenfassung

2 sd&m, 28.03.2007

� Unternehmensportrait

Agenda

Effizientes Prozess-Monitoring im Supply Chain Management

Page 2: Effizientes Prozess-Monitoringim SupplyChain Management

3 sd&m, 28.03.2007

Berlin

Hamburg

Düsseldorf

Köln/Bonn

Stuttgart

München

Zürich

Frankfurt

sd&m AG – software design & management

Unternehmensportrait

Forschung

NSCWrocław

� Entwicklung und Integration maß-geschneiderter Informationssysteme für unternehmenskritische Prozesse

� IT-Beratung mit Umsetzungskompetenz

Geschäftsfelder

� Namhafte Unternehmen und Organisationen, die durch Einsatz individueller Lösungen Wettbewerbsvorteile erlangen

Kunden

� Software-Engineering und Projektmanagement

Kernkompetenz

Eckdaten 2005

Mitarbeiter: 1.010Umsatz: 141 Mio. €

Aktionär

Unternehmensportrait

Herausforderungen für global agierende Logistik-Provider

Anforderungen an eine Monitoring-Lösung

Effiziente Umsetzung einer Komponenten-Architektur

Zusammenfassung

4 sd&m, 28.03.2007

� Herausforderungen für global agierende Logistik-Provider

Agenda

Effizientes Prozess-Monitoring im Supply Chain Management

Page 3: Effizientes Prozess-Monitoringim SupplyChain Management

5 sd&m, 28.03.2007

Aus immer stärkerer Einbindung in die Kundenprozesse ergibt sich eine hohe Verantwortung für den Logistikpartner

� Kundenzufriedenheit durch hohen Lieferservicegrad

� Vermeidung von fehlender Lieferfähigkeit in Out-of-Stock-Situationen

� Reduzierung von kapitalbindenden Lagerbeständen über die gesamte Lieferkette

� Flexible und zeitnahe Anpassungen an sich ändernde Marktbedürfnisse

� Beherrschen von Ausnahmesituationen (Bedarfsspitzen, Störungen)

� Kostenvorteile durch Abstimmung im gesamten Wertschöpfungs-Netzwerk

Modernes Supply Chain Management erfordert hohe Servicequalität:

Source Make Ship Customs Receive Distribute

Herausforderungen in der Logistik

nach: Krampe, Lucke: Grundlagen der Logistik, HUSS-Verlag, 2006

6 sd&m, 28.03.2007

Corporate Performance Management macht die Wettbewerbsfähigkeit transparent

Corporate Performance Management (CPM)beschreibt Methodiken, Metriken, Prozesse und Systeme zum Monitoring und Management der Performance des Geschäfts eines Unternehmens.

� Finanzkennzahlen und Nicht-Finanzkennzahlen

� Werttreibende und abhängige Kennzahlen (leading vs. lagging)

� …

� Balanced Scorecard� Economic Value Added

(EVA)� Activity Based Costing

(ABC)� …

� Unternehmensstrategie� Budgeting� Forecasting� …

Metriken ProzesseMethodiken

CPM ist ein systematischer, an der Unternehmensstrategie ausgerichteter Managementprozess, der die Summe aller im Unternehmen erzielten Leistungen den Erwartungen gegenüberstellt.

Herausforderungen in der Logistik

Page 4: Effizientes Prozess-Monitoringim SupplyChain Management

7 sd&m, 28.03.2007

Der Übergang von strategischer zu operativer Entscheidungsunterstützung in der Logistik ist fließend

Strategisch

Taktisch

Operativ

LieferantenbewertungPeriodenplanung

Network PlanningSupply ChainCollaboration

Absatzkennzahlen-plan

AblaufautomatisierungUmsatzkennzahlenProduktbewertung

BestandsoptimierungControlling

Übergreifende Kassenanbindung

Tracking&TracingJust-in-Time

VerbundplanungAnalyse & Alarm

ProzessoptimierungLagerminimierung

Virtuelle LagerCrossdocking

Herausforderungen in der Logistik

Unternehmensportrait

Herausforderungen für global agierende Logistik-Provider

Anforderungen an eine Monitoring-Lösung

Effiziente Umsetzung einer Komponenten-Architektur

Zusammenfassung

8 sd&m, 28.03.2007

� Anforderungen an eine Monitoring-Lösung

Agenda

Effizientes Prozess-Monitoring im Supply Chain Management

Page 5: Effizientes Prozess-Monitoringim SupplyChain Management

9 sd&m, 28.03.2007

Supply Chain Monitoring meldet planmäßige und unplanmäßige Ereignisse an jeweilige Verantwortliche

Monitoring-Anforderungen

Mengen-Abweichung in der Fertigung

Source Make Ship Customs Receive Distribute

Fehlende Meldung über Abflug

2 Stunden zu spät durch den Zoll

Pünktlich ausgeliefert

ITGeschäfts-bereiche

Kunden

Andere Flugnummer

10 sd&m, 28.03.2007

Die Anforderungen an eine Monitoring-Engine zur Sendungsüberwachung sind vielfältig

Allgemeine Anforderungen Ablösung des Altsystems

� Integration und Konsolidierung von Daten (Sendungen, Pläne, Status-Meldungen) aus internen und externen operativen Systemen

� freie Spezifikation von Monitoring-Regeln: Confirmations und Exceptions

� Neartime-Verarbeitung:

- 5-10 Minuten von Meldungseingang bis Alert

- 10-20 Minuten von Event bis zur Nachricht

� Information interner und externer Verantwortlicher auf verschiedenen Alert-Leveln

� Stabilität und sehr gute Skalierbarkeit

� Steigerung von Performance und Senkung der Ressourcenauslastung

� Verbesserung von Wartbarkeit und Konfigurierbarkeit

� exakte Spezifikation und Dokumentation der Monitoring-Regeln

� individuell definierter, automatisierter Umgang mit Datenqualitätsproblemen einschließlich Begrenzung der Menge ausgehender Nachrichten

Klar definierte und zuverlässige Überwachung aller relevanten Ereignisse in der Supply Chain

Monitoring-Anforderungen

Page 6: Effizientes Prozess-Monitoringim SupplyChain Management

11 sd&m, 28.03.2007

Der Nutzen des Monitoring ist vielschichtig

Prozesse Mitarbeiter und Partner Kunden

� Einhaltung von Qualitätsstandards (Compliance) und Zertifizierung

� (automatisierte Umdisposition)

� pro-aktive Information für die Kommunikation mit dem Kunden

� Möglichkeit zur Umdisposition

� frühzeitige Information etwa im Falle von Verspätungen

operativ

taktisch� Optimierung der

Abläufe auf Basis der Identifikation von Schwachpunkten

� verbesserte Steuerung der Geschäftsprozesse

� Sammlung von Belegen für Probleme gegenüber Prozess-Verantwortlichen

� erhöhte Kundenfreund-lichkeit und –bindungdurch Offenlegung der Abläufe

Monitoring-Anforderungen

Unternehmensportrait

Herausforderungen für global agierende Logistik-Provider

Anforderungen an eine Monitoring-Lösung

Effiziente Umsetzung einer Komponenten-Architektur

Zusammenfassung

12 sd&m, 28.03.2007

� Effiziente Umsetzung einer Komponenten-Architektur

Agenda

Effizientes Prozess-Monitoring im Supply Chain Management

Page 7: Effizientes Prozess-Monitoringim SupplyChain Management

13 sd&m, 28.03.2007

Visibility Solution(Java/Tomcat)

+ Dashboard(Java/Tomcat)

Operational Data Store(ORACLE 10g)

Monitoring DB

Data MartsData MartsData Marts

Requests / Rules

Housekeeping(SQL, PL/SQl)

Evaluation(SQL, PL/SQl)

Import(SQL, PL/SQL)

Replication

Distribution (e-mail)(Java)

Alerts / Notifications

Configuration(Java/Tomcat)

Monitoring Engine

ETL (SQL, PL/SQL)

Reporting / Analysis (BO/WebIntelligence)

ETL (SQL, PL/SQL)

Operational SystemsOperational SystemsOperational Systems

External CarriersExternal CarriersExternal Carriers

Replication

ITBusinessAreas

Customers

ASCII, XML, Edifact

Visibility DB

zeit- und event-bezogen

bis zu 10.000 Requests (zu überwachende Sachverhalte)

viele gleich-berechtigte Nutzer

Die Monitoring-Engine erweitert eine bestehende Business Intelligence Architektur

Views

Komponenten-Architektur

14 sd&m, 28.03.2007

Eine datenbanknahe Komponenten-Architektur vereint Performance mit Kapselung und Wartbarkeit

� kontinuierliche Überwachung und automatischer Re-Start im Fehlerfall

� Logging und Admin-Benachrichtigung

� periodisch (oft: minütlich) ausgeführte Batch-Jobs

� Identifikation neuer Sätze über Trace, Timestamp, Sequence

� Parallelisierung über Transport-Mode (Luftfracht, Seefracht, …) u.a.

Re-Import

ODS

MonitoringInbound

Outbound

Import

Inbound

Evaluie-rung

Candidate

e-mailDistribution(Java)

Statistics

DB Analyze

Supervisor

Housekeeping

Prozessrahmen:PL/SQL-Packages

Objektlogik:Datenbank-Views

DB-Tabellenmit klaren

ZugehörigkeitenAlert

Archive Visibility-Export

ODS-Export

Komponenten-Architektur

Page 8: Effizientes Prozess-Monitoringim SupplyChain Management

15 sd&m, 28.03.2007

Deklarative Programmierung mit Datenbank-Views I:Partitionierung, Batch-Verarbeitung, Konfigurierung

CREATE OR REPLACE VIEW I_V_MON_I_SHIP_INBOUND_BATCH AS

SELECT s.*

FROM I_V_MON_I_SHIP_INBOUND s

CROSS JOIN TMP_MON_I_CONFIG c

WHERE s.inbound_id > c.last_object_id_imported

AND rownum <= c.rows_per_batch

AND s.object_type = c.object_type

AND s.partition_name = c.inbound_partition_name

AND ...;

Selektion eines zu verarbeitenden Batches neuer Shipment-Daten:

Nutzung temporärer Konfigurationstabellen, die sitzungsbezogene Parameter als Kontext bereitstellen.

Nutzung temporärer Konfigurationstabellen, die sitzungsbezogene Parameter als Kontext bereitstellen.

Ordnung neuer Datensätze über sequenzgenerierte inbound_idermöglicht Selektion eines Batchesmit gegebener Maximalgröße für Folge-Views.

Ordnung neuer Datensätze über sequenzgenerierte inbound_idermöglicht Selektion eines Batchesmit gegebener Maximalgröße für Folge-Views.

Skalierung der Verarbeitung mittels Partitionierung der Input-Daten(hier: partition_name ≈ object_type)und parallele Verarbeitung der Partitionen in separaten Sitzungen

Skalierung der Verarbeitung mittels Partitionierung der Input-Daten(hier: partition_name ≈ object_type)und parallele Verarbeitung der Partitionen in separaten Sitzungen

Komponenten-Architektur

16 sd&m, 28.03.2007

Deklarative Programmierung mit Datenbank-Views II:Modernes SQL mit Aggregatfunktionen

CREATE OR REPLACE VIEW I_V_MON_I_SLINE_INBOUND_BATCH AS SELECT

s1.*

FROM (SELECT s.*

, row_number() OVER (PARTITION BY shipment_id, status_code

ORDER BY event_timestamp DESC, shipment_inbound_id DESC)

rownum_per_status

, row_number() OVER (PARTITION BY shipment_id

ORDER BY event_timestamp DESC, shipment_inbound_id DESC)

rownum_per_shipment

, MIN(is_active) OVER (PARTITION BY shipment_id) is_active

FROM I_V_MON_I_SHIP_INBOUND_BATCH s) s1

WHERE rownum_per_status = 1;

Elimination von Duplikaten – Selektion des letzten Updates zu einem Shipment:

Identifikation des letzten Updates eines Status.Identifikation des letzten Updates eines Status.

Identifikation des letzten Shipment-Updates.Identifikation des letzten Shipment-Updates.

Beschränkung auf letztes Update per Status.Beschränkung auf letztes Update per Status.

Registrierung von Löschungen außerhalb der normalen Nachrichtenfolge.

Registrierung von Löschungen außerhalb der normalen Nachrichtenfolge.

Komponenten-Architektur

Page 9: Effizientes Prozess-Monitoringim SupplyChain Management

17 sd&m, 28.03.2007

Deklarative Programmierung mit Datenbank-Views III:Regelverarbeitung

CREATE OR REPLACE VIEW I_V_MON_E_CANDIDATE_SV_A AS

SELECT a.*

, row_number() OVER (PARTITION BY monitor_candidate_id ORDER BY value_t_2) rownum_per_arg2

FROM I_V_MON_E_CAND_EVENTS a

WHERE create_timestamp_2 IS NOT NULL

AND monitor_category = 'SV';

CREATE OR REPLACE VIEW I_V_MON_E_CANDIDATE_SV_B AS

SELECT a.*

, CASE WHEN condition_option = 'LAT' AND value_t_2 > value_t_1 + days_offset THEN 'Y'

WHEN condition_option = 'EAR' AND value_t_2 < value_t_1 + days_offset THEN 'Y'

WHEN condition_option = 'LOE' AND abs(value_t_2 - value_t_1) > days_offset THEN 'Y'

ELSE 'N' END is_condition_satisfied

FROM I_V_MON_E_CANDIDATE_SV_A a

WHERE rownum_per_arg2 = 1;

MERGE INTO NOTIFICATION

USING (SELECT * FROM I_V_MON_E_CANDIDATE_SV_B WHERE is_condition_satisfied = 'Y')

...

Regel Status Variance: Schlage Alarm, wenn das erste von mehreren Events 2 mehr als n Tage vor oder nach einem Event 1 eintritt

Paare von 1. und 2. Event zu einem Kandidaten der Kategorie SV (Status Variance) mit vorhandenem Event 2

Paare von 1. und 2. Event zu einem Kandidaten der Kategorie SV (Status Variance) mit vorhandenem Event 2

Ordnung von Events nach Zeit des EintretensOrdnung von Events nach Zeit des Eintretens

Betrachtung des zuerst aufgetretenen 2. EventsBetrachtung des zuerst aufgetretenen 2. Events

Erzeugen neuer / Update bestehender Alerts für erfüllte RegelbedingungErzeugen neuer / Update bestehender Alerts für erfüllte Regelbedingung

Prüfung der Zeitabstände von Event 1 und 2Prüfung der Zeitabstände von Event 1 und 2

Komponenten-Architektur

18 sd&m, 28.03.2007

Technische Details der Lösung

� schnelle Entwicklung, einfache Wartung und dynamische Konfigurierbarkeit durch deklarative Programmierung (SQL: Kapselung von Informationsobjekten in Views)

� 1. Stufe: etwa 30 Monitoring Requests, 200.000 Statusmeldungen und 15.000 Pläne am Tag – Auslastung der Engine zu etwa 5% (1 Prozessor, ohne Parallelisierung)

� etwa lineare Skalierung durch Partitionierung, Nutzung temporärer Tabellen, geeignete Indizierung und ausgefeiltes Housekeeping

� Entkopplung vom DWH-Kern durch Replikation

� Aufdecken und Korrigieren von Daten-Manipulationen und Qualitätsproblemen durch komplexe Import-Filter

� Robustheit: automatische Fehlererkennung und –behebung durch separate Datenbankjobs, unterstützt durch ein sauberes Transaktionskonzept

Der Grundstein für die Ablösung des Altsystems ist gelegt

Komponenten-Architektur

Page 10: Effizientes Prozess-Monitoringim SupplyChain Management

19 sd&m, 28.03.2007

Probleme und Herausforderungen

� Fehlende Vererbung führt zu Redundanzen in der Implementierung (die gleiche Logik aufverschiedenen Datenbankobjekten muss mehrfach programmiert werden).

� Klare Trennung von Objektsicht (SQL) und Prozesssicht (PL/SQL) lässt sich nicht immer einhalten (z.B. bei Nutzung von prozeduralen Tabellenfunktionen in PL/SQL).

� Eingeschränkter Funktionsumfang von Entwicklungsumgebungen für SQL bzw. PL/SQL (übersichtliche Darstellung der Strukturen und Beziehungen, Debugging, etc.).

� Performante Verarbeitung erfordert tiefgehendes Verständnis der DBMS-spezifischen Interna von Anfrageverarbeitung und –optimierung (bzw. anders gesagt: bei sehr hoher Anfragekomplexität stoßen intelligente Optimierer an ihre Grenzen).

Komponenten-Architektur

Unternehmensportrait

Herausforderungen für global agierende Logistik-Provider

Anforderungen an eine Monitoring-Lösung

Effiziente Umsetzung einer Komponenten-Architektur

Zusammenfassung

20 sd&m, 28.03.2007

� Zusammenfassung

Agenda

Effizientes Prozess-Monitoring im Supply Chain Management

Page 11: Effizientes Prozess-Monitoringim SupplyChain Management

21 sd&m, 28.03.2007

Zusammenfassung

Herausforderungen für die Zukunft liegen in der komfortablen Unterstützung deklarativer SQL-Programmierung.

Corporate Performance Management bietet Lösungen für global agierende Logistik-Provider zur Gewährleistung hoher Servicequalität innerhalb der Supply Chain.

Eine datenbanknahe Implementierung des Prozess-Monitoringskann hohe Performance und Vorteile einer komponentenbasierten Architektur vereinen.

Zusammenfassung

22 sd&m, 28.03.2007

Kontakt

Dr. Frank Wieteksd&m AG

Lübecker Straße 128D-22087 Hamburg

Telefon: +49 40 254491 - 394Internet: www.sdm.de/Mail: [email protected]

Dr. Frank Wietek beschäftigt sich seit über 10 Jahren mit DataWarehousing und Business Intelligence in Forschung und Praxis. Für seine Dissertation im Bereich multidimensionaler Datenmodellierung und Analyse erhielt er 2001 den BTW-Dissertationspreis der GI. Seit sieben Jahren arbeitet er für die sd&m AG in Hamburg in verschiedenen Rollen in nationalen und internationalen BI/DWH-Projekten. Seine Schwerpunktgebiete sind BI/DWH-Architektur und DWH-Bewirtschaftung sowie Corporate Performance Management mit fachlichem Schwerpunkt in der Logistik.