Neue Ansätze der Qualitätssicherung: Diagnose von Performance-Problemen

Größe: px
Ab Seite anzeigen:

Download "Neue Ansätze der Qualitätssicherung: Diagnose von Performance-Problemen"

Transkript

1 Neue Ansätze der Qualitätssicherung: Diagnose von Performance-Problemen André Kemena Tribenstraße 10, Herford, Nordrhein-Westfalen, Deutschland Universität Paderborn, Paderborn, Nordrhein-Westfalen, Deutschland Zusammenfassung Sommersemester 2009 Performance von Software wird in DIN ISO 9126 durch das Qualitätsmerkmal Effizienz und dessen Charakteristiken Zeitverhalten und Verbrauchsverhalten repräsentiert, wird aber dennoch oft im Bereich der Qualitätssicherung nicht oder erst in späten Entwicklungsphasen berücksichtig. Analog zur Vernachlässigung anderer Qualitätsmerkmale birgt dies das Risiko erhöhter Kosten bei spätem Auffinden und Beheben von Problemen. In dieser Seminararbeit soll eine Einführung und erste Übersicht über die Thematik der Software-Performance-Tests und -Diagnose gegeben und anhand eines Beispiels der aktuelle Stand von Test-Tools mit dessen Chancen und Risiken bzgl. der Diagnose gegeben werden. Keywords: Software Performace Test, Software Performance Diagnose, Leistung, Leistungsbewertung, Leistungstest, Testtool 1 Einleitung Performance (engl. für Durchführung, Leistung) wird im Allgemeinen als Leistungsfähigkeit verstanden. In der Datenverarbeitung und Kommunikationstechnik wird Performance häufig auch etwas spezieller mit Übertragungsgeschwindigkeit, Echtzeitverhalten, Gütemerkmal, Verfügbarkeit, Durchsatz oder ähnlichen Leistungsparametern gleichgesetzt. Bezogen auf Software im Sinne von Benutzeranwendungen trifft der Ausdruck Echtzeitverhalten wohl am ehesten zu. Ein gutes Echtzeitverhalten entspricht dabei einer subjektiven Wahrnehmung des Benutzers bzgl. einer gefühlt angemessenen Bearbeitungsdauer durch die Software. Der Benutzer darf sich also in Arbeitsabläufen nicht durch übermäßig lange, wahrgenommene Unterbrechungen gestört oder aufgehalten fühlen. Das bedeutet z.b., dass Benutzer keine Wartepausen ohne eine Anzeige der aktuell durch die Software durchgeführten Operationen abwarten muss, oder auch, dass er zeitnahe (Fehler-) Rückmeldungen zu durchgeführten Aktionen erhält. Warum Performance-Tests Die Entwicklungen der letzten Jahre zeigt eindrucksvoll, dass Software in nahezu allen Bereichen, insbesondere auch Geschäftsprozessen, eine immer wichtigere und umfassendere Rolle einnimmt. So werden häufig ganze Geschäftsprozesse

2 2 bzw. Geschäftsprozessketten automatisiert und, weitestgehend automatisch, über Software abgewickelt. Als Beispiele können Onlineshops mit angebundenen Warenwirtschaftssystemen, Flugreservierungen, Online-Routenplaner, Banking-Portale, Bilderservices, Callcenter-Software und viele mehr angeführt werden. Gerade bei Online-Systemen stellt Überlastung von Diensten ein Risiko dar: so wird ein eventueller Kunde eines Online-Shops zu Alternativen und damit zu Angeboten der Konkurrenz wechseln, wenn inakzeptable Ladezeiten Kaufvorgänge behindert. Als Extrema stellen hier zeitweise Ausfälle von Diensten durch Überlastung einen sofortigen Einbruch von Geschäftsprozessen und damit Umsätzen dar. Zudem ist der PC aus heutigen Firmen-Büros kaum noch wegzudenken. Software wird dort genutzt, um Mitarbeiter durch z.b. Office-Software, Dokumentenmanagementsysteme und spezielle Softwareentwicklungen zu unterstützen, indem wiederkehrende Prozesse vereinfacht, optimiert, und Informationen bzw. Inhalte für spätere Aufgaben bereitgestelt werden. Auch hier stellen durch Überlastung verursachte Funktionseinschränkungen von Diensten geschäftsgefährdende Risiken dar. Die Qualität von eingesetzter Software ist somit oft ein kritischer Faktor für einen ordnungsgemäßen und optimalen Geschäftsbetrieb. Die Beanspruchung von Zeit- und Systemressourcen der eingesetzten Software wird jedoch oft recht stiefmütterlich im Kontext von Qualität betrachtet. Ist im Bereich eingebetteter Systeme dieser Faktor seit jeher durch z.b. feste Angaben von Zeitschranken für Komponenten ein essentieller Bestandteil von Qualitätsprüfungen, so wird er außerhalb dieses Bereichs oft vernachlässigt. Die Qualität von Software wird allgemein meist weniger an zeit- und ressourcensparender Umsetzung, sondern vielmehr an Gestaltungsrichtlinien, aufgeführt z.b. in der Norm DIN , festgemacht: Aufgabenangemessenheit Selbstbeschreibungsfähigkeit Steuerbarkeit Erwartungskonformität Fehlerrobustheit Es fällt auf, dass Gestaltungsrichtlinien mit direktem Bezug auf Performance nahezu fehlen. So lässt sich zwar in die Richtlinien Aufgabenangemessenheit, Selbstbeschreibungsfähigkeit, Steuerbarkeit und Erwartungskonformität eine zeitnahe Umsetzung, Reaktion bzw. Rückmeldung von Software hineininterpretieren, konkrete Vorgaben sucht man jedoch vergebens. Weiter wird in der Norm DIN ISO 9126 das Qualitätsmerkmal Effizienz durch die Eigenschaften Zeitverhalten und Verbrauchsverhalten charakterisiert, direkte Vorgaben für die Praxis fehlen aber auch hier. Dies begründet sich vermutlich vor allem durch die Schwierigkeit, Performanz von Software allgemein zu definieren bzw. zu beurteilen. Sucht man heute nach allgemeinen, durch die Industrie entwickelte und anerkannten Richtlinien bzw. Performance-Standards, welche Ausgangspunkte zur Bewertung von guter bzw. schlechter Performance liefern, so ist dies vergebens: es gibt derzeit keine solchen Standards! Ausnahme stellen derzeit erste, informelle Ansätze im Kontext von Browser-Applikationen dar, z.b. für die maximale bzw. minimale Zeit, die eine Seite zum Laden und für die Darstellung braucht.

3 3 2 Grundlagen für Messungen Um im Folgenden über Performance von Software diskutieren zu können, benötigen wir ein gewisses Vokabular, wie zum Beispiel Metriken und Kennzahlen. Es stellt sich in diesem Zusammenhang auch die Frage: Wie lässt sich Performance von Software beschreiben, messen und bewerten? 2.1 Indikatoren Um Messungen von Performance durchführen zu können, ist es zunächst wichtig festzulegen, was und wie gemessen werden soll. Weiter muss entschieden werden, welche Werte zur Messung herangezogen, und wie diese in späteren Bewertungen genutzt werden (wofür). Diese Werte werden in der Literatur, ähnlich zu den Fachbegriffen aus der Betriebswirtschaftslehre, oft als sogenannte Maßzahlen, Kennzahlen, oder auch Indikatoren, englisch Indicators oder Key Performance Indicators (KPI) bezeichnet. Bezüglich der Fokussierung der Performance- Betrachtung auf Dienstverfügbarkeit bzw. effizienter Ausführung lassen sich diese Indikatoren nach Ian Molyneaux [7] wie folgt gruppieren und charakterisieren: effizienz-orientierte Indikatoren Datendurchsatz Ressourcennutzung service-orientierte Indikatoren Verfügbarkeit Antwort- bzw. Reaktionszeit (System-bezogen) Effizienz-orientierte Indikatoren charakterisieren die Art und Weise der Nutzung und des Bedarfs von Ressourcen durch die Anwendung. Service-orientierte Indikatoren hingegen fokussieren die Problematik der effektiven Verfügbarkeit von Anwendungen oder Diensten für den Endbenutzer. Sie bewerten Performance also anhand von Maßzahlen bezüglich der Zeit, die der Benutzer warten muss und keine weiteren Aktionen in der Anwendung durchführen kann. Idealerweise sollten all diese Indikatoren zusammen genutzt werden, um Performance- Eigenschaften zu analysieren. In der Praxis wird jedoch oft gerade der Indikator Antwortzeit vernachlässig. Dies kann Ergebnisse von Performance-Test erheblich verfälschen. Um nun eine möglichst genaue Bewertung und ggf. Optimierung der Benutzer-Produktivität vornehmen zu können ist zunächst zu klären, wann systembezogenene Antwort- bzw. Reaktionszeiten als gut oder schlecht zu bewerten sind, also wie gewonnene Maßzahlen zu interpretieren sind. Hierzu lassen sich die Ergebnisse der Untersuchungen von Martin [19] anhand von textbasierten Anwendungen als Faustregeln zur Bewertung von Antwortzeiten t heranziehen:

4 4 Antwortzeit t > 15 Sekunden: Nicht zumutbar bei oft wiederkehrenden, kleinen und insbesondere konversationsartigen Arbeitsvorgängen. Antwortzeit 4 < t 15 Sekunden: Bei konversationsartigen Arbeitsvorgängen wird durch Beanspruchung des Kurzzeitgedächtnisses der Benutzer im Arbeitsfluss gestört, bei Anwendungen mit weniger zeitabhängigen und weniger Konzentration erfordernden Arbeitsschritten ggf. noch vertretbar. Antwortzeit 2 < t < 4 Sekunden: Benutzer wird bei Arbeitsvorgängen, die hohe Konzentration erfordern, im Arbeitsfluss gestört. Abhängig von der Art des Vorgangs ggf. noch tolerierbar. Antwortzeit t < 2 Sekunden: Allgemein als obere Zeitschranke zur Förderung mentaler Rückkopplung anzustreben. Keil [21] führt in seinen Ausführungen zwar hierzu keine Zeitschranken an, betont aber die Relevanz der Kopplung von Wahrnehmungs- und Handlungsraum mit Handlungsabschluß und Systemzuständen. Antwortzeit t < 1 Sekunde: Anzustreben für Gedanken-intensive Arbeitsabläufe wie Text- oder Bildverarbeitung. Antwortzeit t < 1 10 Sekunde: Besonders im Bereich Simulation und Steuerung, aber auch für essentielle Interaktionen wie Eingabe über Tastatur- und Maus sind Reaktionszeiten dieser Größenordnung anzustreben. Mit Hilfe dieser Richtlinien und der Summe der oben angeführten Indikatoren ist es nun möglich, Performance-kritische Faktoren zu erkennen und für gemessene bzw. gegebene Maßzahlen Bewertungen durchzuführen. Ist Software zu testen, so ist nun das Kernproblem, festzustellen, welche Faktoren entscheidenden Einfluss auf das jeweilige Leistungsverhalten ausüben. Hierzu sind Kriterien bzw. Ziele zu benennen, die als Test- und Entscheidungsgrundlage für Code-Änderungen dienen sollen. Diese Ziele werden auch als Key Performace Targets bezeichnet. Eine Gruppierung dieser KPI kann nach Molyneaux[7] beispielsweise wie folgt vorgenommen werden: Leistung im Sinne von Schnelligkeit Verfügbarkeit (availability / uptime) Verhalten bei Nebenläufigkeit (concurrency) Anwortzeit (response time) Leistung im Sinne von Kapazität- / Ressourcen-Nutzung Netzwerk-Nutzung Server-Nutzung Doch wie erhebt man nun in der Praxis die notwendigen Messdaten? Die Erstellung und Auswertung einzig anhand von anwendungspezifischen Log-Dateien kann ein erster Schritt zur Analyse sein. In der Praxis wird dies jedoch im Allgemeinen in Softwareentwicklungsplänen nicht oder nur am Rande berücksichtigt, und damit in Hinblick auf aussagekräftige Daten oft nicht konsequent genug

