Effektives Monitoring und Fehlerdiagnose im Betrieb von Softwaresystemen

Ähnliche Dokumente
b+m Informatik AG Langlebige und zukunftsfähige modellgetriebene Softwaresysteme? Thomas Stahl b+m Informatik AG

Neue Funktionen in Innovator 11 R5

Model Driven Development im Überblick

Copyright 2014 Delta Software Technology GmbH. All Rights reserved.

HMS. Statistiken mit SAS ins Internet. HMS Analytical Software GmbH - Johannes Lang

OSGi: Anwendungsszenarien, Auswahlkriterien und Ausblick

Application Performance Management. Auch eine Frage des Netzwerkes?

Übungen zur Softwaretechnik

Spring Dynamic Modules for OSGi Service Platforms

MO 27. Aug. 2007, 17:00 UHR JAVA FRAMEWORKS TIPPS VON PROFI-GÄRTNERN GEGEN WILDWUCHS

SERVICE SUCHE ZUR UNTERSTÜTZUNG

Robot Karol für Delphi

Software Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht

Wachstum ermöglichen durch Agilität und Transparenz in der IT

Kontinuierliche Architekturanalyse. in 3D

Workflow Systeme mit der Windows Workflow Foundation

Java Enterprise Architekturen Willkommen in der Realität

Abschlussarbeiten für StudentInnen

Session Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

TELEMETRIE EINER ANWENDUNG

Beispielhaft MDSD in der Praxis. Dr. Shota Okujava

ONET: FT-NIR-Netzwerke mit zentraler Administration & Datenspeicherung. ONET Server

Software-Qualität im Rahmen modellgetriebener Softwareentwicklung

MOBILE ON POWER MACHEN SIE IHRE ANWENDUNGEN MOBIL?!

Übungsklausur vom 7. Dez. 2007

16 Architekturentwurf Einführung und Überblick

Viele gute Stellen sind frei. Besetzen Sie eine.

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Diplomarbeit: GOMMA: Eine Plattform zur flexiblen Verwaltung und Analyse von Ontologie Mappings in der Bio-/Medizininformatik

Worum geht es in diesem Projekt?

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Produktionsfähige Applikationen

Cloud Computing. Betriebssicherheit von Cloud Umgebungen C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y

SENIOR CONSULTANT JAVA (M/W) Standort: SÜDDEUTSCHLAND

Ein Erfahrungsbericht beim Einsatz von generierenden Ansätzen im Vergleich zu generischen Lösungen

Einführung in modellgetriebene Softwareentwicklung. 24. Oktober 2012

Übersetzung von UML-Software-Spezifikationen in Simulationsmodelle

... über OGVIT GmbH & Co. KG

Agilität auf Unternehmensebene - Was hält uns davon ab?

IHH SENIOR CONSULTANT JAVA (M/W) Standort: SÜDDEUTSCHLAND M U N I C H F R A N K F U R T L O N D O N I S T A N B U L B O S T O N

Java EE Projektseminar

Thesaurusvisualisierung mit ICE-Map und SEMTINEL

Jan Parthey, Christin Seifert. 22. Mai 2003

Application Requirements Engineering

Architektur von Business Apps

Application Frameworks

Summer Workshop Mehr Innovationskraft mit Change Management

A Domain Specific Language for Project Execution Models

Seminar Informationsintegration und Informationsqualität. Dragan Sunjka. 30. Juni 2006

Leseprobe. Thomas Konert, Achim Schmidt. Design for Six Sigma umsetzen ISBN: Weitere Informationen oder Bestellungen unter

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Inhalt. Fragestellungen. ...we make the invisible visible... Analysen und deren Anwendung Erfahrungen

Daniel Warneke Ein Vortrag im Rahmen des Proseminars Software Pioneers

Microsoft SharePoint 2013 Designer

// Mehr, als Sie erwarten //

Java Frameworks im Vergleich - ADF vs. Grails vs. Spring

Enterprise Service Bus

Vorstellung Studienprojekt. Policy4TOSCA. Umsetzung eines Policy-Frameworks für sicheres und energieeffizientes Cloud Computing

Ein wichtiges Konzept der Software-Architektur

Cisco Security Monitoring, Analysis & Response System (MARS)

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

