Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
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
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
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
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
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
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
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
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
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
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
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.