5 5 betrieben. Weiter stellt die Auswertung der Log-Dateien ohne weitere Hilfsmittel einen nicht zu unterschätzenden Arbeitsaufwand dar. Es gibt jedoch eine Vielzahl an, mitunter frei verfügbaren, Testtools, die sich bzgl. der verwendeten Test-Architekturen und ihrer Zielsetzung unterscheiden 1. Da die Eigenschaften der zu testenden Software ausschlaggebend für die Wahl eines oder mehrerer Testtools sind, fällt oft bereits anhand der, in den Tools verfügbaren, Testarten die Entscheidung. Die am meisten verbeiteten Testarten werden nun kurz beschrieben. 2.2 Testarten In der Praxis haben sich, abhängig von der jeweils zu testenden Software, verschiedene Arten von Tests profiliert, von denen die bekanntesten und am häufigsten angewandten an dieser Stelle kurz beschrieben werden. Baseseline Test Der Baseline Test ist als erster Einstiegspunkt und als Grundlage für Vergleiche mit weiteren Testarten anzusehen. So wird je Durchlauf in einem gewissen Zeitrahmen mit jeweils nur einem (virtuellen) Anwender ein festgelegter Arbeitsablauf bearbeitet und gemessen. Dieser Ablauf setzt sich aus einer oder mehreren Transaktionen (engl. transactions) zusammen. Transaktionen sind in diesem Zusammenhang bei sogenannten fat clients Prozesse oder Abläufe, die eine Speicherung oder Änderung der Daten ausführen. Bei thin clients liegt der Fokus hierbei eher auf der Übertragung und Speicherung auf Server-Seite. In späteren Vergleichen mit Messdaten, beispielsweise aus Load-Tests, können dann Aussagen über das Leistungsverhalten der Software mit steigender (paralleler) Anwenderzahl und Transaktionszahl getroffen werden. Load Test Der sogenannte Load Test ist der klassische Performance-Test. Bei diesem Test wird die zu testende Software sukzessive bis zu einem festgelegten Ziel, meist eine gewisse Zahl gleichzeitiger Anwender, getestet. Der Unterschied zu Tests wie dem Soak Test ist, dass beim erreichen des vorgegebenen Ziels nicht darüber hinaus getestet wird. Dieser Test bedingt daher eine gute Schätzung der später im realen Anwendungsfall vorhandenen Anwenderzahlen. In diesem Test werden auch besonders die Antwortzeiten der Benutzer und des bzw. der Anwendungssysteme (z.b. Server) betrachtet. Die Lastwird bei diesem Test entweder durch ein oder mehrere virtuelle Maschinen, Server oder Arbeitsplatzrechner erzeugt, indem z.b. Anwender mit typischen Arbeitsschritten simuliert werden. Bei der späteren Analyse ist in diesem Zusammenhang insbesondere bei höherer erzeugter Last darauf zu achten, dass Stress Test Der Unterschied des Stress Test zum Load Test ist die Zielsetzung, Software und Infrastruktur derart zu belasten, dass es zu fehlerhaftem Verhalten, Nicht-Verfügbarkeit von Diensten oder Absturz von Komponenten 1 Eine beispielhafte Liste von Testtools ist im Anhang zu finden

6 6 bzw. Diensten kommt. Dieser Test wird u.a. besonders in Zusammenhang mit Netzwerk-abhängiger Software angewand, um maximale Anwenderzahlen, maximale Netzwerklast und ähnliches zu ermitteln. Diese Art von Test zeichnet sich dadurch aus, dass durch sie sowohl die Leistung im Sinne von Geschwindigkeit gemessen als auch die Kapazitätsgrenzen der Testumgebung ermittelt werden. Gerade für Software, die in grossen Netzwerken (insbesondere dem Internet) Verwendung findet, ist dieses Wissen um Kapazitätslimits unverzichtbar, da eine realitätsnahe Einschätzung der Anwenderzahlen hier oft misslingt. Weiter können in der Startphase des Softwareeinsatzes durch Beobachtung von Nutzungszahlen und der durch Stress Tests vorliegenden Kapazitätslimits ggf. rechzeitig Vorkehrungen getroffen und Ausfallzeiten verringert bzw. vermieden werden. Soak / stability test Das Ziel von Soak Tests (soak: engl. für aufweichen) ist, Problemfälle zu erkennen, die durch Kummulation einzelner Effekte und erst nach einer gewissen Laufzeit auftreten. Mit ihrer Hilfe ist es beispielsweise möglich, Speicherlecks (engl.: memory leak) zu entdecken, also eine Reservierung von Speicher durch Prozesse, die aber weder rückgangig gemacht noch genutzt werden kann. Diese Art von Fehlern wird häufig nur durch Kummulation entdeckt, also wenn eine Summe von Prozessen eben diese fehlerhaften Software-Stati erzeugt. Symptome während bzw. am Ende der Tests sind auch hier eine Verlangsamung der Reaktionszeit bzw. ein Ausfall der Software. Bei Client-Server-Architekturen sind Diagnosen sowohl von Seiten des bzw. der Clients als auch auf Seite des oder der Server notwendig. Smoke test Smoke Tests werden typischerweise nach Code-Änderungen durchgeführt, also auch im Anschluss an vorrausgegangene Performance-Tests. Diese Art von Test bezieht sich nur auf die geänderten Fragmente bzw. Komponenten des Codes, die durch die Code-Änderungen direkt oder indirekt betroffen sind. Isolation test Isolation Tests werden zur tieferen bzw. wiederholten Analyse von Code-Fragmenten genutzt, die bekanntermaßen Performance-Probleme hervorrufen. Aufbauend auf diese Tests kann es sinnvoll sein, in der Testphase je nach Software-Anforderungen bzw. Art die Tests einerseits mehrmals für gleichartige Testprofile (engl.: injection profiles) und Daten durchzuführen. Der Vorteil hierbei liegt ganz klar bei der direkten Vergleichbarkeit des Leistungsverhaltens nach Korrekturen. Andererseits kann es interessant sein, die Veränderungen von Testergebnissen anhand kontrolliert modifizierter Daten- bzw. Testprofile zu ermitteln. Die wichtigsten Injection profiles sind: Big Bang / Constant In diesem Test starten alle (ggf. virtuellen) Benutzer zur gleichen Zeit und arbeiten simultan, aber nicht zwingenderweise synchron, Transaktionen ab. Hierdurch wird eine realitätsnähere Situation erreicht.

7 7 Ramp-up (with step)/ Ramp-down (with step) Diese Variante startet mit einem (virtuellen) Benutzer und fügt nach und nach weitere hinzu (Ramp up). Sollen Leistungsdaten für gewisse Zahlen aktiver Benutzer genauer getestet werden, so wird bei festgelegten Benutzerzahlen das Hinzufügen weiterer Nutzer pausiert(ramp up with step) und mit der jeweils aktuellen Benutzerzahl eine vorgegebene Zeit gemessen und protokolliert. Dies ist zum Beispiel sinnvoll, wenn sich später alle Mitarbeiter einer Firma zu Beginn eines Arbeitstages einloggen und eingeloggt bleiben. Anschließend wird entweder die Richtlinie Rampup weiter verfolgt und somit weitere Benutzer hinzugefügt, oder es wird eine Kombination aus Ramp-up(with step) und Ramp-down (with step) fortgeführt. Ramp-down verringert analog die Benutzerzahlen und simuliert Benutzer, die sich beliebig am System an und abmelden. Peaks Dieser Test ist eine leichte Abwandlung des ConstantTest, bei dem periodisch entweder mit einer maximalen virtuellen Nutzerzahl gleichzeitig oder einer vorgegebenen Minimalzahl getestet wird. Delayed start Delayed start wird mit einer der vorherigen Varianten von Injection profiles kombiniert. Der Unterschied besteht einzig in der Verzögerung des Starts von Test-Scripten oder Teilen dieser. Hierdurch wird die dynamik der Simulation weiter verbessert. 2.3 Testtool-Architekturen Automatische Testtools, sogenannte Profiler, besitzen meist eine Vielzahl Komponenten, die auf einzelne Test-Zielsetzungen zugeschnitten sind. Üblicherweise werden Profiler genutzt, um durch Zählen bzw. Messen mit Hilfe der zuvor beschriebenen Test-Arten Zahlen bzw. Maße bezüglich der Aufrufe oder Durchläufe von Codebereichen wie Funktionen oder Klassen zu erheben. Zu den bekanntesten zählen hierbei: Scripting Modul Test Management Modul Load Injector(s) Analysis Modul Scripting Module werden typischerweise zur Erzeugung von zu simulierendem Nutzerverhalten genutzt. Dies kann einerseits durch manuelle Erzeugung des Testers oder auch unter Verwendung von Makro-ähnlichen Aufzeichnungsassistenten erfolgen 2. Mit ihrer Hilfe werden hauptsächlich verschiedenste Granularitätsstufen von Reaktions- bzw. Antwortzeittest durchgeführt. Test Management Module dienen der Erzeugung und Simulation von Load-Test-Session unter Verwendung von Scipts und/oder ein oder mehr Load Injector(s). Load Injectors erzeugen, wie der Name suggeriert, eine bestimmte Last, unter der das Verhalten der zu testenden Software dann analysiert wird. Analysis Module schliesslich 2 Beispiel: NeoLoad [8]