peer-to-peer Dateisystem Synchronisation

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Ersatzteile der Extraklasse Magento-Module der Shopwerft

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Requirements Engineering für IT Systeme

Orientierungshilfen für SAP PI (Visualisierungen)

Die technischen Aspekte von Mapping-Lösungen

Was ist EMF? Wie wird EMF eingesetzt? Was ist ecore? Das Generatormodell Fazit

Kap. 35 Swing: Grundlagen Kap Swing: Hauptfenster

Software zur Visualisierung von Proteinen

OSGi-basierte Webapplikationen Ein Erfahrungsbericht

Di 8.4. Silverlight: Windows Presentation Foundation für s Web. Christian Wenz

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität

Layoutmodelle. Steffen Schwientek Große Klostergasse Friedberg schwientek@web.de Web :schlaukopp.org

Einheitliche Verwaltung von Soft- und Hardware mobiler Geräte

Michael Kurz Martin Marinschek

Performance Analyses with inspectit

Informatik, Mathematik und Naturwissenschaften

EIDAMO Webshop-Lösung - White Paper

1 WEB ANALYTICS: PROFESSIONELLE WEB-ANALYSEN UND REPORTING FÜR IHR ONLINE MARKETING.

JEAF Cloud Plattform Der Workspace aus der Cloud

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Modellgetriebene Service-Entwicklung

Softwareentwicklung aus Sicht des Gehirns

Prozesse visualisieren mit Informatik- Werkzeugen Ist Schaffhausen bereit? Beat Kobler, Abteilungsleitung Service Center, KSD Schaffhausen

Name: Matr.-Nr. Datum: Bitte beachten Sie:

Innovative Kommunikations- und Verwaltungslösung für Unternehmen in der Pflege- und Gesundheitsbranche

Rechnernetze Projekt SS 2015

Requirements Engineering WS 11/12

Portal-Entwicklung mit der Enterprise Portal und der Enterprise Application Platform von JBoss

Versionsverwaltung GIT & SVN. Alexander aus der Fünten. Proseminar: Methoden und Werkzeuge, SS Lehrstuhl i9, Prof. Dr. T.

Architecture of Open Embedded Systems

Vorlesung Donnerstags, bis Uhr, HS12 Übung Dienstags, bis Uhr 4-5 ÜbungsbläMer (Programmieraufgaben)

Intranet/Extranet: Zentrales CMS oder Portal-Lösung

Transkript:

Effektives Monitoring und Fehlerdiagnose im Betrieb von Softwaresystemen Wilhelm Hasselbring Lehrstuhl hl Software Engineering, Univ. Kiel Thomas Stahl b+m Informatik AG, Melsdorf Matthias Rohr BTC AG, Oldenburg Andre van Hoorn Graduiertenkolleg TrustSoft, Univ. Oldenburg Agenda 1. Monitoring des Laufzeitverhalten von Softwaresystemen Monitoring-/Visualisierungs-/Analyseframework Kieker Einsatz von Kieker in Produktivsystemen 2. Modellgetriebenes Monitoring b+m gear Integration in die (aspektorientierte) Modellierung 3. Integration von b+m gear und Kieker 2

Monitoring von Laufzeitverhalten eines S/W Systems Beobachtungen zum Monitoring in der Praxis 3 Auf Applikationsebene wenig verbreitet (bestenfalls Mittelwerte) Schwerpunkt auf Systemebene (Verfügbarkeit, Auslastung) Keine bzw. nur einfache automatische Auswertung/Alarmierung Einfügen von Monitoring-Punkten nachdem es geknallt hat Ziele von Monitoring auf Applikationsebene Was? Methodenantwortzeiten Kontrollfluss (Verknüpfung Anfrage und Aufruf) Wozu? Fehlererkennung/-diagnose(/-prävention) g Visualisierung von Softwareverhalten Benutzungsverhalten Adaption (Anpassung der Softwaresystemarchitektur) Herausforderungen beim kontinuierlichen Monitoring 4 Tradeoff zwischen Detailgrad und Overhead Anzahl und Position der Messpunkte Wartbare Integration der Messpunkte

