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)
Auch heutzutage vertrauen noch viele Unternehmen auf eigene IT-Infrastruktur und veraltete Legacy-Anwendungen, um ihre geschäftskritischen Prozesse zu unterstützen. Allerdings gibt es mehrere kritische Bedenken, wie Wartbarkeit, Skalierbarkeit und Sicherheit, die mit dem Fortbestand eines Legacy-Systems und eigenständig verwalteter Infrastruktur verbunden sind. Vor diesem Hintergrund bieten Cloud-Services eine agilere und kostengünstigere Plattform, um Geschäftsprozesse zu unterstützen. Da die Akzeptanz von Cloud-Diensten in letzter Zeit zugenommen hat, hat auch die akademische Forschung im Bereich des Einsatzes von Cloud-Diensten zugenommen. Es besteht jedoch ein Bedarf an Sekundärstudien, um diese Forschung weiter zu stärken. Das primäre Ziel dieser Arbeit ist es, die prioritären Herausforderungen bei der Transformation von Geschäftsprozessen in die Cloud aufzuzeigen, und eine Übersicht über Migrationsstrategien zu liefern. Da der Wechsel von einer On-Premise-Lösung hin zu einer Cloud-Lösung durch technische und nicht-technische Faktoren beeinflusst wird, soll erörtert werden, worauf im Sinne einer erfolgreichen Migration besonders Wert gelegt werden muss. Im Rahmen dieser Untersuchung konnte gezeigt werden, dass die Faktoren Change-Management und Cybersecurity die größte Herausforderung für eine erfolgreiche Transformation von Geschäftsprozessen in die Cloud darstellen, und aktiv gemanagt, respektive sichergestellt werden müssen.
Moderne Frameworks für die Entwicklung von Anwendungen auf mobilen Plattformen entwickeln sich ständig weiter, um den sich ständig ändernden Anforderungen der Welt der Softwareentwicklung gerecht zu werden. Seit 2018 entwickelt Google das Flutter-Framework, das für die Entwicklung mobiler Anwendungen auf den Plattformen Android und iOS eingesetzt wird. Da es sich bei Flutter um das neueste Framework handelt, das eine native Anwendungsleistung verspricht, ist es wichtig, ein besseres Verständnis für die Performance der Technologie zu erhalten und zu erfahren, wie sie sich mit anderen verfügbaren Plattformen messen kann. Aus diesem Grund analysiert diese Arbeit Flutter und vergleicht das Framework mit nativen und anderen plattformübergreifenden Technologien. Prototypen mit den gleichen Funktionalitäten wurden mit Flutter und anderen Plattformen (z. B. Android, iOS, React Native) erstellt und dann getestet, um ihre Leistungsniveaus zu vergleichen. Die Ergebnisse zeigen, dass Flutter in einigen Aspekten (z. B. CPU-Nutzung) eine native Performance erreichen kann, in anderen Aspekten (z. B. Speichernutzung) jedoch schlechter abschneidet als andere Frameworks. Insgesamt zeigt die Forschung, dass Flutter ein sehr vielversprechendes Framework für die plattformübergreifende Entwicklung ist. Zukünftige Arbeiten können auf diese Arbeit aufbauen, um mit verschiedenen Anwendungsfällen zu experimentieren und einen tieferen Einblick in die Leistungsfähigkeit des Frameworks zu erhalten.
Analyse und Bewertung von State-Management Varianten in modernen Cross-Plattform Technologien
(2020)
Plattformübergreifende Technologien entwickeln sich ständig weiter und bieten einen kostengünstigen und zeiteffizienten Ansatz zur Entwicklung von Anwendungen auf mehreren Plattformen. Die Frage nach dem richtigen State-Management Ansatz muss dabei zu Beginn eines jeden Projekts beantwortet werden, was eine Herausforderung sein kann mit einer Vielzahl an mögliche Lösungen. Das Ziel dieser Arbeit war daher die Untersuchung von State-Management Ansätzen am Beispiel von Flutter und deren Bewertung auf der Grundlage von festgelegten Kriterien. In dieser Arbeit werden zunächst plattformübergreifende Technologien untersucht, mit Schwerpunkt auf Flutter. Danach werden gängige Ansätze von State-Management und die Theorie hinter Code Qualität Metriken analysiert. Basierend auf den gesammelten Informationen und den daraus resultierenden wirtschaftlichen und technologischen Entscheidungsgründen wurden Bewertungskriterien erstellt. Vier State-Management Ansätze wurden umgesetzt und entsprechend der Kriterien bewertet. Der Vergleich zeigt, dass BLoC die beste Lösung für Großanwendungen mit erfahrenen Entwicklern zu sein scheint. Für kleinere Projekte oder unerfahrene Entwickler bietet sich der Einsatz von Provider an.
Das Ziel dieser Masterarbeit ist die Analyse der IT-Sicherheit von kritischen Infrastrukturen. Es soll gezeigt werden, ob eine Absicherung kritischer Infrastrukturen mit Hilfe von Methoden aus der IT-Sicherheit möglich ist und welche Auswirkung eine Vernetzung der einzelnen Systeme hat. Nicht behandelt werden Absicherungen für Cloud und mobile Geräte. In den vergangenen Jahren hat die Vernetzung der kritischen Infrastrukturen stark zugenommen und die Angriffe auf diese sind deutlich gestiegen. Aufgrund dessen werden in dieser Masterarbeit zunächst vergangene Angriffe beschrieben und analysiert. Großen Wert wird hierbei auf die NIS-Richtlinie gelegt, die als EU-Richtlinie wichtige Punkte für ganz Europa vorgibt. Aus den gewonnenen Erkenntnissen werden anschließend technische IT-Maßnahmen abgeleitet wie kritische Infrastrukturen in Zukunft besser geschützt werden können. Folgend werden die einzelnen Maßnahmen auch technisch in einer extra dafür aufgesetzten Testumgebung umgesetzt und im Detail beschrieben. Unter anderem wird gezeigt, wie wichtig es ist eine Verschlüsselung einzusetzen und dass es nicht ausreichend ist, die Zugänge nur mit einem starken Passwort abzusichern, sondern auch ein zweiter Faktor eingesetzt werden sollte. Durch Umsetzung der Sicherheitsmaßnahmen, zusätzlich zu den normalen IT-Schutzvorkehrungen, kann die IT-Sicherheit erhöht werden. Ein kompletter Schutz vor Angriffen ist jedoch nicht möglich, da durch die Vernetzung der Systeme immer ein Angriffsvektor entsteht, der ausgenutzt werden kann. In Zukunft könnten kritische Infrastrukturen besser abgesichert werden, wenn die aufgezeigten Sicherheitsmaßnahmen umgesetzt werden.
Customer – Releationship Management Systeme haben in den letzten Jahren eine immer größere Bedeutung für Unternehmen bekommen. Das System wird ins Unternehmen sowie deren Prozesse integriert. Dies kann unter der richtigen Verwundung den Umsatz der Unternehmen steigern und Prozesse optimiert werden. Aktuelle CRM System wie Salesforce bieten die Möglichkeit der Integration einer Artificial Intelligence welche auf Basis der vorhandenen Daten Vorhersagen über Kosten eines Angebots und wie hoch die Wahrscheinlichkeit ist, dass es zu einem Auftrag kommen wird. Diese Informationen sollen dem Sales Mitarbeiter bzw. der Sales Mitarbeiterin bei der Angebotslegung sowie Kalkulation unterstützen. Für den Einsatz von Artificial Intelligence ist das Sammeln von Informationen ein wichtiger Punkt weshalb auch das Thema Big Data aufgearbeitet wird. Im Rahmen dieser Arbeit sollen die Auswirkungen des Einsatzes überprüft werden, im Speziellen wird die Artificial Intelligence mit dem Namen „Einstein“ des Salesforce CRM Systems untersucht. Um dies zu überprüfen wird ein Versuch durchgeführt, welcher zwei CRM Systeme miteinander vergleicht, zu diesem Zweck werden in unterschiedlichen Gruppen Aufgabenstellungen gestellt und die durchgeführt werden sollen. Die Teilnehmer / Teilnehmerinnen werden im Rahmen eines Interviews erfragt inwiefern sich die Systeme unterschieden haben, ob und welche Effekte auf das Vorgehen bei der Durchführung hatte. Auf Basis der Ergebnisse werden Schlussfolgerungen erstellt, ob es Auswirkungen gab und welche diese waren in Bezug auf die Angebotserstellung und dem allgemeinen Vorgehen. Aus der Arbeit wird hervorgehen, dass eine gute Informationsqualität eine Voraussetzung für den Einsatz von Artificial Intelligence ist, welche sich wiederum auf die Vorhersagen bzw. Unterstützung auswirkt. Das erarbeitete Wissen, welches aus dieser Arbeit hervorgeht, bietet eine Grundlage für die Verwendung und Integration einer Artificial Intelligence.
Digitale Plattformen ermöglichen Softwareentwicklungsunternehmen und digitalen Geschäftsmodellen ein schnelles Wachstum. Dies erfordert skalierbare und flexible Softwarelösungen wie White-Label Plattformen die als Software-as-a-Service bereitgestellt werden. Das Ziel dieser Arbeit ist, Software Architekturen für digitale Plattform zu analysieren und wie Plattformen durch die Verwendung von Clouddiensten bereitgestellt werden können. Die Analyse untersucht drei gängige Software Architekturen und vergleicht die Architekturen für unterschiedliche Ausprägungen von digitalen Plattformen. Die Auswertung zeigte, dass eine Serverless-Architektur die beste Möglichkeit für die Bereitstellung einer Plattform ist, die unregelmäßig verwendet wird oder für Plattformen bei denen die Kunden stark reguliert sind und eigene Instanzen benötigen. Eine Microservice Architektur bietet sich für Systeme mit einer hohen Auslastung an oder für Plattformen, die eine große Anzahl an Benutzer benötigen. Zusammenfassend kann gesagt werden, dass Clouddienste Unternehmen eine einfache Möglichkeit bieten um flexible digitale Geschäftsmodelle zu entwickeln, die gegebenenfalls uneingeschränkt skaliert werden können und in kürzester Zeit auf die Bedürfnisse des Marktes angepasst werden können.
Die Softwarequalität ist ein wesentlicher Wettbewerbsfaktor in der Softwarebranche. Viele Softwareprojekte legen daher den Schwerpunkt ihrer Softwarequalität auf Abnahmetests und ignorieren andere wichtige Faktoren des gesamten Software-Lebenszyklus. Aus diesem Grund konzentriert sich diese Arbeit darauf, ob ausgewählte Einflussfaktoren aus dem gesamten Software-Lebenszyklus in Verbindung mit Testergebnissen von Abnahmetests eine detailliertere Bewertung der Qualität eines Software Release ermöglichen können. Hierzu wurden Einflussfaktoren untersucht und in ein Modell integriert. Darauf aufbauend wurde eine Bewertungsmatrix für die Implementierung entwickelt. In einem Experiment, in dem das Modell auf ein Beispielprojekt angewendet wurde, wurden 6 von 16 Features aus dem Software Release ausgenommen. Hätte sich dieses Experiment nur auf die Ergebnisse des Akzeptanztests gestützt, wären nur 4 von 16 Features aus dem Software Release ausgenommen worden. Diese Ergebnisse bestätigen, dass die ausgewählten Einflussfaktoren eine detailliertere Bewertung der Qualität des Software Release ermöglichen. Trotz dieser Schlussfolgerung würden die Erkenntnisse dieser Arbeit von weiteren Studien profitieren, bei denen mehr Zeit zur Verfügung steht und verschiedene Werkzeuge zur Überprüfung der Forschungsfrage verwendet werden.
Industrielle Steuerungssysteme und somit die Operational Technology (OT) werden immer verletzlichere Angriffsziele. Da Industrieanlagen, ebenso Tunnelanlagen, größtenteils mit der Office-IT vernetzt sind und häufig auch eine Verbindung zum Internet aufweisen, besteht ein Fernzugriff, der ausgenutzt werden kann. Zusätzlich besteht die Möglichkeit, dass ein Eindringen über die physischen Schnittstellen stattfindet. Daher müssen für einen gesamtheitlichen Schutz entsprechende OT-Security-Prozesse angewendet werden. Das Ziel dieser Arbeit ist die Verbesserung der zurzeit von der Dürr Austria GmbH verwendeten OT-Security-Prozesse in Tunnelsteuerungssystemen. Dazu werden die Informationssicherheit, mögliche Attacken und Angreifer*innen, sowie anwendbare Normen und Standards evaluiert. Der Fokus liegt dabei auf der IEC 62443, der Norm für die IT-Sicherheit für Netze und Systeme. Die zurzeit angewendeten OT-Security-Prozesse werden definiert und darauf aufbauend Optimierungen aus den anwendbaren Teilen der IEC 62443 analysiert. Weitere Security-Maßnahmen werden mithilfe von ergänzenden Standards erforscht. Als Resultat werden die gefundenen Verbesserungsmaßnahmen zusammengeführt, um eine Integration in die Prozesse zu ermöglichen. Auf dieser gesamtheitlichen Basis wird das Defense-in-Depth-Modell definiert. Die Ergebnisse dieser Arbeit werden in den bestehenden Informationssicherheitsprozess des Unternehmens betreffend der Tunnelsteuerungssysteme integriert.
Kubernetes wird von mehr als 77% aller IT-basierten Unternehmen der Branche produktiv genutzt und der Platzhirsch auf dem Markt der Container-Orchestrierung. Die meisten Unternehmen berichten von großen Kosteneinsparungen und einer Steigerung der Entwicklungsgeschwindigkeit durch den Einsatz von Kubernetes. Das Ausmaß der Verbesserung hängt jedoch davon ab, wie gut das Kubernetes-System zum Unternehmen und seinen Anforderungen passt. Kubernetes besteht aus vielen Komponenten und kann auf vielfältige Weise genutzt werden. Für viele der Komponenten von Kubernetes gibt es diverse Produkte am Markt, daher wird eine Methode benötigt um die besten Produkte auszuwählen. Um den Entwurf der richtigen Kubernetes-Lösung für eine bestimmte Idee oder ein Konzept zu unterstützen, wurde ein Modell vorgeschlagen, das aus einem Designprozess und einem Anforderungskatalog besteht. Der Anforderungskatalog ist stark in den Prozess integriert. Dabei handelt es sich um einen Fragebogen der dabei hilft die notwendigen Anforderungen für den zukünftigen Cluster zu erfassen. Der Prozess ist in sieben Schritte unterteilt, beginnend mit der Notwendigkeit eine geeignete Plattform für eine innovative Idee zu finden. Die anderen Schritte konzentrieren sich auf die Ermittlung der Anforderungen, die Gestaltung des Clusters, die Suche nach geeigneten Produkten und die Integration des Kubernetes-Systems in das Unternehmen. Der Anforderungskatalog ist in drei Gruppen unterteilt, die insgesamt 65 Punkte umfassen. Das vorgeschlagene Modell ermöglicht es Unternehmen, ihre Kubernetes-Umgebung strukturiert, verständlich und transparent zu entwerfen. Zur Bewertung des ersten Entwurfs des Modells wurden zwei Expertenworkshops und sechs Interviews durchgeführt. Mittels qualitativer Inhaltsanalyse wurden die daraus resultierenden Protokolle analysiert und die Ergebnisse in das Modell aufgenommen.
LOGICDATA entwickelt APIs (Application Programming Interfaces) für die marktführenden Smartdevice Plattformen zur Steuerung von mechatronischen Systemen in der Möbelindustrie. Die Funktionalität dieser APIs muss durch Tests mit verschiedenen Eingabeparametern überprüft werden. Änderungen in der Implementierung der APIs während der Entwicklungs- und Testphase führen zu Wartungsaufwand des Testsystems, welcher manuell durchgeführt werden muss. Das führt zu längeren Testdurchlaufzeiten und zu Verzögerungen in der Freigabe-Phase des Projekts. Ziel dieser Masterarbeit ist es, anfallende Wartungstätigkeiten bei API-Änderungen während der Testphase zu automatisieren, um die Entwicklungszeit des Testsystems zu reduzieren. Zu diesem Zweck soll eine Codegenerierungsmethode ausgewählt werden, mit der Code in verschiedenen Programmiersprachen und Plattformen generiert werden kann. Dafür werden verschiedene Codegenerierungsmethoden hinsichtlich ihrer Eignung für diese Aufgabenstellung miteinander verglichen und eine Wahl getroffen. Aufbauend auf diese Entscheidung wird eine Softwarearchitektur eines Testsystems mit automatischer Codegenerierung entworfen. Nach Festlegung dieser werden der Codegenerator und die Softwarekomponenten des Testsystems entwickelt und die Vorteile hinsichtlich Entwicklungs-, Wartungsaufwand und Testdurchlaufzeit aufgezeigt. Tests mit den ersten implementierten APIs haben gezeigt, dass der Einsatz der automatischen Codegenerierung zu einer höheren Codeflexibilität und niedrigerem Entwicklungsaufwand führt. Das Testsystem kann für die Verifikation zukünftiger API-Releases eingesetzt werden.