Click here to load reader

Performance Anforderungen bei der Anwendungsentwicklung

  • View
    64

  • Download
    4

Embed Size (px)

Text of Performance Anforderungen bei der Anwendungsentwicklung

1. www.ibsolution.de IBsolution GmbH Umgang mit Performance Anforderungen bei der Anwendungsentwicklung 02. Juni 2015 Sebastian Esch Tilo Freund IBsolution GmbH IBsolution Webinar 2. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. IBsolution GmbH - Webinar Willkommen zum Webinar Umgang mit Performance Anforderungen in der Anwendungsentwicklung Die Unterlagen und die Aufzeichnung finden Sie nach dem Webinar unter: http://www.slideshare.net/IBsolutionGmbH http://www.youtube.com/IBsolution Weitere Webinar-Termine: 11.06.2015 // Investitionsplanung mit SAP BW-IP, AGIMENDO.edit und Design Studio 16.06.2015 // Finanzprozesse mit SAP NetWeaver BPM 18.06.2015 // Xiting Authorizations Management Suite 23.06.2015 // Ein stabiles Fundament fr Ihre Kostenrechnung schaffen durch zeitgeme Stammdatenpflege Infos und Anmeldung sowie aktuelle Termine auf www.ibsolution.de/veranstaltungen Webinar - Performanceanforderungen bei der Anwendungsentwicklung2 02.06.2015 3. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Chat Funktion fr Fragen / Einstellungen Teilnehmer sind whrend der Prsentation stumm geschaltet Bitte nutzen Sie fr Fragen die Chat-Funktion Zum Ende des Webinars wird gesammelt auf die Fragen eingegangen Webinar - Performanceanforderungen bei der Anwendungsentwicklung3 02.06.2015 4. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Ihre Moderatoren Sebastian Esch Webinar - Performanceanforderungen bei der Anwendungsentwicklung4 02.06.2015 Tilo Freund Jana Murrweiss 5. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Unsere Beratungsschwerpunkte Webinar - Performanceanforderungen bei der Anwendungsentwicklung Business Intelligence Prozess- optimierung Technologie Beratung 5 02.06.2015 6. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Unsere Standorte Nordrhein-Westfalen Neuss Baden-Wrttemberg Heilbronn Bayern Mnchen Schweiz Zrich Bulgarien Sofia Webinar - Performanceanforderungen bei der Anwendungsentwicklung6 02.06.2015 7. www.ibsolution.de IBsolution GmbH 1. Was ist Performance? 2. Warum ist Performance so oft ein Problem? 3. Wie kann man Performance messen? 4. Was sind typische Ursachen fr Performance Probleme? 5. Wie kann man Performance Probleme vermeiden? 6. Fragen und Feedback AGENDA 8. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Was ist Performance? Nicht funktionale Anforderung Skalierbarkeit der Anwendung Meist Antwortzeiten, die der Benutzer wahrnimmt: Die Suche soll nicht lnger dauern als Im Wesentlichen drei verschiedene Messgren: Durchsatz bezogen (z.B. Transaktionsrate) Auslastungsbezogen (z.B. CPU-Auslastung) Zeitbezogen (z.B. Antwortzeit) Webinar - Performanceanforderungen bei der Anwendungsentwicklung8 02.06.2015 Getting nowhere fast by Nathan E Photography is licensed under CC BY 2.0 9. www.ibsolution.de IBsolution GmbH 1. Was ist Performance? 2. Warum ist Performance so oft ein Problem? 3. Wie kann man Performance messen? 4. Was sind typische Ursachen fr Performance Probleme? 5. Wie kann man Performance Probleme vermeiden? 6. Fragen und Feedback AGENDA 10. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Warum ist Performance so oft ein Problem? Als nichtfunktionale Anforderung meist nicht im Fokus in bei der Entwicklung / Nachgelagertes Thema Oft schwammig definiert Vorhersage der Performance whrend der Entwicklung schwierig Unterschiede Entwicklungs- / Produktivsystem Hardwareausstattung Produktivdaten vs. Testdaten Hoher Aufwand fr Durchfhrung von Performance- Tests nderungen am Anforderungsprofil (Benutzer / Datenmenge) Mobile Anwendungen: Immer noch unterschiedliche Netzabdeckung / Bandbreitenverfgbarkeit Webinar - Performanceanforderungen bei der Anwendungsentwicklung10 02.06.2015 Glaskugel by Christian Schnettelker is licensed under CC BY 2.0 11. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Beispiel: Stammdatenanwendung 02.06.201511 Webinar - Performanceanforderungen bei der Anwendungsentwicklung 12. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Wachsende Nutzungsprofil Phasenweise Ausweitung der Nutzung setzt kontinuierliche berprfung der Performance voraus nderungen am Datenbestand (Menge und Zusammensetzung) knnen Auswirkungen haben 02.06.201512 Webinar - Performanceanforderungen bei der Anwendungsentwicklung 13. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Globale Nutzung Peaks sind nicht unbedingt dort, wo man sie vermutet 02.06.201513 Webinar - Performanceanforderungen bei der Anwendungsentwicklung 14. www.ibsolution.de IBsolution GmbH 1. Was ist Performance? 2. Warum ist Performance so oft ein Problem? 3. Wie kann man Performance messen? 4. Was sind typische Ursachen fr Performance Probleme? 5. Fragen und Feedback AGENDA 15. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Wie kann man Performance messen? Abhngigkeit von der Systemarchitektur End-to-End Messung vs. Messung von spezifischen Komponenten Java Profiler z.B. von SAP fr SAP JVM (ABAP Runtime Traces SE30) Laufzeitanalyse / Speicheranalysen Eclipse MAT (Heap Dump Analyse) Datenbanklevel Statement Analyzer (ABAP: Explain Plan ST04/ST05) Im Java Umfeld mit den Datenbank-eigenen Werkzeugen JDBC Proxy Treiber / DB-eigens Logging Monitoring Werkzeuge (z.B. SAP Solution Manager, SAP MMC) Defintion der Metriken Web-basierte Anwendungen: Entwicklermodus im Browser Netzwerk JavaScript Performancemessung whrend der Entwicklung / Problemanalyse Webinar - Performanceanforderungen bei der Anwendungsentwicklung15 02.06.2015 16. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Wie kann man Performance messen? Definition von konkreten Szenarien Anzahl Nutzer und Aktivitten Reales Lastszenario vs. Maximal Szenario Definition der Messgren (z.B. Antwortzeit, CPU- und Speicherauslastung) Implementierung von Testfllen fr das ausgewhlte Werkzeug Open Source: z.B. Apache JMeter Kommerziell: z.B. HP LoadRunner Monitoring der relevanten Messgren whrend des Lasttests Auswertung und Analyse Die Ergebnisse erfordern dann oftmals detaillierte Analysen um die Ursache zu finden Performancemessung whrend Performance- / Loadtesting Webinar - Performanceanforderungen bei der Anwendungsentwicklung16 02.06.2015 17. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Beispiel: Stammdatenanwendung 02.06.201517 Webinar - Performanceanforderungen bei der Anwendungsentwicklung 18. www.ibsolution.de IBsolution GmbH 1. Was ist Performance? 2. Warum ist Performance so oft ein Problem? 3. Wie kann man Performance messen? 4. Was sind typische Ursachen fr Performance Probleme? 5. Wie kann man Performance Probleme vermeiden? 6. Fragen und Feedback AGENDA 19. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Was sind typische Ursachen? Komplexe (komplizierte) Algrorithmen vs. einfach Algorithmen mit hoher Komplexitt Komplexittstheorie Geschachtelte Schleifen Programmierfehler Fehlende Einschrnkungen beim Datenladen Paging bei groen Datenmengen Erzeugen groer Objekte Datenbankzugriffe Indizes richtig nutzen, Statements optimieren, veraltete Statistiken, 1+N Select Thematik Nur die Daten laden, die in der Applikation gebraucht werden Im SAP HANA Umfeld Code pushdown oder Code to data JavaScript Falscher Browser Wachsende Benutzerzahlen / Datenstze Sizing der Infrastruktur Netzwerk 19 Webinar - Performanceanforderungen bei der Anwendungsentwicklung02.06.2015 20. www.ibsolution.de IBsolution GmbH 1. Was ist Performance? 2. Warum ist Performance so oft ein Problem? 3. Wie kann man Performance messen? 4. Was sind typische Ursachen fr Performance Probleme? 5. Wie kann man Performance Probleme vermeiden? 6. Fragen und Feedback AGENDA 21. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Wie kann man Performance Probleme vermeiden? Strategie fr den Umgang mit Performancethemen definieren und in den Projektplan integrieren Gesunder Menschenverstand Think! Bewusstsein und Wissen im Entwicklungsteam Coding Guidelines sollten Performance Themen bercksichtigen Code Reviews mit Fokus Performance (Algorithmen, Datenbankzugriffe) Performance Tests whrend der Entwicklung Systemaufbau und Ausstattung sollte mglichst nah am Produktivsystem sein Testdatenbestand sollte Produktionsdatenbestand abbilden Automatisierung von Performance Tests und Auswertung der Metriken 02.06.2015 Webinar - Performanceanforderungen bei der Anwendungsentwicklung21 22. www.ibsolution.de IBsolution GmbH 1. Was ist Performance? 2. Warum ist Performance so oft ein Problem? 3. Wie kann man Performance messen? 4. Was sind typische Ursachen fr Performance Probleme? 5. Wie kann man Performance Probleme vermeiden? 6. Fragen und Feedback AGENDA 23. www.ibsolution.de IBsolution GmbH Ihr vertrauensvoller Partner. Haben Sie Fragen? Fragen und Feedback Webinar - Performanceanforderungen bei der Anwendungsentwicklung23 02.06.2015 24. www.ibsolution.de IBsolution GmbH IBsolution GmbH Landshuter Allee 8 D-80637 Mnchen www.ibsolution.de SEBASTIAN ESCH