[Server / Client] Voor en nadelen van poll design

Pagina: 1
Acties:

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
Ik ga voor een goedbezochte website een poll systeempje maken. Deze poll zal dmv een javascript include en een call, overal op de website gezet kunnen worden. In de poll worden de bezoeker aantal vragen gesteld, welke ingevoerd worden door de beheerder van de site. De beheerder kan een ongelimiteerd aantal vragen invoeren, en kiezen uit verschillende antwoordmogelijkheden (mbv. radiobuttons, checkboxes, textarea voor open vragen). Het moet er ongeveer zo uit komen te zien:
code:
1
2
3
4
5
6
7
8
9
10
+-----------------------------------------+
| Heeft dit artikel uw vraag beantwoord?  |
|                                         |
| O ja, helemaal!                         |
| O ja, maar volgens mij kan het korter   |
| O Nee, nu zit ik weer met nieuwe vragen |
| O Nee, ik vond het drie keer niks       |
|                                         |
|                           vraag 1 van 6 |
+-----------------------------------------+

Nu kan ik grofweg kiezen uit twee ontwerpen:
  • telkens als de gebruiker een vraag beantwoord, stuur ik het antwoord naar de server, en stuur via een XMLHttpRequest een nieuwe div-inhoud (= de volgende vraag met mogelijke antwoorden) terug naar de client
  • ik kan ineens alle vragen met mogelijke antwoorden naar de client sturen, en een javascript functie schrijven welke deze array met vragen doorloopt en pas aan het einde (als vraag 6 beantwoord is), de resultaten naar de server stuurt
Beide manieren hebben m.i. voor- en nadelen. Zo bespaar ik met de tweede manier bandbreedte en een eventuele wachttijd voordat de server de nieuwe vraag gestuurd heeft. Ik bespaar ook rekenkracht op de server (al is die waarschijnlijk verwaarloosbaar), omdat de clientbrowser de poll in z'n geheel bouwt en vult met vragen. Het voordeel van de eerste manier is echter, dat ik al wel de antwoorden van vraag 1 t/m 4 heb, als de gebruiker na vraag 4 stopt met antwoorden. Via een javascript implementatie zou ik dan de antwoorden nog snel moeten verzenden op een onclose() achtie ofzo.

Mijn vraag is: wat zijn volgens jou de voor- en nadelen van deze manieren? Ik ga er vanuit dat de site doorgroeit en dat er een substantieel aantal polletjes ingevuld gaat worden elke dag.

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


  • Kwistnix
  • Registratie: Juni 2001
  • Laatst online: 08:22
Het voordeel van de eerste manier is echter, dat ik al wel de antwoorden van vraag 1 t/m 4 heb, als de gebruiker na vraag 4 stopt met antwoorden. Via een javascript implementatie zou ik dan de antwoorden nog snel moeten verzenden op een onclose() achtie ofzo.
Waarom zou je de resultaten van een gedeeltelijk ingevulde poll willen meenemen? Afhankelijk van de poll en de onderliggende samenhang tussen de vragen zou je dan in de resultaten een vertekend beeld kunnen krijgen.

Verwijderd

Als gebruiker zou ik een site die telkens als ik een vraag beantwoord met een nieuwe vraag komt mijden, of ik zou de polls gewoon negeren.
Stel de vragen die je (de beheerder) hebt in 1x, en als 't er teveel zijn (meer dan 3 of zo, anders schrik je bezoekers af) ben je als beheerder toch al verkeerd bezig...

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
FallenAngel666 schreef op zaterdag 17 februari 2007 @ 15:02:
Waarom zou je de resultaten van een gedeeltelijk ingevulde poll willen meenemen? Afhankelijk van de poll en de onderliggende samenhang tussen de vragen zou je dan in de resultaten een vertekend beeld kunnen krijgen.
Daar heb jij weer gelijk in, dus dan zou het het beste zijn om alle vragen in 1 keer naar de client te sturen...
Verwijderd schreef op zaterdag 17 februari 2007 @ 17:20:
Stel de vragen die je (de beheerder) hebt in 1x, en als 't er teveel zijn (meer dan 3 of zo, anders schrik je bezoekers af) ben je als beheerder toch al verkeerd bezig...
Het is niet mijn bedoeling om in dit topic een discussie te houden over het wel of geen nut hebben van polls. Ik heb een opdrachtgever en die wil een ongelimiteerd aantal vragen kunnen invoeren. Of hij dan een poll van 1 vraag maakt of van 20 vragen, is zijn zaak en valt buiten de (bedoelde) discussie hier. Die gaat over de technische implementatie :)

[ Voor 26% gewijzigd door Reveller op 17-02-2007 20:39 ]

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


  • Spockz
  • Registratie: Augustus 2003
  • Laatst online: 19-11 13:44

Spockz

Live and Let Live

Je zou natuurlijk kunnen voorstellen dat vragen gegroepeerd worden opgegeven (door de klant) en dat jij via het script per groep de vragen opstuurt en ook duidelijk laat zien op welke plaats hij is op dat moment. (Bijvoorbeeld met bovenaan een soort progressbar.)

C'est le ton qui fait la musique. | Blog | @linkedin
R8 | 18-55 IS | 50mm 1.8 2 | 70-200 2.8 APO EX HSM | 85 1.8


Verwijderd

Reveller schreef op zaterdag 17 februari 2007 @ 20:38:
Het is niet mijn bedoeling om in dit topic een discussie te houden over het wel of geen nut hebben van polls. Ik heb een opdrachtgever en die wil een ongelimiteerd aantal vragen kunnen invoeren.
Dan begrijp je mijn post verkeerd. Een vraag beantwoorden die ervoor zorgt dat je steeds weer een nieuwe vraag voor je neus krijgt is niet prettig voor de bezoeker. Een overzichtelijk vragenlijstje doet 't veel beter.
Maar als je opdrachtgever echt denkt over meer dan 5 vragen in een poll, zou ik 'm 's vriendelijk vragen of 'ie wel weet waar 'ie mee bezig is...
Pagina: 1