Research and Development 1/^Archief/2009-2010/14/Planning

Uit Werkplaats
Ga naar: navigatie, zoeken
Bagjoke.jpg

Research and Development 1

Patrick van Bommel
Sjaak Smetsers


 © comments



  • Property "Auteur1" (as page type) with input value "  Research and Development 1/^Archief/2009-2010/14Gebruiker:Sjors Gielen" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process.
  • Property "Auteur2" (as page type) with input value "  Research and Development 1/^Archief/2009-2010/14Gebruiker:Rob ten Berge" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process.
  • Property "Auteur3" (as page type) with input value "  Research and Development 1/^Archief/2009-2010/14Gebruiker:Hans Harmannij" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process.
  • Property "Auteur4" (as page type) with input value "  Research and Development 1/^Archief/2009-2010/14" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process.

Planning fase 1

Hoofdmilestones

Milestone 1

  • Client en server kunnen Waves uitwisselen
  • Server kan al Waves kopiëren
  • Client kan Waves weergeven

Milestone 2

  • De client heeft een interface voor Waves veranderen
  • De server kan die veranderingen verwerken en opslaan, en verder verspreiden

Milestone 3

  • Server en client kunnen al samen een nieuwe Wave aanmaken
  • De server kan host-provider zijn voor zulke waves

Hoofdplanning

We willen in R&D-fase 1 (begin juni) milestone 1 afmaken. Daarna gaan we milestone 2 en 3 in R&D-fase 2 doen.

Uitvoering milestone 1

Milestone 1 is onder te verdelen in deze 'deelmilestones':

  • Server kan beide kanten op verbinden met andere providers via XMPP
  • Server kan Waves opslaan in permanente opslag
  • Server kan nieuwe Waves ontvangen als 'ie die via push binnenkrijgt
  • Server kan Waves naar de client sturen, via het protocol te specificeren door de clientgroep

We hebben voor deze vier deelmilestones vier weken. In de meivakantie willen we het grootste deel van de eerste twee deelmilestones afmaken. Daarbij gaat Hans werken aan permanente opslag, en Rob en Sjors aan het verbinden naar andere Federation-servers en misschien al een deel van PubSub (deelmilestone 3). Op zondag 9 mei proberen we dat af te hebben, en om 21:00 hebben we dan een vergadering via Skype om door te spreken wat we nu af hebben.

De week daarna lossen we eventuele problemen nog op, en gaan we door met het aanvragen en ontvangen van Waves via PubSub. Daarna hebben we nog twee weken voor het implementeren van het clientserverprotocol zoals aangeleverd door de clientgroep. De planning daarvan kunnen we pas vaststellen zodra we die specificatie hebben ontvangen.

Problemen na de eerste week

Na de aanvankelijke problemen in fase 1 hebben we besloten nog een extra week te nemen voor dezelfde taken. Hans gaat zijn implementatie van de permanente opslag nog verder uitbreiden, zo dat er ook een "index van waves" is, en een configuratie-object om de paden uit op te halen. Ondertussen gaan Rob en Sjors verder met het communiceren met andere XMPP- en Wave-servers, om te proberen via PubSub informatie uit te wisselen.

Om de voortgang te bespreken, spreken we op zaterdag 15 mei om 8 uur opnieuw af via Skype. Op deze vergadering is deze planning gemaakt.

Pilotplanning

Planning pilotfase RUWave-server

week 1Onderzoeken hoe het federationprotocol werkt
22 feb - 28 febOverleg met wave-cliëntgroep over clientserverprotocol
week 2Onderzoeken hoe het federationprotocol werkt en wat onze server moet kunnen
1 mrt - 7 mrtOverleg met wave-cliëntgroep over clientserverprotocol
week 3Onderzoeken wat de server moet kunnen/ Ontwerpen van servercomponenten
8 mrt - 14 mrt
week 4Ontwerpen van servercomponenten
15 mrt - 21 mrt
week 5Presentaties maken / Onderzoeksplan opstellen
22 mrt - 28 mrt

Opzet pilotfase

Pilot-vragen:

  • Hoe werkt het protocol tot nu toe? Wat mist er, en wat is daarover al afgesproken op de forums van Google Wave? Wat kunnen wij zelf nog toevoegen? Wat zijn de struikelblokken, en dergelijke?
  • Hoe moet de RUWave-server communiceren met de clients? Dit gaat in overleg met het andere groepje. We bedenken daarbij waarschijnlijk een protocol.
  • Wat moet de RUWave-server intern allemaal kunnen, op basis van wat nu bekend is over de protocols? Wat zijn daar belangrijke struikelblokken?
  • Hoe kunnen we de componenten het beste aan elkaar koppelen? Welke componenten hebben toegang nodig tot het protocol, en dergelijke?

Als product van de eerste vraag willen we een soort "samenvatting" van de rode draad van het protocol. Aan de hand daarvan willen we het gemakkelijk kunnen integreren met de rest. Daarbij willen we op een of andere manier extra informatie vanuit die samenvatting kunnen vinden, bijv. linkjes naar het forum of andere documentatie.

Voor de tweede vraag gaan we in overleg met het andere groepje. Daaruit willen we uiteindelijk een document dat ons client-serverprotocol (of een al bestaand protocol, tot hun discretie) beschrijft.

Als product van de derde vraag willen we iets vergelijkbaars: een lijst van componenten die los van elkaar hun werk kunnen doen.

Op de vierde vraag willen we een diagram waarop te zien is hoe alle losse componenten samenwerken. Op basis daarvan kunnen we, als het goed is, een goede taakverdeling maken om in de eerste fase snel te kunnen beginnen.