8 8 bieten Möglichkeiten zur Analyse der in Test erzeugten Informationen. Diese verwenden Module generieren meist Reports, die dann zusätzlich tabellarische oder graphische Reports visualisiert werden. 3 Diagnose Mit den zuvor genannten Indikatoren, Test-Arten und Testtool-Architekturen stehen nun die wichtigsten Grundlagen und Tool-Arten zur Messung von Performance zur Verfügung. Im Folgenden wird von dem Fall ausgegangen, dass eine Software bzgl. ihrer Performance-Eigenschaften getestet werden soll. Ein Analyse-Tool wurde bereits gewählt bzw. ist fest vorgegeben (z.b. durch vorhandene Lizenzen der ausführenden Firma). Diverse Tests werden bzw. wurden durchgeführt und protokolliert bzw. werden live zur Laufzeit analysiert. Hierzu bieten eine Vielzahl der Tools Visualisierung, z.b. Tabellen oder Graphen, an. Zunächst soll die herkömmliche Vorgehensweise des Diagnose-Vorgangs dargestellt werden. 3.1 Klassische Vorgehensweise Es gilt nun, anhand der gewonnenen Daten Performance-Probleme zu identifizieren und zu lokalisieren. Die Schwierigkeit bei der Diagnose von Performanceproblemen stellt sich an dieser Stelle durch die Lokalisierung der Problemstellen(engl.: bottlenecks) im Code dar (engl.: root-cause analysis). So erleichtern die Visualisierungen der Test-Tools zwar das Auffinden eventueller Problemstellen, die Abhängigkeit der Messdaten von den Eigenschaften und der Struktur der Test-Daten (und damit der vorrausgehenden Bestimmgung der KPI) und der Test-Art sowie der durch den Tester vorgegebenen Checkpoints und damit der Betrachtungsausschnitte erschwert jedoch eine vollautomatisierte Identifizierung. 3.2 Klassische Interpretation von Testergebnissen Abbildung 1 zeigt in einer typischen Visualisierung die Ergebnisse eines Performancetests. Getestet wurden hier die System-Antwortzeiten bei Ausführung eines Load-Test mit Ramp-Up. Die x-achse bezeichnet die verstrichene Zeit in Sekunden mit Zeitpunkt 0 als Test-Start, während die y-achse in Korrelation mit der Zahl der virtuellen Benutzer (rechts) die Zeit darstellt, die das System zum Antworten benötigt. Wie erwartet erhöht sich mit steigender Benutzerzahl die Anwortzeit des Systems. Bei etwas genauerer Betrachtung fällt der Zeitpunkt nahe 1500 Sekunden auf, bei dem eine deutliche Spitze der transaction response time zu erkennen ist, die auf einen Performance-Einbruch hindeutet. Ohne weitere Informationen wäre davon auszugehen, dass das System bei einer Nutzerzahl von ca. 400 gleichzeitigen Benutzern das maximale Potential erreicht hat. Es müssten also entweder Optimierungen in der Software vorgenommen werden,

9 9 Abbildung 1. Quelle: Molyneaux - Testvisualisierung mit Korrelation von (Checkpoint-) Transaktionen-Anwortzeit und Anzahl gleichzeitiger Benutzer z.b. durch genauer Analyse einzelner Transaktionen der Benutzer und Identifizierung kleinerer Last-Extrema, oder nach Möglichkeit Infrastruktur- bzw. Hardwareaufrüstung vorgenommen werden. Generell würde man jedoch erwarten, dass mit gleichmäßig steigender Benutzerzahl die transaction response time ebenfalls relativ gleichmäßig ansteigt. Wird zusätzlich zu den bisherigen Informationen eine Maßzahl bzgl. der Antwortzeiten einzelner, durchlaufener Checkpoints hinzugezogen (in der Graphik Checkpoint response times), so deutet dies entgegen der vorherigen Folgerungen nicht auf eine Ursache seitens der Anzahl virtueller Nutzer, sondern vielmehr auf eine erhöhte Anzahl durchlaufener Checkpoints und damit erhöhten Aufwand durch Änderung der Art der Testdaten hin. In diesem Fall war die Ursache laut Molyneaux eine Reihe ungültiger virtueller Benutzer-Logins in den injection profiles, die erhöhte Serverlast erzeugt haben. Dieses Beispiel verdeutlicht die Relevanz der in Tests genutzten Konfigurationen, der Qualität und Art der Test-Daten, der Plazierung von Checkpoints und im Allgemein die Problematik der Interpretation von Ergebnissen. Eine konkretere Beschreibung einer möglichen Vorgehensweise zur Identifizierung von Bottlenecks wird nun in einem analogen Testfall mit dem Test-Tool NeoLoad der Firma Neosys 3 beschrieben. Beispiel: Load-Test mit NeoLoad Getestet wird wie bei Molyneaux ein thin-client -Softwareprodukt, in diesem Fall eine Webshop-Applikation, die auf der Client-Seite nur einen üblichen Browser vorraussetzt. Auf Server-Seite wird ein Linux-System mit einem Apache-Serverdienst in Kombination mit Tomcat und einer MySQL-Datenbank genutzt. Zu diesem Zweck werden als Profile für 3 Tutorial-Videos zur Erstellung, Durchführung und Auswertung von Tests:[8]

10 10 die virtuellen Benutzer zum einen ein Profil, dass als Transaktionen den Login- Vorgang, das Ablegen von Artikeln im Warenkorb sowie den Bestellvorgang mit anschließendem Logout beinhaltet erzeugt. Als ein weiteres Profil wird ein Standard-Besucher des Shops erstellt. Beides wird in dem integrierten Scriptingbzw. load injector Modul konfiguriert. Die Transaktionen für dieses Profil beinhalten lediglich den Besuch diverser Shop-Seiten. Diese Profile werden insofern dynamisiert, als für Erzeugung von Profil-Instanzen die Login-Profile, die zu besuchenden Seiten sowie die zu kaufenden Produkte durch Variablen ersetzt werden. Dies ist wie bereits erwähnt ein entscheidender Faktor für eine möglichst realitätsnahe Simulation. Um in der Auswertungsphase später eine einfache Möglichkeit zur Lokalisierung von Performance-kritischem Code zu ermöglichen, bietet NeoLoad hier zusätzlich die Möglichkeit, in dem Scripting Modul Code-Bereiche mit sogenannten Container zu gruppieren. Diese Container werden dann später angezeigt, wenn Seiten bzw. Code in ihnen durch Monitore beobachtete Schwellwerte überschreiten bzw. wenn in ihnen Fehler auftreten. Für diesen Test werden die Ressourcen, welche für den Login zuständig sind, bei dem Profil des sich einloggenden und kaufenden virtuellen Benutzers in einen Container Login gelegt. NeoLoad bietet wie die meisten Test-Tools die Verwendung eines Test-Managers an, der die Möglichkeit zur einfachen Erzeugung von Test-Szenarios ermöglicht. In diesem Szenario wird als Test-Art ein Load-Test mit Ramp-up definiert. Weiter können hier diverse Monitor-Komponenten aktiviert werden, beispielsweise ein Tomcat memory usage monitor. Dieser erlaubt das Überwachen des von der Java Virtual Machine maximal, durchschnittlich und aktuell genutzten Speichers. Diese Überwachung wird aktiviert, um später Aussagen über die Kapazitätsauslastung treffen und Speicherlecks ggf. lokalisieren zu können. Während der Ausführung des Load-Test ist es bereits möglich, die Entwicklung der beobachteten Daten zu verfolgen. An dieser Stelle betrachten wir jedoch das Endergebnis des kompletten Testlaufs. Schon in der ersten Test- Zusammenfassung fällt in der unteren grafischen Übersicht (s.h. Abbildung 2) auf, dass ca. 1 Stunde und 5 Minuten nach Testbeginn die Hits per second (Seitenaufrufe pro Sekunde) drastisch abfielen und zeitgleich die response time stark anstieg. In der oberen grafischen Darstellung ist kurz nach diesem Zeipunkt ein erstes Auftreten und Ansteigen von Fehlern zu erkennen. Hieraus lässt sich bereits auf ein Performance-Problem schließen. NeoLoad unterstützt den Tester an dieser Stelle durch eine Auflistung der fünf am häufigsten aufgetretenen Fehler (Hot Spots), average response times und top response times inklusive der verursachenden Seiten. Darüber hinaus wird eine komplette Liste der aufgetretenen Fehler zur Verfügung gestellt. In diesem Beispiel tritt ein sogenannter interner Server-Fehler (Fehlercode 500) auf, der häufig aus dem Erreichen von Speicherlimits resultiert (Hintergrundwissen Statuscodes 4 ). In NeoLoad lässt sich die Ursache von Fehlern und Problemen durch die zuvor angelegten Container (ähnlich den sonst so genannten Checkpoints) näher 4 HTTP-Statuscodes sind definiert durch RFC 2616[11] (sowie RFC 2518, RFC 2817, RFC 2295, RFC 2774, RFC 4918) [10]

11 11 Abbildung 2. Quelle: NeoLoad Demo: NeoLoad - Test-Zusammenfassung über Response Times in Korrelation zu Benutzerzahlen im zeitlichen Verlauf eingrenzen, hier also durch den Login-Container. NeoLoad zeigt für diese ebenfalls in der Zusammenfassung eine Übersicht über minimal, average und maximal response times, Fehler usw. Wir betrachten nun unter dem Tab values die Protokollierten Werte (s.h. Abbildung 3). Hier fällt wieder die in der Test- Zusammenfassung bereits erkannte Problemstelle nach Ablauf von ca. 1 Stunde und 5 Minuten auf. Ab diesem Zeitpunkt treten erste Fehler für den Container Login auf. Um der Ursache weiter auf den Grund zu gehen, wird auf die Schaltfläche Graphs gewechselt. Aktiviert man die Anzeige für die aufgetretenen Fehler, so bestätigt dies die Vermutung eines Speicherlecks. Der Java Virtual Machine Garbage Collector benötigt in diesem Fall zuviel Zeit, um alte Speichereinträge durch neue, durch Anfragen benötigte Einträge zu ersetzen. In diesem Fall wäre als Maßnahme eine Vergrößerung des auf dem Server durch Tomcat maximal reservierbaren Speichers ein sinnvoller Lösungsansatz. Dieses Beispiel zeigt wie jenes von Molyneaux, wie gravierend sich ein gutes Test-Design auf Testergebnisse auswirkt. Hier führte eine feingranulare Auswahl von Containern (Checkpoints) in Kombination mit einer realitätsnahen Simulation von Benutzern (mit und ohne Berücksichtigung von Login und verschiedenen Benutzerinteressen) zum Ziel. Weiter zeigt dieses Beispiel, wie wichtig im eigentlichen Diagnose-Schritt immernoch der Faktor Mensch als Tester ist. Nur durch genaue Analyse der durch das Test-Tool gemessenen und protokollierten Daten konnte Anhand der Visualisierung ein Performance-Problem durch den Tester selbst identifiziert werden.

