eprints (HSR Hochschule für Technik Rapperswil)
Not a member yet
1196 research outputs found
Sort by
Admin-Portal (SA)
Ausgangslage
Das Unternehmen 2BIT betreibt eine Software-as-a-Service Lösung für Aufgaben im Bereich Personalwesen mit dem Namen 2getHR. Diese erlaubt gängige Prozesse wie Zeiterfassung, Ferien- und Spesenmanagement und On-Boarding automatisiert und benutzerfreundlich durchzuführen. Mit zunehmender Beliebtheit der Applikation entsteht für 2BIT ein erhöhter Supportaufwand. Um den Supportprozess zu unterstützen, wurde ein rudimentäres Admin-Portal entwickelt, welches es erlaubte, einige supportrelevante Daten einzusehen und bestimmte Daten zu löschen. Das bestehende Admin-Portal deckte jedoch nicht alle notwendigen Anforderungen ab. Zudem wurde nur eine Auswahl der supportrelevanten Daten abgebildet. In diesem Projekt wurde das bestehende Admin-Portal ausgebaut und benutzerfreundlicher gestaltet, um den Supportprozess zu vereinfachen und effizienter zu gestalten. Das neue Tool erlaubt es alle supportrelevanten Daten einzusehen, zwischen den Objekten zu navigieren, diese zu löschen und klar definierte Änderungen an Daten vorzunehmen.
Ansatz
Die Funktionalität und die Bedienbarkeit des neuen Admin-Portals wurden auf die Endbenutzer-Basis ausgelegt. In einem ersten Schritt wurde eine Analyse der Anforderungen des Supports durchgeführt, um ein Bild der bestehenden Situation zu erhalten.
Basierend auf dieser Analyse wurden Anforderungen und Wireframes ausgearbeitet und gemeinsam mit dem Product Owner und dem Supportpersonal von 2BIT auf Bedienbarkeit und Relevanz geprüft. In Form einer Priorisierung wurde bestimmt, in welcher Reihenfolge die Anforderungen umgesetzt werden sollten.
Mit der Analyse als Grundlage wurde eine Applikation konzipiert, welche die Bedürfnisse des Supports bestmöglich abdeckt. Während der Konstruktion wurde die Applikation wiederholt mit 2BIT getestet und die Priorisierung angepasst. Das Resultat ist eine Applikation, welche auf die Bedürfnisse von 2BIT abgestimmt ist.
Fazit
Automatisierte und manuelle Tests haben gezeigt, dass das neue Admin-Portal von 2BIT im produktiven Betrieb genutzt werden kann. Die bestehende Funktionalität des alten Tools wurde überarbeitet, fehlende Funktionen ergänzt sowie die Benutzbarkeit erhöht. Ein Ausblick auf weitere Features wurde ausgearbeitet. Diese können von 2BIT zu einem späteren Zeitpunkt umgesetzt werden.
Da das Tool im produktiven Betrieb eingesetzt werden soll, wurde besondere Aufmerksamkeit auf die Stabilität und Korrektheit der Features gelegt. Dies wurde mit Tests verifiziert. Um eine möglichst reibungslose Übergabe des Projektes an 2BIT zu ermöglichen, wurde die Applikation nach Vorgaben von 2BIT dokumentiert und der Code gemäss Coding Guidelines und Clean Code geschrieben.
In der folgenden Dokumentation wird ersichtlich, wie die Planung und Umsetzung des Projektes gehandhabt wurde und wie die enge Zusammenarbeit mit 2BIT das Resultat beeinflusst hat
Admin-Portal (BA)
Ausgangslage
Das Unternehmen 2BIT betreibt eine Software-as-a-Service Lösung für Aufgaben im Bereich Personalwesen mit dem Namen 2getHR. Diese erlaubt gängige Prozesse wie Zeiterfassung, Ferien- und Spesenmanagement und On-Boarding automatisiert und benutzerfreundlich durchzuführen. Mit zunehmender Beliebtheit der Applikation entsteht für 2BIT ein erhöhter Supportaufwand. Um den Supportprozess zu unterstützen, wurde ein rudimentäres Admin-Portal entwickelt, welches es erlaubte, einige supportrelevante Daten einzusehen und bestimmte Daten zu löschen. Das bestehende Admin-Portal deckte jedoch nicht alle notwendigen Anforderungen ab. Zudem wurde nur eine Auswahl der supportrelevanten Daten abgebildet. In diesem Projekt wurde das bestehende Admin-Portal ausgebaut und benutzerfreundlicher gestaltet, um den Supportprozess zu vereinfachen und effizienter zu gestalten. Das neue Tool erlaubt es alle supportrelevanten Daten einzusehen, zwischen den Objekten zu navigieren, diese zu löschen und klar definierte Änderungen an Daten vorzunehmen.
Ansatz
Die Funktionalität und die Bedienbarkeit des neuen Admin-Portals wurden auf die Endbenutzer-Basis ausgelegt. In einem ersten Schritt wurde eine Analyse der Anforderungen des Supports durchgeführt, um ein Bild der bestehenden Situation zu erhalten.
Basierend auf dieser Analyse wurden Anforderungen und Wireframes ausgearbeitet und gemeinsam mit dem Product Owner und dem Supportpersonal von 2BIT auf Bedienbarkeit und Relevanz geprüft. In Form einer Priorisierung wurde bestimmt, in welcher Reihenfolge die Anforderungen umgesetzt werden sollten.
Mit der Analyse als Grundlage wurde eine Applikation konzipiert, welche die Bedürfnisse des Supports bestmöglich abdeckt. Während der Konstruktion wurde die Applikation wiederholt mit 2BIT getestet und die Priorisierung angepasst. Das Resultat ist eine Applikation, welche auf die Bedürfnisse von 2BIT abgestimmt ist.
Fazit
Automatisierte und manuelle Tests haben gezeigt, dass das neue Admin-Portal von 2BIT im produktiven Betrieb genutzt werden kann. Die bestehende Funktionalität des alten Tools wurde überarbeitet, fehlende Funktionen ergänzt sowie die Benutzbarkeit erhöht. Ein Ausblick auf weitere Features wurde ausgearbeitet. Diese können von 2BIT zu einem späteren Zeitpunkt umgesetzt werden.
Da das Tool im produktiven Betrieb eingesetzt werden soll, wurde besondere Aufmerksamkeit auf die Stabilität und Korrektheit der Features gelegt. Dies wurde mit Tests verifiziert. Um eine möglichst reibungslose Übergabe des Projektes an 2BIT zu ermöglichen, wurde die Applikation nach Vorgaben von 2BIT dokumentiert und der Code gemäss Coding Guidelines und Clean Code geschrieben.
In der folgenden Dokumentation wird ersichtlich, wie die Planung und Umsetzung des Projektes gehandhabt wurde und wie die enge Zusammenarbeit mit 2BIT das Resultat beeinflusst hat
On-Site-Search-Integration-Framework und Anwendung im Swisscom-Design-System
Ausgangslage:
Swisscom betreibt eine Website, genauer ein Design System mit dem Namen 'Swisscom Digital Experience' oder kurz SDX. Es besteht aus einer Komponentenbibliothek, UX-Prinzipien, Designrichtlinien und Regeln, die eingehalten werden müssen um den 'Swisscom-Look' zu erhalten. Zur Navigation auf der SDX-Website ist ein Menü auf der linken Seite vorhanden, welches eine Auflistung aller in SDX verfügbaren Webseiten enthält. Benutzer müssen somit gesuchte Inhalte der SDX-Website über das Menü identifizieren, wobei sie anhand der Begriffe im Menü entscheiden müssen, ob eine Webseite für das Erfüllen eines Suchbedürfnisses infrage kommt oder nicht. Dies ist vor allem für Benutzer, die neu mit SDX arbeiten, mit erhöhtem Zeitaufwand verbunden.
In dieser Bachelorarbeit wurde eine Such-Funktionalität für die SDX-Website konzipiert und umgesetzt. Die Suche soll dem Nutzer einen erhöhten Komfort bei der Suche nach Inhalten sowie bei der Navigation innerhalb von SDX bieten. Durch die Suche soll schnell auf alle erwarteten und zusätzlich relevanten Inhalte, die man mit der Navigation übersehen würde, zugegriffen werden können.
Vorgehen:
In einem ersten Schritt wurde eine Basisanalyse zum Thema On-Site-Search sowie eine Anforderungsanalyse mit der Swisscom durchgeführt. Darauf aufbauend wurden Anforderungen definiert, Prototypen entwickelt und Wireframes ausgearbeitet. Anschliessend wurde ein Konzept zur Umsetzung der Suche, welches die Bedürfnisse der Swisscom erfüllt, erstellt. Das Konzept basiert auf einer clientseitigen Architektur, was bedeutet, dass die Such-Funktionalität im Browser des Benutzers ausgeführt wird. Während der Implementierung wurde die Lösung durch automatisierte Tests sowie Usability-Tests ausgiebig getestet. Das Ergebnis dieser Bachelorarbeit ist ein generisches Such-Integration-Framework, welches die Bereitstellung einer Suche auf einer Website einfach und schnell ermöglicht. Abschliessend wurde mithilfe des Frameworks eine Suche in die SDX-Website integriert.
Fazit:
Usability Tests sowie Gespräche mit der Swisscom haben gezeigt, dass es möglich ist, mit dem entwickelten Such-Integration-Framework eine Suche für die SDX-Website zur Verfügung zu stellen, die den benötigten Zeitaufwand für das Befriedigen von Suchbedürfnissen signifikant reduziert. Es ist möglich mit geringem Aufwand eine Suche in eine bestehende Website einzubetten. Für ein optimales Ausnutzen der entwickelten Funktionalität wurden Empfehlungen bezüglich Optimierungen an der Struktur der SDX-Website an die Swisscom übergeben, welche die Website nicht nur für die integrierte On-Site-Search, sondern auch für Suchmaschinen besser durchsuchbar gestaltet. Während des Projektverlaufs wurden zusätzliche Features für das Such-Integration-Framework spezifiziert, welche im Anschluss an die Bachelorarbeit umgesetzt werden können. Das Such-Integration-Framework wurde über npm publiziert und kann somit auch in anderen Websites Anwendung finden. Um die Integration und Individualisierung einer Suche so einfach wie möglich zu gestalten, wurde nebst einer Projektdokumentation auch eine ausführliche Entwicklerdokumentation verfasst
Entwicklung einer Single Page Application in React TS für personalisierte Campingtouren
Ausgangslage:
Unabhängiges Reisen mit Camper ist Trend und wird durch die sozialen Medien gestärkt. Es wird ein Gefühl von Freiheit und Einfachheit vermittelt. Die Realität sieht oft anders aus. Stellplätze sind beschränkt, Wildcampen verboten und die Suche nach einem geeigneten Platz aufwendig. Eine Applikation soll den Vanlifer bei der Planung einer geeigneten Campingtour unterstützen. Bereits im Rahmen der Studienarbeit (SA) im HS 2022 wurde diese Idee verfolgt, sowie ein Prototyp für eine Applikation entwickelt.
Die Nutzung der Applikation ist für 3 Akteure vorgesehen: Vanlifer, Host und Travel Agent. Für diese Arbeit liegt der Fokus primär auf der Umsetzung von Features des Vanlifer-Bereichs. Ziel ist es individuelle Touren für einen gewünschten Zeitraum und gegebene Region zu generieren und dem Vanlifer übersichtlich zu präsentieren. Der User soll seine gewählte Tour nach Bedarf anpassen können.
Ein weiteres Ziel innerhalb der Arbeit ist die Operationalisierung der Applikation in der Azure Cloud.
Die umfangreiche Applikation wird von 2 Teams entwickelt, wobei die Aufgabenbereiche in Front- und Backend aufgeteilt ist. Diese Arbeit thematisiert den Bereich Frontend.
Vorgehen / Technologien:
Um von der Idee zur Realisierung einer funktionalen Applikation zu gelangen, wurde als Vorgehensmodell Scrum gewählt. In der Initialisierungsphase der Arbeit wurden Anforderungen evaluiert und priorisiert, sowie in den Backlog aufgenommen.
Eine umfangreiche Wireframe-Studie half bei der Entscheidung der Umsetzung des Buchungsprozesses. Eine weitere Studie zu Karten-Komponenten unterstützte die Wahl einer geeigneten Karten-API für die Darstellung der Touren. Dabei fiel die Wahl auf Here.
In einer Implementierungsphase wurden die Applikation im Vanlifer-Bereich schrittweise mit Features ausgebaut. Parallel wurden Entwicklungen im Host-Bereich und Registrierungsprozess verbessert.
Die Applikation wird aufbauend auf der React Library und Typescript als Programmiersprache entwickelt. Die Zustände der Webseite werden mit Redux-Store verwaltet und die Anbindung zum Backend geht über REST. Für die Gestaltung der einzelnen Elemente und Widgets kommt die Material UI Komponenten-Library zum Einsatz.
Zusätzlich ist die Applikation als Teil einer Docker Compose Architektur zusammen mit dem Backend auf eine Azure VM deployt worden.
Fazit:
Dank einer geordneten Vorgehensweise nach Scrum konnten die wichtigsten Anforderungen realisiert werden. Der iterative Prozess erlaubte das fortwährende Einholen von Kundenfeedback, sowie dessen zeitnahen Umsetzung. Die Applikation konnte stetig ausgebaut werden, wobei Initial auf das Gesamtbild geachtet wurde und in späteren Sprints der Detaillierungsgrad vertieft wurde. Das dynamische Vorgehen, insbesondere die Möglichkeit weitere Anforderungen zu definieren, brachte Herausforderungen mit sich. Die Priorisierung und Definition der geplanten Tasks bildete ein Spannungsfeld zwischen Kunden, Backend-Team und Frontend
Development of a Gamified Application for Programming Education
Introduction: Programming exercises are a crucial component in teaching aspiring computer scientists practical knowledge about software development. At OST, many courses offer a wide range of different programming exercises, ranging from algorithm development in Java to artificial intelligence training in Python.
In this semester thesis, we were tasked with bringing gamification into the realm of university exercises. The main goal was to develop a software system that incentivizes students to engage repeatedly and consistently with programming assignments.
Approach: For this thesis, we employed a user-centered design process to evaluate and conceptualize a gamified application for programming exercises. We thereby proceeded as follows:
- We defined a user base consisting of 2 user groups
- We conducted 11 user interviews with different people from this user base
- We derived 101 tangible user stories from these interviews
- We conceptualized 5 aspects of an application that addresses these user stories, using existing applications and scientific papers as a foundation for our ideas
- We prototyped different features to ensure their technical feasibility
- We defined 40 functional requirements for our minimal viable product, which will be developed as part of our Bachelor's thesis
Conclusion: Through this thesis, we have concluded that an application designed to motivate students at OST to engage more regularly with their exercises cannot be developed on the basis of gamification alone. As such, our thesis focuses on the conceptualization of a software system that aims to unify and simplify the process of creating, managing, conducting and evaluating exercises. Such an application, although broader than initially intended, could improve the value of exercises at OST
ReSet - Entwicklung einer integrierten Settingsanwendung für Linux
In this paper, ReSet, a user-friendly settings application for Linux is developed with the Rust programming language. ReSet aims to run on every distribution and environment, providing a consistent experience for all users.
Key features include the configuration of Wi-Fi networks, Bluetooth devices, and audio devices. These features are tied together in a responsive user interface.
Future development will focus on new features such as configuring peripherals, as well as a plugin system. This will allow users to extend ReSet with their
features.
Existing solutions either focus only on one functionality or are tightly coupled into an already existing environment, which brings incompatible features to other environments with it. Users of smaller, niche environments are therefore
forced to either use multiple solutions at once or accept a partially incompatible solution. ReSet focuses on more than one functionality while not bundling with any environment, making it an independent application and solving
the underlying issue.
In order to provide a consistent, functional and appealing design, multiple existing solutions were compared and analyzed in order to develop ReSet.
In summary, ReSet represents a significant advancement in Linux settings applications, offering a concise, cross-environment solution that prioritizes user experience through Rust's efficiency and adaptability
Segment Routing v6 (SRv6) Network Programming
Initial Situation
Configuring network devices using the command line interface (CLI) is usually time consuming because all commands have to be written for each function inside devices. These commands must be applied to each device individually. Furthermore, the specific commands have to be known and correct. These reasons make CLI not very user friendly.
Objective
The goal of this work is to develop a web based SRv6 Network Programming Web App that allows a user to configure a given network. Configuring SR endpoint behaviour, such as L3VPN on a network should be possible. The user selects which configuration he/she wants to have on a specified router of the network, then the app configures the devices as desired. The SRv6 Network Programming Web App only shows the ProviderEdge routers of the provided network topology, as only these routers are required to configure SRv6. Generally speaking, this project is designed to facilitate the configuration of SRv6 network programming on endpoints by providing a web app.
Result
A web app was developed with ReactJS, which allows L3VPN to be configured. For this purpose, a single source of truth was built, which stores the data in a PostgresDB. The connection to the frontend is done via an API based on GO. To write the data from the single source of truth to the devices, a GO component was developed that uses Gonja-netconf, Gornir and Scrapligo
Conceptual design of a browser-based frontend for the Gossik Mobile App
Objective
A piece of software is only as useful, as the supports it provides to their users and organization to fulfill their goals. The challenging process of building software can dilute the initial goal of any application, which is to serve the user and support them in reaching their goals. Focusing only on the technical aspects of software bares the risk of forgetting the user and their motivations. The result of leaving the user out of the design process of a system can lead to a feature-polluted application with a tedious-to-operate UI, serving no one. The goal of this thesis is to create a conceptual design of a browser-based frontend for the Gossik mobile app in a user-centered manner. This is achieved through multiple UX design iterations and user interviews.
Approach
The conceptual design was created through a multiphase design and improvement process. Through user interviews, the target group's wants and needs were revealed and gave the base for the personas used as orientation in the further process. Over the course of three design iterations, the concept evolves through user feedback and research.
Conclusion
A component-based web prototype was created as the final prototype of the conceptual design. The prototype provides users with multiple ways to reach their goals and is designed to allow them quick access to actions and controls
Conversational Banking
Die Masterarbeit «Conversational Banking» behandelt die Kommunikation zwischen Privatkundinnen und -kunden und dem Beratungscenter der Thurgauer Kantonalbank (TKB). Anhand einer extensiven Nutzerforschung wird untersucht, wie die Kundschaft mit der Bank kommunizieren möchte und welche digitalen Kommunikationskanäle dabei bevorzugt werden. Dies bildet die Grundlage, um aufzuzeigen, wie die digitalen Kommunikationskanäle der TKB in Zukunft weiterentwickelt werden sollen.
Die Vorgehensweise orientiert sich primär an Collaborative UX Design [Steimle und Wallach 2018] und wird durch Methoden aus Goal Directed Design [Goodwin 2009] ergänzt. Die Sichtweise der Kundenseite wird mittels halbstrukturierter Interviews und zwei Online-Umfragen erforscht, während die Bedürfnisse des Beratungscenters anhand eines Contextual Inquiry und halbstrukturierter Interviews ermittelt werden.
Anfänglich wird vermehrt auf den Live-Chat fokussiert, welcher vor zwei Jahren eingeführt wurde. Es zeigt sich, dass das Produkt aus verschiedenen Gründen nicht benutzerfreundlich ist. Aufgrund dessen ist der Live-Chat selten aufgeschaltet und wird von der Kundschaft nicht als Kontaktkanal genutzt oder wahrgenommen. Die Voraussetzungen für eine funktionierende Chat-Lösung sind in den Ergebnissen dargestellt.
Aus der Nutzerforschung entstehen fünf validierte Personas sowie Ist- und Soll-Service Blueprints. Die Personas der Kundschaft zeigen, dass das Bedürfnis, Bankangelegenheiten selbstständig zu erledigen, immens ist. Die Bank wird lediglich bei Problemen oder Beratungsbedarf kontaktiert. Für jede Persona ist die Wahl des Kommunikationskanals individuell und erfolgt unter Berücksichtigung mehrerer Parameter, unter anderem der Dringlichkeit und Komplexität der Anfrage sowie der Erreichbarkeit und persönlichen Präferenz. Dieser Prozess wird als Entscheidungsbaum abgebildet.
Unter den identifizierten Opportunity Areas ist ein zentrales Problem, dass die schriftlichen Anfragen von den Kundinnen und Kunden nicht detailliert genug beschrieben werden. Dies hat zur Konsequenz, dass seitens Beratungscenter Rückfragen nötig sind. Hinzu kommt, dass die Anfragen des Kontaktformulars via E-Mail beim Beratungscenter eintreffen. Aus Datenschutzgründen darf darauf nicht mit vertraulichen Informationen reagiert werden. Daher sind OLIVIA-Nachrichten zu bevorzugen. Sie bieten eine höhere Sicherheit bei der Datenübertragung und eine direkte Verbindung zu den Kundendaten im zentralen Bankensystem. Basierend auf dieser Opportunity Area wird ein neues Konzept für das Kontaktformular der TKB-Webseite entwickelt. Dank einem integrierten Login ins Kundenportal wird es ermöglicht, die Kundschaft zu identifizieren und ihnen via OLIVIA-Nachricht zu antworten. Die Erfassung eines Anliegens wird erleichtert, indem eine Vorauswahl an Kategorien zur Verfügung steht. Das Anliegen wird anschliessend mittels Drill-Down Prinzip spezifiziert, womit minimale manuelle Eingaben erforderlich sind. Das Konzept des Kontaktformulars wird anhand eines Klickprototypen visualisiert und mit zwei Iterationen moderierter Usability Tests validiert. Das Wireframe-Design wird mit Empfehlungen zur Weiterentwicklung und einer Release-Planung abgerundet.
Einerseits zeigen die Ergebnisse der Masterarbeit die Bedürfnisse der digital affinen Kundschaft auf. Andererseits bietet das neue Kontaktformular sowohl der Kundschaft als auch dem Beratungscenter einen Mehrwert. Das Kontaktformular folgt dem Aufbau eines Dialogs und interpretiert den Arbeitstitel «Conversational Banking» auf eigenständige Art und Weise
Open Source Intelligence Training in Hacking-Lab (SA)
In cyber security the topic of Open-source intelligence (OSINT) plays a major role. With OSINT security defender and researcher may find valuable information about cyber crime and attackers. OSINT helps to understand the effects of sharing public information. OSINT is not yet part of the curriculum at OST. An e-learning platform called Hacking-Lab already exists and is used at OST. In Hacking-Lab, students can apply what they have learned in the lecture in a controlled environment in the form of practical hands-on exercises.
The goal of this thesis was to create ten OSINT challenges in the Hacking-Lab for students to solve and practice. In every OSINT challenge, students are given a set of tasks and summative assessment questions. The students are guided through the proposed steps in order to answer the posed questions in form of a write-up.
Each OSINT challenge is framed by a story to make them more engaging. These stories were chosen in a way that many different OSINT techniques are applicable and can be practiced by the students. In OSINT there is not only one way to find the correct answer hence the students are also encouraged to find their own way to reach the expected solution. To guarantee a high quality of the challenges, multiple quality assurance tests were conducted with students and colleagues working in IT. The results of these quality tests are an indicator whether the goal was reached.
As a result of this work, the goal of creating ten OSINT challenges in Hacking-Lab was achieved. These challenges provide some insight into the topic of OSINT without getting lost in details and technicalities.
This project provides a foundation which a lecturer can build upon by creating a lecture on OSINT. This lecture could be integrated in a course on cyber security. Social media was purposely neglected in this project because social media is difficult to maintain and make future-proof, which makes it incompatible with the project's requirements. Therefore, it could also be a future project to expand upon these challenges with a focus on social media as it is an indispensable part of OSINT