23 research outputs found

    Vergleich und Bewertung von Methoden und Tools für den Entwurf und die Realisierung von REST APIs

    Get PDF
    REST-Schnittstellen haben sich die letzten Jahre in der Softwareindustrie etabliert. Abhängig von der eingesetzten Technologie gibt es viele Möglichkeiten eine REST-Schnittstelle zu entwerfen und umzusetzen. Für die Unterstützung des Entwurfs und der Realisierung von REST-Schnittstellen existiert ein modellgetriebener Ansatz mit akademischem Hintergrund. Neben diesem akademischen, modellgetriebenen Ansatz existieren weitere Ansätze basierend auf Beschreibungssprachen wie Swagger oder RAML, die bei Entwurf und Realisierung unterstützen. Diese Arbeit vergleicht den eben beschriebenen akademischen Ansatz mit zwei Ansätzen, welche beide jeweils eine der eben genannten Beschreibungssprachen nutzen. Der auf Swagger-basierende Ansatz wird durch eine bestehende Softwareentwicklung eines Industriepartners repräsentiert. Der akademische modellgetriebene Ansatz und seine Werkzeuge werden mit den beiden anderen Ansätzen und deren Werkzeuge hinsichtlich ihrer Brauchbarkeit zum Entwurf und zur Umsetzung von REST-Schnittstellen in einem Industrieunternehmen untersucht. Dieser Vergleich der Entwurfs- und Realisierungsmethoden von REST-Schnittstellen wird exemplarisch an einem agil entwickelten Dienst zur Abfrage von Sonderzielen durchgeführt. Der Vergleich betrachtet die verschiedenen Arbeitsweisen der vorgestellten Ansätze, die dabei entstehenden Artefakte und Modelle sowie den von ihnen erzeugten Quellcode. Für die Durchführung des Vergleichs der verschiedenen Ansätze wurden Nachbauten des Dienstes des Industriepartners für den akademischen Ansatz und den Ansatz unter Verwendung von RAML erstellt. Diese Nachbauten dienen als Grundlage für die Betrachtung des Entwicklungsprozesses, die Befragung der Entwickler sowie die Durchführung einer statischen Codeanalyse. Die Befragung zeigt, dass die befragten Entwickler des Industriepartners die ihnen neu vorgestellten Ansätze im Allgemeinen nicht als bereit und lohnenswert für den Entwurf und die Umsetzung von REST-Schnittstellen in der Praxis erachteten. Die beteiligten Entwickler waren sich aber einig, dass modellgetriebenen Ansätze attraktive Möglichkeiten bieten

    Verbesserungen der virtuellen Arbeitskultur durch Gamification

    Get PDF
    Durch die Digitalisierung, besseren Netzwerkverbindungen und wachsende Infrastruktur wird es immer einfacher von virtuellen Arbeitsplätzen aus zu arbeiten. Virtuelle Arbeitsformen wie Homeoffice, Remote Work oder hybride Versionen davon nehmen stetig zu. Gerade während der Covid-19 Pandemie wurden mehr Arbeitnehmer und Arbeitgeber mit dieser Thematik konfrontiert, da viele Arbeitnehmer gesetzlich im Homeoffice arbeiten mussten und somit erste Erfahrungen mit dieser Arbeitsform sammeln konnten. Erste Umfragen zeigen, dass diese Form der Arbeit bei vielen beliebt ist und es sich nur wenige Personen vorstellen können, wieder in einen absoluten Büroalltag zurückzukehren. Jedoch bringt das Arbeiten zuhause auch Nachteile mit sich. Arbeitnehmer beklagen sich über die Isolation und die dadurch fehlenden sozialen Interaktionen, was zu schwerwiegenden psychischen Folgeerkrankungen führen kann. Daraus entwickelt sich die Frage, ob eine Applikation, welche einen virtuellen Arbeitsplatz simuliert, dazu beitragen kann dieses Problem zu lösen und somit das Isolationsgefühl mindert. Zusätzlich soll die Arbeitsmoral gesteigert werden, ohne, dass sich durch diese Applikation Arbeitnehmer überwacht vom Arbeitgeber fühlen. Für die Beantwortung dieser Frage wurden zuerst mithilfe von Literaturrecherche die theoretischen Grundlagen zu virtuellen Arbeitsformen und die gesetzlichen Grundlagen zum Sammeln und Speichern von Daten erarbeitet. Anhand der gesammelten Informationen wurde in der vorliegenden Arbeit eine solche Applikation geplant und anschliessend der Backend dieser Applikation umgesetzt. In einer weiteren Arbeit wurde zeitgleich der Frontend implementiert, um somit ein Minimal Viable Product zu erhalten. Die Applikation simuliert ein virtuelles Office, welches verschiedene Räume wie ein Grossraumbüro, einen Meeting Raum und eine Küche enthält. Jeder User hat einen eigenen virtuellen Avatar, mit dem er sich im virtuellen Office frei bewegen kann. Zudem wurden verschiedene Gamification Elemente, wie Quests und ein Leaderboard, eingebaut. Mithilfe des erstellten Minimal Viable Product konnte die Akzeptanz, sowie die Lösung des Problems, mittels dieser Applikation geprüft werden. Die Validierung hat ergeben, dass sich Personen, welche die Applikation verwendet haben, verbundener mit ihren Kollegen im Office gefühlt haben. Die implementierten Gamification Elemente führten zu einer Abwechslung im Alltag, was die Motivation steigern konnte. Zudem gab es eine Möglichkeit sich mit seinen Kollegen zu messen und zu vergleichen. Da sich User frei im Office bewegen konnten, hatten sie die Möglichkeit, selbst zu entscheiden, wie viele Informationen sie über ihren aktuellen Status preisgeben wollten. Dadurch entstand kein Überwachungsgefühl

    Marktanalyse statischer Codeanalysewerkzeuge für Java

    Get PDF
    Im Rahmen dieser Fachstudie werden statische Codeanalysewerkzeuge für Java untersucht und bewertet. Die Grundlage der Bewertung entsteht durch Absprache zwischen den Autoren dieser Fachstudie und Herr Ostberg. Codeanalysewerkzeuge welche die grundlegenden Anforderungen überstehen, werden einer genaueren Evaluation unterzogen. Am Ende wird auf Grundlage der Evaluation eine Empfehlung für ein Codeanalysewerkzeug ausgesprochen.In this 'Fachstudie' statistical code analysis tools for Java will be studied and evaluated. The basis of the evaluation is derived through an agreement with the authors of this report an Mr. Ostberg. Code analysis tools which outlast these basic requirements will be evaluated thoroughly. At the end of the report a recommendation for one code analysis tool will be issued based on the evaluation

    Entwicklung einer Lösung zur Verteilung und Überwachung von Alalysenmoulen am Wendelstein 7-X

    Get PDF

    Kopplung von Architekturanalysen und musterbasierten Quelltextanalysen für Sicherheitseigenschaften von Aufrufabhängigkeiten

    Get PDF
    Die Vernetzung von Software über das Internet und andere Kanäle stellt eine grundsätzliche Gefahr für die Sicherheit von Daten und Systemen dar. Gelangen Informationen in die falschen Hände können enorme wirtschaftliche und soziale Schäden entstehen. Es ist deshalb wichtig die Sicherheit von Systemen bereits zur Entwurfszeit zu berücksichtigen. Mittels Analysewerkzeugen auf Architektursicht können Sicherheitseigenschaften auf einer höheren Abstraktionsebene frühzeitig definiert und überprüft werden. Auf Quelltextsicht bieten statische, musterbasierte Analysewerkzeuge einen Ansatz zur Überprüfung der korrekten Verwendung von kritischen Schnittstellen. Bisher wurde noch keine Kombination dieser beiden Analyseansätze vorgenommen, um die auf Architektursicht getroffenen Annahmen der im Quelltext umgesetzten Sicherheitseigenschaften definiert auf Aufrufabhängigkeiten auf fehlerhafte Umsetzung zu überprüfen. Deshalb wird untersucht, wie sich eine Kopplung der beiden Sichten und eine Rückführung der Ergebnisse einer Quelltextanalyse in die Architektursicht realisieren lässt. Die vorliegende Arbeit definiert zunächst die für eine Kopplung notwendigen Eigenschaften der Analysen. Darauf basierend wird dann ein Ansatz für eine Kopplung konzipiert. Eine konkrete Umsetzung des Ansatzes wurde im Rahmen der vorliegenden Arbeit mit der Zugriffsanalyse von Kramer auf Architektursicht und CogniCrypt auf Quelltextsicht in Java vorgenommen. Die Evaluation des Ansatzes erfolgt anhand eines Fallbeispiels. Die Ergebnisse zeigen, dass die Kopplung von Architekturanalysen mit musterbasierten Quelltextsicherheitsanalysen für Sicherheitseigenschaften von Aufrufabhängigkeiten machbar ist und dass durch die Kopplung von Quelltextfehlern mit der Architekturanalyse zusätzliche Schwachstellen aufgedeckt werden

    Helper-Bot für E-Learning

    Get PDF
    Wo früher Programmierkurse nur in das Curricula von technischen Studiengängen gehörten, ist heutzutage vermehrt auch bei Studiengängen ausserhalb der Informatik das Erlernen einer Programmiersprache gefordert. Auslöser dafür ist das zunehmende wirtschaftliche und gesellschaftliche Interesse an einer grundlegenden Programmierausbildung. Auch das Wirtschaftsdepartement der ZHAW (SML) hat dieses Interesse erkannt und bietet im Herbstsemester 2019 nicht-informatischen Studiengängen einen Programmier-Einführungskurs als Wahlpflichtmodul an. Nun verlangt eine solche Kurserweiterung zusätzliche Ressourcen für die Betreuung und Bewertung von Programmiernovizen bei der Lösung von Programmieraufgaben. Um gleichzeitig den Einsatz menschlicher Ressourcen zu reduzieren und um die Qualität eines Kurses zu verbessern, hielten in der Vergangenheit lernunterstützende Systeme Einzug in die akademische Programmierlehre. Im Rahmen dieser Thesis wird erstmals ein solche Anwendung auf Basis der Chatbot-Technologe entworfen und erstellt. Mit einer prototypischen Umsetzung soll geprüft werden, ob sich die Idee eines Helper-Bots realisieren lässt, inwiefern qualitative Verbesserungen des Kurses hinsichtlich einer Reduktion der Antwortzeit möglich sind und ob eine solche Anwendung dabei hilft, menschliche Ressourcen in der Programmierlehre zu reduzieren. Das Artefakt dieser Arbeit basiert auf der Chatbot-Plattform Dialogflow, welche aus den Benutzereingaben Absichten und Entitäten herausliest und diese an den Helper-Bot weitergibt. Zur statischen und dynamischen Code-Analyse wurde eine separate API erstellt, wo studentische Programme gesichert ausgeführt werden. Die Konfiguration des Helper-Bots sowie die Formulierung von Hilfestellungen erfolgt wiederum über einen passwort-geschützten Admin-Bereich. Durch das Zusammenspiel dieser Komponenten wird es einem Studenten ermöglicht, unmittelbar und ohne Miteinbezug eines Dozenten Hilfe zur Lösung einer Programmieraufgabe zu erhalten. Mit der Umsetzung des Helper-Bots wurde gezeigt, dass sich eine Chatbot-Anwendung zur Lernunterstützung aus technischer Sicht umsetzten lässt. Wenngleich der Helper-Bot eine qualitative Verbesserung hinsichtlich einer verkürzten Latenz von Hilfestellung ermöglich, kann der didaktische Nutzen erst mit dem Einsatz in der akademischen Programmierlehre bemessen werden. Gleiches gilt für die partielle Ersetzung von menschlichen Ressourcen. Schlussendlich hängt der Erfolg des Helper-Bots von der Akzeptanz der Studenten ab

    Zeitgenaue Simulation gemischt virtuell-realer Prototypen

    Get PDF
    [no abstract

    Programmierkonzepte für die Umsetzung von Nutzungsrichtlinien in industriellen Datenräumen

    Get PDF
    Daten haben sich im Laufe der Zeit immer mehr zu einem wertvollem Asset entwickelt. Aus diesem Grund ist für Rechteinhaber die Kontrolle über die eigenen Daten von zentraler Bedeutung. Die Fähigkeit des Rechteinhabers selbstbestimmt über die Nutzung seiner Daten zu verfügen wird als Datensouveränität bezeichnet. Diese Arbeit beschäftigt sich mit der Frage, wie die Erlangung sowie der Erhalt der Datensouveränität technisch durch Usage Control Mechanismen unterstützt werden kann. In der vorliegenden Arbeit wird eine flexible und erweiterbare Programmiersprache entwickelt, welche über integrierte Usage Control Mechanismen verfügt und den Namen D° trägt. Durch die Umsetzung des Programmierparadigmas der policy-agnostischen Programmierung wird die Komplexität der Usage Control Mechanismen gekapselt und kann durch Experten adressiert werden. Ein Teil dieser Komplexität ist in den Compiler verlagert und gelöst worden und muss von Anwendern der Sprache nicht mehr beachtet werden. Hierdurch wird der Applikationsentwickler entlastet und die korrekte Nutzung von Usage Control Mechanismen vereinfacht. Des Weiteren wird präsentiert, wie das Remote Evaluation Paradigma für D° umgesetzt werden kann. Das Paradigma zielt auf Szenarien der kooperativen Datennutzung ab und verzichtet auf den Versand von Daten an Dritte, welche die Daten verwenden möchten. Stattdessen werden die datenverarbeitenden Applikationen und deren Berechnungsergebnisse hin- und hergeschickt. Hierdurch verbleiben die Daten stets auf den Systemen des Rechteinhabers, welche gleichzeitig auf die Vorteile der Usage Control Mechanismen in D° zurückgreifen können. Dies erlaubt die kooperative Datennutzung in Szenarien, in denen die Weitergabe von Daten ausgeschlossen ist und technische Maßnahmen zur Datennutzungskontrolle notwendig sind. Die erzielten Ergebnisse werden mithilfe eines größeren Demonstrators präsentiert und validiert. Dabei werden die einzelnen Aspekte von D° anhand von Beispielen praktisch vorgestellt. Außerdem findet eine Einordnung der Lösung in die International Data Spaces statt, welche die vorliegende Arbeit maßgeblich motiviert und geprägt haben. Bei dieser Einordnung wird gezeigt, dass die Mächtigkeit der Usage Control Mechanismen von D° gleich oder besser zu der von anderen Usage Control Mechanismen, welche in den International Data Spaces verwendet werden, ist
    corecore