12 12 Abbildung 3. Quelle: NeoLoad Demo: NeoLoad - Fehler-Anzeige für Container Login 3.3 Neuer Ansatz: Paradyn Der zuvor vorgestellte klassische Ansatz zur Identifizierung von Performance- Bottlenecks erfordert neben guten und möglichst realitätsnah gewählten Basisdaten und virtuellen Nutzern ein geschicktes Test-Design. Weiter wird nur eine begrenzte Lokalisierung von Problemstellen geboten, die je nach Test-Design und abhängig von der Wahl von Checkpoints/Containtern unterschiedlich gut ausfällt. Die Suche nach der eigentlichen Problemursache ist also weiterhin ein zeitaufwändiges Unterfangen, das nur teilweise durch Erfahrungen der Tester kompensiert werden kann. Wünschenswert ist daher ein automatisierter Ansatz, der eine wesentlich genauere und effizientere Problemstellen-Identifikation bietet. Dieses Ziel verfolgen Miller et al. mit dem Tool Paradyn [1]. Paradyn ist ein Server-Client-System zur Messung und Diagnose von Performance, ausgelegt für sequentielle und insbesondere massiv parallele Umgebungen. Der Client 5 besteht aus einem Daten-Manager, einem User-Interface, einem Visualisierungsmanager und einem Performance Consultant. Der Server 6 sind ein oder mehrere Prozesse, welche Messungen durchführen. Der erste Server wird immer durch den Client gestartet, weitere Server werden ggf. durch diesen ersten Server erzeugt. Paradyn liegt das Konzept der dynamischen Instrumentierung[3] zugrunde. Instrumentation is a sequence of instructions, such as a code fragment inserted at the beginning of a function to increment a count of the number of times the function is invoked. The instructions are compiled from a source language, called the Metric Description Language (MDL). 7 5 Auch Client genannt 6 Auch Backend oder Daemon genannt 7 Zitat: Paradyn MDL Programmers s Guide

13 13 Ziel der dynamischen Instrumentierung ist es, das Einfügen von Code für Messungen 8 zur Laufzeit und an beliebiger Stelle zu ermöglichen. Die Anwendung bleibt hierbei unverändert. Hierdurch können schnell und ohne Modifikation des Quellcodes der Anwendung Performance-Analysen durchgeführt werden. Zu diesem Zweck wird ein sogenannter Performance Consultant eingesetzt, der eine automatisierte strategische Suche nach Bottlenecks im Programmablauf durchführt, indem wiederholt Instrumentierungen zur Laufzeit an verschiedenen Stellen eingefügt, ausgewertet und wieder entfernt werden. Neben der eigentlichen Messung bietet Paradyn wie die klassischen Test-Tools auch die Auswertung und Visualisierung der gewonnenen Messdaten zur Laufzeit im sogenannten Profiling an. Um, insbesondere im Optimierungsversuch, Messungen in speziellen Teilen der Anwendungen durchführen zu können, sind Beschreibungen eben dieser notwendig. Paradyn nutzt hierzu das Konzept der Metrik-Fokus-Paare. Ein Fokus ist hierbei ein zu betrachtender Teil der Anwendung, beispielsweise eine Komponente, Funktion, Schleife oder auch eine Festplatte. Eine Metrik ist eine Eigenschaft, die zu gegebenem Fokus beobachtet werden soll, z.b. die Anzahl der Aufrufe des Fokus, die Dauer der Bearbeitungszeit (Prozessorlast), Transferraten usw. Die Zuordnung mehrerer Metriken zu einem Fokus bzw. die Zuordnung mehrerer Fokusse zu einer Metrik wird durch Paradyn unterstützt. Es werden hierzu jeweils einzelne Metrik-Fokus-Paare gebildet. Die Definition der Metriken geschieht in Form der Metrik Definition Language(MDL) und besitzt folgende Form[2]: metric Ident { name string; units Ident; unitstype (normalized unnormalized sampled) aggregateoperator (avg sum min max) style (EventCounter SampledFunction) { Constraints } base is (counter processtimer walltimer) {MetricStatement} } Ident ist hierbei Identifikator und gleich dem internen Namen und der Variable, welche die entsprechenden Metrikdaten hält. name bestimmt den externen Namen der Metrik, unter dem sie zum Beispiel bei der Visualisierung angezeigt wird. Units beschreibt die Einheit der Metrik, zum Beispiel Sekunden, in der sie präsentiert wird. UnitsType entscheidet, ob die Metrikdaten je nach Darstellung in Bezug zur Zeit gestellt werden. 9 Ggf. notwendige Anpassungen der Metriken an verschiedene Fokusse werden durch optionale Constraints 10 realisiert. So kann ein Auslösen der Messung anhand verschiedener Typen verursacht werden. Ein solcher Constraint wird wie folgt definiert[2]: 8 Eingefügter Code für Messung = Instrumentierung 9 Eine detailliertere Beschreibung ist im MDL Programmer s Guide[4] zu finden. 10 Constraint: Bedingung

14 14 constraint Ident; constraint Ident is replace (counter processtimer walltimer) {MetricStatement}; Das enthaltene MetricStatement wird auf alle Identifikatoren Indent der Liste anggewandt und resultiert entweder in einem neuen MetricStatement oder einem InformationRequest: foreach Ident in MetricExpression MetricStatement if MetricExpression MetricStatement InstrumentationRequest { {MetricStatement} }; Die InstrumentationRequest sind nun wie folgt definiert: InstrumentationRequest ::= position ort punkt [constrained] (*{Instrumentationcode}*) position ::= append prepend ort ::= preinsn postinsn punkt ::= MetricExpression Via Position wird bestimmt, ob eine Instrumentierungsanfrage an den Anfang der Liste von Anfragen oder an das Ende gehängt werden soll. ort bestimmt, ob der Instrumentationcode vor oder nach dem Befehl am Instrumentierungspunkt ausgeführt werden soll (Pre- oder Postinstrumentierung). Via constrained wird gesteuert, ob Constraints auf diese Instrumentierungsanfrage angewandt werden. Der Instrumentationscode ist schließlich definiert als: Instrumentationcode ::= if (MetricExpression) MetricStatement InstrumentationStatement Die Anwendung dieser Metrikdefninition geschieht nun durch Definition der Metriken in sogenannten PCL-Dateien 11 für die einzelnen Anwendungen. Metriken, die dort gespeichert sind, werden durch Paradyn beim Starten der Anwendung berücksichtigt. Bei der Analyse werden sowohl die Standard-Definitionen als auch die in übergebenen PCL-Dateien angegebenen Definitionen berücksichtigt. Im Verlauf liefert ein Parser die Beschreibung aller möglichen Instrumentierungscodes und Entscheidungen für Pre- oder Post-Instrumentierungen. Mit den entsprechenden Nutzereingaben und den Metrik-Fokus-Paaren generiert Paradyn den einzufügenden Maschinencode und besitzt nun alle Informationen, die für das Instrumentieren benötigt werden. Der Testverlauf kann für das Performance Consultant Modul schließlich wie folgt skizziert werden: Zunächst werden Paare aus Fokussen und Hypothesen erzeugt, indem Metriken mit Schwellwertangaben genutzt werden. Hypothesen verknüpfen hierbei eine gemessene Eigenschaft(durch Metriken) für einen Fokus mit einer vermuteten Ursache(das Warum). So kann z.b. die Beobachtung einer stark ansteigenden Übertragungsrate einer Festplatte für einen Fokus mit einer Hypothese Hauptspeicherlimit erreicht, swapping 12 findet statt angegeben sein. Diese Paare werden durch wei- 11 PCL: Paradyn Configuration Language 12 swapping: Auslagerung auf Festplatte

15 15 tere Fokus-Hypothesen-Paare immer weiter verfeinert. Während der Analyse werden diese Paare jeweils auf Wahrheit getestet. Falls ein positives Ergebnis resultiert, so werden Instrumentierungen in die Anwendung für entsprechende Fokusse eingefügt und die Verfeinerungen analog auf Wahrheit getestet. Dies geschieht, bis keine weiteren Regeln verfügbar sind. An dieser Stelle ist eine weitestmögliche Lokalisierung und Ursachensuche durchgeführt worden. Die Ergebnisse werden schließlich visualisiert (Metrik, Hypothese, Code-Bereich). 4 Bewertung und Zusammenfassung Das Ziel dieser Arbeit war es, einen ersten Einblick in das Problemfeld der Diagnose von Software-Performance zu geben. Nach einer grundlegenden Einführung wurde die Sensibilität von Performance-Tests und deren Diagnosen bezüglich des Testdesigns, der Testarchitektur, der Auswahl des Testtools und insbesondere auch der Testdaten und -durchführung herausgearbeitet. Hierzu wurde beispielhaft für Server-orientierte Anwendungen praxisnah anhand des repräsentativ für klassische Tools ausgewählten NeoLoad ein Lasttest mit anschließender Diagnose der Protokolle und Meßdaten durchgeführt und beschrieben. Dabei wurde gezeigt, dass aktuelle Werkzeuge eine Vielzahl hilfreicher Funktionen und Möglichkeiten zur Messung von Performance, der Aufbereitung von Messdaten sowie das Auffinden von Performance-Problemen bieten. Im zweiten Teil des Abschnitts Diagnose wurde als neuer Ansatz das Werkzeug Paradyn betrachtet. Der hier genutze Ansatz der dynamischen Instrumentierung ermöglicht, Bottlenecks bzw. Performance-Probleme zur Laufzeit weitestgehend automatisiert zu erkennen. Weiter wird die Lokalisierung der Probleme entscheidend verbessert, da verursachende Code-Bereiche direkt angezeigt werden, sofern Hypothesen und Metriken ausreichend für Fokusse definiert wurden. Die Möglichkeit, mit Hilfe der Metric Description Language vorhandene Messungen um eigene zu erweitern, bietet hierbei ein hohes Maß an Flexibilität und Spezialisierbarkeit - sehr gute Kenntnisse über diese Sprache vorausgesetzt. Positiv ist weiter die ressourcensparende Eigenschaft der dynamischen Instrumentierung: es wird ein Minimum an zusätzlichem Code eingefügt. Weiter ist die Software Open-Source. Allerdings sind auch hier, wie bei den klassischen Tools, die Testergebnisse ganz maßgeblich abhängig von der Art der Testdaten und des Testdesigns. Dies ist auch der Grund für die ausführliche Beschreibung des Testdesigns im vorderen Teil der Arbeit. Durch unterschiedliche Definitionsmöglichkeiten von Performance und die Abhängigkeit der Performance-Tests von Durchführungszeitpunkt im Entwicklungsprozess, Eigenschaften der zu testenden Software und eingesetzten Hardware können diese Werkzeuge nur unterstützen. Zu groß ist noch der Faktor Mensch in Form des durchführenden Testers, der seine gesammelten Erfahrungen durch gute Testdaten-Wahl, ein gutes Testdesigns, konsequente Test-Wiederholungen und ein solides Hintergrundwissen in die Diagnose einbringen muss. Es ist jedoch zu erwarten, dass Testwerkzeuge in Zukunft weitere Fortschritte gerade in der Auswertung und Diagnose von Performance-Problemen machen werden.

