arbeiten:http_clipboard

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
arbeiten:http_clipboard [13.08.2018 12:28] – Erstellt mit dem Formular arbeiten:anlegen Raphael Wimmerarbeiten:http_clipboard [01.10.2019 11:44] (aktuell) Alexander Bazo
Zeile 2: Zeile 2:
  
 ---- dataentry StudentischeArbeit ---- ---- dataentry StudentischeArbeit ----
-Thema                       : Entwurf, Implementierung und Evaluation einer erweiterbaren, netzwerktransparenten Zwischenablage +Thema                     : Entwurf, Implementierung und Evaluation einer erweiterbaren, netzwerktransparenten Zwischenablage  
-Art_thesistypes             : MA +Art_thesistypes           : MA  
-Betreuer_thesisadvisor      : Raphael Wimmer +BetreuerIn_thesisadvisor    : Raphael Wimmer  
-Student                     : Matthias Rösl +BearbeiterIn                   : Matthias Rösl  
-Professor_thesisprofessor   : N.N. +ErstgutachterIn_thesisprofessor : N.N. #  
-Status_thesisstate         in Bearbeitung +ZweitgutachterIn_secondthesisprofessor : N.N. 
-Stichworte_thesiskeywords   : clipboard, http, network, multi-user +Status_thesisstate        abgeschlossen #  
-angelegt_dt                 : 2018-08-13 +Stichworte_thesiskeywords : clipboard, http, network, multi-user  
-Beginn_dt                   : 2018-10-01 +angelegt_dt               : 2018-08-13  
-Anmeldung_dt                :  +Beginn_dt                 : 2018-10-01  
-Antrittsvortrag_dt          :  +Anmeldung_dt               #  
-Abschlussvortrag_dt         :  +Antrittsvortrag_dt        2018-10-22 #  
-Ende_dt                     +Abschlussvortrag_dt       2019-04-29 #  
 +Abgabe_dt                   :  #  
 +Textlizenz_textlicense : Unbekannt 
 +Codelizenz_codelicense Unbekannt
 ---- ----
  
-=== Hintergrund === 
  
-TODO: 
  
-* clipboard alt, kaum Neuerung (warum?) 
-* proprietäre Formate/Architekturen je nach Betriebssystem 
-* nicht erweiterbar 
-* inzwischen: multi-user-, multi-device-Arbeitsprozesse 
- 
  
-=== Zielsetzung der Arbeit ===+=== Hintergrund ===
  
-Ziel der Arbeit ist, ein System für eine erweiterbarenetzwerktransparente Zwischenablage zu entwerfen und prototypisch umzusetzen+Bei der Zwischenablage bzw. dem Clipboard handelt es sich um ein weitverbreitetes System bei Computern, welches dazu dient, Informationen kurzzeitig zu speichern, zwischen Programmen zu transferieren, zu vervielfältigen et cetera. Hierbei handelt es sich um ein etabliertes und altes Verfahren, welches in allen gängigen Betriebssystemen zu finden ist. Ursprünglich war die Zwischenablage für die Arbeit mit Texten gedachtwurde aber im Laufe der Zeit auf verschiedenste Formate und Dateioperationen erweitert. Dies führte aber auch dazu, dass für jedes Betriebssystem ein eigener Clipboardmechanismus entwickelt wurde, die sich hinsichtlich in ihrer Funktionsweise und Möglichkeiten zum Teil stark unterscheiden. 
 +In der jüngeren Geschichte gab es allerdings nur noch wenig explizite Weiterentwicklung dieses Systems und es wurde weitgehend den Anwendungsentwicklern überlassen, innerhalb dieser engen Grenzen zu arbeiten, etwas durch die privaten Formate des Windows-Clipboards. Diese Stagnation mag sich vor allem aus der zentralen Rolle begründen, die die Zwischenablage für das System an sich, aber auch die darauf laufenden Anwendungen (insbesondere auch deren Verhalten untereinander) sowie die Arbeitsabläufe der Nutzer hat. Die alles führt zu einem simplen, aber auch starren System, das kaum bis nur wenige Möglichkeiten zu seiner Erweiterung auf Systemebene bietet.
  
