Analyse von IT-Anwendungen mittels Zeitvariation
Beschreibung
vor 14 Jahren
Performanzprobleme treten in der Praxis von IT-Anwendungen häufig
auf, trotz steigender Hardwareleistung und verschiedenster Ansätze
zur Entwicklung performanter Software im Softwarelebenszyklus.
Modellbasierte Performanzanalysen ermöglichen auf Basis von
Entwurfsartefakten eine Prävention von Performanzproblemen. Bei
bestehenden oder teilweise implementierten IT-Anwendungen wird
versucht, durch Hardwareskalierung oder Optimierung des Codes
Performanzprobleme zu beheben. Beide Ansätze haben Nachteile:
modellbasierte Ansätze werden durch die benötigte hohe Expertise
nicht generell genutzt, die nachträgliche Optimierung ist ein
unsystematischer und unkoordinierter Prozess. Diese Dissertation
schlägt einen neuen Ansatz zur Performanzanalyse für eine
nachfolgende Optimierung vor. Mittels eines Experiments werden
Performanzwechselwirkungen in der IT-Anwendung identifiziert. Basis
des Experiments, das Analyseinstrumentarium, ist eine
zielgerichtete, zeitliche Variation von Start-, Endzeitpunkt oder
Laufzeitdauer von Abläufen der IT-Anwendung. Diese Herangehensweise
ist automatisierbar und kann strukturiert und ohne hohen
Lernaufwand im Softwareentwicklungsprozess angewandt werden.
Mittels der Turingmaschine wird bewiesen, dass durch die zeitliche
Variation des Analyseinstrumentariums die Korrektheit von
sequentiellen Berechnung beibehalten wird. Dies wird auf
nebenläufige Systeme mittels der parallelen Registermaschine
erweitert und diskutiert. Mit diesem praxisnahen Maschinenmodell
wird dargelegt, dass die entdeckten Wirkzusammenhänge des
Analyseinstrumentariums Optimierungskandidaten identifizieren. Eine
spezielle Experimentierumgebung, in der die Abläufe eines Systems,
bestehend aus Software und Hardware, programmierbar variiert werden
können, wird mittels einer Virtualisierungslösung realisiert.
Techniken zur Nutzung des Analyseinstrumentariums durch eine
Instrumentierung werden angegeben. Eine Methode zur Ermittlung von
Mindestanforderungen von IT-Anwendungen an die Hardware wird
präsentiert und mittels der Experimentierumgebung anhand von zwei
Szenarios und dem Android Betriebssystem exemplifiziert.
Verschiedene Verfahren, um aus den Beobachtungen des Experiments
die Optimierungskandidaten des Systems zu eruieren, werden
vorgestellt, klassifiziert und evaluiert. Die Identifikation von
Optimierungskandidaten und -potenzial wird an
Illustrationsszenarios und mehreren großen IT-Anwendungen mittels
dieser Methoden praktisch demonstriert. Als konsequente Erweiterung
wird auf Basis des Analyseinstrumentariums eine Testmethode zum
Validieren eines Systems gegenüber nicht deterministisch
reproduzierbaren Fehlern, die auf Grund mangelnder
Synchronisationsmechanismen (z.B. Races) oder zeitlicher Abläufe
entstehen (z.B. Heisenbugs, alterungsbedingte Fehler), angegeben.
auf, trotz steigender Hardwareleistung und verschiedenster Ansätze
zur Entwicklung performanter Software im Softwarelebenszyklus.
Modellbasierte Performanzanalysen ermöglichen auf Basis von
Entwurfsartefakten eine Prävention von Performanzproblemen. Bei
bestehenden oder teilweise implementierten IT-Anwendungen wird
versucht, durch Hardwareskalierung oder Optimierung des Codes
Performanzprobleme zu beheben. Beide Ansätze haben Nachteile:
modellbasierte Ansätze werden durch die benötigte hohe Expertise
nicht generell genutzt, die nachträgliche Optimierung ist ein
unsystematischer und unkoordinierter Prozess. Diese Dissertation
schlägt einen neuen Ansatz zur Performanzanalyse für eine
nachfolgende Optimierung vor. Mittels eines Experiments werden
Performanzwechselwirkungen in der IT-Anwendung identifiziert. Basis
des Experiments, das Analyseinstrumentarium, ist eine
zielgerichtete, zeitliche Variation von Start-, Endzeitpunkt oder
Laufzeitdauer von Abläufen der IT-Anwendung. Diese Herangehensweise
ist automatisierbar und kann strukturiert und ohne hohen
Lernaufwand im Softwareentwicklungsprozess angewandt werden.
Mittels der Turingmaschine wird bewiesen, dass durch die zeitliche
Variation des Analyseinstrumentariums die Korrektheit von
sequentiellen Berechnung beibehalten wird. Dies wird auf
nebenläufige Systeme mittels der parallelen Registermaschine
erweitert und diskutiert. Mit diesem praxisnahen Maschinenmodell
wird dargelegt, dass die entdeckten Wirkzusammenhänge des
Analyseinstrumentariums Optimierungskandidaten identifizieren. Eine
spezielle Experimentierumgebung, in der die Abläufe eines Systems,
bestehend aus Software und Hardware, programmierbar variiert werden
können, wird mittels einer Virtualisierungslösung realisiert.
Techniken zur Nutzung des Analyseinstrumentariums durch eine
Instrumentierung werden angegeben. Eine Methode zur Ermittlung von
Mindestanforderungen von IT-Anwendungen an die Hardware wird
präsentiert und mittels der Experimentierumgebung anhand von zwei
Szenarios und dem Android Betriebssystem exemplifiziert.
Verschiedene Verfahren, um aus den Beobachtungen des Experiments
die Optimierungskandidaten des Systems zu eruieren, werden
vorgestellt, klassifiziert und evaluiert. Die Identifikation von
Optimierungskandidaten und -potenzial wird an
Illustrationsszenarios und mehreren großen IT-Anwendungen mittels
dieser Methoden praktisch demonstriert. Als konsequente Erweiterung
wird auf Basis des Analyseinstrumentariums eine Testmethode zum
Validieren eines Systems gegenüber nicht deterministisch
reproduzierbaren Fehlern, die auf Grund mangelnder
Synchronisationsmechanismen (z.B. Races) oder zeitlicher Abläufe
entstehen (z.B. Heisenbugs, alterungsbedingte Fehler), angegeben.
Weitere Episoden
vor 11 Jahren
vor 11 Jahren
vor 11 Jahren
In Podcasts werben
Kommentare (0)