16 16 Literatur 1. B.P. Miller, M.D. Callaghan, J.M. Cargille, J.K. Hollingsworth, R.B. Irvin, K.L. Karavanic, K. Kunchithapadam, and T. Newhall, The Paradyn parallel performance measurement tool, Computer, vol. 28, Nov. 1995, pp Michael Arndt, Studienarbeit Analyse und Erweiterung des Paradyn Performance Tools, 2005, TU Chemnitz, URL chemnitz.de/pub/2006/0083/data/dokument/studienarbeit.pdf 3. Barton Miller et al., Dyninst, University of Maryland, URL 4. Barton Miller et al., Paradyn Manulas, URL 5. A.V. Mirgorodskiy and B.P. Miller, Diagnosing distributed systems with selfpropelled instrumentation, Proceedings of the 9th ACM/IFIP/USENIX Interna- tional Conference on Middleware, Leuven, Belgium: Springer-Verlag New York, Inc., 2008, pp T. Sheehan, A. Malony, and S. Shende, A Runtime Monitoring Framework for the TAU Profiling System, Computing in Object-Oriented Parallel Environments, 1999, pp Ian Molyneaux, The Art of Performace Testing, O Reilly, ISBN , Januar 2009, Edition 1 8. NeoLoad Load-Testing-Tool, Tool-Demo und Advanced Demo Video, URL 9. SoftwareQATest.com, Allgemeine Tool-Übersicht URL Web Test Tools URL: 10. Definition HTTP-Statuscodes URL Statuscode 11. Hypertext Transfer Protocol HTTP/1.1 URL 12. Andreas Spillner, Thomas Roßner, Mario Winter, Tilo Linz, Praxiswissen Softwaretest - Testmanagement, dpunkt.verlag, ISBN , Christof Ebert, Best practices in software measurement, Martin Shepperd, Foundations of software measurement, Jirk Stolze, Diplomarbeit Performancetests und Bottleneck-Analyse in Multischichtarchitekturen, URL: 16. Connie U. Smith, Introduction to Software Performance Engineering: Origins and Outstanding Problems, 7th International School on Formal Methods for the Design of Computer, Communication and Software Systems, SFM 2007, Bertinoro, Italy, May 28-June 2, 2007,LNCS Marcel Alper, Professionelle Softwaretests, Boris Beizer, Software system testing and quality assurance 19. Martin,1988, Angeführt in Molyneaux 20. Forrester Research, Keil, Vorlesung Softwareergonomie, hyperskript 1999, Universität Paderborn

Neue Ansätze der Qualitätssicherung: Diagnose von Performance-Problemen

Neue Ansätze der Qualitätssicherung: Diagnose von Performance-Problemen Neue Ansätze der Qualitätssicherung: Diagnose von Performance-Problemen André Kemena Tribenstraße 10, 32052 Herford, Nordrhein-Westfalen, Deutschland Universität Paderborn, 33100 Paderborn, Nordrhein-Westfalen,

Mehr

Do 1.1b. KPI-Monitoring und Performanceengineerings - Widerspruch oder Ergänzung? Klaus-Dieter Jäger

Do 1.1b. KPI-Monitoring und Performanceengineerings - Widerspruch oder Ergänzung? Klaus-Dieter Jäger Do 1.1b January 26-30, 2009, Munich, Germany ICM - International Congress Centre Munich KPI-Monitoring und Performanceengineerings - Widerspruch oder Ergänzung? Klaus-Dieter Jäger KPI-Monitoring und Performanceengineerings

Mehr

Last- und Stresstest. Überblick. Einleitung / Motivation Stresstest Lasttest Tools The Grinder Zusammenfassung

Last- und Stresstest. Überblick. Einleitung / Motivation Stresstest Lasttest Tools The Grinder Zusammenfassung Methoden und Werkzeuge zur Softwareproduktion WS 2003/04 Karsten Beyer Dennis Dietrich Überblick Einleitung / Motivation Stresstest Lasttest Tools The Grinder Zusammenfassung 2 Motivation Funktionstest

Mehr

Metriken - ein unverzichtbarer Begleiter für Software-Prozess-Verbesserungen

Metriken - ein unverzichtbarer Begleiter für Software-Prozess-Verbesserungen Metriken - ein unverzichtbarer Begleiter für Software-Prozess-Verbesserungen Dipl.-Math. Hermann Will QADVICE Software+System Qualität Jamnitzerstr. 2, 81543 München hermann.will@qadvice.de Zusammenfassung.

Mehr

Echtzeitverhalten durch die Verwendung von CPU Stubs: Eine Erweiterung von Dynamic Performance Stubs. Echtzeit 2009

Echtzeitverhalten durch die Verwendung von CPU Stubs: Eine Erweiterung von Dynamic Performance Stubs. Echtzeit 2009 Echtzeitverhalten durch die Verwendung von CPU Stubs: Eine Erweiterung von Dynamic Performance Stubs Echtzeit 2009 Peter Trapp, 20.11.2009 Übersicht 1 Einleitung 2 (Übersicht) 3 (Framework) 4 Methodik

Mehr

Realistische und aussagekräftige Lasttests mit loadit

Realistische und aussagekräftige Lasttests mit loadit Realistische und aussagekräftige Lasttests mit loadit 5. Juli 2012 Jens Müller NovaTec Ingenieure für neue Informationstechnologien GmbH Leinfelden-Echterdingen, München, Frankfurt am Main, Jeddah / Saudi-Arabien

Mehr

Teststrategie festlegen und Teststufen aufeinander abstimmen

Teststrategie festlegen und Teststufen aufeinander abstimmen Testen Teststrategie festlegen und Teststufen aufeinander abstimmen Bereich Projektplanung und -steuerung Aktivität Projekt planen Ziele Effiziente Testausführung Vermeidung von doppelter Arbeit schnell

Mehr

Test nichtfunktionaler Anforderungen in der Praxis am Beispiel einer netzzentrierten Anwendung. Test nichtfunktionaler Anforderungen Agenda

Test nichtfunktionaler Anforderungen in der Praxis am Beispiel einer netzzentrierten Anwendung. Test nichtfunktionaler Anforderungen Agenda Test nichtfunktionaler in der Praxis am Beispiel einer netzzentrierten Anwendung Februar 2011 Test nichtfunktionaler Agenda 1. 2. 3. 4. 5. 6. TAV Tagung Februar 2011 Julia Remmert Public Wincor Nixdorf

Mehr

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18

UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 UI-Testing mit Microsoft Test Manager (MTM) Philip Gossweiler / 2013-04-18 Software Testing Automatisiert Manuell 100% 70% 1 Überwiegender Teil der Testing Tools fokusiert auf automatisiertes Testen Microsoft

Mehr

Testautomatisierung. Märchen, Möglichkeiten und praktischer Nutzen. Richard Seidl 21. Januar 2013 TU Dresden. Medizin- und Informationstechnik AG

Testautomatisierung. Märchen, Möglichkeiten und praktischer Nutzen. Richard Seidl 21. Januar 2013 TU Dresden. Medizin- und Informationstechnik AG Medizin- und Informationstechnik AG Testautomatisierung Märchen, Möglichkeiten und praktischer Nutzen Richard Seidl 21. Januar 2013 TU Dresden Kardiologische Funktionsdiagnostik Vitalfunktions-Monitoring

Mehr

Einführung: Lasttests mit JMeter. Sitestress.eu Jesuitenmauer 24 33098 Paderborn www.sitestress.eu - karl@sitestress.eu - 05251 / 687060

Einführung: Lasttests mit JMeter. Sitestress.eu Jesuitenmauer 24 33098 Paderborn www.sitestress.eu - karl@sitestress.eu - 05251 / 687060 Einführung: Lasttests mit JMeter Agenda Über SITESTRESS.EU Tests planen Warum Lasttests? Testen Was ist JMeter? Ergebnisse analysieren Wie arbeitet JMeter? Beispiel JMeter-GUI Skripte für JMeter über SITESTRESS.EU

Mehr

Dr. Nicholas Merriam Rapita Systems Ltd., IT Centre, York Science Park, Heslington, York, YO10 5DG (UK) nick.merriam@rapitasystems.

Dr. Nicholas Merriam Rapita Systems Ltd., IT Centre, York Science Park, Heslington, York, YO10 5DG (UK) nick.merriam@rapitasystems. Das zeitliche Verhalten von Echtzeitsoftware zu analysieren und sicher zu stellen, dass die Anforderungen an das Echtzeitverhalten erfüllt werden kann sehr aufwendig und teuer sein. In diesem Artikel sollen

Mehr

Testmanagement in IT-Projekten

Testmanagement in IT-Projekten Teil 1: Projektmagazin 05/20009 Teil 2: Projektmagazin 06/2009 1 Test: Prozess, bei dem ein Programm oder ein Software-System ausgeführt wird, um Fehler zu finden Teil 1: Projektmagazin 05/20009 Teil 2:

Mehr

Vector Software. Test Automation mit VectorCAST während der gesamten Softwareentwicklung W H I T E P A P E R

Vector Software. Test Automation mit VectorCAST während der gesamten Softwareentwicklung W H I T E P A P E R Vector Software W H I T E P A P E R Test Automation mit VectorCAST während der gesamten Softwareentwicklung VectorCAST Produktfamilie Die VectorCAST Produktfamilie automatisiert Testaktivitäten über den

Mehr

Performance Monitoring Warum macht es Sinn?

Performance Monitoring Warum macht es Sinn? Performance Monitoring Warum macht es Sinn? achermann consulting ag Nicola Lardieri Network Engineer Luzern, 25.5.2011 Inhalt Definition Monitoring Warum Performance Monitoring? Performance Monitoring

Mehr

TESTPLAN

TESTPLAN <Projektname> Firma TESTPLAN ID Version Ersteller: ------------------- Vorgesetzter des Erstellers:

Mehr

Antwortzeitverhalten von Online Storage Services im Vergleich

Antwortzeitverhalten von Online Storage Services im Vergleich EPOD Encrypted Private Online Disc Antwortzeitverhalten von Online Storage Services im Vergleich Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee

Mehr

Leistungs- und Geschwindigkeitssteigerung. Dipl.-Ing. Sebastian F. Kleinau Applikationsingenieur

