Die Fehlersuche in einer/m Software/Programm welches keine Debuginformationen enthalten, gestaltet sich schwierig. Zu diesem Zweck wurden C++ Klassen entwickelt welche es ermöglichen, im Falle eines Fehlers während des Programmablauf einer Release-Version, festzustellen in welche Sourcedatei der Fehler auftrat. Das Verhalten der Klassen kann so angepasst werden, dass mehr Fehler protokolliert werden oder weniger, sprich man kann verschieden Loglevel angeben z.B. INFO, WARN, CRITICAL oder ERROR. Der Speicherort für die Log-/Monitoring-Daten kann eine Datenbank oder eine Textdatei sein. Die Klassen sind so entworfen, dass die auch leicht erweitert werden können z.B. XML-Datei.
Inhaltsverzeichnis
- Danksagung
- Eidesstattliche Erklärung
- Inhaltsverzeichnis
- Abbildungsverzeichnis
- Tabellenverzeichnis
- Listingverzeichnis
- Einführung
- Einleitung
- Ziel der Diplomarbeit
- Aufbau der Diplomarbeit
- Grundlagen
- Programmfehler
- Protokollierung
- Reproduzierbarkeit / Nachvollziehbarkeit
- Das vorhandene Informationserfassungssystem
- Protokollierungskomponente
- Monitoring-Komponente
- Motivation
- Anforderungen an das neue Informationserfassungssystem
- Flexible Datenhaltung
- Schnellere Identifizierung
- Die Daten
- Log-Daten
- Monitoring-Daten
- Die Datendarstellung
- Performance
- Implementierung
- Konfigurierbarkeit
- Entwicklung eines Lösungsansatzes
- Einführendes Beispiel
- Client-Server-Architektur
- Interprozesskommunikation
- Nebenläufigkeit und Synchronisation
- Daten
- Log-Daten
- Monitoring-Daten
- Datenbank
- Performance
- Zusammenfassung
- Entwurf des Lösungsansatzes
- Datenbank der Protokollierungskomponente
- Datenbank der Monitoring-Komponente
- Klassendiagramm Informationserfassungssystem
- Allgemeines
- Beschreibung des Klassendiagramms
- Der grüne Bereich
- Der blaue Bereich
- Der gelbe Bereich
- Der orange Bereich
- Der pinke Bereich
- Restliche Klassen
- Beschreibung der verwendeten Software-Muster
- Singleton
- Wrapper-Facade
- Scoped Locking
- Double-Checked Locking Optimization
- Thread-Safe Interface
- Ergebnisse
- Allgemein
- Anwendungsbeispiel
- Performance-Test
- Testsergebnisse
- Erkenntnisse Performance-Test
- Verbesserungsvorschlag
- Compiler-Test
- Zusammenfassung
- Allgemein
- Zukunftsvorstellung
- Empfehlungen zur 1. Generation
- Die 2. Generation
- Fazit
- Glossar
- Literatur- und Quellenverzeichnis
- Abkürzungsverzeichnis
- Anhang
Zielsetzung und Themenschwerpunkte
Diese Diplomarbeit befasst sich mit der Neukonzeption und Implementierung eines Informationserfassungssystems für ein Warenwirtschaftssystem (WWS). Das Ziel ist es, das vorhandene, einfache Protokollierungssystem durch eine neue, flexible und performante Lösung zu ersetzen. Diese soll neben der Protokollierung von Programmabläufen auch die Überwachung des WWS, insbesondere der Prozessorauslastung, Speichernutzung und Datenbankgröße, ermöglichen. Die Hauptaufgabe der Arbeit liegt in der Entwicklung und Implementierung dieses neuen Systems, wobei die Anforderungen an eine einfache Integration in das WWS, eine übersichtliche Datendarstellung und eine hohe Performance im Vordergrund stehen.
- Protokollierung von Programmabläufen
- Überwachung von Systemressourcen (Prozessorauslastung, Speichernutzung)
- Überwachung der Datenbankgröße
- Flexible Datenhaltung (Datei, Datenbank)
- Schnelle Identifizierung und Auswertung von Log- und Monitoring-Daten
Zusammenfassung der Kapitel
Die Diplomarbeit beginnt mit einer Einleitung, die das Projekt und die Zielsetzung der Arbeit beschreibt. Anschließend werden die Grundlagen des Protokollierens und der Reproduzierbarkeit von Programmfehlern erläutert. Das vorhandene Informationserfassungssystem wird analysiert und die Motivation für die Neukonzeption eines neuen Systems dargestellt.
In Kapitel 5 werden die Anforderungen an das neue Informationserfassungssystem detailliert beschrieben. Es werden Kriterien wie flexible Datenhaltung, schnelle Identifizierung, Datendarstellung, Performance, Implementierung und Konfigurierbarkeit behandelt.
Kapitel 6 widmet sich der Entwicklung des Lösungsansatzes. Es wird eine Client-Server-Architektur mit Interprozesskommunikation über Sockets und Named Pipes vorgeschlagen. Die Problematik der Nebenläufigkeit und Synchronisation wird angesprochen und die Verwendung von Software-Mustern zur Lösung dieser Herausforderungen erläutert. Die Datenstrukturen für Log- und Monitoring-Einträge werden definiert und die Verwendung einer SQL-Datenbank als Speichermedium beschrieben. Um die Performance zu optimieren, wird die Verwendung eines Puffers für die Zwischenspeicherung der Daten vorgeschlagen.
Der Entwurf des Lösungsansatzes wird in Kapitel 7 vorgestellt. Es werden die Datenbankmodelle für die Protokollierungskomponente und die Monitoring-Komponente detailliert dargestellt. Das Klassendiagramm des Informationserfassungssystems wird erläutert und die verwendeten Software-Muster (Singleton, Wrapper-Facade, Scoped Locking, Double-Checked Locking Optimization, Thread-Safe Interface) werden kurz beschrieben.
Kapitel 8 präsentiert die Ergebnisse der Arbeit. Es wird ein Anwendungsbeispiel gezeigt, das die Verwendung der Klassen des Informationserfassungssystems demonstriert. Ein Performance-Test mit und ohne Puffer wird durchgeführt, der die Vorteile der Pufferung für die Performance des Systems belegt. Außerdem wird der Compiler-Test beschrieben, der die Kompatibilität des Systems mit verschiedenen Compilern bestätigt.
Die Arbeit wird in Kapitel 9 mit einer Zusammenfassung der Ergebnisse und einem Ausblick auf die 2. Generation des Informationserfassungssystems abgeschlossen. Es werden mögliche Erweiterungen und Verbesserungen des Systems diskutiert, wie z.B. die Möglichkeit, Log-Daten in HTML oder XML-Format zu speichern, eine Auto-Delete-Funktion und die Integration eines Monitoring- und Analyseprogramms.
Schlüsselwörter
Die Schlüsselwörter und Schwerpunktthemen des Textes umfassen die Protokollierung, das Monitoring, die Informationserfassung, das Warenwirtschaftssystem, die Client-Server-Architektur, die Interprozesskommunikation, die Nebenläufigkeit, die Synchronisation, die Datenhaltung, die Datenbanken, die Performance, die Software-Muster und die Implementierung in ANSI C++.
- Quote paper
- Pascal Fritz (Author), 2006, Neukonzeption und Implementierung eines Informationserfassungssystems für ein Warenwirtschaftssystem, Munich, GRIN Verlag, https://www.grin.com/document/133256
-
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X.