Kieker - Architekturüberblick Zielsetzungen von Kieker Kontinuierliches Monitoring Visualisierung von (Java-)Softwareverhalten Ausfallerkennung und Lokalisierung von Ausfallursachen Eingesetzt bei EWE TEL, CeWe Color und Nokia Siemens Networks 5 Kieker - Monitoring Monitoring von Antwortzeiten: Zeit zwischen Start t und Ende des Aufrufes f eines Softwaredienstes. t Aufruffolgen (traces) von Software-Diensten für jede Anfrage. 6

Kieker Monitoring (cont d) Messcode zur Compile- oder Ladezeit mit Quelltext verbunden (AspectJ) Markierung von zu überwachenden Methoden im Quelltext...... @TpmonMonitoringProbe() public String additemtocart() {... } Annotationen: Kompromiss zwischen Wartbarkeit und Lesbarkeit Alternativen: Integration in Interception-Mechanismen, z.b. in Spring Framework Verteiltes Monitoring, z.b. Web Services/SOAP mit Apache CXF 7 Tpan Kieker s Analysis and Visualization Component Tpan (cont d) Bisher realisierte Visualisie- rungskomponenten UML Sequenz-Diagramme Markov-Ketten Abhängigkeitsgraphen Trace Timing Diagrams Unterstützte Ausgabeformate: PDF, SVG, PNG 8

Tpan Kieker s Analysis and Visualization Component Tpan (cont d) Bisher realisierte Visualisierungskomponenten: UML Sequenz-Diagramme Markov-Ketten Abhängigkeitsgraphen Trace Timing i Diagrams 9 Tpan Kieker s Analysis and Visualization Component Tpan (cont d) Bisher realisierte Visualisierungskomponenten: UML Sequenz-Diagramme Markov-Ketten Abhängigkeitsgraphen Trace Timing i Diagrams 10

Tpan Kieker s Analysis and Visualization Component Tpan (cont d) Bisher realisierte Visualisierungskomponenten: UML Sequenz-Diagramme Markov-Ketten Abhängigkeitsgraphen Trace Timing i Diagrams 11 Tpan Kieker s Analysis and Visualization Component Tpan (cont d) Bisher realisierte Visualisierungskomponenten: UML Sequenz-Diagramme Markov-Ketten Abhängigkeitsgraphen Trace Timing i Diagrams 12

Calling Dependency Graph ibatis JPetStore Monitoring Daten als Beispiel 13 Visualisierung: Ebenen Deployment Softwarekomponenten Operationen / Dienste 14

Visualisierung: Drill-DownDown 15 Laufende Feldstudien 1.) CeWe Color (photo finisher) 2.) EWE TEL (telco) Kieker integriert mit Java Spring Kieker integriert mit AspectJ 3.) Nokia Siemens Networks (telecommunication billing system) Fokus auf die Rekonstruktion von Sequenzdiagrammen 16

Zwischen-Fazit Monitoring von S/W-Laufzeitverhalten auf Applikationsebene 17 Kieker-Framework Kontinuierliches Monitoring auf Applikationsebene Rekonstruktion/Visualisierung kti i von S/W-Architektursichten i ht Erfolgreich eingesetzt in Produktivsystemen Open Source (zunächst nur der Monitoring-Teil) http://kieker.sourceforge.net Beispiel für automatische Analyse der Monitoring-Daten: Fehlerdiagnose basierend auf Zeitverhaltensanomalien Ausblick u.a. Aktualisierung von Architekturmodellen zur Laufzeit Optimierung von Rekonfigurationszeitpunkten Architekturbasierte i t Adaption zur Effizienz-Steigerungi i Modellgetriebene Instrumentierung b+m Gruppe Leistungsbereiche Kompetenz und Lösungen für die Finanzwirtschaft Lösungen für das Gesundheitswesen Modellgetriebene Softwareentwicklung Kompetenz und Lösungen für den internationalen Handel Kaufmännische Lösungen für den Mittelstand Kompetenz und Lösungen für Unternehmensdaten 18