Leistungs- und Geschwindigkeitssteigerung. Dipl.-Ing. Sebastian F. Kleinau Applikationsingenieur Leistungs- und Geschwindigkeitssteigerung von LabVIEW-Projekten Dipl.-Ing. Sebastian F. Kleinau Applikationsingenieur Agenda 1. Einführung 2. Hilfreiche Werkzeuge zur Codeanalyse 3. Benchmarks für LabVIEW-VIs

Mehr

Software Engineering in

Software Engineering in Software Engineering in der Werkzeuge für optimierte LabVIEW-Entwicklung Folie 1 Best Practices Requirements Engineering Softwaretest Versionsmanagement Build- Automatisierung Folie 2 Arbeiten Sie im Team?

Mehr

Online Help StruxureWare Data Center Expert

Online Help StruxureWare Data Center Expert Online Help StruxureWare Data Center Expert Version 7.2.7 Virtuelle StruxureWare Data Center Expert-Appliance Der StruxureWare Data Center Expert-7.2-Server ist als virtuelle Appliance verfügbar, die auf

Mehr

Testmanagement. Dirk Tesche

Testmanagement. Dirk Tesche Testmanagement Dirk Tesche Agenda Einführung in die Thematik Testarten Testprozess Agile Methoden und Techniken Testautomatisierung Eingrenzung und Motivation Abbildung entnommen aus: www.campero.de Ziele

Mehr

Performance Analyse in einem komplexen Softwaresystem. 18.09.2013 Gebhard Ebeling

Performance Analyse in einem komplexen Softwaresystem. 18.09.2013 Gebhard Ebeling Performance Analyse in einem komplexen Softwaresystem 18.09.2013 Gebhard Ebeling Problemstellung Systemkomplexität Bei der Performance Analyse komplexer Softwaresystemen gibt es viele Einflussfaktoren,

Mehr

Internet Briefing. Developer Konferenz. Clientseitige Last- & Performancetesting. Namics.

Internet Briefing. Developer Konferenz. Clientseitige Last- & Performancetesting. Namics. Internet Briefing. Developer Konferenz. Clientseitige Last- & Performancetesting. Jürg Stuker. CEO. Partner. 8. Dezember 2011 Thema 1 Verstehen was zwischen User Agent und Server geschwatzt wird... 8.

Mehr

Qualitätssicherung durch Lasttests Vortrag für Führungskräfte und Projektleiter

Qualitätssicherung durch Lasttests Vortrag für Führungskräfte und Projektleiter Qualitätssicherung durch Lasttests Vortrag für Führungskräfte und Projektleiter Ingenieurbüro David Fischer GmbH www.proxy-sniffer.com Inhalt 1. Übergeordnete Zielsetzungen 2. Negativ-Beispiele aus der

Mehr

Lasttestbericht BL Bankrechner

Lasttestbericht BL Bankrechner Lasttestbericht BL Bankrechner Business-Logics GmbH Inhaltsverzeichnis 1 Testumgebung 2 1.1 Hardwareversionen........................ 2 1.2 Softwareversionen........................ 3 1.3 Datenbestand..........................

Mehr

WORKFLOWS. Vivendi NG, Vivendi PD Workflows, CRM VERSION: 6.17. Frage:

WORKFLOWS. Vivendi NG, Vivendi PD Workflows, CRM VERSION: 6.17. Frage: WORKFLOWS PRODUKT(E): KATEGORIE: Vivendi NG, Vivendi PD Workflows, CRM VERSION: 6.17 Frage: Unter Vivendi NG und Vivendi PD finde ich die Schaltfläche: Wofür kann ich diese Funktion nutzen? Antwort: Ab

Mehr

TELEMETRIE EINER ANWENDUNG

TELEMETRIE EINER ANWENDUNG TELEMETRIE EINER ANWENDUNG VISUAL STUDIO APPLICATION INSIGHTS BORIS WEHRLE TELEMETRIE 2 TELEMETRIE WELCHE ZIELE WERDEN VERFOLGT? Erkennen von Zusammenhängen Vorausschauendes Erkennen von Problemen um rechtzeitig

Mehr

Tool-Unterstützung für die Performance-Instrumentierung kritischer Geschäftsanwendungen

Tool-Unterstützung für die Performance-Instrumentierung kritischer Geschäftsanwendungen HP OpenView, Mercury und Peregrine Anwendertreffen Stuttgart, 12. Juni 2007 Tool-Unterstützung für die Performance-Instrumentierung kritischer Geschäftsanwendungen Dipl.-Inform. (FH) Jan Schäfer Labor

Mehr

PM-Forum Augsburg. Thomas Müller-Zurlinden, PMP 18.05.2012. Kontakt: Info@QinS.de

PM-Forum Augsburg. Thomas Müller-Zurlinden, PMP 18.05.2012. Kontakt: Info@QinS.de PM-Forum Augsburg Thomas Müller-Zurlinden, PMP 18.05.2012 Kontakt: Info@QinS.de Einführung in die Konzepte der Software Product Line Organisation einer globalen SPL Entwicklung SPL und die Herausforderungen

Mehr

Entwicklung eines Scheduling-Verfahrens zur Optimierung der Reihenfolge von Prototypentests. Masterarbeit

Entwicklung eines Scheduling-Verfahrens zur Optimierung der Reihenfolge von Prototypentests. Masterarbeit Entwicklung eines Scheduling-Verfahrens zur Optimierung der Reihenfolge von Prototypentests Masterarbeit zur Erlangung des akademischen Grades Master of Science (M.Sc.) im Masterstudiengang Wirtschaftswissenschaft

Mehr

Eins für alles? Monitoring und Profiling mit VisualVM

Eins für alles? Monitoring und Profiling mit VisualVM Eins für alles? Monitoring und Profiling mit VisualVM Thomas Much thomas@muchsoft.com www.muchsoft.com Eins für alles / VisualVM Copyright 2009 Thomas Much 1 Referent Dipl.-Inform. Thomas Much IT-Architekt,

Mehr

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector 7.4 Analyse anhand der SQL-Trace 337 7.3.5 Vorabanalyse mit dem Code Inspector Der Code Inspector (SCI) wurde in den vorangegangenen Kapiteln immer wieder erwähnt. Er stellt ein paar nützliche Prüfungen

Mehr

Redwood Cronacle und REALTECH theguard! Integration

Redwood Cronacle und REALTECH theguard! Integration Redwood Cronacle und REALTECH theguard! Integration Einleitung Redwood Software und REALTECH haben gemeinsam eine Lösung entwickelt, die die Systemverfügbarkeit von SAP und mysap Systemen signifikant erhöht.

Mehr

Abweichungsmanagement. Probleme hat doch jeder

Abweichungsmanagement. Probleme hat doch jeder 1 Abweichungsmanagement Probleme hat doch jeder SEQIS Software Testing Know-how Veranstaltungen 2011 24.03.2011 16.06.2011 22.09.2011 24.10.2011 Nicht zuviel und nicht zuwenig: Testdokumentation Theorie

Mehr

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching

1 Einleitung. 1.1 Caching von Webanwendungen. 1.1.1 Clientseites Caching 1.1 Caching von Webanwendungen In den vergangenen Jahren hat sich das Webumfeld sehr verändert. Nicht nur eine zunehmend größere Zahl an Benutzern sondern auch die Anforderungen in Bezug auf dynamischere

Mehr

Gegenseitige Beeinflussungen von Testautomatisierung, Testmanagement und Entwicklung

Gegenseitige Beeinflussungen von Testautomatisierung, Testmanagement und Entwicklung Gegenseitige Beeinflussungen von Testautomatisierung, Testmanagement und Entwicklung Jan Düttmann Archimedon Software + Consulting GmbH & Co. KG Marienstraße 66 32427 Minden Stephan Kleuker Hochschule

Mehr

Technische Beschreibung: EPOD Server

Technische Beschreibung: EPOD Server EPOD Encrypted Private Online Disc Technische Beschreibung: EPOD Server Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee JKU Linz Institut für

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

IBM Software Demos Rational Performance Tester Extension for Citrix

IBM Software Demos Rational Performance Tester Extension for Citrix Willkommen zur Online-Vorführung der IBM Rational Performance Tester- Erweiterung für Citrix Systems. Diese Demo zeigt Ihnen, wie Sie mittels der Rational Performance Testers No-Code Tests die Skalierbarkeit

Mehr

Performance Analyses with inspectit

Performance Analyses with inspectit Performance Analyses with inspectit 23.03.2012 Über uns Beratungsschwerpunkte Performanceanalyse und -optimierung, Application Monitoring, Lastund Performancetests Architekturberatung Java-basierte Anwendungsentwicklung

Mehr

Quality Point München

Quality Point München Quality Point München Test webbasierter Applikationen - Vorgehen, Instrumente, Probleme Gestern habe ich mich wieder über eine fehlerhafte Webanwendung geärgert. Muss das sein? Test ist halt auch hier

Mehr

Contao (Teil 37): Suchmaschinenoptimierung (1)

Contao (Teil 37): Suchmaschinenoptimierung (1) Web >> Contao Contao (Teil 37): Suchmaschinenoptimierung (1) Autor: daniel_koch Inhalt: Webseiten können eigentlich nur erfolgreich sein, wenn sie auch vernünftig über Suchmaschinen gefunden werden. Grund

Mehr

Entwicklungsumgebungen. Packer, Vagrant, Puppet. Alexander Pacnik Mannheim, 10.11.2014

Entwicklungsumgebungen. Packer, Vagrant, Puppet. Alexander Pacnik Mannheim, 10.11.2014 Entwicklungsumgebungen Packer, Vagrant, Puppet Alexander Pacnik Mannheim, 10.11.2014 inovex... über inovex und den Referenten 2 Entwicklungsumgebungen... Übersicht Einführung Packer Konfiguration Packer

Mehr

"15 Jahre APM - Wieso haben heutige Projekte immer noch Performance Probleme?"

15 Jahre APM - Wieso haben heutige Projekte immer noch Performance Probleme? "15 Jahre APM - Wieso haben heutige Projekte immer noch Performance Probleme?" Dienstag, 13. Mai 2014-16:45 bis 17:45 Goldsaal B JAX 2014 Stefan Siegl Stefan.siegl@novatec-gmbh.de NovaTec Consulting GmbH

Mehr

Testen von webbasierten Benutzeroberflächen

Testen von webbasierten Benutzeroberflächen Studiengruppe: IB6C Email: qasmi@hm.edu Dozent: Michael Theis 1 Agenda: Das eine basierte Testumgebung 2 Wer kennt diese Situationen nicht? =>Typische Fehler bei Webanwendungen! 3 Fehler wie diese sollten

Mehr

PERFORMANCE TESTS AVALON ODS-SERVER 28.11.12 DR. REINHARD HALLERMAYER, BMW GROUP

