• No results found

Proof of Concept

In document Comment Mapping (pagina 56-59)

Serialize algoritme

5.4 Database ontwerp

8.1.5 Proof of Concept

Bij de ontwikkeling van het prototype heb ik gebruik gemaakt van Evolutionary Prototyping, maar zijn de lijnen tussen de verschillende fases vervaagt tijdens de ontwikkeling. Ik heb echter wel in iedere fase meer functionaliteit toegevoegd aan mijn prototype. Na het ontwikkelen van de basis heb ik overleg gehad over de vervolgstap die ik heb genomen. Het implementeren van meer scenario’s werd na de ontwikkeling van de basis steeds makkelijker in de tweede fase van de ontwikkeling. Door de basis die ik heb ontwikkeld en het klein aantal scenario’s dat ik al had geïmplementeerd, had ik al wat ervaring. Echter, dit werd in de derde fase weer lastiger. De scenario’s die ik samen met mijn begeleiders als ‘makkelijk’ had bestempeld, bleken bij de implementatie juist lastig.

8.1.6 Testdossier

In het testdossier zijn het testplan en het testrapport terug te vinden. Het testplan heb ik niet helemaal aan het begin van het project gemaakt, maar aan het einde van de ontwerpfase. Hierdoor had ik een beter beeld van het prototype, maar ook van de planning. Dit is terug te zien in de planning van het testplan als dat vergeleken wordt met de planning van het plan van aanpak.

Na de ontwikkeling van mijn prototype was het vreemd om de testtechnieken toe te passen. Het prototype heeft ongebruikelijke input ten opzichte van de voorbeelden. Al moet een software engineer hier natuurlijk mee om kunnen gaan. Uiteindelijk heb ik hiervoor toch een aantal testcases op kunnen stellen.

8.1.7 Adviesrapport

Het adviesrapport is niet opgenomen in het plan van aanpak. Dit product is eigenlijk pas later ontstaan door middel van overleg met mijn begeleiders bij FontoXML. Zij wilden graag een document hebben met vervolgstappen die in mijn ogen nodig zijn. In het rapport heb ik een korte samenvatting van het project gegeven, waardoor ik zelf ook weer een overzicht kreeg van mijn werkzaamheden tijdens het afstuderen.

8.2 Beroepstaken

In het afstudeerplan heb ik een aantal beroepstaken behandeld die ik tijdens het afstuderen zou behandelen. Hierbij heb ik vooraf nagedacht over wat ik zou gaan doen binnen mijn periode bij FontoXML. In figuur 8.1 is een overzicht te zien van de beroepstaken die ik heb opgenomen in mijn afstudeerplan.

1.1 Selecteren methoden, technieken en tools (niveau 3)

Na het uitvoeren van het onderzoek, zal er een manier moeten worden gevonden om de kennis uit het onderzoek te vertalen naar een prototype. Hiervoor zullen bepaalde methoden, technieken en tools geselecteerd moeten worden.

3.1 Ontwerpen software architectuur (niveau 3)

Op basis van het onderzoek zal er een software architectuur worden ontworpen dat aansluit op de bestaande architectuur van FontoXML. Tevens zal het prototype uitbreidbaar moeten zijn, aangezien dit een mogelijke basis kan vormen voor verdere stappen binnen het real-time collaboration idee binnen FontoXML.

3.3 Bouwen applicatie (niveau 4)

Na het onderzoek zal er een prototype worden ontwikkeld volgens de reeds ontworpen software architectuur. De functionaliteiten zullen afhankelijk zijn van de uitkomsten van het onderzoek en de eisen van het bedrijf.

3.5 Uitvoeren van en rapporteren over het testproces (niveau 3)

Na het ontwikkelen van het prototype binnen FontoXML worden verschillende tests uitgevoerd om de kwaliteit vast te stellen. Hiervoor wordt eerst een testontwerp gemaakt, welke vervolgens wordt uitgevoerd. Dit resulteert in een testrapport waarin de tests en de uitkomst worden beschreven. Fig 8.1. Beroepstaken uit het afstudeerplan.

De gekozen beroepstaken komen goed overeen met de zaken die voorbij zijn gekomen bij het afstuderen. Echter, enige nuance is aan te brengen bij de beschrijvingen en de verdeling van de niveaus. Verder zijn alle beroepstaken voorbij gekomen binnen mijn opdracht.

Voor het selecteren van methoden, technieken en tools heb ik tijdens het onderzoek al afwegingen moeten maken. In beide onderzoeken die ik verricht heb, heb ik een bepaalde methode of techniek geselecteerd. Verder heb ik tijdens het ontwerp van mijn prototype nagedacht over welke technieken ik hiervoor ging gebruiken.

Het ontwerp van het prototype was complex. Waar ik vooraf dacht dat het bouwen van de applicatie het zwaarste deel van de opdracht zou zijn, bleek dit achteraf het ontwerp van het prototype te zijn. In plaats van niveau 3 is niveau 4 hier meer op zijn plaats.

Het bouwen van het prototype was ten opzichte van het ontwerp van het prototype minder complex. De basis die ik had gelegd binnen het ontwerp heeft er voor gezorgd dat de implementatie hiervan een stuk makkelijker was. Maar ik moest er wel voor zorgen dat de situaties naast elkaar kunnen werken met hetzelfde algoritme, dit houdt de ontwikkeling van het prototype nog steeds vrij complex.

Tenslotte heb ik binnen dit project een testplan opgesteld en vervolgens dit uitgevoerd in een testtraject. Binnen dit traject ben ik zelfstandig aan de slag gegaan om vast te stellen of de functionaliteiten die ik eerder had beschreven ook daadwerkelijk actief waren in mijn prototype.

Literatuurlijst

Matković, P., Tumbas, P. (2010). A Comparative Overview of the Evolution of Software Development Models. Verkregen van:

https://www.researchgate.net/publication/267711880_A_Comparative_Overview_of_t he_Evolution_of_Software_Development_Models

Mourzenko, A. (2014, Augustus 17). Why we need Throw-away Prototyping? [Comment] Verkregen van:

https://softwareengineering.stackexchange.com/questions/253574/why-we-need- throw-away-prototyping

SignalR. (2017). ASP.NET SignalR, Incredibly simple real-time web for .NET. Verkregen van:

http://signalr.net/

DeltaXML. (2017). DeltaXML - The Content Differencing, Comparison & Merging Experts. Verkregen van:

https://www.deltaxml.com/

W3C. (2017, Februari 23). Web Annotation Data Model. Verkregen van: https://www.w3.org/TR/annotation-model/

De Grood, D. (2008, Juli). TestGoal. Amsterdam, Nederland: Boom uitgevers Amsterdam. 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

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

Achtergrondinformatie

In document Comment Mapping (pagina 56-59)