005 Computerprogrammierung, Programme, Daten
Filtern
Dokumenttyp
- Masterarbeit (44)
Volltext vorhanden
- ja (44)
Gehört zur Bibliographie
- ja (44)
Schlagworte
- Software Engineering (6)
- Informationssicherheit (3)
- Computersicherheit (2)
- Softwareentwicklung (2)
- App <Programm> (1)
- Authentifikation (1)
- Blockchain (1)
- Cloud Computing (1)
- Codegenerierung (1)
- Datenverarbeitung (1)
Die vorliegende Masterthesis liefert eine Einführung in die Themen Agile Business Intelligence, Data-Warehouse Architektur und das Testen von Software. Darauf aufbauend werden grundlegende Konzepte für das Testen von Data-Warehouse Systemen analysiert, und Ansätze für die Automatisierung solcher Systeme herausgearbeitet. Inhaltlich wird über die Thematiken Agilität und iterative Entwicklungsmethoden an die Notwendigkeit eines Konzeptes für die Testautomatisierung im Data-Warehouse Umfeld herangeführt.
Die Gastronomie ist eine Branche, die als Dienstleistung ihre Kunden vor Ort bewirtet. Durch den laufenden direkten Kontakt zwischen Kunde und Angestellten besteht jederzeit die Moglichkeit, positives Feedback oder Beschwerden direkt abzugeben. Die TeLLers-Anwendung bietet über eine mobile Web-Anwendung einen zusatzlichen Kanal für Feedbacks. Diese liegen teilweise als natürlichsprachige Texte vor, die der Gastronom nur umständlich auswerten kann, um Handlungsfelder zu erkennen. Diese Arbeit analysiert die vorliegenden Datensatze und ordnet sie manuell einem Thema und einer Bewertung zu. Anschließend erfolgt die Umsetzung einer automatischen Analyse unter Verwendung einer lexikonbasierten Stimmungserkennung. Es zeigt sich, dass trotz des relativ einfachen technischen Ansatzes eine hohe Deckungsrate mit der manuellen Analyse gegeben ist. Ein wichtiger Grund dafür ist die direkte und einfache Sprache der vorliegenden Feedbacks. Durch gezielte Fragestellungen kann der Gastronom die Qualität der Antworten weiter optimieren, so dass die Feedbacks konkrete Vorschläge für Verbesserungen enthalten. Eine Datenanalyse ermittelt jene Themen, zu denen die meisten Feedbacks eintreffen. Abschließend erfolgen auf Basis einer Literaturrecherche Empfehlungen zu den am häufigsten eingemeldeten Problemfeldern. Ein Teil der Beschwerden weist auf geringe Missstände hin, die vor Ort schnell lösbar sind. Komplexere Themen liegen vor allem im Service sowie bei Leistung und Qualität von Essen und Getränken vor. Hier tendieren die Lösungsansätze zu Verbesserungen bei der Personalentwicklung sowie der Optimierung von Prozessen im Betrieb. Eine strukturierte Kosten- und Umsatzrechnung ist eine wichtige Basis dazu.
Vergleich des Redux Paradigma mit Zustandsmanagement in bisherigen Javascript MV*-Architekturen
(2017)
JavaScript ist Sprache des Webs geworden und die Entwicklung von komplexen JavaScript Web Applikationen nimmt stetig zu. Bei der Entwicklung von modernen JavaScript Web Applikationen ist das Zustandsmanagement ein zentraler und erfolgskritischer Themenkomplex. Das Hauptziel der Arbeit ist es, die möglichen Vorteile eines Redux basierten Zustandsmanagement für JavaScript Web Applikationen gegenüber herkömmlichen JavaScript MV*-Architekturen zu erarbeiten. Bisherige JavaScript-MV* Architekturen boten bislang Kompromiss behaftete und speziell in sehr umfangreichen Web Applikationen keine Lösungen, um das Zustandsmanagement möglichst vorsehbar zu machen. Viele Komponenten, Zustandsinteraktionen und Veränderungen aus verschiedensten Quellen machten es besonders schwer, den aktuellen Applikationszustand transparent darzustellen. Das Redux Paradigma formuliert und verbreitetet eine explizite Sprache und definierte Regeln, um den Zustand in komplexen Web Applikationen vorhersehbar verwalten zu können. Besonders in Bezug auf die Nachvollziehbarkeit und die Wartbarkeit des Programmcodes haben die Untersuchungen der Masterarbeit ergeben, dass die Implementierung des Redux Paradigmas große Vorteile gegenüber klassischen Zustandsmanagement Konzepten bieten kann. Es existieren eine Vielzahl von Entwicklerwerkzeugen, um die tägliche Arbeit zu unterstützen und zu vereinfachen. Beim Codeumfang konnten nach den Erkenntnissen der vorliegenden Masterarbeit keine Vorteile des Redux Paradigmas gegenüber einer klassischen Implementierung eines Daten Service für das Zustandsmanagement erkannt werden. Bezüglich der Render Performance ist eine Abhängigkeit zwischen Datenmenge und durchschnittlicher Renderzeit erkennbar. Bei geringer Daten Menge ist die Render Perfomance gegenüber der Daten Service Implementierung schneller, bei mittlerer Datenmenge sind beide Implementierung beinahe gleich schnell und bei einer hohen Datenmenge weist die Daten Service Implementierung eine bessere Render Performance gegenüber der Redux Implementierung auf. Die zunehmende Verbreitung und Popularität innerhalb der Entwicklergemeinde zeigt, dass das Redux Paradigma den Puls der Zeit trifft und eine angemessene Lösung für ein weit verbreitetes Problem bieten kann. Die Ergebnisse der vorliegenden Masterarbeit sollen mehr Klarheit in die Bewertung von Zustandsmanagement Lösungen in JavaScript Web Applikationen bringen und Entscheidern helfen, eine fundierte Auswahl bezüglich eines Konzepts zur Verwaltung des Zustands für ihre individuelle Herrausforderung treffen zu können.
Ist neu immer besser?
(2017)
Durch die Verbreitung des Internets und damit der verteilten Anwendungen wurden serviceorientierte Architekturen zu einem festen Begriff der Softwareindustrie. In jüngerer Zukunft stieg das Interesse an Microservice Architekturen an und diese werden unter anderem auch mit „service orientation done right“ beschrieben. Diese Arbeit beschäftigt sich mit der Frage „Ist neu immer besser?“ und damit mit der Frage, ob Microservice Architekturen grundsätzlich besser sind als klassische serviceorientierte Architekturen. Zunächst werden die beiden Architekturen definiert und mit ihren Merkmalen beschrieben. Anschließend findet mit dem Architecture Tradeoff Analysis Model eine Definition einer Architekturbewertungsmethode statt. Außerdem werden Qualitätsattribute der ISO/IEC 25010 beschrieben die zur Bewertung der Softwarequalität verwendet werden kann. In dem nächsten Schritt werden die Fähigkeiten der beiden, in dieser Arbeit untersuchten, Architekturen beschrieben, die Qualitätskriterien der ISO/IEC 25010 zu erfüllen. Nachfolgend findet eine beispielhafte Auswertung von den Anforderungen von Webanwendungstypen an diese Qualitätskriterien statt mit anschließender Gegenüberstellung zu den Eigenschaften der Architekturen. Das Ergebnis dieser Arbeit ist, dass Microservice Architekturen grundsätzlich nicht immer besser sind als klassische serviceorientierte Architekturen und somit die Forschungsfrage mit „Nein“ beantwortet werden kann. Vielmehr sorgen die Merkmale der beiden Architekturen dafür, dass diese sich für unterschiedliche Anforderungen besonders eignen. Serviceorientierte Architekturen haben ihre Stärken beispielsweise in der Konnektivität zu anderen Systemen und den ausgereiften Technologien was vor allem die Sicherheit angeht. Microservices hingegen eignen sich sehr gut für Software mit sehr starken Skalierungs- und Performanceanforderungen.
Immer mehr Unternehmen setzen ihre Systeme mit Microservices um, da sie ihre Anwendungen schnell, agil und unabhängig in Produktion bringen möchten. So komplex dieser Architekturansatz ist, so vielfältig sind die Informationen, die für diesen Ansatz benötigt werden. Die vorliegende Arbeit beschäftigt sich daher damit, welche Aspekte für eine Microservice-Architektur von Relevanz sind und als Modell sichtbar gemacht werden sollten. Hierbei führt die Arbeit zunächst die allgemeinen Grundlagen der Softwarearchitektur und Modellierung ein. Anschließend werden auf Basis einer Literaturrecherche die relevanten Informationen einer Microservice-Architektur hervorgehoben. Die Kernelemente dabei sind die Makro- und Mikroarchitektur, die fachliche Aufteilung mit Domain-driven Design sowie die infrastrukturellen Herausforderungen. Aufgrund der sich ständig dynamisch ändernden Servicelandschaft, ist es in einer Microservice-Architektur außerdem erforderlich, sich mithilfe von automatisierter Datensammlung einen Überblick zu verschaffen. Anhand einer empirischen Studie konnte herausgefunden werden, dass die Unternehmen bereits diese relevanten Daten überwiegend über das Monitoring, Service Discovery oder Logging sammeln. Auch konnte herausgefunden werden, dass es Tendenzen bei den Aufgaben gibt, welche in der Praxis zur Makroarchitektur zugeordnet wurden. Im weiteren Verlauf der Arbeit wurde untersucht, inwieweit sich eine Microservice-Architektur mit klassischer Architekturbeschreibung wie arc42 beschreiben lässt. Aufgrund der allgemeinen Ausrichtung des Templates wurde prototypisch ein Modell entwickelt, welches die für eine Microservice-Architektur relevanten Entscheidungsfragen bereitstellt und somit bei den konkreten Entscheidungen unterstützt. Schließlich wurde das Modell mithilfe von qualitativen Interviews evaluiert. Hierbei wurde als Ergänzung ein Experte herangezogen, um mögliche Verbesserungen aus einer weiteren Perspektive miteinbringen zu können. Die Ergebnisse zeigten, dass das Modell zwar eine gute Basis darstellt, um einen Überblick zu den wichtigsten Entscheidungsfragen zu erhalten, aber dennoch weitere zielgruppenspezifische Informationen und detailliertere Ausführungen grundlegender Konzepte benötigt werden.
Bereits Ende der Sechzigerjahre begann die Entwicklung der strukturierten Programmierung, welche sich lange Zeit als Programmierstandard darstellte. Mit Beginn der Windows-Ära etablierte sich Ende der Achtzigerjahre zusätzlich die objektorientierte Programmierung. Dieser Schritt führt nun zu einem Paradigmenwechsel im Bereich der Programmierung von Speicher-Programmierbaren-Steuerungen. Einige Systeme wie zum Beispiel CoDeSys unterstützen bereits verschiedene Bereiche der objektorientierten Programmierung. Siemens-Steuerungen hingegen bieten derzeit ohne Zusatzsoft- und Hardware noch keinen direkten Zugang zur objektorientierten Programmierung an. Ziel dieser Arbeit ist es die derzeitigen Möglichkeiten aufzuzeigen, um mit Siemens Steuerungssystemen, vorzugsweise Siemens 1500er Steuerungen, objektorientierte Programmierung abzubilden. Die Grundlage dafür wird durch die Definition der Norm IEC 61131-3:2003 bezüglich der Wiederverwendbarkeit von Funktionsbausteinen sowie auch der Erweiterung der Objektorientierung der IEC 61131-3:2013 geschaffen. Zur Untersuchung werden die Varianten objektorientierte Programmierung mit Funktionsbausteinen sowie die objektorientierte Programmierung mit SCL und Siemens SIMOTION Systemen herangezogen. Anhand einer Evaluierung werden die verschiedenen Methoden gegenübergestellt. Resultierend erscheint die herkömmliche Variante objektorientierte Programmierung mit Funktionsbausteinen als am Besten zur Realisierung eines Steuerungskonzeptes eines Shuttle-Liftes geeignet. Aufbauend auf der gewählten Methode werden Steuerungs- wie auch Visualisierungs-Programmierrichtlinien definiert, somit kann eine bestmögliche Umsetzung des Konzeptes erfolgen. Abschließend werden diese Richtlinien in einer Beispielprogrammierung angewandt um daraus Schlüsse für weitere Entwicklungsschritte ziehen zu können.
Das Unternehmen Schunk Hoffmann Carbon Technology ist Weltmarktführer in der Produktion von elektrisch leitenden Kohlebürsten für Gleichstrommotoren. Die Finalfertigung des Produkts findet auf selbstgebauten Maschinen statt, sogenannten Rundtaktanlagen. Für ein neues Projekt kopiert die Programmierabteilung des Maschinenbaus ein vorhandenes Programm einer Rundtaktanlage und ändert es entsprechend den Bedürfnissen der herzustellenden Anlage ab. Dieses Vorgehen birgt die Gefahr Fehler zu übersehen und sie erst bei der Inbetriebnahme der Maschine zu entdecken. Darüber hinaus ist die Prozedur monoton und beansprucht Zeit, welche der Entwickler anderweitig für das Projekt nutzen könnte. Das Ziel dieser Masterarbeit war es einen Codegenerator zu entwickeln, der automatisiert ein benutzerdefiniertes Grundprogramm für eine Rundtaktanlage erstellt. Ein Generator hat den Vorteil, dass keine Fehler aufgrund des Kopierens alter Anwendungen auftreten und er die zeitaufwendige manuelle Nacharbeit eliminiert. Um eine parametrierbare und wiederverwendbare Vorlage für den Codegenerator zu erhalten, fand eine Analyse der bisherigen Rundtaktanlagen statt. Nachdem die Programmierabteilung die Anwendungen der Anlagen in einer Entwicklungsumgebung der Firma Beckhoff erstellt, wurden Methoden zur automatisierten Erzeugung von Programmcodes für diese Applikation evaluiert. Das Resultat der Masterarbeit ist der Codegenerator Code Monkey. Ein Mitarbeiter der Maschinenbauabteilung erstellt einmalig eine Vorlage für eine Rundtaktanlage. Der Generator bereitet anschließend das Template für den Bediener auf und dieser kann es entsprechend seinen Anforderungen konfigurieren. Aufgrund der frei wählbaren Benutzereingaben ist es dem Generator möglich aus einer Vorlage das Grundprogramm für eine Vielzahl an unterschiedlichen Rundtaktanlage zu erzeugen. Mit der Applikation Code Monkey ist der Maschinenbau der Firma Schunk Hoffmann Carbon Technology zukünftig im Stande Programme für Rundtaktanlagen in nur wenigen Schritten generieren zu lassen und gleichzeitig die Entwicklungszeiten für neue Anlagen zu reduzieren.
Kunden der Maschinen- und Anlagenbauindustrie erwarten sich immer kürzere Lieferzeiten in Kombination mit qualitativ hochwertigen Produkten, wie auch eine vollständige und korrekte Dokumentation. ANDRITZ geht bei nahezu jeder verkauften Maschine- oder Anlage auf die Bedürfnisse und Wünsche der Kunden ein. Aus diesem Grund entsteht eine sehr flexible Produktpalette. Um den Wunsch nach kürzeren Lieferzeiten in Kombination mit der flexiblen Produktpalette erfüllen zu können, muss der Planungsprozess adaptiert werden. Das Ziel dieser Masterarbeit ist die Entwicklung einer Software zur Automatisierung des Planungsprozesses von modularisierten Anlagen und die daraus resultierende Verkürzung der Lieferzeit. Der erste Teil der praktischen Arbeit befasst sich mit der systematischen Entwicklung und Testung dieser Software. Um garantieren zu können, dass die neue Software Metris Engineering Configurator den Wünschen der Interessensvertreter entspricht, werden unter anderem modellbasierte Vorgehensweisen angewandt. Im zweiten Teil wird eine Filterpressenanlage vollständig standardisiert, modularisiert und für den Einsatz des Metris Engineering Configurators vorbereitet. Im letzten Teil werden die Vorteile der neuen Software an der automatisierten Erstellung der prozess- und automatisierungstechnischen Dokumentation einer Filterpressenanlage aufgezeigt. Durch den Einsatz des Metris Engineering Configurators kann die Durchlaufzeit und somit auch die Lieferzeit einer Anlage signifikant verringert werden kann. Folglich können auch die Kosten für die Planung reduziert werden. Aufgrund des automatisierten Planungsprozesses kann zudem eine qualitativ hochwertige Anlagendokumentation garantiert werden. Die Software wurde im Unternehmen eingeführt und kann von allen Mitarbeitern verwendet werden. Die Tests haben gezeigt, dass der Metris Engineering Configurator in Zukunft für unterschiedliche Anlagen und Ausrüstungen zum Einsatz kommen kann. Zwei Updates für die Erweiterung der Software werden in dieser Masterarbeit bereits behandelt.
Bei der vorliegenden Masterarbeit handelt es sich um ein Konzept für einen Warehouse-Management-System-Emulator, der für die Inbetriebnahme von Logistikanlagen entwickelt wird. Die Arbeit umfasst weiters die Umsetzung eines automatisierten Leistungsnachweises, der Testszenarien für die Fördertechnik und für Regalbediengeräte erstellen, vorbereiten und ausführen soll. Neben diesen Aufgaben zählen auch der Funktionsnachweis von Logistikanlagen und die allgemeine Unterstützung der Inbetriebnehmer bei ihrer Arbeit zu den Anforderungen an den Emulator. Für die Konzeptionierung wird das System in fünf Teile geteilt: die Datenbank, die Anwendung, die Benutzeroberfläche, den automatisierten Leistungstest und die Replay-Funktion. Hauptaugenmerk wird dabei auf die generische Entwicklung gelegt, wodurch sich der Emulator im Hochlauf selbständig konfiguriert und einfach erweitert werden kann.
Moderne Zeiterfassungssysteme sind in Zeiten von höher werdenden Leistungsansprüchen in der Arbeitswelt für Unternehmen ein unumgängliches Muss zur Bereitstellung von transparenten und personenzugeordneten Informationen über die MitarbeiterInnen geworden. Mehrfach-Ausführungen durch verschiedene Systeme im Unternehmen und nicht personell relevant angezeigte Inhalte führen für jede firmenangehörige Person zu überhöhtem Zeitaufwand bei der Informationssuche bezüglich Projektstatus, Terminverzüge, diversen Restzeiten für Tätigkeiten oder Ähnliches. Ein bereits bei Arbeitsbeginn automatisiertes Bereitstellen von personenbezogenen Inhalten und wissenswerten Neuerungen erhöht die Eigenverantwortung und ermöglicht ein damit verbundenes eigenständiges Controlling durch die MitarbeiterInnen selbst. Die Erstellung eines Prototyps für die Umsetzung eines modernen Erfassungssystems mit zusätzlicher personalisierter Informationsgestaltung und die mögliche Anbindung an bestehende Systeme, stehen unter Berücksichtigung sämtlicher Aspekte hinsichtlich Datenschutz, Arbeitsrecht und Bereitstellung personenbezogenen Daten in Zusammenhang mit der Betriebsgröße im Fokus dieser Arbeit. Neben der berührungslosen Identifikation anhand einer Gesichtserkennung wird die Verknüpfung von personenbezogenen Projektinformationen mit Arbeitszeitaufzeichnungen automatisiert, um eine Vereinfachung und Reduzierung der zuvor manuell getätigten Aufwände zu ermöglichen. Durch einen Testbetrieb des Prototyps ergeben sich wertvolle Daten zur Ermittlung des möglichen zeitlichen Einsparungspotenziales von im Unternehmen tätigen Personen und ermöglicht somit die wirtschaftliche Betrachtung des realisierten Systems.