PERFORMANCE TESTS AVALON ODS-SERVER 28.11.12 DR. REINHARD HALLERMAYER, BMW GROUP PERFORMANCE TESTS AVALON ODS-SERVER 28.11.12 DR. REINHARD HALLERMAYER, BMW GROUP Freude am Fahren Inhalt. Ziele Testumgebung und Testwerkzeug Tests und Testergebnisse Ausblick Beteiligte: Fa. Science +

Mehr

Was versteht man unter Softwarequalität?

Was versteht man unter Softwarequalität? Was versteht man unter? ist die Gesamtheit der Merkmale und Merkmalswerte eines Softwareproduktes, die sich auf dessen Eignung beziehen, festgelegte oder vorausgesetzte Erfordernisse zu erfüllen. Was ist

Mehr

Prototypvortrag. Exploiting Cloud and Infrastructure as a Service (IaaS) Solutions for Online Game Service Provisioning. Projektseminar WS 2009/10

Prototypvortrag. Exploiting Cloud and Infrastructure as a Service (IaaS) Solutions for Online Game Service Provisioning. Projektseminar WS 2009/10 Prototypvortrag Exploiting Cloud and Infrastructure as a Service (IaaS) Solutions for Online Game Service Provisioning Projektseminar WS 2009/10 Eugen Fot, Sebastian Kenter, Michael Surmann AG Parallele

Mehr

Application Performance Management. Auch eine Frage des Netzwerkes?

Application Performance Management. Auch eine Frage des Netzwerkes? Application Performance Management Auch eine Frage des Netzwerkes? Agenda Architektur von Webanwendungen Lange Applikationsantwortzeiten Application Performance Management (APM) Netzwerkbasiertes APM Serverbasiertes

Mehr

Big Data Performance Management

Big Data Performance Management Big Data Performance Management Überblick Big Data Im Kontext der Performance Relevanz Big Data Big Data Big data is a buzzword and a "vague term", but at the same time an "obsession" with entrepreneurs,

Mehr

Test-Strategien. Grundsätzliches Blackbox-Testen Whitebox-Testen Graybox-Testen Ablauf von Tests Zusammenfassung. HS Mannheim

Test-Strategien. Grundsätzliches Blackbox-Testen Whitebox-Testen Graybox-Testen Ablauf von Tests Zusammenfassung. HS Mannheim Test- Grundsätzliches - - - Ablauf von Tests Grundsätzliche Test- -Tests Äquivalenzklassenbildung Randwertanalyse -Tests Man unterscheidet verschiedene Überdeckungsgrade: Statement Coverage Decision Coverage,

Mehr

Softwareentwicklungspraktikum Sommersemester 2007. Testdokumentation

Softwareentwicklungspraktikum Sommersemester 2007. Testdokumentation Softwareentwicklungspraktikum Sommersemester 2007 Testdokumentation Auftraggeber Technische Universität Braunschweig

Mehr

Inhaltsverzeichnis. 8. Zertifizierung nach Prozessanalyse 9. Zusammenfassung. 1. Messtechnische Erfassung 2. Flowcharts

Inhaltsverzeichnis. 8. Zertifizierung nach Prozessanalyse 9. Zusammenfassung. 1. Messtechnische Erfassung 2. Flowcharts V1.0 Inhaltsverzeichnis 1. Was ist ein Prozess? 2. Intermezzo: Pareto-Prinzip 3. Wozu dient eine Prozessanalyse? 4. Inhalt des Prozessassessments 5. Vorgehen im Prozessassessment 6. Flowcharts und ihre

Mehr

Messen von Usability. Wie kann man eine GUI unter dem Gesichtspunkt Usability bewerten?

Messen von Usability. Wie kann man eine GUI unter dem Gesichtspunkt Usability bewerten? Messen von Usability Wie kann man eine GUI unter dem Gesichtspunkt Usability bewerten? 1 Motivation Warum Usability messen? Usability Probleme frühzeitig erkennen Unterschiedliche Bedienelemente / Interaktionsmöglichkeiten

Mehr

Swp08-6 Verantwortliche: Yundensuren, Baigalmaa. Testkonzept

Swp08-6 Verantwortliche: Yundensuren, Baigalmaa. Testkonzept Testkonzept 1.Einführung Um die Zuverläsigkeit und die Qualität der Software und des gesamten Systems zu verbessern, sind Tests durchzuführen. Die Testreihe läst sich in drei Stufen einteilen, nülich Komponententest,

Mehr

Service & Support. Wie projektieren Sie eine VNC Verbindung mit einem Industrial Thin Client SIMATIC ITC? Thin Client.

Service & Support. Wie projektieren Sie eine VNC Verbindung mit einem Industrial Thin Client SIMATIC ITC? Thin Client. Deckblatt Wie projektieren Sie eine VNC Verbindung mit einem Industrial Thin Client SIMATIC ITC? Thin Client FAQ August 2012 Service & Support Answers for industry. Fragestellung Dieser Beitrag stammt

Mehr

1 Welcher Service Operation Prozesse fehlen? Incident Management, Problem

1 Welcher Service Operation Prozesse fehlen? Incident Management, Problem 1 Welcher Service Operation Prozesse fehlen? Incident Management, Problem Management, Access Management a. Event Management b. Service Desk c. Facilities Management d. Change Management e. Request Fulfilment

Mehr

Wir schützen Ihre Investitionen. Qualitätssicherung nach Maß. IT Quality Services

Wir schützen Ihre Investitionen. Qualitätssicherung nach Maß. IT Quality Services Wir schützen Ihre Investitionen Qualitätssicherung nach Maß IT Quality Services Sicherheit, die senkt Mit den IT Quality Services schützen Sie Ihre Investitionen Ohne Qualitätssicherung Mit Qualitätssicherung

Mehr

Agenda ITIL v3 Framework

Agenda ITIL v3 Framework Agenda ITIL v3 Framework Overview & Allgemeines ITIL Service Lifecycle Service Strategies Service Design Service Transition Service Operation Continual Service Improvement ITIL V3 Continual Service Improvement

Mehr

Finaler Testbericht. Finaler Testbericht. 1 Einführung 2. 1.1 Warum Softwaretests?... 2

Finaler Testbericht. Finaler Testbericht. 1 Einführung 2. 1.1 Warum Softwaretests?... 2 Inhaltsverzeichnis 1 Einführung 2 1.1 Warum Softwaretests?.................................... 2 2 Durchgeführte Tests 2 2.1 Test: allgemeine Funktionalität............................... 2 2.1.1 Beschreibung.....................................

Mehr

Systemmonitoring unter Linux

Systemmonitoring unter Linux Systemmonitoring unter Linux CPU-Counter B.Sc. Wirtsch.-Inform. Arno Sagawe, 29.06.10 Department of Informatics Scientifics Computing 1 Gliederung Systemmonitoring Protokolle und Dateien für das Systemmonitoring

Mehr

ISIS. Das Navigationssystem für angemessene Qualität und hohe Effizienz

ISIS. Das Navigationssystem für angemessene Qualität und hohe Effizienz ISIS Das Navigationssystem für angemessene Qualität und hohe Effizienz Inhalt Softwarequalität und Prozessqualität ISIS: das Ziel Messen der Prozessqualität Der Werkzeugzoo Die Wirkung Maßnahmen zur Prozessoptimierung

Mehr

Server-Eye. Stand 30.07.2013 WWW.REDDOXX.COM

Server-Eye. Stand 30.07.2013 WWW.REDDOXX.COM Server-Eye Stand 30.07.2013 Copyright 2012 by REDDOXX GmbH REDDOXX GmbH Neue Weilheimer Str. 14 D-73230 Kirchheim Fon: +49 (0)7021 92846-0 Fax: +49 (0)7021 92846-99 E-Mail: info@reddoxx.com Internet: http://www.reddoxx.com

Mehr

Manuelles Testen großer industrieller Systeme Dr. Uwe Doetzkies Informatik für die Industrie Berlin

Manuelles Testen großer industrieller Systeme Dr. Uwe Doetzkies Informatik für die Industrie Berlin Manuelles Testen großer industrieller Systeme Dr. Uwe Doetzkies Informatik für die Industrie Berlin In Kürze Nichtfunktionale Anforderungen an große Softwaresysteme lassen sich in der Regel noch nicht

Mehr

End-user IT Analytics

End-user IT Analytics End-user IT Analytics Die Unfallkasse Hessen verbessert den geleisteten Service durch Nexthink Möglichkeiten zur Steigerung von Performance und Kostensenkung eröffnet. Das Ziel des IT Teams der UKH war

Mehr

Einführung in den NetBeans Profiler

Einführung in den NetBeans Profiler Let s talk about IT Wenn s mal wieder länger dauert Einführung in den NetBeans Profiler Dominik Hofmann 14.01.2010 Themenüberblick Themen Grundlagen und Features des NetBeans Profilers CPU Profiling Memory

Mehr

Qualität 1. 1 Qualität

Qualität 1. 1 Qualität Qualität 1 1 Qualität Nach dem Durcharbeiten dieses Kapitels sollten Sie die Qualität für ein Softwaresystem definieren können, typische Qualitätskriterien kennen, Qualitätskriterien messbar festlegen

Mehr

Wanna be faster? Performance kann man managen! Application Performance Management, TIC Konferenz 2014

Wanna be faster? Performance kann man managen! Application Performance Management, TIC Konferenz 2014 Wanna be faster? Performance kann man managen! Application Performance Management, TIC Konferenz 2014 Streng vertraulich, Vertraulich, Intern Autor / Thema der Präsentation 26.11.2014 1 Performance? Who

Mehr

als Basis für kundenorientiertes Service Management

als Basis für kundenorientiertes Service Management End User Experience Monitoring als Basis für kundenorientiertes Service Management Thomas Schneemann Projektleiter ITERGO GmbH Bernd Jonas Senior Consultant amasol AG 1 Agenda Überblick ITERGO Thomas Schneemann,

Mehr

Erik Purwins, Unit Manager BI 22.06.2015 Europäische TDWI-Konferenz, München

Erik Purwins, Unit Manager BI 22.06.2015 Europäische TDWI-Konferenz, München Take a BITe - BI Testing: Lasttests in BI- und DWH-Umgebungen Erik Purwins, Unit Manager BI 22.06.2015 Europäische TDWI-Konferenz, München Agenda Motivation Vorgehensweise Nutzen PPI AG 22.06.2015 Europäische

Mehr

Fragestellung: Wie viele CPU Kerne sollte eine VM unter Virtualbox zugewiesen bekommen?

Fragestellung: Wie viele CPU Kerne sollte eine VM unter Virtualbox zugewiesen bekommen? Fragestellung: Wie viele CPU Kerne sollte eine VM unter Virtualbox zugewiesen bekommen? Umgebung Getestet wurde auf einem Linux-System mit voller invis-server Installation, auf dem eine virtuelle Maschine

Mehr