-Anforderungen an das System umfassen:+In den letzten Jahren gewannen allerdings Multi-User- und Multi-Device-Prozesse zunehmend an Bedeutung und in diesem Kontext wird die Eingeschränktheit der aktuellen Zwischenablagen besonders deutlich, die per definitionem auf ein Gerät und einen Nutzer beschränkt sind. Aufgrund dieser Unzulänglichkeiten ist es die Zielsetzung dieser Arbeit, ein neuartiges, genenrisches Konzept für die Arbeit mit der Zwischenablage zu entwickeln. Besonderer Fokus soll auf der Erweiterbarkeit des Systemes und auf der Netzwerktransparenz liegen. Außerdem soll eine prototypische Implementierung des Konzeptes erfolgen.
  
-* Analyse typischer Nutzungsmuster und -bedürfnisse +=== Zielsetzung der Arbeit ===
-* erweiterbar (Layer-Modell, Hooks, Plugins, Formate) +
-* agnostisch bzgl. Interaktionstechnik +
-* basierend auf etablierten und robusten Technologien, z.B. HTTP / MIME +
-* Entwicklung einer erweiterbaren, benutzbaren API+
  
-nicht Fokus der Arbeit ist:+Zuerst sollen hierfür typische Nutzungsmuster und -bedürfnisse analysiert werden, wobei dies nicht der Fokus der Arbeit ist und hier eher auf bereits vorhandene Erkenntnisse zurückgegriffen wird.  
 +Das System soll darüberhinaus nicht abhängig von der konkreten Interaktionsform mit dem Gerät sein, also soll es einen generischen Ansatz bieten, der unabhängig von konkreten Geräten lauffähig ist. 
 +Hauptziel ist hier die Entwicklung einer erweiterbaren, benutzbaren API, welche die neuartigen Aufgaben zur Synchronisierung und Kommunikation mit anderen Geräten kapselt und es so anderen Programmierern ermöglicht, diese Funktionalitäten für deren eigene Bedürfnisse zu nutzen. Sehr wichtig soll hierbei die Erweiterungsmöglichkeiten sein, welche die API bieten soll. Dieser Erweiterbarkeit lässt sich über verschiedene Möglichkeiten gewährleisten, insbesondere Erwähnung finden sollen hier Techniken wie Hooks (vgl. Web-Hooks bei Github), die das eventbasierte Ausführen von selbst definierten Aktionen ermöglichen und die Möglichkeit der Erstellung eigener Formate für den Clipboardinhalt. Weitere Ansatzmöglichkeiten wären der Aufbau nach einer Layer-Modell und der Verwendbarkeit der API etwas auch für Plugins etablierter Programme. 
 +Darüber hinaus soll das Clipboard auch auf mehreren Geräten funktionierten. Hierfür muss die Kommunikation zwischen den Geräten über ein geeignetes Verfahren sichergestellt werden. 
 +Technisch soll die Umsetzung auf etablierten Technologien basieren und es sollen möglichst keine grundsätzlich neuen Verfahren wie etwa ein eigenes Kommunikationsprotokoll entwickelt werden. Für die Kommunikation im Netzwerk, die wie oben dargestellt ein wichtier Teil des Programmes sein soll, würde sie zum Beispiel die Verwendung von HTTP anbieten und für den Austausch von Inhalten zwischen Anwendungen etwa MIME. Verwendet wird wohl auch das QT-Framework, welches es ermöglicht, Differenzen zwischen den einzelnen Betriebssystemen weitgehend zu eliminieren.
  
-* neuartige Interaktionstechniken für Zwischenablagen +Explizit nicht Fokus der Arbeit sollen eine ausführliche Erhebung der Nutzeranforderungen an die Fähigkeiten einer neuen Zwischenablage sein und, aufgrund der Unabhängigkeit der verwendeten Interaktionstechnik soll sich die Arbeit auch nicht mit der Entwicklung oder Erforschung dieser im Kontext von neuartigen Geräten beschäftigen.
-* umfangreiche Erhebung von Nutzeranforderungen+
  
  
Zeile 67: Zeile 63:
 === Weiterführende Quellen === === Weiterführende Quellen ===
  
-siehe [Zotero: Clipboards](https://www.zotero.org/groups/1491718/physical-digital_affordances/items/collectionKey/ABJCYPKL)+* [Zotero: Clipboards](https://www.zotero.org/groups/1491718/physical-digital_affordances/items/collectionKey/ABJCYPKL)
 * [python3-hug](http://www.hug.rest/) * [python3-hug](http://www.hug.rest/)
 * [AOSA books](http://aosabook.org/en/index.html) * [AOSA books](http://aosabook.org/en/index.html)