Ausgangslage (1/2) b+m ist Produktlieferant (inkl.support), aber nicht Betreiber Einige wiederkehrende Problemstellungen aus dem Betrieb sind Situativ schlechte Performance aus Endbenutzersicht (mit spontaner Selbstheilung ) Service-Aufrufe von Fremdsystemen brechen gelegentlich ab (typischerweise Infrastruktur- inkl. Netzwerkprobleme) Anwender benutzen das System nicht, wie es gedacht ist Security Konfigurationen/Änderungen (insb. Browser) seitens der Betreiber führen zu Fehlverhalten in der Anwendung Zum Teil schwer reproduzierbare Anwendungsfehler im MultiUser- Betrieb (Nebenläufigkeit/Locking-Probleme) Aufwändiges Debugging durch tiefe, z.t. nicht (gut) dokumentierte Technologie-Stacks => Schnelle und zuverlässige Abbildung der Symptome auf Ursachen bzw. Abgrenzung ist ein wesentlicher Kostenfaktor 19 Ausgangslage (2/2) b+m setzt MDSD insb. auch bei der Entwicklung brachenspezifischer Produkte ein. Potenzial für modellgetriebene Instrumentierung Basis: Generative Architektur b+m gear auf Basis von openarchitectureware (oaw) und GMF Ansatz: Evolutionsschritt: Integration von Kieker in b+m gear 20

b+m gear Java Frontend Service Entity Screenflow Applic cation View Screenflow Service Layer Service Service Service Service Service 1 Entity 0..* Entity * Entity * Entity Entity 21 Plattfo orm View b+m gear Frontend Runtime b+m gear Service Runtime b+m gear Entity Runtime JSF/ AJAX Spring JPA Apache JBoss WebFlow JTA Hibernate MyFaces Richfaces JDBC Spring Beispiele: DSL-Modellelemente Frontend 22

Sprachelemente gear Service 23 Sprachelemente gear Entity 24

Sprachelemente gear Workflow/BPMN Fahrzeug ausleihen 25 Integration Kieker in b+m gear (1/3) Möglichkeiten, die sich durch den architekturzentrierten MDSD- Kontext ergeben: Systematische Instrumentierung von Architekturkonzepten (Abstraktion gegenüber SourceCode-Niveau) via MDSD- Transformationen => z.b. alle Business-Services instrumentieren Unterstützung unterschiedlicher Instrumentierungstechniken/- Plattformen aus einem abstrakten Konzept => z.b. Spring-Interception vs. AspectJ oder JEE vs..net Einschränkung / Selektion / Konfiguration der Instrumentierung auf Modellebene (Instrumentierung ist eine Entwurfsentscheidung) => Performance der laufenden Anwendung darf nicht beeinträchtigt werden 26

Integration Kieker in b+m gear (2/3) Varianten der Annotation Tagging des Design-Modells => Vorteil: Unmittelbare Ablesbarkeit => Nachteil: Separation of Concerns verletzt Dekorierung des Design-Modells, d.h. Einführung einer neuen Modellierungs-Partition: Instrumentierungsmodell => Vorteil: Gute Modularisierung der Modelle => Nachteil: Indirektion, dadurch ggf. etwas aufwändigere Modell- Navigation Instrumentierungsmodel-Element <<Service-Monitoring>> Aus Design- Modell 27 Integration Kieker in b+m gear (3/3) Konkrete Integrationspunkte der b+m gear spezifischen Instrumentierung Business-Services Abhängigkeitsgraphen inkl. dynamischer Aufruf und Sequenzdiagramme Screenflows Visualisierung als Markov-Ketten Rückspiegelung der statistischen Informationen ins Modell => Analyse des Nutzerverhaltens => Ableitung praxisrelevanter Lasttest-Szenarien Geschäftsprozesse Business Activity Monitoring mit Key Performance Indikatoren => Hilfestellung für das Management beim Kunden Innerhalb der gear Plattform: Visualisierung von Traces durch Sequenzdiagramme als Debugging- Hilfe 28

Werbung Modellgetriebene Softwareentwicklung Techniken, Engineering, Management, Stahl et al. dpunkt, 2. Auflage 2007 b+m ist Gründer von openarchitectureware Handbuch der Software-Architektur, Reussner & Hasselbring (Hrsg), dpunkt, 2. Auflage 2008 Enterprise Application Integration Conrad, Hasselbring, Koschel, Tritsch, Spektrum Akademischer Verlag, 2005 29 ISBN 978-3-89864-559-1 ISBN 978-3-8274-1572-1