Mitglied der: KNX Association OPC Foundation BACnet Interest Group Europe. Dokumentversion: 1.0.2

Mitglied der: KNX Association OPC Foundation BACnet Interest Group Europe. Dokumentversion: 1.0.2 Mitglied der: KNX Association OPC Foundation BACnet Interest Group Europe Dokumentversion: 1.0.2 Inhaltsverzeichnis 1. System Überblick 4 2. Windows Firewall Konfiguration 5 2.1. Erlauben von DCOM Kommunikation

Mehr

Infrastrukturanalyse Ihr Weg aus dem Datenstau

Infrastrukturanalyse Ihr Weg aus dem Datenstau Waltenhofen * Düsseldorf * Wiesbaden Infrastrukturanalyse Ihr Weg aus dem Datenstau SCALTEL Webinar am 20. Februar 2014 um 16:00 Uhr Unsere Referenten Kurze Vorstellung Stefan Jörg PreSales & Business

Mehr

Collaborative Virtual Environments

Collaborative Virtual Environments Collaborative Virtual Environments Stefan Lücking Projektgruppe Kreativität und Technik AG Domik WS 02/03 09.01.2003 1/35 Was sind CVE? Versuch einer Definition : Ein CVE ist ein Programm, das eine virtuelle

Mehr

Ist Ihre Mainframe Anwendungs- Umgebung wirklich so effizient, wie Sie denken?

Ist Ihre Mainframe Anwendungs- Umgebung wirklich so effizient, wie Sie denken? Ist Ihre Mainframe Anwendungs- Umgebung wirklich so effizient, wie Sie denken? Cross-Enterprise APM und Application Performance Management 30. Oktober 2012 Agenda Cross-Enterprise APM Mainframe Application

Mehr

Basiswissen Softwaretest

Basiswissen Softwaretest Basiswissen Softwaretest Vergleich der Vorlesung Software-Engineering Wartung und Qualitätssicherung (Stand WS13/14) mit der 4. überarbeiteten und aktualisierten Auflage von Spillner&Linz: Basiswissen

Mehr

Methodische, softwaregestützte Risikobeurteilung

Methodische, softwaregestützte Risikobeurteilung Methodische, softwaregestützte Risikobeurteilung Ziel der Risikobeurteilung ist es, die von einem Produkt ausgehenden Gefährdungspotenziale möglichst vollständig zu erfassen und Schutzmaßnahmen gegen sie

Mehr

ARAkoll 2013 Dokumentation. Datum: 21.11.2012

ARAkoll 2013 Dokumentation. Datum: 21.11.2012 ARAkoll 2013 Dokumentation Datum: 21.11.2012 INHALT Allgemeines... 3 Funktionsübersicht... 3 Allgemeine Funktionen... 3 ARAmatic Symbolleiste... 3 Monatsprotokoll erzeugen... 4 Jahresprotokoll erzeugen

Mehr

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG

ALM mit Visual Studio Online. Philip Gossweiler Noser Engineering AG ALM mit Visual Studio Online Philip Gossweiler Noser Engineering AG Was ist Visual Studio Online? Visual Studio Online hiess bis November 2013 Team Foundation Service Kernstück von Visual Studio Online

Mehr

Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann

Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann Data Lineage goes Traceability - oder was Requirements Engineering von Business Intelligence lernen kann Andreas Ditze MID GmbH Kressengartenstraße 10 90402 Nürnberg a.ditze@mid.de Abstract: Data Lineage

Mehr

WI EDI Solution. Stand 17.02.2012

WI EDI Solution. Stand 17.02.2012 WI EDI Solution Stand 17.02.2012 WIAG Überblick 2011 - SAP, SAP BW, SAP SEM/BPS, SAP BPC, SAP R/3, ABAP, Netweaver sind eingetragene Warenzeichen der SAP AG, Walldorf Folie 1 Inhalt Was ist WIEDIS? IDOC

Mehr

Last- und Performancetest mit freien Werkzeugen. Stefan Siegl, 17.04.2012

Last- und Performancetest mit freien Werkzeugen. Stefan Siegl, 17.04.2012 Last- und Performancetest mit freien Werkzeugen Stefan Siegl, 17.04.2012 Über mich Consultant der NovaTec GmbH Performance Engineer Leitung CA Application Performance Management Verantwortlich für Produkte

Mehr

ITIL Incident Management

ITIL Incident Management ITIL Incident Management + Vertiefung IT-Betriebsprozesse HSLU T&A Service- und System Management HS13 Michael Estermann https://www.ca.com/images/inlineimage/itil_svc_op.gif Eingliederung in ITIL Service

Mehr

Kopieren einer Windows-Installation auf eine andere Platte

Kopieren einer Windows-Installation auf eine andere Platte Kopieren einer Windows-Installation auf eine andere Platte Für kaum einen Vorhaben gibt es so viele Anleitung im Internet, wie das Kopieren einer bestehenden Windows-Installation auf eine andere Festplatte.

Mehr

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent

Mehr

Projektmanagement. Vorlesung von Thomas Patzelt 10. Vorlesung

Projektmanagement. Vorlesung von Thomas Patzelt 10. Vorlesung Projektmanagement Vorlesung von Thomas Patzelt 10. Vorlesung 1 Test...(4) Oberflächentests testen die Benutzerschnittstelle des Systems, nicht nur auf Fehlerfreiheit sondern z.b. auch auf Konformität mit

Mehr

Die XHOSTPLUS Online Applikation xhonline

Die XHOSTPLUS Online Applikation xhonline Die XHOSTPLUS Online Applikation xhonline http://www.xhostplus.at -> Service -> Online Kundenbereich -> Kundenadministration oder direkt via http://online.xhostplus.at Einführung Die XHOSTPLUS Webapplikation,

Mehr

Messung von ServiceLeistung für SAP Service Provider Kundenevent 25. November 2014 @ HSR Rapperswil

Messung von ServiceLeistung für SAP Service Provider Kundenevent 25. November 2014 @ HSR Rapperswil Messung von ServiceLeistung für SAP Service Provider Kundenevent 25. November 2014 @ HSR Rapperswil Themen: Ausgangslage Lösung Gewinn RealStuff Informatik AG Chutzenstrasse 24 CH-3007 Bern www.realstuff.ch

Mehr

Cmsbox Kurzanleitung. Das Wichtigste in Kürze

Cmsbox Kurzanleitung. Das Wichtigste in Kürze Cmsbox Kurzanleitung Cmsbox Kurzanleitung Das Wichtigste in Kürze Die Benutzeroberfläche der cmsbox ist nahtlos in die Webseite integriert. Elemente wie Texte, Links oder Bilder werden direkt an Ort und

Mehr

Geschäftsprozessmanagement

Geschäftsprozessmanagement Geschäftsprozessmanagement Der INTARGIA-Ansatz Whitepaper Dr. Thomas Jurisch, Steffen Weber INTARGIA Managementberatung GmbH Max-Planck-Straße 20 63303 Dreieich Telefon: +49 (0)6103 / 5086-0 Telefax: +49

Mehr

Module für eine Java-Administrationsschulung

Module für eine Java-Administrationsschulung Module für eine Java-Administrationsschulung Schulungsmodule 1 Java Administration allgemein...2 1.1 Java und die Virtual Machine...2 1.2 Java EE Bestandteile...2 1.3 Java Management Extensions...2 1.4

Mehr

Software Performance Lifecycle Management bei der DBV Winterthur

Software Performance Lifecycle Management bei der DBV Winterthur Ihr leistungsstarker Partner für die Integration aller qualitätsbezogener Aspekte einer Softwareentwicklung oder Softwareeinführung Software Performance Lifecycle Management bei der DBV Winterthur Alois

Mehr

OPNET s Application Response Expert (ARX)

OPNET s Application Response Expert (ARX) OPNET s Application Response Expert (ARX) Root Cause Analyse und End2End Monitoring für Web Anwendungen Summary Werden im IT Betrieb Probleme durch die Anwender gemeldet, müssen schnell Informationen aus

Mehr

ISA Server 2004 - Best Practice Analyzer

ISA Server 2004 - Best Practice Analyzer ISA Server 2004 - Best Practice Analyzer Die Informationen in diesem Artikel beziehen sich auf: Microsoft ISA Server 2004 Seit dem 08.12.2005 steht der Microsoft ISA Server 2004 Best Practice Analyzer

Mehr

Service ERP. Quartalsbericht 4-2014. SLR 2014Q4 Service ERP Jochen Meiners, 16.01.2015 1 von 7

Service ERP. Quartalsbericht 4-2014. SLR 2014Q4 Service ERP Jochen Meiners, 16.01.2015 1 von 7 Service ERP Quartalsbericht 4-2014 SLR 2014Q4 Service ERP Jochen Meiners, 16.01.2015 1 von 7 1. Verfügbarkeit 1.1 ungeplante Systemausfälle EDE SAP 9. Und 10.12 teilweise sehr hohe Antwortzeiten wegen

Mehr

Ersatzteile der Extraklasse Magento-Module der Shopwerft

Ersatzteile der Extraklasse Magento-Module der Shopwerft Ersatzteile der Extraklasse Magento-Module der Shopwerft MicroStudio - Fotolia.com Viele Produkte eignen sich auch als Geschenk. Wer für den Beschenkten keine eigene Auswahl treffen möchte, der greift

Mehr

Testwell CTC++ Test Coverage Analyser Testabdeckung für alle Coverage-Stufen, alle Compiler, alle Embedded Targets

Testwell CTC++ Test Coverage Analyser Testabdeckung für alle Coverage-Stufen, alle Compiler, alle Embedded Targets Testwell CTC++ Test Coverage Analyser Testabdeckung für alle Coverage-Stufen, alle Compiler, alle Embedded Targets Testwell CTC++ ist ein leistungsfähiges und einfach zu benutzendes Code-/Test-Coverage

Mehr

Service Engineering. Qualitätssicherung von Cloud-Services durch Benchmarking und Monitoring. Prof. Dr. Andreas Schmietendorf 1. Service Engineering

Service Engineering. Qualitätssicherung von Cloud-Services durch Benchmarking und Monitoring. Prof. Dr. Andreas Schmietendorf 1. Service Engineering Qualitätssicherung von Cloud-Services durch Benchmarking und Monitoring Prof. Dr. Andreas Schmietendorf 1 Motivation zur Themenstellung Prof. Dr. Andreas Schmietendorf 2 Motivation Auf der Basis eines

Mehr

Enterprise Resource Suite. Produkt Beschreibung

Enterprise Resource Suite. Produkt Beschreibung Enterprise Resource Suite Produkt Beschreibung Inhaltsverzeichnis 1 Summary... 2 2 Enterprise Resource Suite (ERS)... 3 3 ERS-Analyzing... 4 3.1 Belegung der Plattensysteme... 4 3.2 Verzeichnisbelegung...

Mehr