• No results found

Wat moet er gebeuren als een comment de server niet bereikt?

In document Comment Mapping (pagina 89-94)

Beste oplossing

4.2 Welke features zijn gewenst voor de comments?

4.3.1 Wat moet er gebeuren als een comment de server niet bereikt?

Als een comment de server niet bereikt is het belangrijk om een duidelijk bericht naar de user te sturen dat er iets fout is gegaan. Ook moet er hierbij een verontschuldiging komen naar de gebruiker (Rowe, 2012). Verder moet er worden uitgevoerd wat staat beschreven in 4.3 van dit rapport.

Zodra een server niet beschikbaar is terwijl een gebruiker een comment probeert te versturen, moet er een time-out komen om de client te stoppen met het versturen van de opmerking. Deze time-out mag niet te lang zijn, maar ook zeker niet te kort. Volgens Martin moet het plaatsen van een opmerking bijna direct gebeuren. (M. Middel, interview, Februari 21, 2017)

4.4 Wat moet er gebeuren als er meerdere comments op dezelfde plaats

en tijd worden geplaatst?

In de meest ideale situatie zou het niet uit mogen maken dat een comment op dezelfde plaats en tijd wordt geplaatst. Dit zou geen effect mogen hebben op het systeem. Helaas is dit niet mogelijk voor alle mogelijkheden die worden beschreven in hoofdstuk 4.1 van dit rapport.

De algoritmes Operational Transformation, Differential Synchronization en Conflict-free Replicated Data Types hebben moeite met de oplossing in een situatie als er een comment op dezelfde tijd en plaats wordt geplaatst. Dit heeft te maken met het feit dat deze algoritmes wijzigingen aanbrengen in een document, waarna deze nieuwe documenten naar de

gebruikers moeten worden gestuurd.

Een externe service met een database zou beter bestand zijn tegen het plaatsen van comments op dezelfde plaats en tijd. Als voorbeeld is er binnen SQL Server een maximum van 32.767 connecties mogelijk (MSDN, 2016), dit houdt in dat er veel users op hetzelfde moment actief kunnen zijn. Het aantal actieve gebruikers kan nog hoger liggen dan het getal wat hier wordt genoemd, doordat niet alle users op hetzelfde moment de comment zullen versturen.

5. Conclusie

Om antwoord te kunnen geven op de hoofdvraag die gesteld is aan het begin van dit onderzoek, moet gekeken worden naar de verschillende methodes die staan beschreven in hoofdstuk 4.1 van dit rapport.

De hoofdvraag van dit onderzoek luidt: “Wat is de beste manier voor FontoXML om comments real-time te plaatsen?” Om dit vast te kunnen stellen zijn er vooraf een aantal criteria opgesteld. Deze criteria worden nu behandeld, om zo de hoofdvraag te kunnen beantwoorden.

Binnen het laatste deel van hoofdstuk 4.1 worden de verschillende methoden uit dit hoofdstuk vergeleken met elkaar door middel van de criteria die in hoofdstuk 3.2 zijn opgesteld. Bij de vergelijking met de criteria is uiteindelijk een oplossing met een database het beste uit de bus gekomen. De implementatie is het minst complex en het voldoet een de gewenste features, maar er zit wel een grote complexiteit in het bepalen van de juiste positie van een opmerking als het document wijzigt.

6. Discussie

Er is altijd ruimte voor verbetering, ook binnen dit onderzoek. De hoofdvraag wordt voornamelijk behandeld in hoofdstuk 4.1 van het rapport. Dit had meer verspreid moeten worden over verschillende deelvragen.

De overige deelvragen hebben alleen bepaalde wensen en vragen voor het systeem behandeld. Deze vragen zijn gebruikt als onderbouwing, maar komen meer tot hun recht in de requirements. De requirements zijn dan ook tijdens dit onderzoek opgesteld door de overlap tussen dit onderzoek en de requirements.

Referentielijst

Day-Richter, J. (2010, November 23). What’s different about the new Google Docs: Making collaboration fast [Blog post]. Verkregen van

https://drive.googleblog.com/2010/09/whats-different-about-new-google-docs.html Fraser, N. (2009, Januari 10). Differential Synchronization [Video file]. Verkregen van

https://www.youtube.com/watch?v=S2Hp_1jqpY8 Fraser, N. (2009). Differential Synchronization. Verkregen van

https://neil.fraser.name/writing/sync/

Martin, S. Urso, P. Weiss, S. (2010). Scalable XML Collaborative Editing with Undo. Verkregen van

https://arxiv.org/pdf/1010.3615.pdf

Kleppmann, M. Beresford, A.R. (2016). A Conflict-Free Replicated JSON Datatype. Verkregen van

https://arxiv.org/pdf/1608.03960.pdf

Shapiro, M. Preguica, N. Baquero, C. Zawirski, M. (2011). A comprehensive study of Convergent and Commutative Replicated Data Types. Verkregen van

http://hal.upmc.fr/inria-00555588/document

Shapiro, M. (2011, Augustus 29). Strong Eventual Consistency and Conflict-free Replicated Data Types [Video file]. Verkregen van

https://www.youtube.com/watch?v=oyUHd894w18

Gentle, J. (2011, November 6). ShareJS – Live concurrent editing in your app. Verkregen van

https://web.archive.org/web/20151003142255/http://sharejs.org/ Nusnus. (2009). Basic idea behind OT. Verkregen op 15 februari 2017 van

https://en.wikipedia.org/wiki/Operational_transformation#/media/File:Basicot.png Operational transformation. (2017, Januari 31). Verkregen op 15 februari 2017 van

https://en.wikipedia.org/wiki/Operational_transformation

Spiewak, D. (2010, Mei 17). Understanding and Applying Operational Transformation [Blog post]. Verkregen van

http://www.codecommit.com/blog/java/understanding-and-applying-operational- transformation

Kumawat, S. Khunteta, A. (2010, Juli). A Survey on Operational Transformation Algorithms: Challenges, Issues and Achievements.

doi:10.1.1.206.5543

Google Wave. (2017). Frequently Asked Questions. Verkregen van http://www.waveprotocol.org/faq

Yigitbasi, N. (2015, Augustus 19). A Look at Conflict-Free Replicated Data Types (CRDT) [Blog post]. Verkregen van

https://medium.com/@istanbul_techie/a-look-at-conflict-free-replicated-data-types- crdt-221a5f629e7e#.d8htpuco8

Davis, A.H. Sun, C. Lu, J. (2002). Generalizing Operational Transformation to the Standard General Markup Language. Proceedings of CSCW 2002.

doi:10.1.1.100.74

xkcd. (2007, Oktober 10). Exploits of a Mom. xkcd. Verkregen van https://xkcd.com/327/

Rowe, B. (2012, December 09). The 4 H’s of Writing Error Messages [Blog post]. Verkregen van

http://uxmas.com/2012/the-4-hs-of-writing-error-messages

MSDN. (2016, Juli 6). Maximum Capacity Specifications for SQL Server. Verkregen van https://msdn.microsoft.com/en-us/library/ms143432.aspx

In document Comment Mapping (pagina 89-94)