Software Entwicklung bei SAP Am Beispiel von NetWeaver BI Thomas Zurek Director of Development SAP NetWeaver BI Analytic Server 15. Mai 2008
Zu meiner Person 1986 Abitur LKs Mathematik, Chemie 1987 1993 Informatikstudium Uni Karlsruhe Edinburgh University (1991/92) Datenbanken Software Engineering 1994 1997 Promotion in Informatik Edinburgh University parallele Datenbanksysteme seit 1998 SAP Business Warehouse Entwicklung: zuerst Entwickler seit 2002 Manager, Gruppe von ca. 20 Entwicklern / Architekten SAP 2008 / Page 2
Exkursus: 5 orders of ignorance (by P. Armour) Communications of the ACM, Oct 2000, vol 43, no. 10, p. 17ff starting point: 1. software = knowledge manifested in code 2. software development = knowledge acquisition process 3. ignorance = absence of knowledge orders: 0OI: lack of ignorance knowledge is in the code, answers are there 1OI: lack of knowledge but you know the questions you are aware of the lack of knowledge 2OI: lack of awareness you don't know the questions and are possibly not even aware of the lack of knowledge but you have a process/method to find the questions 3OI: lack of process there is not even a process/method to detect ignorance, e.g. like trial & error 4OI: meta ignorance you don't know about the 5 orders of ignorance SAP 2008 / Page 3
Agenda 1. Business Intelligence Szenarien Fraud Detection Customer Relationship Long Tail Analysis 2. Business Intelligence Systeme Aus welchen Schichten bestehen solche Systeme? Welche Probleme werden in den Schichten gelöst? 3. Software Entwicklung bei SAP Was machen wir bei SAP? Wer arbeitet sonst noch bei SAP? Was verkauft SAP eigentlich? So viele Leute, um Software zu produzieren? Unterschied: Programm industrielle Software? SAP 2008 / Page 4
Agenda 1. Business Intelligence Szenarien Fraud Detection Customer Relationship Long Tail Analysis 2. Business Intelligence Systeme Aus welchen Schichten bestehen solche Systeme? Welche Probleme werden in den Schichten gelöst? 3. Software Entwicklung bei SAP Was machen wir bei SAP? Wer arbeitet sonst noch bei SAP? Was verkauft SAP eigentlich? So viele Leute, um Software zu produzieren? Unterschied: Programm industrielle Software? SAP 2008 / Page 5
Examples of Business Intelligence Scenarios fraud detection retail company point-of-sales data & given discounts huge amounts of data a prototypical BI question screencam customer relationship demo: query on active systems long tail analysis e-commerce companies like Amazon, Ebay, itunes, Rhapsody, translate sales of popular products into (additional) sales in the long tail BI integrated into operational processes SAP 2008 / Page 6
Long Tail Analysis (1) an example from Amazon SAP 2008 / Page 7
Long Tail Analysis (2) Source: Chris Anderson, The Long Tail, Wired, October 2004, http://www.wired.com/wired/archive/12.10/tail.html SAP 2008 / Page 8
Long Tail Analysis (3) Source: Chris Anderson, The Long Tail, Wired, October 2004, http://www.wired.com/wired/archive/12.10/tail.html SAP 2008 / Page 9
Agenda 1. Business Intelligence Szenarien Fraud Detection Customer Relationship Long Tail Analysis 2. Business Intelligence Systeme Aus welchen Schichten bestehen solche Systeme? Welche Probleme werden in den Schichten gelöst? 3. Software Entwicklung bei SAP Was machen wir bei SAP? Wer arbeitet sonst noch bei SAP? Was verkauft SAP eigentlich? So viele Leute, um Software zu produzieren? Unterschied: Programm industrielle Software? SAP 2008 / Page 10
BI System für eine Fluglinie Excel Browser Acrobat BI Frontends 3 rd Party Embedded CPM App BI Platform Vertrieb Kostenkontrolle Wartungsoptimierung Kundenbetreuung Data Warehouse Transformationen DB Flugreservierungs- Flugzeugwartungs- DB Personal-DB SAP 2008 / Page 11
Main Challenges in the Data Warehousing Layer physical connectivity to source systems many protocols, formats, code pages unicode / non-unicode transformation, cleansing, scrubbing Jun 1, 2007 = 1.6.2007 = 06/01/07 = VW Touareg = VW TOUAREG = [product] 87654 = currency and unit conversions: pounds kg etc. resolve ID clashes: same product no. used in different subsiduaries enrich data: add attributes from source A to data from source B consistency, integrity create one version of the truth track data flows; know where the data originated SAP 2008 / Page 12
Main Challenges in the BI Platform Layer calculations aggregation of facts: SUM, MIN, MAX, AVG, COUNT, COUNT DISTINCT, formulas: e.g. revenue per employee, profitability, multi-dimensionality: e.g. time region product sales org hierarchies: versioning, logic, various types of hierarchies currency and unit conversions exceptions: e.g. good: revenue > 1 mio, bad: revenue < 500000 security performance use efficient data structures: relational star schemas, MOLAP storage, column-oriented storage caching precalculation planning write-back actuals (read-only) vs plan data SAP 2008 / Page 13
Main Challenges in the BI Frontend Layer The frontend layer exposes the rich functionality of the platform. many user groups casual user advanced user expert user: familiar w/ domain, data model, technology many contexts operational: any employee supervising operations, processes tactical: managers strategical: higher management, board many technologies web: browser, portals, Office (esp. Excel) specific tools dissemination via email, collaboration spaces, SAP 2008 / Page 14
Agenda 1. Business Intelligence Szenarien Fraud Detection Customer Relationship Long Tail Analysis 2. Business Intelligence Systeme Aus welchen Schichten bestehen solche Systeme? Welche Probleme werden in den Schichten gelöst? 3. Software Entwicklung bei SAP Was machen wir bei SAP? Wer arbeitet sonst noch bei SAP? Was verkauft SAP eigentlich? So viele Leute, um Software zu produzieren? Unterschied: Programm industrielle Software? SAP 2008 / Page 15
Vom Kunden zur SAP und umgekehrt Kunde Sales Services Berater Product Man. Support Entwickler SAP 2008 / Page 16 blau = SAP rot = Kunde/Partner
An einem Softwareprodukt beteiligte Gruppen Sales (Vertrieb) Produkt-Management präsentieren Produkt dem Kunden Messen, Treffen mit Kunden Verträge, Verhandlungen Produktdarstellung Messen, Treffen mit Partnern Dokumentation Demo-Szenarien Beratung kennen Produkt gut kennen Anwendungsgebiet gut haben Erfahrung Projekte beim Kunden Anwendungs-Entwicklung bauen Anwendungsszenarien auf Basis-Produkt programmieren auf dem Basis- Produkt Support Wartung Problemanalyse organisieren Infrastruktur pro-aktive Services System-Entwicklung entwerfen das Basis-Produkt programmieren das Basis-Produkt testen Wartung / Support SAP 2008 / Page 17
Systemlandschaft bei einem Kunden Test- System Entwicklungs- System Produktiv- System Patches eigene Entwicklungen Trainings- System eigentliches System tägliche Arbeit findet hier statt 24h Verfügbarkeit SAP 2008 / Page 18 Mitarbeiterschulungen Demos
Unterschied: Programm Softwaresystem ein Programm * 3 Komponente eines Softwaresystems * 3 * 3 ein marktfähiges Produkt * 3 ein Softwaresystem SAP 2008 / Page 19
Anteile der Aktivitäten SAP 2008 / Page 20
SAP Firmenkultur Eigenverantwortung keine Zeiterfassung jeder hat seinen Aufgabenbereich "Wer den Bug produziert, badet ihn auch aus." viele informelle Bereiche Kaffee-Ecken freies Mittagessen offene, unverschlossene Büros "kreatives Chaos" Vornamen keine Abteilungsgrenzen jeder kann mit jedem sprechen SAP 2008 / Page 21
Danke schön! SAP 2008 / Page 22